/* Local homepage redesign; all changes are scoped to this homepage. */
body:has(.oct-home){background:#111214;color:#f4f4f0}
body:has(.oct-home) .site-decor,body:has(.oct-home) .site-shell__skew,body:has(.oct-home) .tire-tracks{display:none!important}
.oct-home{background:#111214;font-family:var(--font-sans);position:relative;z-index:3}
.oct-home *{box-sizing:border-box}
.modern-wrap{width:min(var(--site-body-max,1600px),88%);margin-inline:auto}
.oct-home .modern-hero{height:100dvh;min-height:0;position:relative;overflow:hidden;background:#141517}
.modern-hero__image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:65% 50%}
.modern-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,12,.89),rgba(8,10,12,.24) 70%),linear-gradient(0deg,#111214,transparent 45%)}
.modern-hero__content{position:relative;padding-top:235px}
.modern-eyebrow{font-size:11px;font-weight:700;letter-spacing:.19em;color:#ffe200;margin:0 0 24px}
.oct-home h1{font-size:clamp(48px,5.8vw,86px);line-height:1.02;letter-spacing:normal;font-weight:700;margin:0 0 28px;max-width:780px}
.oct-home h1 span{color:#ffe200}
.modern-lead{font-size:17px;line-height:1.65;max-width:435px;color:#d1d2d4}
.modern-actions{display:flex;gap:30px;align-items:center;flex-wrap:wrap;margin-top:32px}
.modern-button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;background:#ffe200;color:#111!important;padding:18px 24px;font-size:14px;font-weight:700;min-height:54px;transition:background .2s}
.modern-button:hover{background:#fff172}.modern-textlink{font-size:13px;font-weight:700;color:inherit;padding-block:14px;border-bottom:1px solid #747577}
.modern-specs{position:absolute;bottom:38px;left:6%;display:grid;grid-template-columns:1fr auto auto 44px;align-items:center;gap:65px;border-top:1px solid #ffffff30;padding-top:26px}
.modern-specs small{display:block;font-size:10px;letter-spacing:.14em;color:#a5a7ab}.modern-specs strong{display:block;font-size:20px;margin-top:12px}.modern-specs strong span{color:#ffe200}.modern-specs b{font-size:38px;letter-spacing:normal}.modern-specs>a{border:1px solid #ffffff50;width:44px;height:44px;display:grid;place-items:center}
.modern-finder{display:flex;align-items:center;justify-content:space-between;padding-block:48px;border-bottom:1px solid #343538;gap:30px}.modern-finder .modern-eyebrow{margin-bottom:12px}.oct-home h2{font-size:clamp(29px,3vw,45px);line-height:1.12;letter-spacing:normal;font-weight:700;margin:0}.modern-finder h2{font-size:28px}.modern-button--light{background:#f1f1eb}
.modern-section{padding-block:88px}.modern-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}.modern-heading .modern-eyebrow{margin-bottom:16px}.modern-projects{display:grid;grid-template-columns:1fr 1fr;gap:28px}.modern-project__media{position:relative;aspect-ratio:1.6;overflow:hidden;background:#222}.modern-project img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.modern-project:hover img{transform:scale(1.035)}.modern-project__media>span{position:absolute;top:20px;left:20px;background:#111c;padding:9px 12px;font-size:9px;letter-spacing:.12em}.modern-project__caption{padding:24px 0;border-bottom:1px solid #343538;display:flex;justify-content:space-between;gap:20px}.oct-home h3{font-size:24px;font-weight:700;letter-spacing:normal;margin:0 0 10px}.modern-project__caption p{font-size:13px;color:#a5a7ab;margin:0}.modern-project__caption>span{font-size:28px;color:#ffe200}
.modern-engineering{display:grid;grid-template-columns:1fr 1fr;background:#1c1d20}.modern-engineering>img{width:100%;height:100%;min-height:380px;object-fit:cover}.modern-engineering>div{padding:54px}.modern-engineering p:not(.modern-eyebrow){font-size:15px;line-height:1.8;color:#bfc1c5;margin:24px 0}.modern-engineering .modern-textlink{display:inline-block}
.modern-world{display:grid;grid-template-columns:1fr 1fr;gap:28px}.modern-world>a{position:relative;min-height:350px;overflow:hidden;display:flex;align-items:end}.modern-world img{position:absolute;width:100%;height:100%;object-fit:cover}.modern-world>a:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#080a0ded,transparent)}.modern-world>a>div{position:relative;z-index:1;padding:32px}.modern-world small{font-size:10px;color:#ffe200;letter-spacing:.17em}.modern-world h3{margin-top:15px;max-width:350px}.modern-world span{font-size:12px;display:block;margin-top:22px}
.modern-partner{padding:80px 0 90px;background:#202124;border-top:1px solid #38393b}.modern-partner h2{max-width:620px}.modern-partner p:not(.modern-eyebrow){color:#bfc1c5;max-width:540px;line-height:1.8}.oct-home a:focus-visible{outline:3px solid #ffe200;outline-offset:5px}
@media(max-width:900px){.oct-home .modern-hero{height:100dvh;min-height:0}.modern-hero__content{padding-top:180px}.modern-specs{gap:24px;grid-template-columns:1fr auto auto}.modern-specs>a{display:none}.modern-specs b{font-size:29px}.modern-engineering>div{padding:32px}.modern-finder{align-items:start;flex-direction:column}.modern-section{padding-block:60px}}
@media(max-width:600px){.modern-wrap{width:88%}.oct-home .modern-hero{height:100dvh;min-height:0;max-height:none}.modern-hero__content{padding-top:160px}.modern-hero__image{object-position:65% center}.modern-hero__shade{background:linear-gradient(90deg,#080a0dd9,#080a0d55),linear-gradient(0deg,#111214,transparent)}.modern-lead{font-size:15px}.modern-actions{gap:14px}.modern-specs{grid-template-columns:1fr 1fr;bottom:28px;gap:18px}.modern-specs>div:first-child{grid-column:1/-1}.modern-specs strong{font-size:17px;margin-top:7px}.modern-heading{align-items:start;flex-direction:column;gap:16px}.modern-projects,.modern-world,.modern-engineering{grid-template-columns:1fr}.modern-engineering>img{min-height:0;aspect-ratio:1.5}.modern-world>a{min-height:320px}.modern-partner{padding-block:60px}.oct-home h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.oct-home *{transition:none!important;scroll-behavior:auto!important}}

/* Preserve the original O.CT typefaces and their available weights. */
.oct-home h1,.oct-home h2,.oct-home h3,
.modern-lead,.modern-project__caption,.modern-specs,
.modern-world,.modern-button,.modern-textlink {
    font-family:var(--font-display);
}
.modern-lead,.modern-project__caption p {font-weight:300}

/* Revision 2: a shared centered grid and an editorial lower homepage. */
.oct-home .modern-specs{left:50%;transform:translateX(-50%);margin-inline:0}
.next-finder{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding-block:80px;border-bottom:1px solid #3b3c3e;scroll-margin-top:30px}
.next-intro h2{font-size:clamp(40px,4vw,64px)}
.next-intro>p:last-child{color:#bfc1c5;line-height:1.8;margin-top:20px}
.next-brands{display:grid;grid-template-columns:1fr 1fr;column-gap:36px}
.next-brands a{font-family:var(--font-display);display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid #3b3c3e;font-size:25px;font-weight:700}
.next-brands a:hover,.next-tech__details a:hover,.next-story:hover h2{color:#ffe200}
.next-brands a>span:last-child{color:#ffe200;font-size:20px}.next-brands__all{color:#ffe200}
.next-tech{display:grid;grid-template-columns:1.25fr 1fr;gap:40px 70px;padding-block:90px}
.next-tech__heading{grid-column:1/-1}.next-tech__heading h2{font-size:clamp(42px,5vw,76px)}.next-tech__heading h2 span{color:#a4a6aa}
.next-tech__visual{position:relative;min-height:390px}.next-tech__visual img{width:100%;height:100%;object-fit:cover}.next-tech__visual>span{position:absolute;bottom:20px;left:20px;background:#111d;padding:10px 14px;font-family:var(--font-display);letter-spacing:.12em;font-size:12px}
.next-tech__details{align-self:center}.next-tech__details>p{font-size:17px;line-height:1.9;color:#bfc1c5;margin:0 0 30px}.next-tech__details>a{display:flex;gap:25px;align-items:center;padding:22px 0;border-top:1px solid #3b3c3e;font-family:var(--font-display);font-size:24px}.next-tech__details>a span{font-size:12px;color:#888}.next-tech__details strong{flex:1}
.next-universe{padding-bottom:90px}.next-story{display:grid;grid-template-columns:260px 1fr 50px;gap:50px;align-items:center;border-top:1px solid #3b3c3e;padding:30px 0}.next-story:last-child{border-bottom:1px solid #3b3c3e}.next-story img{width:100%;aspect-ratio:1.7;object-fit:cover}.next-story small{font-family:var(--font-display);color:#ffe200;letter-spacing:.14em}.next-story h2{margin-top:12px;font-size:36px}.next-story p{color:#bfc1c5;margin-top:12px}.next-story>span{color:#ffe200;font-size:32px}
@media(max-width:900px){.next-finder{gap:35px;grid-template-columns:1fr}.next-tech{gap:30px;grid-template-columns:1fr 1fr}.next-story{grid-template-columns:180px 1fr 30px;gap:25px}}
@media(max-width:600px){.next-finder,.next-tech{padding-block:55px}.next-tech{grid-template-columns:1fr}.next-tech__visual{min-height:260px}.next-brands{column-gap:24px}.next-brands a{font-size:22px}.next-story{grid-template-columns:1fr 30px;gap:20px}.next-story img{grid-column:1/-1}.next-story h2{font-size:30px}.next-universe{padding-bottom:55px}}

/* Unobstructed vehicle image with a single linked caption below the rule. */
.oct-home .modern-specs--linked{padding-bottom:20px;color:inherit;text-decoration:none}
.oct-home .modern-specs__description h1{font-family:var(--font-display);font-size:20px;font-weight:700;line-height:1.3;letter-spacing:normal;margin:0 0 10px;max-width:none}
.oct-home .modern-specs__description h1 span{color:#ffe200}
.modern-specs__description p{font-family:var(--font-display);font-size:17px;font-weight:300;line-height:1.5;color:#a5a7ab;margin:0}
.modern-specs__arrow{border:1px solid #ffffff50;width:44px;height:44px;display:grid;place-items:center;transition:color .2s,border-color .2s}
.modern-specs--linked:hover .modern-specs__arrow{color:#ffe200;border-color:#ffe200}
@media(max-width:900px){.modern-specs__arrow{display:none}}
@media(max-width:600px){.oct-home .modern-specs__description h1{font-size:20px}.modern-specs__description p{font-size:16px}}

/* Motion study: reveal once; gentle desktop-only image depth. */
.oct-home .modern-specs--linked{border-top:0}
.modern-specs--linked::before{content:'';position:absolute;top:0;left:0;width:100%;height:1px;background:#ffffff40;transform-origin:left;animation:oct-line-in 1.15s cubic-bezier(.2,.7,.2,1) both;transition:background .3s}
.modern-specs--linked>div{animation:oct-caption-in .75s .45s both}
.modern-specs--linked>div:nth-child(2){animation-delay:.6s}
.modern-specs--linked>div:nth-child(3){animation-delay:.7s}
.modern-specs--linked:hover::before,.modern-specs--linked:focus-visible::before{background:#ffe200}
.modern-specs__arrow{transition:transform .3s,color .3s,border-color .3s,background .3s}
.modern-specs--linked:hover .modern-specs__arrow,.modern-specs--linked:focus-visible .modern-specs__arrow{transform:translate(3px,-3px);background:#ffe200;color:#111;border-color:#ffe200}
@keyframes oct-line-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes oct-caption-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.oct-home .modern-specs--linked::before,.oct-home .modern-specs--linked>div{animation:none}.oct-home .modern-specs__arrow{transform:none!important}}



/* Main vehicle information scales with the screen, keeping the O.CT typefaces. */
.oct-home .modern-specs__description h1 {
    font-size:clamp(28px,1.65vw,42px);
    line-height:1.15;
    margin-bottom:12px;
}
.modern-specs__description p {
    font-size:clamp(20px,1.02vw,26px);
    line-height:1.4;
}
.modern-specs__description {min-width:0}
@media(max-width:600px) {
    .oct-home .modern-specs__description h1 {font-size:28px}
    .modern-specs__description p {font-size:19px}
}


/* The content slides over the full-height vehicle stage. */
.modern-content-panel{position:relative;z-index:2;background:#111214}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){
    .modern-hero-stage{position:relative;height:145dvh;z-index:1}
    .oct-home .modern-hero{position:sticky;top:0;transform:translate3d(0,var(--oct-hero-rise,0px),0)}
    .modern-content-panel{margin-top:-45dvh;box-shadow:0 -22px 70px #0005}
}


/* Original homepage groups, rebuilt with a shared rule and image rhythm. */
.home-sections{--home-section-gap:102px;padding-block:var(--home-section-gap) 90px}
.home-sections__heading{display:flex;align-items:baseline;justify-content:space-between;gap:28px;padding-top:0;margin-bottom:30px}
.home-sections__heading>span,.home-sections__label{font-family:var(--font-display);font-size:14px;letter-spacing:.14em;color:#a5a7ab}
.home-sections__heading h2{font-size:clamp(28px,2.2vw,42px)}
.home-sections__featured,.home-sections__topics{display:grid;gap:32px;margin-bottom:var(--home-section-gap)}
.home-sections__featured{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-sections__topics{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-section-card{display:block;min-width:0}
.home-section-card__image{overflow:hidden;aspect-ratio:1.65;background:#202124}
.home-section-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.home-section-card:hover img{transform:scale(1.035)}
.home-section-card__caption{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #44464a;padding:22px 0;transition:border-color .25s}
.home-section-card:hover .home-section-card__caption,.home-section-card:focus-visible .home-section-card__caption{border-color:#ffe200}
.oct-home .home-section-card h3{font-family:var(--font-display);font-size:clamp(26px,1.6vw,36px);margin-bottom:8px}
.home-section-card p{font-family:var(--font-display);font-size:clamp(18px,1.05vw,23px);font-weight:300;line-height:1.5;color:#a5a7ab;margin:0}
.home-section-card__caption>span{font-size:27px;color:#ffe200;transition:transform .25s}
.home-section-card:hover .home-section-card__caption>span{transform:translate(3px,-3px)}
.home-distributors{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;border-bottom:1px solid #44464a;padding-block:0 36px}
.home-distributors__intro h2{margin-top:18px;font-size:clamp(30px,2.5vw,46px)}
.home-distributors__intro>img{width:100%;max-height:250px;object-fit:contain;object-position:left bottom;margin-top:28px}
.home-distributors__map{position:relative;display:flex;align-items:end;min-height:340px;overflow:hidden}
.home-distributors__map>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.65;transition:transform .7s}
.home-distributors__map:hover>img{transform:scale(1.035)}
.home-distributors__map>div{position:relative;width:100%;padding:30px;background:linear-gradient(transparent,#111214)}
.oct-home .home-distributors__map h3{font-family:var(--font-display);font-size:30px}
.home-distributors__map span{font-family:var(--font-display);font-size:20px;color:#ffe200}
[data-home-reveal]{--home-reveal-delay:0ms}
.home-reveal-pending{opacity:0;transform:translateY(24px)}
.home-reveal-ready{transition:opacity .7s var(--home-reveal-delay),transform .7s var(--home-reveal-delay)}
@media(max-width:900px){.home-sections__topics{gap:22px}.home-sections__heading{align-items:start;flex-direction:column;gap:12px}.home-distributors{grid-template-columns:1fr}.home-sections{padding-block:var(--home-section-gap) 60px}}
@media(max-width:600px){.home-sections__featured,.home-sections__topics{grid-template-columns:1fr;gap:32px;margin-bottom:var(--home-section-gap)}.home-distributors{gap:25px}.home-distributors__map{min-height:280px}}
@media(prefers-reduced-motion:reduce){.home-reveal-pending{opacity:1;transform:none}.home-section-card:hover img,.home-distributors__map:hover>img{transform:none}}



/* Original O.CT track artwork, softened behind the homepage content. */
.modern-content-panel::before{
    content:'';
    position:absolute;
    top:-43.5dvh;
    left:0;
    width:100%;
    height:calc(100% + 43.5dvh);
    background:url('/images/brand/bold-line-long.png') no-repeat right top;
    background-size:100% auto;
    filter:grayscale(1);
    opacity:.55296;
    pointer-events:none;
    z-index:0;
    -webkit-mask-image:linear-gradient(to bottom,transparent,#000 180px,#000 85%,transparent);
    mask-image:linear-gradient(to bottom,transparent,#000 180px,#000 85%,transparent);
}
.modern-content-panel>.home-sections{position:relative;z-index:1}
@media(max-width:600px){
    .modern-content-panel::before{background-size:180% auto;background-position:75% top;opacity:.38016}
}


/* Balance the vehicle sizes while retaining both original photographs. */
.home-sections__featured .home-section-card:first-child .home-section-card__image img{
    transform:scale(1.04);
    transform-origin:50% 52%;
}
.home-sections__featured .home-section-card:nth-child(2) .home-section-card__image img{
    transform:scale(1.38);
    transform-origin:50% 57%;
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
    .home-sections__featured .home-section-card:first-child:hover .home-section-card__image img{transform:scale(1.065)}
    .home-sections__featured .home-section-card:nth-child(2):hover .home-section-card__image img{transform:scale(1.405)}
}

/* Match the hero link arrow to the yellow arrows in the body. */
.modern-specs__arrow{color:#ffe200;font-size:27px;border:0;background:transparent}
.modern-specs--linked:hover .modern-specs__arrow,
.modern-specs--linked:focus-visible .modern-specs__arrow{color:#ffe200;background:transparent;border-color:transparent}


.modern-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .65s,visibility .65s}
.modern-slide.is-current{opacity:1;visibility:visible}
.modern-marine-copy{position:absolute;right:12%;top:28%;width:min(530px,40%);padding:30px;background:#111a;backdrop-filter:blur(6px)}
.modern-marine-copy>img{width:290px;max-width:100%;margin-bottom:24px}
.oct-home .modern-marine-copy h1{font-size:clamp(36px,3vw,62px);font-family:var(--font-display);letter-spacing:normal;line-height:1.05;margin-bottom:20px}
.modern-marine-copy p{font-family:var(--font-display);font-size:clamp(19px,1.1vw,25px);line-height:1.6;font-weight:300;margin-bottom:24px}
.modern-slider-controls{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:20px;z-index:4}
.modern-slider-controls button{font-family:var(--font-display);font-size:15px;color:#c3c4c6;border-bottom:2px solid transparent;padding:5px 0;cursor:pointer;white-space:nowrap}
.modern-slider-controls button[aria-pressed=true]{color:#ffe200;border-color:#ffe200}
.modern-slider-controls button:focus-visible{outline:2px solid #ffe200;outline-offset:3px}
@media(max-width:900px){.modern-marine-copy{right:6%;top:25%;width:60%}}
@media(max-width:600px){.modern-marine-copy{left:6%;right:6%;width:auto;top:22%;padding:22px}.modern-marine-copy>img{width:220px;margin-bottom:15px}.modern-marine-copy p{font-size:18px}.modern-marine-copy .modern-button{padding:12px 18px}.modern-slider-controls{bottom:8px}}
@media(prefers-reduced-motion:reduce){.modern-slide{transition:none}}

/* Readable metric labels on both hero slides. */
.modern-specs small{font-size:clamp(14px,.75vw,18px);letter-spacing:.08em;line-height:1.4;margin-top:5px;color:#b7b9bd}
@media(max-width:600px){.modern-specs small{font-size:13px}}

/* Quiet side controls in place of the textual slide selector. */
.modern-slider-controls{inset:0;left:0;bottom:0;transform:none;display:block;pointer-events:none}
.modern-slider-controls button{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:56px;padding:12px;border:1px solid #ffffff20;border-radius:2px;background:#10111420;color:#ffffffa6;display:grid;place-items:center;pointer-events:auto;transition:color .2s,background .2s,border-color .2s}
.modern-slider-controls .modern-slider-prev{left:24px}
.modern-slider-controls .modern-slider-next{right:24px}
.modern-slider-controls svg{width:24px;height:24px}
.modern-slider-controls button:hover{color:#ffe200;background:#10111480;border-color:#ffffff50}
@media(max-width:600px){.modern-slider-controls .modern-slider-prev{left:10px}.modern-slider-controls .modern-slider-next{right:10px}.modern-slider-controls button{width:40px;height:48px;padding:8px}}

/* Brighter Marine photograph, retaining contrast behind the bottom caption. */
.modern-slide:first-child .modern-hero__shade{
    background:linear-gradient(90deg,rgba(8,10,12,.18),rgba(8,10,12,.04) 70%),linear-gradient(0deg,rgba(10,11,13,.98),rgba(10,11,13,.78) 16%,rgba(10,11,13,.3) 32%,transparent 55%);
}


/* Keep vehicle photography clear; concentrate contrast behind the bottom information. */
.modern-slide:not(:first-child) .modern-hero__shade{
    background:linear-gradient(0deg,rgba(10,11,13,.98) 0%,rgba(10,11,13,.8) 14%,rgba(10,11,13,.32) 27%,rgba(10,11,13,.06) 42%,transparent 60%);
}
@media(max-width:600px){
    .modern-slide:not(:first-child) .modern-hero__shade{
        background:linear-gradient(0deg,rgba(10,11,13,.98) 0%,rgba(10,11,13,.86) 22%,rgba(10,11,13,.38) 38%,transparent 62%);
    }
}
