:root{--color-ink:#2b2118;--color-cream:#fdf8f1;--color-butter:#f3d9a4;--color-caramel:#b07b46;--color-berry:#9c3b52;--color-muted:#7a6b5d;--color-line:#e6dbcb;--font-heading:"Cormorant Garamond", Georgia, serif;--font-body:"Work Sans", system-ui, sans-serif}*,:before,:after{box-sizing:border-box}body{background:radial-gradient(circle at 90% 2%, color-mix(in srgb, var(--color-butter) 46%, transparent), transparent 24rem), var(--color-cream);color:var(--color-ink);font-family:var(--font-body);-webkit-text-size-adjust:100%;margin:0;line-height:1.55}h1,h2,h3{font-family:var(--font-heading);margin:0 0 .5em;font-weight:600;line-height:1.15}a{color:var(--color-caramel)}.wrap{max-width:68rem;margin-inline:auto;padding-inline:1.25rem}header.wrap{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:1rem;min-height:4.75rem;display:flex}header>a{color:var(--color-ink);font-family:var(--font-heading);letter-spacing:-.03em;font-size:clamp(1.55rem,4vw,2.1rem);font-weight:700;text-decoration:none}nav{gap:clamp(.65rem,2vw,1.25rem);display:flex}nav a{color:var(--color-muted);font-size:.86rem;font-weight:600;text-decoration:none}nav a:hover{color:var(--color-berry)}main.wrap{padding-block:clamp(2.25rem,6vw,4.5rem) 4rem}.home-hero{text-align:center;max-width:48rem;margin:0 auto clamp(2.5rem,6vw,4.5rem)}.eyebrow{color:var(--color-caramel);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .65rem;font-size:.72rem;font-weight:700}.home-hero h1{letter-spacing:-.055em;margin:0;font-size:clamp(3.3rem,8vw,5.8rem)}.home-hero>p:not(.eyebrow){max-width:32rem;color:var(--color-muted);margin:1rem auto 0;font-size:clamp(1rem,2vw,1.22rem)}.hero-promises{color:var(--color-muted);flex-wrap:wrap;justify-content:center;gap:.6rem 1.25rem;margin:1.65rem 0 0;padding:0;font-size:.86rem;font-weight:600;list-style:none;display:flex}.hero-promises li:before{content:"✦";color:var(--color-caramel);margin-right:.45rem}main form{gap:1rem;display:grid}main form>section:not(.menu-section){border:1px solid var(--color-line);background:color-mix(in srgb, var(--color-cream) 85%, white);box-shadow:0 .8rem 2rem color-mix(in srgb, var(--color-ink) 6%, transparent);border-radius:1.25rem;padding:clamp(1.2rem,4vw,2rem)}main form>section:not(.menu-section)>h2{color:var(--color-berry);font-size:clamp(1.8rem,5vw,2.55rem)}.menu-section{padding:0}.menu-section-heading{margin-bottom:1rem}.menu-section-heading h2{color:var(--color-berry);font-size:clamp(2rem,5vw,3.15rem)}.menu-products{gap:1rem;display:grid}.product-card{border:1px solid var(--color-line);background:color-mix(in srgb, var(--color-cream) 86%, white);box-shadow:0 .6rem 1.8rem color-mix(in srgb, var(--color-ink) 5%, transparent);border-radius:1.15rem;padding:0 1.15rem 1.15rem;overflow:hidden}.product-card img,.product-image-fallback{object-fit:cover;background:var(--color-butter);width:calc(100% + 2.3rem);height:13rem;margin:0 -1.15rem 1.1rem;display:block}.product-image-fallback{place-items:center;font-size:4rem;display:grid}.product-card h3{font-size:1.55rem}.product-card p{color:var(--color-muted);margin:-.15rem 0 1rem;font-size:.94rem}.variant-row{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:.5rem;display:grid}.variant-row+.variant-row{margin-top:.65rem}.variant-row>span:first-child{font-weight:700}.variant-row>s{color:var(--color-muted);grid-column:1;font-size:.85rem}button{background:var(--color-caramel);min-height:2.5rem;color:var(--color-cream);cursor:pointer;border:0;border-radius:999px;padding:.55rem 1rem;font-weight:700}button:hover:not(:disabled){background:var(--color-berry)}button:disabled{cursor:not-allowed;opacity:.42}.product-card button{min-width:2.5rem;padding:.25rem;font-size:1.2rem}label{color:var(--color-muted);margin-top:1rem;font-size:.9rem;font-weight:600;display:block}input,select,textarea{border:1px solid var(--color-line);background:var(--color-cream);width:100%;color:var(--color-ink);border-radius:.65rem;margin-top:.3rem;padding:.7rem .8rem}textarea{resize:vertical;min-height:5.5rem}fieldset{border:1px solid var(--color-line);border-radius:.75rem;margin:1.25rem 0 0;padding:.85rem 1rem}legend{color:var(--color-muted);padding-inline:.35rem;font-size:.85rem;font-weight:700}fieldset label{align-items:center;gap:.55rem;margin:.55rem 0;display:flex}fieldset input{width:auto;accent-color:var(--color-berry);margin:0}[role=alert]{color:var(--color-berry);font-weight:600}[role=status]{background:var(--color-butter);color:var(--color-ink);border-radius:.75rem;padding:1rem 1.25rem}.checkout-callout{z-index:2;border:1px solid var(--color-line);background:var(--color-ink);width:100%;min-height:3.5rem;color:var(--color-cream);font-family:var(--font-heading);box-shadow:0 .7rem 1.6rem color-mix(in srgb, var(--color-ink) 18%, transparent);border-radius:999px;justify-content:space-between;align-items:center;gap:1rem;margin:0;padding:.9rem 1.15rem;font-size:1.6rem;font-weight:700;display:flex;position:sticky;bottom:.75rem}.checkout-callout>span:first-child{font-family:var(--font-body);font-size:.98rem}.checkout-callout:hover:not(:disabled){background:var(--color-berry)}main form>button[type=submit]{width:100%;min-height:3.25rem;font-size:1.05rem}footer.wrap{border-top:1px solid var(--color-line);color:var(--color-muted);padding-block:2rem;font-size:.9rem}:where(button,input,select,textarea){font:inherit}:where(:focus-visible){outline:2px solid var(--color-caramel);outline-offset:2px}@media (width>=48rem){main form{grid-template-columns:1.15fr .85fr;align-items:start}main form>section:first-child{grid-row:span 3}main form>section:last-of-type,.checkout-callout,main form>button[type=submit]{grid-column:2}.menu-products{grid-template-columns:repeat(2,minmax(0,1fr))}.product-card img,.product-image-fallback{height:15rem}}@media (prefers-reduced-motion:no-preference){main form>section{animation:.42s both settle}main form>section:nth-child(2){animation-delay:60ms}main form>section:nth-child(3){animation-delay:.12s}main form>section:nth-child(4){animation-delay:.18s}@keyframes settle{0%{opacity:0;transform:translateY(.75rem)}to{opacity:1;transform:translateY(0)}}}
