[hidden] { display:none !important; }
html.halloween {
  --red:#B64D20; --red-2:#873212; --red-3:#21102F; --red-dark:#221031;
  --cream:#180D24; --paper:#2A1839; --warm:#352142; --gold:#EBA05B;
  --ink:#FFF0DA; --muted:#D3BDD7; --wood:#301A3A; --sage:#302039;
  --line:rgba(213,151,114,.24); --shadow:0 20px 60px #08031070;
  color-scheme:dark;
}
html.halloween body { background:radial-gradient(ellipse at 5% 12%,#47224E 0,transparent 40%),radial-gradient(at 95% 65%,#372041 0,transparent 45%),#160D22;color:var(--ink); }
html.halloween body::before { background-image:radial-gradient(#DB9C613D 1px,transparent 1px);background-size:38px 38px;opacity:.4; }
html.halloween :is(.site-header,.vetrina-header,.site-footer,.cart-bar button) { background:#21112FEF;color:#FFF0DA;border-color:#79506C; }
html.halloween :is(.status-strip,.order-grid article,.story-grid article,.showcase-card,.menu-category,.product-card,.app-note,.search-box,.order-modal-content,.customize-modal-content,.student-modal-content,.menu-mode-content,.photo-modal-content,.contact-card,.location-card,.delivery-card,.allergen-note,.menu-tools,.menu-filter,.student-menu-card,.student-mode-banner) { background:linear-gradient(145deg,#30203D,#24142F);color:var(--ink);border-color:var(--line); }
html.halloween :is(.category-head,.menu-category-head,.extra-row,.wholegrain-row,.cart-line,.student-formula-summary) { background:#30203D;color:#FFF0DA;border-color:var(--line); }
html.halloween :is(h1,h2,h3,h4,.product-name,.category-name,.product-price,.product-card strong,.menu-category-head h2,.customize-head h2,.cart-line strong) { color:#FFF0DA; }
html.halloween :is(p,small,.product-desc,.hero-copy,.category-description) { color:#D8C5DB; }
html.halloween :is(input,select,textarea) { color:#FFF0DA;background:#1D102B;border-color:#79516C; }
html.halloween :is(.button.primary,.hero-order-button,.order-link,.product-add,#confirm-customize,#send-order) { background:linear-gradient(135deg,#BA501F,#843015);color:#FFF5DF;border-color:#D77E43; }
html.halloween :is(.button.secondary,.chip-list button,.language-switcher button,.menu-filter-btn) { background:#392144;color:#FFF0DA;border-color:#91617C; }
html.halloween .hero:not(.halloween-offer) { display:none; }
.halloween-offer { position:relative;isolation:isolate;overflow:hidden;max-width:1240px;margin:26px auto 32px;padding:clamp(25px,4vw,58px);border:1px solid #9B5B58;border-radius:28px;background:radial-gradient(ellipse at 90% 0%,#65316C66,transparent 57%),linear-gradient(115deg,#231032,#31153E 60%,#1D1028);box-shadow:0 22px 70px #05020966; }
.halloween-offer::after { content:'';position:absolute;width:650px;height:350px;border-radius:50%;right:-150px;bottom:-270px;box-shadow:0 0 120px 65px #D964252B;z-index:-1; }
.hw-eyebrow { color:#F0AC71!important;letter-spacing:3px;font-size:11px;font-weight:800;display:flex;gap:10px;align-items:center;flex-wrap:wrap; }
.hw-eyebrow b { display:inline-block;padding:6px 11px;border:1px solid #BC774866;border-radius:99px;background:#D066181A;letter-spacing:1px; }
.hw-layout { display:grid;grid-template-columns:1fr .85fr;gap:40px;align-items:center; }
.hw-copy { position:relative;z-index:2; }
.halloween-offer h1,.halloween-offer h2 { font:700 clamp(43px,5.8vw,78px)/.98 Georgia,serif;letter-spacing:-2px;color:#FFF0DC;margin:22px 0; }
.halloween-offer h1 em,.halloween-offer h2 em { color:#EB9859;font-weight:400; }
.halloween-offer .hw-intro { max-width:465px;font-size:16px;line-height:1.75;color:#E1CFDF; }
.hw-delivery-promo:not([hidden]) { display:flex;flex-direction:column;gap:6px;position:relative;z-index:2;margin-top:24px;padding:18px 22px;border:1px solid #EBA05A;border-radius:18px;background:linear-gradient(110deg,#51205D,#7B2D46 58%,#A94B20);box-shadow:0 0 24px #DF754455;animation:hw-delivery-glow 3s ease-in-out infinite alternate; }
.hw-delivery-dates { color:#FFD295;font:800 11px/1.3 Arial,sans-serif;letter-spacing:1.2px;text-transform:uppercase; }
.hw-delivery-promo strong { color:#FFF3E6;font:700 clamp(21px,2.5vw,29px)/1.12 Georgia,serif; }
.hw-delivery-text { color:#FFE3A9;font:800 17px/1.3 Arial,sans-serif; }
@keyframes hw-delivery-glow { from {box-shadow:0 0 14px #DF754433} to {box-shadow:0 0 32px #DF754477} }
@media (prefers-reduced-motion:reduce) { .hw-delivery-promo {animation:none} }
.hw-includes { display:flex;gap:8px;flex-wrap:wrap;margin:20px 0; }
.hw-includes span { border:1px solid #785166;background:#FFF2DC08;padding:8px 11px;border-radius:10px;font-size:12px;color:#F5DFC8; }
.hw-art { position:relative;min-width:0; }
.hw-pizza { width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;border:6px solid #7C4135;box-shadow:0 24px 70px #0009;transform:rotate(-7deg); }
.hw-moon { position:absolute;right:0;top:-24px;width:83px;height:83px;border-radius:50%;background:#E8B877;box-shadow:0 0 65px #E2A25255; }
.hw-moon::after {content:'';position:absolute;inset:7px 4px 20px 26px;border-radius:50%;background:#35203F;}
.hw-treats { position:absolute;width:55%;right:-13px;bottom:-18px;filter:drop-shadow(0 14px 12px #0007); }
.hw-stamp { position:absolute;left:-10px;bottom:20px;width:104px;height:104px;box-sizing:border-box;padding:8px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(-12deg);background:#B14B20;border:1px dashed #F2B67A;outline:6px solid #B14B20;font:700 11px/1.1 Inter,sans-serif;color:#FFF2DA; }
.hw-stamp-title,.hw-stamp-from,.hw-stamp strong { display:block;white-space:nowrap; }
.hw-stamp-from { margin-top:3px;font-size:10px;line-height:1; }
.hw-stamp strong { font-size:28px;line-height:1; }
.hw-menus { display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:30px;position:relative;z-index:2; }
.hw-menu { background:#160B23A8;border:1px solid #70425E;border-radius:16px;padding:20px;display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center; }
.hw-menu h3 { margin:0;font:700 21px Georgia,serif;color:#FFF0DA; }
.hw-menu .hw-price { color:#F5B47C;font:700 32px Georgia,serif;grid-column:2;grid-row:1 / 3; }
.hw-menu p { margin:0;font-size:12px;color:#D1B9D4; }
.hw-menu a,.hw-menu button { grid-column:1 / -1;margin-top:8px;text-decoration:none;border:1px solid #D47844;border-radius:9px;background:#A6421D;color:#FFF3DF;padding:11px 14px;font:700 13px Inter,sans-serif;cursor:pointer;text-align:center; }
.hw-menu.hw-baby a,.hw-menu.hw-baby button { background:#4C285D;border-color:#9460A4; }
.hw-footer { position:relative;z-index:2;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:20px;font-size:12px;color:#DBBAD5; }
.hw-footer strong { color:#F6BB83; }
.hw-bats { position:absolute;right:16%;top:28px;width:150px;height:70px;opacity:.75;pointer-events:none; }
.hw-web { position:absolute;left:0;top:0;width:110px;height:100px;opacity:.2;pointer-events:none; }
.hw-drink { margin:16px 0;padding:16px;border:1px solid #9D6D75;border-radius:12px; }
.hw-drink label { display:block;font-weight:700;margin-bottom:8px; }
.hw-drink select {width:100%;padding:12px;border-radius:8px;}
@media(max-width:700px) {
 .halloween-offer { margin:16px 12px 24px;padding:25px 21px;border-radius:22px; }
 .hw-layout {grid-template-columns:1fr;gap:8px;}
 .halloween-offer h1,.halloween-offer h2 {font-size:49px;line-height:1.02;}
 .hw-art {width:78%;margin:12px auto 8px;max-width:360px;}
 .hw-menus {grid-template-columns:1fr;margin-top:25px;gap:12px;}
 .hw-stamp {width:85px;height:85px;padding:6px;font-size:9px;}
 .hw-stamp-from {margin-top:2px;font-size:9px;}
 .hw-stamp strong {font-size:23px;}
 .hw-menu {padding:17px;}
 .hw-moon {width:60px;height:60px;top:-10px;}
 .hw-eyebrow {font-size:9px;letter-spacing:1.8px;}
 .hw-bats {right:5px;top:55px;width:90px;}
}
html.halloween :is(.reward-grid article,.info-list article,.menu-search-panel,.tools,.customize-head,.customize-bottom,.student-extras,.payment-option,.success-modal-content,.language-switcher,.menu-mode-switch) { background:#2D1B39;color:#FFF0DA;border-color:#78516A; }
html.halloween :is(.details-section,.contact-band,.family-card,.wheel-card,.app-card) { background:linear-gradient(120deg,#361743,#642D31);color:#FFF0DA; }
html.halloween :is(.category-nav a,.quick-filters button,.menu-count,.category-count,.menu-mode-switch button,.student-drink-list button,.student-back,.student-regular-menu,.qty-control button,.customize-head button,.order-modal-head button,.student-modal-head button) { background:#402347;color:#F7DEC9;border-color:#92617C; }
html.halloween :is(.payment-option.is-active,.student-drink-list button.is-selected,.chip-list button.is-active,.language-switcher button[aria-pressed="true"],.menu-mode-switch button[aria-pressed="true"]) { background:#8C3B1C;color:#FFF4E3;border-color:#F0A66B; }
html.halloween .cart-bar { background:linear-gradient(180deg,transparent,#1B0E29 28%); }
html.halloween :is(.eyebrow,.card-kicker,.order-grid span,.order-grid a,.reward-grid span,.app-note span) { color:#EAA46F; }
html.halloween :is(.customize-section > span,.customize-head > div > span,.extra-row small,.extra-row .qty-control strong,.wholegrain-row strong) { color:#EEAC78; }
