/*
Theme Name: Car Drift Showroom
Author: CAR DRIFT LTD
Description: Independent automotive digital showroom for CAR DRIFT.
Version: 1.2.1
Requires PHP: 8.0
License: GNU General Public License v2 or later
Text Domain: car-drift
*/
@font-face{font-family:Manrope;src:url('assets/manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--cd-ink:#191c1e;--cd-accent:#6fe7ee;--paper:#f5f6f6;--muted:#596167;--line:#d0d5d7;--dark:#101315;--gutter:6vw}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{min-height:100vh;display:flex;flex-direction:column;margin:0;background:var(--paper);color:var(--cd-ink);font:16px/1.65 Manrope,Arial,sans-serif}.site-main{flex:1}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.06;letter-spacing:-.055em;font-weight:600}h1{font-size:clamp(44px,6.3vw,88px)}h2{font-size:clamp(34px,4.4vw,64px)}h3{font-size:28px}a{color:inherit;text-underline-offset:6px}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}[hidden]{display:none!important}:focus-visible{outline:3px solid #087880;outline-offset:5px}.detail-gallery :focus-visible,.site-header :focus-visible,.site-footer :focus-visible{outline-color:var(--cd-accent)}.skip-link{position:absolute;top:-80px;left:20px;padding:12px;background:var(--cd-accent);z-index:100}.skip-link:focus{top:10px}
.site-header{height:88px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;background:var(--dark);color:white;position:relative;z-index:20}.brand{display:flex}.brand img{width:190px;height:auto}.site-header nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:500}.site-header nav a{text-decoration:none;position:relative;padding:12px 0}.site-header nav a:not(.nav-cta):after{content:'';position:absolute;bottom:4px;left:0;right:0;height:1px;background:var(--cd-accent);transform:scaleX(0);transform-origin:left;transition:transform 180ms}.site-header nav a:hover:after,.site-header nav a[aria-current]:after{transform:scaleX(1)}.site-header nav .nav-cta{margin-left:12px;padding:12px 19px;border:1px solid #7c898d}.nav-cta:hover{background:#fff;color:var(--dark)}.nav-cta span{margin-left:20px}.nav-toggle{display:none;color:white;background:transparent;border:1px solid #697276;min-height:44px;padding:9px 15px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:54px;padding:15px 24px;background:var(--cd-ink);color:white;font-size:14px;font-weight:600;text-decoration:none;border:1px solid var(--cd-ink);transition:background-color 180ms,color 180ms,transform 180ms}.button:hover{background:#344247;transform:translateY(-2px)}.button:active{transform:translateY(0)}.button span{font-size:23px;font-weight:400}.text-link{display:inline-flex;align-items:center;gap:22px;font-size:14px;font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;padding:9px 0;min-height:44px}.text-link:hover{color:#087880}.eyebrow,.section-label{font-size:12px;letter-spacing:.02em;font-weight:500;text-transform:none}
/* A car-led composition; typography sits above the roofline, never over the product. */
.drive-stage{height:760px;max-height:calc(100vw * .64);min-height:600px;position:relative;overflow:hidden;background:#c1c4c7}.drive-car{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 59%;display:block}.drive-title{position:absolute;top:30px;left:var(--gutter);right:var(--gutter);z-index:2}.drive-title>p{font-size:13px;margin:0 0 12px}.drive-title h1{font-size:clamp(70px,9.5vw,142px);line-height:1;letter-spacing:-.067em;margin:0}.drive-title h1 span{display:inline-block}.drive-bottom{position:absolute;bottom:45px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:end;z-index:2;gap:30px}.drive-bottom p{font-size:13px;line-height:1.6;margin:0;max-width:330px}.editorial-note{position:absolute;left:var(--gutter);bottom:12px;font-size:10px;color:#363b3e;z-index:2}.drive-intro{padding:100px var(--gutter);display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:center}.drive-intro h2{margin:0}.drive-intro p{font-size:19px;max-width:490px;line-height:1.65;color:var(--muted);margin-bottom:19px}
/* User-directed gallery: no autoplay or scroll interception. */
.detail-gallery{padding:78px var(--gutter) 24px;background:var(--dark);color:#fff}.detail-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.detail-heading h2{margin:0}.detail-heading>p{color:#aeb8bc;font-size:15px;max-width:340px;margin-bottom:5px}.detail-controls{display:flex;gap:35px;border-bottom:1px solid #485053;margin-bottom:32px}.detail-controls button{background:transparent;color:#aeb8bc;font-size:14px;padding:16px 0 19px;border:0;position:relative;min-height:52px}.detail-controls button:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--cd-accent);transform:scaleX(0);transform-origin:left;transition:transform 220ms}.detail-controls button[aria-selected=true]{color:white}.detail-controls button[aria-selected=true]:after{transform:scaleX(1)}.detail-controls button:hover{color:white}.detail-panel{display:grid;grid-template-columns:1.6fr 1fr;gap:0;min-height:500px}.detail-panel+.detail-panel{margin-top:32px}.detail-panel[role=tabpanel]{margin-top:0}.detail-photo{min-width:0;position:relative;overflow:hidden;background:#292d2f}.detail-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;display:block}.detail-photo-wide img{object-fit:cover;object-position:center}.detail-copy{padding:36px 0 30px 45px;align-self:center}.detail-topic{color:var(--cd-accent);font-size:12px;display:block;margin-bottom:22px}.detail-copy h3{font-size:clamp(29px,3vw,43px);margin-bottom:25px}.detail-copy>p{font-size:14px;color:#b7c0c4;max-width:370px}.detail-copy dl{display:grid;grid-template-columns:1fr;gap:0;margin:26px 0 16px;font-size:12px}.detail-copy dt{color:#8e9ca1;border-top:1px solid #3f494d;padding-top:10px}.detail-copy dd{margin:0 0 10px;color:#edf0f1}.detail-copy .text-link{font-size:12px}.detail-copy .text-link:hover{color:var(--cd-accent)}.gallery-note{font-size:10px;color:#9ca9ae;margin:18px 0 0}
.stock-hub{padding:90px var(--gutter);background:#f5f6f6}.stock-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.stock-heading h2{margin:0}.stock-heading>p{font-size:16px;color:var(--muted);margin-bottom:3px}.stock-hub .cd-stock-enquiry{background:transparent;border:0;border-top:1px solid var(--line);padding:34px 0 0;box-shadow:none}.stock-hub .cd-stock-intro h2{font-size:26px;letter-spacing:-.03em}.stock-hub .cd-stock-label{display:none}.viewing-desk{background:#e0e5e6;padding:70px var(--gutter);display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.viewing-desk h2{font-size:clamp(30px,3.3vw,46px);margin:0}.viewing-desk>div+div{align-self:center}.viewing-desk>div+div>p{color:#4d5b60;font-size:15px;max-width:490px}.section-label{margin-bottom:22px;color:#506166}
.site-footer{background:#101315;color:#b8c2c6;padding:65px var(--gutter) 25px}.footer-top{display:grid;grid-template-columns:1.15fr 1fr 1.3fr;gap:45px}.footer-brand{font-size:32px;font-weight:800;letter-spacing:-1.5px;color:#fff;text-decoration:none;line-height:1.1}.footer-brand span{font-size:10px;line-height:1.5;letter-spacing:.03em;font-weight:400;display:block;color:#a3b1b7;margin-top:18px}.footer-direct a{display:block;text-decoration:none;font-size:14px;margin-bottom:12px;overflow-wrap:anywhere}.footer-address h2{font:500 12px/1.4 Manrope,sans-serif;letter-spacing:0;color:white;margin:0 0 12px}.footer-address p{font-size:12px;margin:0 0 10px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #354044;margin-top:40px;padding-top:23px;font-size:11px;gap:20px}.footer-bottom div{display:flex;gap:24px}.footer-bottom a{text-decoration:none}.site-footer a:hover{color:var(--cd-accent)}
.page-heading{padding:30px var(--gutter) 58px;background:#dfe4e6;color:var(--cd-ink);position:relative;overflow:hidden}.breadcrumbs{font-size:12px;color:#546168;margin-bottom:42px}.page-heading .eyebrow{color:#4d626b;margin-bottom:14px}.page-heading h1{max-width:1040px;margin:0}.page-content{max-width:1060px;margin:auto;padding:58px 6% 80px;min-height:300px}.page-content p,.page-content li{color:#4d5c64}.page-content .lead{font-size:24px;line-height:1.5;color:var(--cd-ink);margin-bottom:28px}.page-content h2{font-size:32px;margin:42px 0 18px}.page-content h3{font-size:24px}.page-content a{overflow-wrap:anywhere}.wide-content{max-width:1440px}.cd-page-vehicles .page-heading{min-height:330px;padding-right:40%}.cd-page-vehicles .page-heading:after{content:'';position:absolute;inset:0 0 0 57%;background:url('assets/studio-detail.webp') center/cover;mask-image:linear-gradient(90deg,transparent,#000 22%)}.cd-page-vehicles .page-heading>*{position:relative;z-index:1}.cd-page-vehicles .page-content>p{max-width:780px}.cd-page-vehicles .cd-stock-enquiry{margin-top:32px}.cd-page-contact .page-heading{padding-bottom:46px}.cd-page-contact .page-content{max-width:1280px;padding-top:38px}.contact-layout{display:flex;flex-direction:column;gap:40px}.contact-layout>div:nth-child(2){order:0;background:white;padding:42px;box-shadow:0 10px 45px #14252c08}.contact-layout>div:first-child{order:1;display:grid;grid-template-columns:1fr 1fr;gap:5px 50px;border-top:1px solid var(--line);padding-top:35px}.contact-layout>div:first-child>.lead,.contact-layout>div:first-child>p:nth-child(2),.contact-layout>div:first-child>p:last-child{grid-column:1/-1}.contact-layout>div:first-child>.lead{margin:0}.contact-layout>div:first-child>p:nth-child(2){font-size:14px;max-width:780px}.contact-layout>div:first-child>h2{font-size:18px;letter-spacing:-.02em;margin:15px 0 6px;grid-row:3}.contact-layout>div:first-child>p:nth-child(4){grid-column:1;grid-row:4;font-size:14px}.contact-layout>div:first-child>p:nth-child(6){grid-column:2;grid-row:4;font-size:14px}.contact-layout>div:first-child>p:last-child{font-size:12px;margin:0}.cd-page-buying-guide .page-content{max-width:1060px;padding-left:13%;counter-reset:guide}.cd-page-buying-guide .page-content h2{position:relative;border-top:1px solid var(--line);padding-top:30px}.cd-page-buying-guide .page-content h2:before{counter-increment:guide;content:counter(guide,decimal-leading-zero);position:absolute;left:-75px;top:30px;font-size:20px;letter-spacing:0;color:#55717d}.cd-page-about .page-content{max-width:1150px;margin:50px auto;background:white;padding:60px 9%}.cd-page-about .page-content .lead{font-size:clamp(25px,2.8vw,38px);line-height:1.45}.cd-page-about .page-content h2{border-top:1px solid var(--line);padding-top:28px}.page-content details{padding:25px 0;border-bottom:1px solid var(--line)}.page-content summary{cursor:pointer;font-size:21px;font-weight:500;line-height:1.5;padding-right:25px}.page-content details p{margin:20px 0 0;font-size:16px;max-width:720px}.page-content details[open] summary{color:#087880}.cd-page-privacy .page-content{max-width:960px;font-size:15px}.cd-page-privacy .page-content h2{font-size:26px}.vehicle-detail .page-content{max-width:1280px}.vehicle-main-image{margin:0 0 35px;background:#dfe4e6}.vehicle-main-image img{display:block;width:100%;height:auto;max-height:740px;object-fit:contain}.vehicle-detail .page-heading h1{font-variant-numeric:tabular-nums}.home-extra:empty{display:none}
@media(min-width:1600px){:root{--gutter:max(6vw,calc((100vw - 1440px)/2))}.drive-stage{height:840px}.drive-car{object-position:center 58%}}
@media(max-width:1050px){.site-header nav{gap:20px}.site-header nav .nav-cta{display:none}.brand img{width:175px}.drive-stage{min-height:570px}.drive-title h1{font-size:10vw}.drive-intro{gap:8%;padding-top:70px;padding-bottom:70px}.detail-panel{grid-template-columns:1.2fr 1fr}.detail-copy{padding-left:30px}.detail-heading>p{max-width:290px}.footer-top{gap:25px}.footer-direct a{font-size:12px}}
@media(max-width:760px){:root{--gutter:6vw}.site-header{height:72px;padding:0 6%}.brand img{width:166px}.nav-toggle{display:block;font-size:12px}.site-header nav{display:none;position:absolute;left:0;right:0;top:72px;background:var(--dark);padding:12px 6% 22px;border-top:1px solid #3e474b}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-header nav a{padding:13px 0}.site-header nav a:after{display:none}.drive-stage{height:660px;min-height:0;max-height:none;background:#c0c3c5}.drive-title{top:29px}.drive-title>p{font-size:12px;margin-bottom:16px}.drive-title h1{font-size:clamp(55px,16vw,86px);line-height:1.02;max-width:450px}.drive-title h1 span{display:block}.drive-car{top:130px;height:390px;width:155%;max-width:none;left:-27.5%;object-fit:cover;object-position:center 65%}.drive-bottom{bottom:45px;gap:18px;display:block}.drive-bottom p{font-size:12px;margin-bottom:15px}.drive-bottom .button{width:100%;min-height:52px}.editorial-note{font-size:9px;bottom:16px;right:6%}.drive-intro{display:block;padding:55px 6%}.drive-intro h2{font-size:40px;margin-bottom:28px}.drive-intro p{font-size:16px;margin-bottom:12px}.detail-gallery{padding:48px 6% 21px}.detail-heading{display:block;margin-bottom:25px}.detail-heading h2{font-size:40px;margin-bottom:22px}.detail-heading>p{font-size:14px;max-width:none}.detail-controls{gap:0;justify-content:space-between;margin-bottom:22px}.detail-controls button{font-size:11px;max-width:32%;padding:12px 0 15px;line-height:1.5;text-align:left}.detail-panel{display:block;min-height:0}.detail-photo{aspect-ratio:1.15;min-height:0;margin:0 -6.82%}.detail-photo img{object-position:center}.detail-copy{padding:29px 0 12px}.detail-topic{margin-bottom:15px}.detail-copy h3{font-size:34px;margin-bottom:20px}.detail-copy>p{font-size:15px;max-width:none}.detail-copy dl{grid-template-columns:1fr 1.4fr;font-size:12px}.detail-copy dt{padding:12px 0;margin:0}.detail-copy dd{border-top:1px solid #3f494d;padding:12px 0;margin:0}.gallery-note{font-size:9px;line-height:1.5}.stock-hub{padding:52px 6%}.stock-heading{display:block;margin-bottom:28px}.stock-heading h2{font-size:40px;margin-bottom:20px}.stock-heading>p{font-size:15px}.stock-hub .cd-stock-intro h2{font-size:25px}.viewing-desk{display:block;padding:46px 6%}.viewing-desk h2{font-size:34px;margin-bottom:25px}.viewing-desk>div+div>p{font-size:15px}.site-footer{padding:42px 6% 25px}.footer-top{grid-template-columns:1fr;gap:29px}.footer-brand{font-size:30px}.footer-direct a{font-size:15px}.footer-address p{font-size:12px}.footer-bottom{flex-wrap:wrap;font-size:11px;gap:18px;margin-top:28px}.page-heading{padding:22px 6% 37px}.breadcrumbs{margin-bottom:30px}.page-heading h1{font-size:43px}.page-heading .eyebrow{font-size:11px}.page-content{padding:35px 6% 55px}.page-content .lead{font-size:22px}.page-content h2{font-size:29px}.cd-page-vehicles .page-heading{min-height:340px;padding-right:6%;padding-bottom:165px}.cd-page-vehicles .page-heading:after{inset:55% 0 0 28%;mask-image:linear-gradient(90deg,transparent,#000 22%);background-position:center 40%}.cd-page-vehicles .page-heading h1{font-size:45px}.cd-page-contact .page-heading{padding-bottom:32px}.cd-page-contact .page-content{padding:24px 4% 45px}.contact-layout>div:nth-child(2){padding:27px 18px}.contact-layout>div:first-child{display:block;padding:27px 3% 0}.contact-layout>div:first-child>h2{margin-top:24px}.contact-layout>div:first-child>.lead{margin-bottom:16px;font-size:22px}.contact-layout>div:first-child>p:last-child{margin-top:20px}.cd-page-buying-guide .page-content{padding-left:17%}.cd-page-buying-guide .page-content h2:before{left:-41px;font-size:16px;top:31px}.cd-page-about .page-content{margin:25px 5%;padding:30px 7%}.cd-page-about .page-content h2{font-size:27px}.page-content summary{font-size:19px}.page-content details p{font-size:15px}.vehicle-detail .page-content{padding:24px 5% 50px}.vehicle-main-image{margin-left:-5.6%;margin-right:-5.6%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Reading rhythm for long customer-managed titles. */
h1,h2,h3{text-wrap:balance}.cd-page-contact .page-heading h1{font-size:clamp(43px,5.1vw,74px);max-width:950px}.cd-page-contact .page-heading{padding-bottom:44px}.cd-enquiry legend{font-weight:600}.stock-hub .cd-stock-intro h2{font-size:30px!important;font-weight:500}.stock-hub .cd-stock-intro{padding-right:20px}.stock-hub .cd-request-prompts dt{font-weight:600}
.cd-gallery-controls{margin:-16px 0 32px}.cd-gallery-thumbnails{display:flex;flex-wrap:wrap;gap:12px}.cd-gallery-thumb{width:104px;height:76px;padding:3px;border:1px solid #9daab0;background:transparent;cursor:pointer}.cd-gallery-thumb[aria-pressed=true]{border:3px solid #087880;padding:1px}.cd-gallery-thumb-image{width:100%;height:100%;object-fit:cover;display:block}.cd-gallery-status{font-size:12px;margin:12px 0 0;color:var(--muted)}
@media(max-width:760px){.drive-stage{background:#b9bec4}.drive-car{width:170%;left:-35%;top:170px;height:360px;object-position:center;mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 83%,transparent 100%)}.drive-bottom{bottom:44px}.drive-title{top:28px}.cd-gallery-thumb{width:88px;height:66px}}
.vehicle-main-image{aspect-ratio:3/2;overflow:hidden}.vehicle-main-image>img{width:100%;height:100%;max-height:none;object-fit:contain}
/* Navigation remains usable if scripting is unavailable. */
@media(max-width:760px){.site-header:not(.nav-ready){height:auto;min-height:72px;flex-wrap:wrap;padding-top:18px;padding-bottom:12px}.site-header:not(.nav-ready) .nav-toggle{display:none}.site-header:not(.nav-ready) nav{display:flex;position:static;flex-basis:100%;flex-wrap:wrap;gap:0 22px;padding:12px 0 0;margin-top:14px}.site-header:not(.nav-ready) nav a{font-size:13px}}
@media(min-width:761px){.detail-panel{min-height:570px}.cd-page-vehicles .page-heading:after{inset:24px 6% 24px 62%;mask-image:none}}
@media(max-width:760px){.cd-page-vehicles .page-heading:after{inset:54% 6% 18px 36%;mask-image:none}}
.detail-gallery-status{min-height:18px;font-size:12px;line-height:18px;color:#b7c0c4;margin:-16px 0 16px}

/* Functional notice stays in the page flow, clear of mobile controls. */
.cookie-notice{position:relative;display:flex;align-items:center;gap:32px;padding:22px var(--gutter);background:#e8eeef;border-bottom:1px solid #b9c7cc;color:var(--cd-ink)}.cookie-notice-copy{flex:1;min-width:0;max-width:980px}.cookie-kicker{font-size:9px;font-weight:700;letter-spacing:.16em;color:#48646d;margin:0 0 8px}.cookie-notice h2{font-size:22px;letter-spacing:-.025em;line-height:1.2;margin:0 0 8px}.cookie-notice p:not(.cookie-kicker){font-size:12px;line-height:1.65;margin:0;max-width:850px}.cookie-notice a{font-weight:600}.cookie-notice-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;flex-shrink:0}.cookie-notice-actions button{min-height:44px;padding:10px 22px;background:#1c272c;border:1px solid #1c272c;color:#fff;font-size:12px;font-weight:600}.cookie-notice-actions button:hover{background:#31515c}.cookie-notice-actions .cookie-forget{background:transparent;color:#243d47;border-color:#758e98;font-weight:500}.cookie-notice-actions .cookie-forget:hover{background:#d6e1e4}.cookie-notice-status:empty,.cookie-feedback:empty{display:none}.cookie-notice p.cookie-notice-status{margin-top:10px;font-weight:600}.cookie-feedback{font-size:12px;color:#b7c0c4;margin:18px 0 0}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:12px 24px}.footer-bottom>div a{margin:0}.cookie-notice h2:focus{outline:3px solid #087880;outline-offset:4px}
@media(max-width:760px){.cookie-notice{display:block;padding:18px 6%}.cookie-notice h2{font-size:20px}.cookie-notice-actions{margin-top:14px;align-items:flex-start}.cookie-notice-actions button{min-width:130px}.cookie-notice-actions .cookie-forget{font-size:11px}.cookie-notice p:not(.cookie-kicker){font-size:12px}}
