/* Home hero only: preserve desktop while fixing the narrow-screen Ferrari composition. */
.hero{position:relative;isolation:isolate;overflow:hidden;background:#15191b;color:#fff}
.hero-grid{position:relative;display:block;width:min(var(--max),calc(100% - 40px));min-height:620px;z-index:0}
.hero-media{position:absolute;inset:0 auto 0 50%;width:100vw;height:100%;min-height:0;margin:0;transform:translateX(-50%);z-index:-1;overflow:hidden;background:#15191b}
.hero-media picture{position:absolute;inset:0;width:100%;height:100%;display:block}
.hero-media picture img,.hero-media .gallery-hero{display:block;width:100%;height:100%;object-fit:cover;object-position:center 57%}
.hero-media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(4,9,12,.95) 0%,rgba(5,9,12,.79) 28%,rgba(5,10,13,.40) 55%,rgba(6,9,11,.13) 100%),linear-gradient(0deg,rgba(3,7,10,.62),transparent 32%);z-index:3}
.hero-copy{position:relative;z-index:2;min-height:620px;max-width:100%;width:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:68px 0 62px;text-align:left;color:#fff}
.hero-copy .eyebrow{color:#4cbfcc;letter-spacing:.16em}
.hero-copy h1{color:#fff;font-size:clamp(42px,4.2vw,64px);line-height:1.06;max-width:510px;text-wrap:balance}
.hero-copy .lead{color:#f2f4f5;max-width:470px;line-height:1.6;font-size:clamp(16px,1.36vw,19px);text-wrap:pretty}
.hero-copy .button-row{gap:12px;margin:24px 0 0}
.hero-copy .button-row .button{background:#111315;color:#fff!important;border:1px solid rgba(255,255,255,.68)}
.hero-copy .button-row .button-ghost{background:#fff;color:#111315!important;border:1px solid #fff}
.hero-copy .trust-row{display:flex;flex-wrap:wrap;gap:26px;margin-top:45px;color:#fff}
.hero-copy .trust-row div{padding-left:14px;border-left:2px solid #4cbfcc}
.hero-copy .trust-row strong{color:#fff;font-size:14px}
.hero-copy .trust-row span{color:#d8dce0;font-size:12px}
@media(max-width:900px){
 .hero-grid{min-height:0}
 .hero-copy{min-height:690px;justify-content:flex-start;padding:38px 0 30px}
 .hero-copy h1{font-size:clamp(36px,5.4vw,52px)}
 .hero-copy .trust-row{margin-top:auto}
 .hero-media{inset:0 auto 0 50%;width:100vw;height:100%;min-height:0;margin:0}
 /* Original Ferrari image covers the tablet hero; gradients protect legibility. */
 .hero-media picture,.hero-media picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;mask-image:none;-webkit-mask-image:none}
 .hero-media:after{background:linear-gradient(180deg,rgba(5,9,12,.94) 0%,rgba(5,9,12,.72) 30%,rgba(5,9,12,.2) 61%,rgba(5,9,12,.86) 100%)}
}
@media(max-width:600px){
 .hero-grid{width:min(var(--max),calc(100% - 28px));min-height:0}
 .hero-copy{min-height:clamp(675px,81svh,760px);padding:28px 0 25px;justify-content:flex-start}
 .hero-copy .eyebrow{font-size:10px;letter-spacing:.12em}
 .hero-copy h1{font-size:clamp(34px,9vw,42px);line-height:1.08;max-width:390px;margin:12px 0;text-wrap:pretty}
 .hero-copy .lead{font-size:15px;line-height:1.49;max-width:390px;margin:0;color:#f4f4f4}
 .hero-copy .button-row{display:grid;grid-template-columns:1fr;width:100%;gap:9px;margin-top:16px;max-width:390px}
 .hero-copy .button-row .button{width:100%;min-height:45px;padding:10px 14px}
 /* Full bleed soft backdrop, sourced only from the site's original F40 photo. */
 .hero-media{background:#171b1d}
 .hero-media:before{content:"";position:absolute;inset:-28px;background-image:url('/assets/images/f40-hero-960.webp');background-size:cover;background-position:center 56%;filter:blur(28px) brightness(.19);transform:scale(1.07);z-index:0}
 /* Foreground has native landscape aspect, so no Ferrari cropping at 375–440px. */
 .hero-media picture{position:absolute;top:50%;bottom:auto;left:0;width:100%;height:auto;aspect-ratio:1672 / 941;z-index:1;overflow:visible}
 .hero-media picture img,.hero-media .gallery-hero{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:1672 / 941;object-fit:contain;object-position:center;filter:brightness(.83);mask-image:linear-gradient(180deg,transparent 0%,#000 23%,#000 74%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 23%,#000 74%,transparent 100%)}
 .hero-media:after{z-index:2;background:linear-gradient(180deg,rgba(5,9,12,.91) 0%,rgba(5,9,12,.73) 38%,rgba(5,9,12,.03) 62%,rgba(5,9,12,.40) 79%,rgba(5,9,12,.89) 100%)}
 .hero-copy .trust-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:9px;margin-top:auto}
 .hero-copy .trust-row div{min-width:0;padding-left:9px}
 .hero-copy .trust-row strong{font-size:11px;line-height:1.35}
 .hero-copy .trust-row span{font-size:10px;line-height:1.35;margin-top:3px}
}
@media(max-width:390px){
 .hero-copy{min-height:680px;padding-top:25px}
 .hero-copy h1{font-size:clamp(32px,8.6vw,35px)}
 .hero-copy .lead{font-size:14.5px}
 .hero-copy .trust-row{gap:5px}
 .hero-copy .trust-row div{padding-left:7px}
 .hero-copy .trust-row strong{font-size:10px}
 .hero-copy .trust-row span{font-size:9px}
}
