/* Seasonal promotions highlight (preview) */
.promo-banner{background:#24282c;color:#F4EFE6;border-top:3px solid #C9A96A;border-bottom:3px solid #0ABAB5;padding:1.5rem 0}
.promo-banner .container{max-width:var(--max,1120px);margin:0 auto;padding:0 1.25rem}
.promo-banner-kicker{margin:0 0 .25rem;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:#81D8D0;font-weight:700}
.promo-banner h2{margin:0 0 .35rem;font-family:var(--font-display,Georgia,serif);font-size:clamp(1.6rem,4.5vw,2.3rem);color:#D4B87A;line-height:1.15}
.promo-banner-sub{margin:0 0 1rem;color:#E8E2D8;font-size:1rem}
.promo-list{list-style:none;margin:0 0 1.1rem;padding:0;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.promo-list li{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;background:#2f343a;border:1px solid rgba(201,169,106,.45);border-radius:10px;padding:.65rem .9rem;font-size:1.02rem;color:#F4EFE6}
.promo-list .pl-prices{white-space:nowrap}
.promo-list .pl-now{color:#81D8D0;font-weight:800;font-size:1.3rem}
.promo-list s{color:#a9a39a;margin-left:.4rem;font-size:.95rem}
.promo-banner .promo-cta{display:inline-block;background:#C9A96A;color:#1C1917!important;font-weight:700;text-decoration:none;padding:.7rem 1.3rem;border-radius:999px}
.promo-banner .promo-cta:hover{background:#D4B87A}
.badge-seasonal{display:inline-block;background:#C9A96A;color:#1C1917;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .55rem;border-radius:999px;vertical-align:middle;margin-right:.4rem;line-height:1.4}
.promo-now{color:#0ABAB5!important;font-weight:800!important;font-size:1.35em!important}
.promo-was{color:#8a847b!important;text-decoration:line-through!important;font-weight:400!important;font-size:.9em!important;opacity:1!important;margin-left:.3rem}
.fm-price .badge-seasonal{font-size:.62rem}
@media (max-width:600px){.promo-list li{font-size:.98rem}.fm-price .badge-seasonal{display:block;margin:0 0 .15rem auto;width:max-content}}
html body .promo-banner h2{color:#D4B87A!important}
html body .promo-banner .promo-banner-sub{color:#E8E2D8!important}
html body .promo-list s{color:#b8b1a6!important;text-decoration:line-through!important}
html body .full-menu-row .fm-price:has(.badge-seasonal){white-space:normal;text-align:right}
@media (max-width:600px){html body .full-menu-row:has(.badge-seasonal){flex-wrap:wrap}html body .full-menu-row:has(.badge-seasonal) .fm-price{flex:1 0 100%}}
.badge-popular{display:inline-block;background:#0ABAB5;color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .65rem;border-radius:999px;margin:.5rem 0 .2rem}
.card--popular{border:2px solid #0ABAB5!important;box-shadow:0 10px 28px rgba(10,186,181,.18)!important}
.popular-line{color:#1C1917!important;font-weight:600;font-size:.98rem}
.upsell-card{grid-column:1/-1;background:#24282c;color:#F4EFE6;border-left:5px solid #C9A96A;border-radius:14px;padding:1.2rem 1.4rem}
html body .upsell-card h3{color:#D4B87A!important;margin:.1rem 0 .3rem}
html body .upsell-card p{color:#E8E2D8!important;margin:.25rem 0}
.upsell-kicker{color:#81D8D0!important;font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.82rem}
html body .upsell-card .promo-now{color:#81D8D0!important}
html body .upsell-card .promo-was{color:#b8b1a6!important}
.upsell-card .promo-cta{display:inline-block;background:#C9A96A;color:#1C1917!important;font-weight:700;text-decoration:none;padding:.6rem 1.2rem;border-radius:999px;margin-top:.4rem}
.savings-pill-row{margin:.35rem 0 .5rem}
.savings-pill{display:inline-block;background:#FAF3E2;color:#1C1917;border:2px solid #C9A96A;border-left:6px solid #0ABAB5;font-weight:800;font-size:.88rem;line-height:1.35;padding:.3rem .75rem;border-radius:999px}
html body .promo-banner .promo-banner-note{color:#b8b1a6!important;font-size:.85rem;font-style:italic;margin:0 0 .5rem}
/* Holiday draft + plain steam note */
.badge-holiday{display:inline-block;background:#24282c;color:#D4B87A;border:1.5px solid #C9A96A;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .65rem;border-radius:999px;margin:.5rem .4rem .2rem 0;vertical-align:middle}
.card--holiday{border:2px solid #C9A96A!important;box-shadow:0 10px 28px rgba(201,169,106,.22)!important}
.holiday-book-note{font-size:.85rem;color:#5C564E!important;margin-top:.4rem}
.pl-tag{font-style:normal;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#D4B87A;border:1px solid #C9A96A;border-radius:999px;padding:.05rem .45rem;margin-left:.35rem;vertical-align:middle}
.fm-sub{font-size:.85rem!important;font-weight:400!important;color:#5C564E;padding:0 0 .35rem;border-bottom:1px solid var(--line,#E7E0D6)}
.fm-price .badge-holiday{font-size:.62rem}
@media (max-width:600px){html body .full-menu-row:has(.badge-holiday){flex-wrap:wrap}html body .full-menu-row:has(.badge-holiday) .fm-price{flex:1 0 100%;justify-content:flex-end}}
