/* The same warm paper, typography and green/gold controls as the public site. */
body{background:var(--paper);color:var(--ink)}
body>header{background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line);padding:0 24px}
body>header .brand-original{width:100%;max-width:800px;min-height:112px;flex-direction:row;justify-content:space-between;gap:24px;text-align:left}
.brand-home{display:block;flex:none;max-width:48%;border-radius:4px}
.brand-original .brand-logo{width:232px;max-width:100%;padding:0;background:transparent;mix-blend-mode:multiply;border-radius:0}
.order-header-nav{display:flex;gap:24px;align-items:center;font-size:14px;font-weight:650}
.order-header-nav .site-back{padding:12px 0;min-height:44px;text-underline-offset:5px;text-decoration:none;color:var(--green)}
.order-header-nav .site-back:hover{text-decoration:underline}
.brand-original .order-header-tag{font-size:13px;font-weight:650;line-height:1.4;padding:12px 18px;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--green);white-space:nowrap}
main#conteudo{padding-top:40px}
#conteudo>.intro h1{font:800 clamp(32px,4vw,50px)/1.1 var(--brand-display);letter-spacing:-.045em;color:var(--ink);margin:0 0 20px}
#conteudo>.intro .eyebrow{font-size:13px;font-weight:650;color:var(--muted);margin:0 0 16px;display:flex;align-items:center;justify-content:center;gap:8px}
.intro .eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:#a77c14;flex:none}
#conteudo>.intro>p:not(.eyebrow):not(.notice){color:var(--muted);font-size:16px;max-width:58ch}
#conteudo .steps{gap:12px;margin:28px auto 24px}
.steps li{padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:white;gap:10px}
.steps li.current{background:var(--green);border-color:var(--green);color:white}
.steps li.current::before{background:var(--gold);border-color:var(--gold);color:var(--deep)}
.steps li.done{background:var(--sage);border-color:var(--line)}
.steps li::before{width:26px;height:26px;font-size:13px}
.stage-link{font-size:14px;min-height:40px;padding:4px 0;box-shadow:none;border-radius:4px}
.stage-link:not(:disabled):hover{background:transparent;color:inherit;text-decoration:underline;text-underline-offset:4px}
.notice{border-radius:14px;border-left-width:3px;background:#fbf3da;color:var(--deep);padding:14px 20px}
.notice.is-open{background:var(--sage)}
#conteudo>.closed-order-card{border-radius:24px;box-shadow:0 10px 32px #163c2e06;border-color:var(--line);padding:32px}
#conteudo>.closed-order-card h2{font:750 clamp(22px,2.6vw,28px)/1.2 var(--brand-display);letter-spacing:-.03em;max-width:34ch}
.closed-menu-link{justify-content:center;background:var(--green);color:white;border-radius:14px;padding:14px 22px;font-size:14px;box-shadow:0 4px 0 #00000010,0 8px 18px #073c2e0a}
.order-fields>fieldset{background:white;border:1px solid var(--line);border-radius:22px;margin-block:28px;padding:24px 28px 28px;box-shadow:0 8px 24px #163c2e04}
.order-fields>fieldset>legend{font:750 22px/1.3 var(--brand-display);letter-spacing:-.025em;background:var(--paper);border-radius:8px;padding:0 12px}
input,select,textarea{border:1px solid #a4b5a5;border-radius:12px;color:var(--ink);font-family:var(--brand-body)}
.choices label{border-radius:14px;background:var(--paper)}
.choices label:has(:checked){background:var(--sage);border-color:var(--green)}
.meal{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--green);border-radius:18px}
.meal-head h3{font:750 22px/1.3 var(--brand-display);letter-spacing:-.025em}
.food-options label,.remove-options label{border-radius:12px;background:white}
.food-choice legend{font-family:var(--brand-body)}
.meal-progress,.remove-help{border-radius:10px}
button{border-radius:14px;font-family:var(--brand-body);box-shadow:0 3px 0 #0000000c}
button:disabled{box-shadow:none}
.stage-link,.beverage-quantity button{box-shadow:none}
.meal-unit-price{border-radius:14px;background:var(--sage)}
#add,.repeat-meal{border-radius:14px}
.checkout.basket{border-radius:22px;background:white;border-top:3px solid var(--green);box-shadow:0 12px 32px #163c2e08}
.basket h2{font:750 24px/1.2 var(--brand-display);letter-spacing:-.025em}
.basket-item button{border-radius:12px;box-shadow:none}
.summary,#success{border-radius:22px}
.summary h2,#success h2{font:750 30px/1.15 var(--brand-display);letter-spacing:-.035em}
.summary-meal{border-radius:14px;background:var(--paper)}
.bottom-note{background:var(--paper);color:var(--muted);padding-block:24px}
@media(max-width:767px){
  body>header{padding-inline:20px}
  body>header .brand-original{min-height:94px;gap:16px}
  .brand-original .brand-logo{width:190px}
  .order-header-nav{gap:12px}
  .order-header-nav .site-back{font-size:13px}
  .order-header-tag{display:none!important}
  main#conteudo{padding-top:28px}
  .order-fields>fieldset{padding:20px;border-radius:18px}
  .steps li{padding:8px;gap:6px}
}
@media(max-width:540px){
  body>header{padding-inline:16px}
  .brand-home{max-width:52%}
  .brand-original .brand-logo{width:170px}
  .order-header-nav .site-back{max-width:12ch;text-align:right;line-height:1.4}
  #conteudo .steps{gap:6px}
  .steps li{padding:6px;gap:5px;border-radius:12px}
  .steps li::before{width:22px;height:22px;font-size:12px}
  .stage-link{font-size:12px;min-height:40px}
  .order-fields>fieldset{padding:16px 12px}
  .order-fields>fieldset>legend{font-size:20px}
  .meal{padding:16px 12px}
  #conteudo>.closed-order-card{padding:28px 20px}
}
@media(prefers-reduced-motion:reduce){button{transition:none!important}}
/* Cream header, green introductory band, cream ordering area. */
main#conteudo{padding-top:0}
#conteudo>.intro{position:relative;background:var(--green);color:white;padding:40px 0 32px;box-shadow:0 0 0 100vmax var(--green);clip-path:inset(0 -100vmax)}
#conteudo>.intro h1{color:white}
#conteudo>.intro .eyebrow{color:#e2ebde}
#conteudo>.intro .eyebrow::before{background:var(--gold)}
#conteudo>.intro>p:not(.eyebrow):not(.notice){color:#e6eee2}
#conteudo>.intro .steps li{background:#ffffff10;border-color:#ffffff45;color:#e6eee2}
#conteudo>.intro .steps li.current{background:var(--gold);border-color:var(--gold);color:var(--deep)}
#conteudo>.intro .steps li.current::before{background:var(--green);border-color:var(--green);color:white}
#conteudo>.intro .steps li.done{background:#ffffff24;color:white}
#conteudo>.intro .notice{background:#fff4d4;border-color:#e6c86c;border-left-color:var(--gold);color:var(--deep)}
#conteudo>.intro .notice.is-open{background:var(--sage);border-color:#cfdfbf;border-left-color:var(--gold);color:var(--deep)}
@media(max-width:767px){#conteudo>.intro{padding-block:32px 28px}}
