/* A lighter editorial direction for the Twins Garden demo. */
:root{--green:#173d32;--green-light:#e9eee4;--cream:#f4f2e8;--white:#fbfaf4;--ink:#183a30;--muted:#65746a;--line:#d6dccd;--gold:#aa8958}
body{background:var(--cream)}
.demo-notice{background:#6e5434;font-size:12px;letter-spacing:.02em}
.header{height:104px;border-color:#ccd6c7}
.brand-logo{width:68px;height:68px;flex-basis:68px}
.brand-name{font-size:16px;letter-spacing:.16em}
.header-nav .nav-menu{border:1px solid #aebdad;border-radius:100px;padding:0 19px;gap:20px;font-size:12px}
.header-nav .nav-menu>span:last-child{font-size:16px}
.hero{grid-template-columns:.95fr 1.05fr;gap:clamp(32px,5vw,70px);padding-block:58px 70px}
.hero-copy{position:relative;max-width:620px}
.hero-copy>.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#547366;font-size:10px;letter-spacing:.16em}
.tiny-leaf{font-size:23px;margin:0;color:#a38959}
.hero h1{font-size:clamp(54px,5.6vw,84px);line-height:1.02;letter-spacing:-.05em;margin-top:28px}
.hero h1 em{color:#78917d}
.hero-intro{font-size:15px;line-height:1.8;max-width:360px}
.hero .primary{border-radius:100px;min-height:55px;padding:13px 24px;gap:42px;box-shadow:0 6px 18px #163c2917}
.hero .primary>span:first-child{font-size:13px}.hero .primary>span:last-child{display:grid;place-items:center;width:30px;height:30px;border:1px solid #ffffff70;border-radius:50%;font-size:17px}
.hero-note{margin-top:22px;color:#738274}
.hero-image{height:clamp(380px,40vw,540px);border-radius:180px 180px 10px 10px;box-shadow:0 18px 50px #1f3b2e18}
.hero-image figcaption{bottom:30px;left:32px}
.hero-image figcaption span{letter-spacing:.2em;font-weight:600}
.hero-image figcaption i{font-size:25px}
.brand-ribbon{background:var(--green);color:#e7ecdc}
.brand-ribbon>.wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;overflow:hidden}
.brand-ribbon span{font-size:10px;letter-spacing:.19em;white-space:nowrap}.brand-ribbon span:nth-child(even){color:#c3ae7e;font-size:17px}
.menu-area{border:0;background:var(--white)}
.menu-heading{text-align:left;display:grid;grid-template-columns:1fr auto;align-items:end;gap:8px 30px;padding-top:65px;padding-bottom:32px}
.menu-heading>.eyebrow{grid-column:1/-1;color:#7b8b76}
.menu-heading h2{font-size:clamp(38px,4vw,58px);line-height:1.1;margin:0}
.menu-heading>p:last-child{font-size:13px;text-align:right;margin:0;line-height:1.6}
.menu-controls{background:rgba(251,250,244,.97);box-shadow:0 7px 20px #173d3208}
.search{border-radius:12px;background:#f0f3ea;border-color:#e0e7da}
.categories{gap:5px}.category-button{border-color:#e0e7da;background:#fafbf7;color:#345247;padding-inline:17px}.category-button[aria-pressed=true]{border-color:var(--green)}
.menu-content{padding-top:30px}.results{text-transform:uppercase;letter-spacing:.08em;font-size:10px;color:#697f70}
.menu-section{margin-bottom:58px}.category-heading{padding-bottom:18px;margin-bottom:20px;align-items:center}.category-heading h3{font-size:38px}.section-number{font-style:normal;font-size:12px;border:1px solid #c6d1c2;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;flex-shrink:0}
.item-grid{gap:14px}.dish-card{border:1px solid #e2e8dc;border-radius:13px;background:#fffefa;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.dish-card:hover{border-color:#b2c5ae;box-shadow:0 6px 20px #173d320b}
.dish-card>.dish{border:0;padding:14px 66px 14px 14px;min-height:128px;gap:16px}
.dish-photo{border-radius:9px;width:100px;height:100px;flex-basis:100px}
.dish-name{font-size:15px;font-weight:600;color:#1e4236}.dish-description{font-size:12px}.dish-meta{font-size:11px;color:#758a78}
.dish-card>.quick-add{top:50%;right:13px;width:42px;height:42px;font-size:24px}
dialog{border-radius:16px}.dialog-body{padding:32px}.dialog-body h2{font-size:38px}
.cart-area{background:#e8eee3}.closing{padding-block:75px}.closing>p{font-size:clamp(40px,5vw,60px)}
@media(max-width:900px){.hero{gap:28px}.hero-image{height:410px}.hero h1{font-size:clamp(48px,6.5vw,64px)}}
@media(max-width:640px){
  .header{height:83px}.brand-logo{width:54px;height:54px;flex-basis:54px}.brand-name{font-size:12px}.brand-name>span{font-size:7px}.header-nav{gap:0}
  .hero{display:flex;gap:24px;padding-block:32px 32px}.hero-copy>.eyebrow{font-size:9px}.hero h1{font-size:clamp(44px,11.3vw,58px);line-height:1.04;margin-top:18px}.hero-intro{font-size:13px;margin-top:16px}.hero .primary{margin-top:20px;min-height:50px}.hero-note{display:none}
  .hero-image{height:265px;border-radius:115px 115px 8px 8px}.hero-image figcaption{bottom:58px;left:22px}.hero-image figcaption i{font-size:21px}
  .brand-ribbon>.wrap{min-height:42px}.brand-ribbon span{font-size:9px}.brand-ribbon span:last-child,.brand-ribbon span:nth-last-child(2){display:none}
  .menu-heading{display:block;padding-top:36px;padding-bottom:23px}.menu-heading h2{font-size:37px;margin-top:8px}.menu-heading>p:last-child{font-size:12px;text-align:left;margin-top:9px}
  .menu-content{padding-top:20px}.category-heading{margin-bottom:14px}.category-heading h3{font-size:30px}.menu-section{margin-bottom:39px}
  .item-grid{gap:10px}.dish-card>.dish{padding:11px 58px 11px 11px;min-height:104px;gap:12px}.dish-photo{width:82px;height:82px;flex-basis:82px}.dish-name{font-size:14px}.dish-description{font-size:11px;line-height:1.45}.dish-meta{font-size:10px}.dish-card>.quick-add{top:50%;right:10px;width:42px;height:42px}
  .dialog-body{padding:24px}.dialog-body h2{font-size:32px}
}
@media(max-width:360px){.hero h1{font-size:42px}.dish-photo{width:70px;height:70px;flex-basis:70px}.dish-card>.dish{min-height:94px}.dish-name{font-size:13px}}
@media(max-width:420px){.header-nav .nav-menu{display:none}}
@media(prefers-reduced-motion:reduce){.dish-card{transition:none}}
.daypart-hint{font-size:12px;color:#536c5b;margin:0 0 8px}
.payment-demo{max-width:600px;margin-top:22px;padding:24px;border:1px solid #c5d5c4;border-radius:16px;background:#fffefa;scroll-margin-top:165px}.payment-demo-tag{color:#77582c;font-size:10px;font-weight:700;letter-spacing:.11em}.payment-demo h3{font:32px/1.2 var(--serif);margin:9px 0;color:var(--green)}.payment-demo>p:not(.payment-demo-tag){font-size:13px;color:var(--muted)}.payment-amount{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:18px 0;padding:14px;background:#eff4eb;border-radius:9px;font-size:13px}.payment-amount strong{font-size:19px;color:var(--green)}.payment-cards{display:flex;gap:9px;border:0;padding:0;margin:20px 0}.payment-cards legend,.payment-scenario-label{font-size:12px;font-weight:700;margin-bottom:8px}.payment-cards label{flex:1;min-width:0;display:flex;align-items:center;gap:8px;border:1px solid #d9e2d4;border-radius:9px;padding:11px;cursor:pointer}.payment-cards label:has(input:checked){border-color:#46745d;background:#f0f5ed}.payment-cards input{accent-color:#173d32}.payment-cards span{font-weight:700;font-size:14px}.payment-cards small{font-size:9px;color:#74887a}.payment-scenario-label{display:block}.payment-demo select{width:100%;font:inherit;font-size:14px;background:white;border:1px solid #cdd9cb;border-radius:9px;padding:12px;color:var(--ink);min-height:46px}.payment-run{width:100%;border-radius:9px;margin-top:17px}.payment-demo .payment-result{margin:15px 0 0;padding:13px;border-radius:9px;background:#e5f2e4;color:#235631!important;font-weight:600}.payment-demo .payment-result.declined{background:#fbede5;color:#873c28!important}.payment-close{margin-top:12px;min-height:44px;background:transparent;color:#476f59;text-decoration:underline}.payment-demo button:focus-visible,.payment-demo select:focus-visible,.payment-demo input:focus-visible{outline:3px solid #9b793e;outline-offset:3px}@media(max-width:480px){.payment-demo{padding:18px}.payment-demo h3{font-size:28px}}
.cart-feedback{position:fixed;right:18px;bottom:78px;z-index:30;max-width:min(360px,calc(100vw - 36px));padding:12px 16px;border-radius:12px;background:#173d32;color:#fff;box-shadow:0 8px 24px #0d2c2440;font-size:13px;font-weight:600;line-height:1.4;opacity:0;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease;pointer-events:none}.cart-feedback.is-visible{opacity:1;transform:translateY(0)}.quick-add.added{background:#668c6b;font-size:21px}.cart-bump{animation:cart-bump .45s ease}.quick-add.added{animation:add-bump .32s ease}@keyframes cart-bump{0%,100%{transform:scale(1)}45%{transform:scale(1.1)}}@keyframes add-bump{0%,100%{transform:translateY(-50%) scale(1)}45%{transform:translateY(-50%) scale(.88)}}@media(prefers-reduced-motion:reduce){.cart-feedback{transition:none;transform:none}.cart-bump,.quick-add.added{animation:none}}
.cart-sugar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;color:#385348;font-size:13px;font-weight:600}
.cart-sugar-select{max-width:100%;min-height:40px;padding:7px 30px 7px 12px;border:1px solid #9bb4a0;border-radius:10px;background:#d5e3d3;color:#173a2b;font:inherit;cursor:pointer;transition:background-color .18s,border-color .18s}
.cart-sugar-select:hover{background:#c8dcc9;border-color:#759981}
.cart-sugar-select:focus-visible{outline:3px solid #719c83;outline-offset:2px}
.cart-sugar-note{margin:12px 0 0;color:#53675c;font-size:12px;line-height:1.5}
.cart-extras{margin:18px 0 16px;padding:14px;border:1px solid #c7d8c9;border-radius:14px;background:#f0f5ec;min-width:0}
.cart-extras legend{padding:0 5px;color:#173a2b;font-weight:700;font-size:15px}
.cart-extras-hint{margin:0 0 8px;color:#596f60;font-size:12px}
.cart-extra-option{display:flex;align-items:center;gap:10px;min-height:42px;padding:6px 2px;color:#173a2b;font-size:14px;cursor:pointer}
.cart-extra-option input{width:19px;height:19px;accent-color:#256447;flex-shrink:0}
.cart-extra-option span{flex:1}.cart-extra-option strong{font-size:13px;white-space:nowrap}
.cart-row-extras{color:#496653;font-size:13px;margin-top:5px;line-height:1.45}
