
/* Offers share the car cover instead of adding separate banners above it. */
.hero-offers{display:grid;gap:12px;margin-top:26px;max-width:470px;position:relative;z-index:3;--offer-accent:var(--season-light,#efd094)}
.hero-offers:empty{display:none}
.hero .hero-holiday{position:relative;display:block;width:100%;min-height:0;margin:0;padding:20px;text-align:left;border:1px solid color-mix(in srgb,var(--offer-accent) 32%,transparent);border-radius:18px;background:linear-gradient(125deg,color-mix(in srgb,var(--season-dark,#28231b) 85%,transparent),#101617e8);box-shadow:0 12px 35px #0004;overflow:hidden;backdrop-filter:blur(12px)}
.hero .hero-holiday .holiday-copy{position:relative;z-index:2;max-width:none;width:100%;padding:0;min-width:0}
.hero .hero-holiday .holiday-eyebrow{font-size:10px;letter-spacing:2px;color:var(--offer-accent);display:block;padding-right:80px}
.hero .hero-holiday .holiday-title{font-size:20px;line-height:1.2;color:#f4f1e9;display:block;margin:9px 0 0;padding-right:80px}
.hero .hero-holiday .holiday-subtitle{display:none}
.hero .hero-holiday .holiday-discount{display:block;margin:15px 0 0;padding:14px 0 0;border:0;border-top:1px solid #ffffff20;border-radius:0;background:none;box-shadow:none;font-size:23px;font-weight:800;color:var(--offer-accent);text-align:left;max-width:none}
.hero .hero-holiday .holiday-discount small{display:block;font-size:11px;line-height:1.6;font-weight:400;color:#d2d7d5;margin-top:3px}
.hero .hero-holiday .hero-offer-link{display:block;margin-top:12px;font-size:12px;font-weight:700;color:var(--offer-accent)}
.hero .hero-holiday .holiday-scene{position:absolute;right:-115px;top:-90px;width:340px;height:300px;min-height:0;transform:scale(.32);transform-origin:center;pointer-events:none;opacity:.95}
.hero-offers #campaign-banner{display:flex;width:100%;max-width:none;margin:0;padding:16px 20px;gap:12px;flex-wrap:wrap;background:linear-gradient(120deg,#262218e8,#111615ee);border:1px solid color-mix(in srgb,var(--offer-accent) 35%,transparent);border-radius:16px;color:var(--offer-accent);box-shadow:none;animation:none;backdrop-filter:blur(12px)}
.hero-offers .campaign-banner-badge{font-size:9px;padding:5px 7px;letter-spacing:1px;transform:none;border-color:#d8bb7540}
.hero-offers .campaign-banner-copy strong{font-size:14px;color:#f4f1e9}.hero-offers .campaign-banner-copy>span{font-size:13px;margin-top:4px}.hero-offers .campaign-banner-action{font-size:11px;width:100%;text-align:right}
.hero-offers a:focus-visible{outline:2px solid var(--offer-accent);outline-offset:4px}.hero-offers a:hover .hero-offer-link{text-decoration:underline}
@media(min-width:901px){.hero:has(.hero-offers>:not([hidden])){padding-block:45px;min-height:760px}.hero:has(.hero-offers>:not([hidden])) .hero-copy{width:37%;max-width:470px}.hero:has(.hero-offers>:not([hidden])) h1{font-size:clamp(46px,4vw,66px)}.hero:has(.hero-offers>:not([hidden])) .hero-copy>p:not(.eyebrow){margin-block:18px}}
@media(max-width:900px){.hero:has(.hero-offers>:not([hidden])){padding-bottom:380px;min-height:0}.hero-offers{max-width:520px}.hero:has(.hero-offers>:not([hidden])) .hero-copy{width:100%}}
@media(max-width:580px){.hero:has(.hero-offers>:not([hidden])){padding-bottom:310px}.hero .hero-holiday{padding:18px}.hero .hero-holiday .holiday-title{font-size:19px}.hero .hero-holiday .holiday-discount{font-size:22px}.hero-offers{margin-top:22px}}
.hero .hero-holiday a.holiday-discount::after{content:none}

/* Full-cover seasonal art direction: no offer card or panel. */
.hero .hero-holiday{padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;overflow:visible;isolation:auto}
.hero .hero-holiday .holiday-copy{padding:0}
.hero .hero-holiday .holiday-eyebrow{padding:0;margin:0 0 8px;letter-spacing:3px;font-size:11px}
.hero .hero-holiday .holiday-title{padding:0;max-width:420px;font-size:22px;font-weight:500;color:var(--season-light)}
.hero .hero-holiday .holiday-discount{margin-top:16px;padding:0;border:0;font-size:clamp(30px,3vw,46px);line-height:1.2;letter-spacing:-1px;text-shadow:0 0 35px color-mix(in srgb,var(--season-glow) 25%,transparent)}
.hero .hero-holiday .holiday-discount small{letter-spacing:0;font-size:12px;line-height:1.6;max-width:380px}.hero .hero-holiday .holiday-discount small:first-child{margin-top:12px}
.hero .hero-holiday .hero-offer-link{font-size:13px;letter-spacing:0;margin-top:15px}
.hero-offers #campaign-banner{padding:16px 0;background:none;border:0;border-radius:0;backdrop-filter:none;box-shadow:none;border-top:1px solid #e8c57635}.hero-offers .campaign-banner-copy>span{font-size:25px;font-weight:700}.hero-offers .campaign-banner-badge{border:0;padding:0}
body[data-holiday] .hero::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 78% 12%,color-mix(in srgb,var(--season-glow) 25%,transparent),transparent 55%),linear-gradient(0deg,color-mix(in srgb,var(--season-dark) 50%,transparent),transparent 35%);mix-blend-mode:screen}
body[data-holiday] .hero h1 span{color:var(--season-light)}
body[data-holiday] .hero .hero-copy>.eyebrow{color:var(--season-light)}
body[data-holiday] .hero .button{background:linear-gradient(120deg,var(--season-light),color-mix(in srgb,var(--season-glow) 75%,white));box-shadow:0 6px 35px color-mix(in srgb,var(--season-glow) 20%,transparent)}
.hero>.hero-season-scene{position:absolute;right:8%;top:24px;width:320px;height:220px;z-index:2;pointer-events:none;transform:scale(.85);transform-origin:top right;opacity:.95}
.hero>.hero-season-particles{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.65}
.hero>.hero-season-particles i{position:absolute;display:block}
.hero .hero-offers{margin-top:28px}
@media(min-width:901px){.hero:has(.hero-holiday){min-height:780px}.hero:has(.hero-holiday) .hero-copy{width:39%;max-width:490px}}
@media(max-width:900px){.hero>.hero-season-scene{top:auto;bottom:145px;right:2%;transform:scale(.6)}.hero:has(.hero-holiday){padding-bottom:340px}.hero .hero-holiday .holiday-title{font-size:21px}.hero .hero-holiday .holiday-discount{font-size:34px}}
@media(prefers-reduced-motion:reduce){.hero-season-particles i{animation:none;opacity:.2}}

/* Fade only the artwork; keep text and controls fully opaque. */
.hero{background:transparent;--hero-edge-fade:linear-gradient(to bottom,transparent 0,#000 90px,#000 calc(100% - 130px),transparent 100%)}
.hero::before{content:'';position:absolute;inset:0;z-index:0;background:#080909;pointer-events:none;-webkit-mask-image:var(--hero-edge-fade);mask-image:var(--hero-edge-fade)}
.hero>.atmosphere,body[data-holiday] .hero::after,.hero>.hero-season-particles{-webkit-mask-image:var(--hero-edge-fade);mask-image:var(--hero-edge-fade)}
@media(max-width:580px){.hero{--hero-edge-fade:linear-gradient(to bottom,transparent 0,#000 65px,#000 calc(100% - 95px),transparent 100%)}}
