.vip-scroll{position:relative;height:calc(var(--stage-height) + var(--scroll-distance));overflow:visible;background:#100c0d;border-block:1px solid #492326;--pin-top:88px;--stage-height:clamp(560px,77svh,650px);--scroll-distance:1800px}
.vip-scroll.spin-ready{height:calc(var(--stage-height) + var(--scroll-distance))}
.vip-stage{position:sticky;top:var(--pin-top);height:var(--stage-height);isolation:isolate;overflow:hidden;display:flex;flex-direction:column;color:#fff}
.paddock-backdrop{position:absolute;inset:0;z-index:-3;background:url('assets/ferrari-race-background.webp') center 58%/cover no-repeat}
.paddock-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(7,9,14,.96) 0%,rgba(7,9,14,.88) 30%,rgba(7,9,14,.6) 57%,rgba(7,9,14,.4) 100%),linear-gradient(0deg,rgba(7,9,14,.85),transparent 48%,rgba(7,9,14,.2))}
.paddock-content{display:grid;grid-template-columns:44% 56%;flex:1;min-height:0;position:relative;padding:24px 4.4%;align-items:center}
.paddock-copy{z-index:2;pointer-events:none}.paddock-copy button{pointer-events:auto}
.paddock-logos{display:flex;align-items:center;gap:20px;margin-bottom:20px;height:40px}.paddock-logos img{width:36px;height:36px;object-fit:contain}.paddock-logos .ferrari-mark{height:40px;width:34px}.paddock-logos .f1-mark{width:95px;height:29px;filter:brightness(0) invert(1)}.paddock-logos>span{height:25px;width:1px;background:#ffffff45}
.paddock-copy .eyebrow{font-size:12px;line-height:1.4;letter-spacing:.1em;color:#eee8eb;margin:0 0 12px}
.paddock-copy h2{font-size:clamp(38px,4.1vw,64px);line-height:1.08;letter-spacing:-.055em;margin:0 0 16px;white-space:nowrap}.paddock-copy h2 em,.editorial .paddock-copy h2 em{color:#ff4944}
.paddock-name{font-size:22px;line-height:1.3;font-weight:550;margin:0}
.paddock-description{font-size:16px;line-height:1.5;color:#e0dadd;max-width:460px;margin-top:10px}
.paddock-actions{display:flex;align-items:center;gap:28px;margin-top:20px}
.paddock-invite{display:flex;gap:12px;align-items:center}.paddock-invite>strong{font:500 48px/1 var(--heading);letter-spacing:-.06em;color:#ff4d45}.paddock-invite>div{font-size:9px;letter-spacing:.16em}.paddock-invite>div>span{font-size:10px;letter-spacing:0;color:#c9bdc3;display:block;margin-top:5px;max-width:125px;line-height:1.4}
.paddock-copy .vip-button{margin:0;background:#e92c27;min-height:46px;padding:12px 18px;font-size:13px;gap:18px;white-space:nowrap}.paddock-copy .vip-button:hover{background:#ff4038}.paddock-copy .vip-button>span{font-size:23px}
.paddock-small{font-size:10px;line-height:1.5;color:#c6bac1;margin-top:12px}
.car-scene{position:relative;width:115%;margin-left:-8%;height:100%;min-height:0;align-self:stretch;isolation:isolate}.car-scene canvas{width:100%;height:100%;display:block;position:relative;z-index:1;pointer-events:none}.car-plinth{position:absolute;width:82%;height:22%;background:radial-gradient(ellipse,#000b,transparent 70%);bottom:18%;left:9%;z-index:-1}#car-loading{position:absolute;inset:45% 0 auto;text-align:center;font-size:9px;letter-spacing:.18em;color:#dbc3c9}#car-loading span{display:block;font-size:20px;letter-spacing:.5em;margin-top:8px}#car-loading[hidden]{display:none}.vip-scroll.static-scene{height:auto!important}.static-scene .vip-stage{position:relative;top:0}
@media(min-width:1600px){.paddock-logos{margin-bottom:24px}.paddock-copy .eyebrow{font-size:14px}.paddock-name{font-size:26px}.paddock-description{font-size:18px;max-width:540px}.paddock-actions{margin-top:24px}.paddock-invite>strong{font-size:58px}.paddock-copy .vip-button{font-size:15px;min-height:50px}.paddock-small{font-size:11px}}
@media(max-width:1000px) and (min-width:761px){.paddock-content{grid-template-columns:48% 52%;padding-inline:30px}.paddock-copy h2{font-size:39px}.paddock-name{font-size:20px}.paddock-description{font-size:15px}.paddock-copy .eyebrow{font-size:10px}.paddock-actions{gap:15px}.paddock-invite>div>span{display:none}.paddock-copy .vip-button{font-size:12px;padding-inline:14px;gap:12px}.car-scene{width:117%;margin-left:-9%}}
@media(max-width:760px){.vip-scroll{--pin-top:72px;--stage-height:650px;--scroll-distance:1400px}.paddock-content{display:flex;flex-direction:column;align-items:stretch;padding:22px 20px 0}.paddock-copy{flex-shrink:0}.paddock-logos{height:32px;gap:16px;margin-bottom:16px}.paddock-logos img{width:29px;height:29px}.paddock-logos .ferrari-mark{width:28px;height:32px}.paddock-logos .f1-mark{width:80px;height:25px}.paddock-logos>span{height:21px}.paddock-copy .eyebrow{font-size:10px;letter-spacing:.06em;margin-bottom:12px}.paddock-copy h2{font-size:38px;margin-bottom:14px}.paddock-name{font-size:18px}.paddock-description{font-size:14px;line-height:1.45;margin-top:9px;max-width:360px}.paddock-actions{gap:20px;margin-top:16px}.paddock-invite{gap:9px}.paddock-invite>strong{font-size:42px}.paddock-invite>div{font-size:8px;letter-spacing:.09em}.paddock-invite>div>span{display:none}.paddock-copy .vip-button{font-size:12px;min-height:40px;padding:10px 14px;gap:14px}.paddock-copy .vip-button>span{font-size:20px}.paddock-small{font-size:9px;line-height:1.4;margin-top:10px}.car-scene{position:relative;flex:1;width:calc(100% + 40px);height:auto;min-height:180px;margin:0 -20px}.car-plinth{bottom:16%}.paddock-backdrop{background-position:58% center}.paddock-shade{background:linear-gradient(180deg,rgba(7,9,14,.91),rgba(7,9,14,.85) 45%,rgba(7,9,14,.55) 72%,rgba(7,9,14,.85)),linear-gradient(90deg,#07090d55,transparent)}.car-scene #car-loading{font-size:7px}}
@media(max-width:370px){.paddock-copy h2{font-size:34px}.paddock-copy .eyebrow{font-size:9px}.paddock-name{font-size:17px}.paddock-description{font-size:13px}.paddock-actions{gap:15px}}
/* Keep the supplied photograph and 3D car from competing in the same frame. */
.paddock-backdrop{opacity:var(--photo-opacity,1)}
.car-scene{opacity:var(--car-reveal,0)}

/* Reserve the pinned scene before its model loads so later section links stay in place. */
@media(prefers-reduced-motion:reduce){.vip-scroll{height:auto}}

/* The package follows the pinned car within the same Ferrari experience. */
#vip.vip-section{overflow:visible;background:#100c0d}
#vip .vip-scroll{border:0}
.paddock-package{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;padding-block:62px 70px;border-top:1px solid #613034;color:#fff;position:relative}
.paddock-package .eyebrow{font-size:11px;color:#ff827b;letter-spacing:.13em;margin-bottom:16px}
.paddock-package h3{font-size:29px;line-height:1.2;letter-spacing:-.035em;font-weight:600}
.paddock-benefits ul{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:30px}
.paddock-benefits li{position:relative;padding:15px 0 15px 20px;border-top:1px solid #ffffff1c;font-size:15px;line-height:1.45;color:#eae4e7}
.paddock-benefits li::before{content:'+';position:absolute;top:15px;left:0;color:#ff625b;font-weight:600}
.paddock-weekend{padding-left:38px;border-left:1px solid #613034}
.paddock-race-days{list-style:none;padding:0;margin:28px 0 0}
.paddock-race-days li{display:grid;grid-template-columns:85px 1fr;align-items:baseline;gap:18px;padding:19px 0;border-top:1px solid #ffffff1c}
.paddock-race-days time{font-size:18px;font-weight:650;color:#ff827b;white-space:nowrap}
.paddock-race-days strong{font-size:16px;line-height:1.4;font-weight:550}
.paddock-race-days li:last-child strong{font-size:20px;color:#fff;font-weight:650}
@media(min-width:1600px){.paddock-benefits li,.paddock-race-days strong{font-size:17px}.paddock-package h3{font-size:32px}}
@media(max-width:1100px){
 #vip .vip-scroll{--pin-top:124px}
 .paddock-package{gap:40px;grid-template-columns:1.15fr 1fr}
 .paddock-weekend{padding-left:28px}.paddock-benefits ul{column-gap:20px}
 .paddock-race-days li{grid-template-columns:75px 1fr;gap:12px}
}
@media(max-width:760px){
 #vip .vip-scroll{--pin-top:128px}
 .paddock-package{grid-template-columns:1fr;gap:36px;padding-block:38px 44px}
 .paddock-package .eyebrow{font-size:10px;margin-bottom:12px}
 .paddock-package h3{font-size:26px}
 .paddock-benefits ul{margin-top:23px;grid-template-columns:1fr}
 .paddock-benefits li{font-size:15px;padding-block:13px}
 .paddock-benefits li::before{top:13px}
 .paddock-weekend{padding-left:0;border-left:0}
 .paddock-race-days{margin-top:23px}
 .paddock-race-days li{grid-template-columns:75px 1fr;padding-block:17px}
 .paddock-race-days time{font-size:17px}.paddock-race-days strong{font-size:15px}
 .paddock-race-days li:last-child strong{font-size:18px}
}
