
:root{--ink:#0a0b0d;--panel:#111315;--panel2:#17191c;--gold:#D8BD84;--cream:#f3ead8;--muted:#b9b9b9;--line:rgba(255,255,255,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#fff;font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3{font-family:Manrope,Arial,sans-serif;margin-top:0}
.site-header{position:absolute;inset:0 0 auto;z-index:20;background:rgba(7,8,9,.94);border-bottom:1px solid var(--line)}
.contact-bar{height:56px;display:flex;justify-content:flex-end;align-items:center;gap:38px;padding:0 4.5vw;border-bottom:1px solid var(--line);font-size:13px}.contact-bar a,.contact-bar>span{display:flex;gap:9px;align-items:center}.contact-bar a::first-letter,.contact-bar>span::first-letter{color:var(--gold)}
.nav-row{height:78px;display:grid;grid-template-columns:170px 1fr auto;align-items:center;gap:30px;padding:0 4.5vw}.brand{display:flex;align-items:center;height:100%}.brand img{width:138px;max-height:60px;object-fit:contain}.site-nav{display:flex;justify-content:center;align-items:center;gap:36px;text-transform:uppercase;font-size:13px;letter-spacing:.04em}.site-nav a{padding:30px 0 24px;opacity:.9;position:relative}.site-nav a.active,.site-nav a[aria-current="page"],.site-nav a:hover{color:var(--cream)}.site-nav a.active:after,.site-nav a[aria-current="page"]:after{content:"";position:absolute;left:0;right:0;bottom:17px;height:2px;background:var(--gold)}.header-cta{padding:16px 28px;background:linear-gradient(135deg,var(--gold),var(--gold));color:#fff;text-transform:uppercase;font-weight:700;font-size:13px;border-radius:4px}.menu-toggle{display:none}
.hero{min-height:700px;padding:194px 4.5vw 54px;display:flex;align-items:center;position:relative;overflow:hidden;background-color:#090b0e;background-image:linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.93) 30%,rgba(5,6,7,.66) 48%,rgba(5,6,7,.12) 72%,rgba(5,6,7,.02) 100%),linear-gradient(0deg,rgba(4,5,6,.5),rgba(4,5,6,.02)),url('assets/brand-library/services-workbench.webp');background-repeat:no-repeat;background-position:center,center,right center;background-size:100% 100%,100% 100%,62% cover}.hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,#090a0b)}.hero-content{position:relative;z-index:1;max-width:680px}.eyebrow{margin:0 0 14px;color:var(--gold);font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.hero h1{font-size:clamp(64px,6.1vw,102px);line-height:.88;letter-spacing:-.045em;text-transform:uppercase;margin:0 0 28px}.hero h1 span{color:var(--gold)}.hero-copy{max-width:620px;font-size:20px;line-height:1.55;margin:0 0 28px}.hero-actions{display:flex;gap:16px;flex-wrap:wrap}.button{min-height:54px;padding:0 28px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;font-weight:700;text-transform:uppercase;font-size:14px;letter-spacing:.03em}.button-primary{background:linear-gradient(135deg,var(--gold),var(--gold));color:#12100c}.button-secondary{border:1px solid rgba(255,255,255,.7);background:rgba(0,0,0,.25)}.trust-strip{display:grid;grid-template-columns:repeat(4,minmax(132px,1fr));gap:14px;margin-top:38px;max-width:820px}.trust-item{min-height:76px;display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.015));backdrop-filter:blur(8px);transition:transform .25s ease,border-color .25s ease,background .25s ease}.trust-item:hover{transform:translateY(-3px);border-color:rgba(216,189,132,.42);background:linear-gradient(145deg,rgba(216,189,132,.09),rgba(255,255,255,.018))}.trust-item>span{display:flex;flex-direction:column;gap:3px;min-width:0}.trust-item strong{font-family:Manrope,Arial,sans-serif;font-size:12px;line-height:1.2;text-transform:uppercase;letter-spacing:.025em;color:#fff}.trust-item small{font-size:11px;line-height:1.3;color:#aeb1b6}.trust-icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;color:#f3eee4}.trust-icon svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.trust-icon .accent{stroke:var(--gold)}
.services-showcase{padding:40px 2vw 72px;background:radial-gradient(circle at 50% 0,rgba(255,255,255,.035),transparent 30%),#0c0d0f}.services-heading{text-align:center;margin:0 auto 28px}.services-heading .eyebrow{margin-bottom:10px}.services-heading h2{font-size:34px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;max-width:1480px;margin:0 auto}.service-card{min-height:210px;padding:27px 20px 25px;text-align:center;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#161719,#111214);box-shadow:inset 0 1px 0 rgba(255,255,255,.025);position:relative;overflow:hidden;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}.service-card:before{content:"";position:absolute;width:110px;height:110px;border-radius:50%;left:50%;top:0;transform:translate(-50%,-48%) scale(.7);background:radial-gradient(circle,rgba(216,189,132,.16),transparent 68%);opacity:0;transition:opacity .28s ease,transform .28s ease}.service-icon{width:60px;height:60px;display:grid;place-items:center;margin:0 auto 20px;color:#f5f1e8;position:relative;z-index:1;transition:transform .28s ease,color .28s ease}.service-icon svg{width:58px;height:58px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.service-icon .accent{stroke:var(--gold)}.service-card h3{font-size:17px;margin:0 0 10px;transition:color .28s ease}.service-card p{margin:0;color:#b8b8b8;font-size:13px;line-height:1.55}.service-card:hover{transform:translateY(-5px);border-color:rgba(216,189,132,.5);box-shadow:0 18px 38px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.04)}.service-card:hover:before{opacity:1;transform:translate(-50%,-40%) scale(1)}.service-card:hover .service-icon{transform:translateY(-3px);color:var(--gold)}.service-card:hover h3{color:var(--gold)}
.section,.precision-section{padding:110px 6vw}.section-light{background:#f2f0ea;color:#111}.precision-section{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;background:#11141a}.precision-copy h2,.commercial-panel h2,.story-copy h2,.coverage-copy h2,.contact-cta h2{font-size:clamp(42px,5vw,76px);line-height:.98;letter-spacing:-.045em}.precision-copy p:last-child,.commercial-panel p,.coverage-copy p{color:#b9bdc4;font-size:18px;line-height:1.7}.metric-stack{border-top:1px solid var(--line)}.metric-stack div{display:grid;grid-template-columns:110px 1fr;gap:20px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.metric-stack strong{color:var(--gold);font-size:38px}.commercial-section{background:#181c23}.commercial-panel{display:grid;grid-template-columns:1fr .82fr;gap:10vw;padding:74px 80px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(120deg,rgba(216,189,132,.08),transparent 40%),#11141a}.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:center}.story-visual{min-height:500px;background:#15171b;display:grid;place-items:center;position:relative;overflow:hidden}.story-visual span{position:absolute;left:28px;bottom:28px;color:var(--gold)}.key-shape{width:220px;height:220px;border:26px solid var(--gold);border-radius:50%;position:relative;opacity:.75}.key-shape:after{content:"";position:absolute;width:250px;height:30px;left:150px;top:72px;background:var(--gold)}.story-copy p{color:#5f646b;font-size:18px;line-height:1.7}.text-link{color:var(--gold);font-weight:700}.brand-band{display:grid;grid-template-columns:repeat(5,1fr);background:var(--gold);color:#16120c;padding:0 4vw}.brand-band p{text-align:center;margin:0;padding:22px 12px;border-right:1px solid rgba(0,0,0,.15);border-top:1px solid rgba(0,0,0,.15);text-transform:uppercase;font-size:12px;font-weight:700}.coverage-section{display:grid;grid-template-columns:1fr .8fr;gap:8vw}.coverage-orbit{aspect-ratio:1;display:grid;place-items:center;position:relative}.orbit{position:absolute;border:1px solid rgba(216,189,132,.38);border-radius:50%}.orbit-one{width:34%;height:34%}.orbit-two{width:62%;height:62%}.orbit-three{width:90%;height:90%}.coverage-orbit strong{color:var(--gold);font-size:28px}.coverage-orbit small{position:absolute;top:56%;color:#999}.contact-cta{padding:120px 7vw;background:#f2f0ea;color:#111}.contact-cta .button-secondary{border-color:#333}.site-footer{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px;padding:70px 6vw 30px;border-top:1px solid var(--line);color:#bbb}.footer-brand img{width:220px;margin-bottom:20px}.site-footer h3{color:#fff;font-size:14px}.site-footer a,.site-footer p{display:block;margin:0 0 10px;font-size:14px}.copyright{grid-column:1/-1;padding-top:28px;border-top:1px solid var(--line)}
.reveal{opacity:0;transform:translateY(20px);transition:.7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){.contact-bar{display:none}.nav-row{grid-template-columns:150px 1fr auto}.site-nav{gap:18px}.hero{padding-top:145px;background-size:100% 100%,100% 100%,74% auto}.service-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.site-header{position:absolute}.nav-row{height:72px;grid-template-columns:1fr auto}.brand img{width:118px;max-height:52px}.menu-toggle{display:block;background:transparent;border:1px solid var(--line);color:#fff;border-radius:4px;padding:10px 14px}.header-cta{display:none}.site-nav{display:none;position:absolute;top:76px;left:16px;right:16px;flex-direction:column;align-items:stretch;background:#0d0e10;padding:20px}.site-nav.open{display:flex}.site-nav a{padding:12px}.site-nav a.active:after,.site-nav a[aria-current="page"]:after{display:block;left:12px;right:12px;bottom:5px}.hero{min-height:760px;padding:135px 24px 46px;background-position:center,center,74% bottom;background-size:100% 100%,100% 100%,110% auto}.hero:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.32)}.hero-content{z-index:2}.hero h1{font-size:58px}.hero-copy{font-size:17px}.trust-strip{grid-template-columns:1fr 1fr;max-width:620px}.service-grid{grid-template-columns:1fr 1fr}.precision-section,.commercial-panel,.story-grid,.coverage-section{grid-template-columns:1fr}.commercial-panel{padding:50px 30px}.site-footer{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.hero{min-height:780px;background-position:center,center,78% bottom;background-size:100% 100%,100% 100%,125% auto}.hero h1{font-size:48px}.hero-actions{flex-direction:column}.button{width:100%}.trust-strip{grid-template-columns:1fr 1fr;gap:10px}.trust-item{min-height:68px;padding:11px}.trust-item small{display:none}.service-grid{grid-template-columns:1fr}.services-heading h2{font-size:28px}.brand-band{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr}.copyright{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Final header refinement */
@media (min-width: 1101px) {
  .site-header { backdrop-filter: blur(12px); }
  .nav-row { padding-left: clamp(34px, 4.5vw, 72px); padding-right: clamp(34px, 4.5vw, 72px); }
  .brand { justify-content: flex-start; }
  .header-cta { padding: 14px 24px; }
}

/* About page */
.about-page{background:#0b0d10}.about-hero{min-height:700px;padding:194px 4.5vw 70px;display:flex;align-items:center;position:relative;overflow:hidden;background-color:#090b0e;background-image:linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.93) 30%,rgba(5,6,7,.66) 48%,rgba(5,6,7,.12) 72%,rgba(5,6,7,.02) 100%),linear-gradient(0deg,rgba(4,5,6,.5),rgba(4,5,6,.02)),url('assets/hero-transit.jpg');background-repeat:no-repeat;background-position:center,right bottom,right bottom;background-size:100% 100%,100% 100%,66% auto}.about-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,#0b0d10)}.about-hero-copy{position:relative;z-index:2;max-width:760px}.breadcrumb{display:flex;gap:10px;color:#868b92;font-size:13px;margin:0 0 34px}.breadcrumb a{color:#d5d8dc}.about-hero h1{font-size:clamp(68px,7.2vw,116px);line-height:.86;letter-spacing:-.055em;text-transform:uppercase;margin:0 0 34px}.about-hero h1 span{color:var(--gold)}.about-hero-copy>p:last-child{max-width:650px;color:#b8bcc2;font-size:20px;line-height:1.65}.about-story{padding:120px 7vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:10vw}.about-story-lead h2,.section-intro h2,.expertise-copy h2,.trade-panel h2,.about-final-cta h2{font-size:clamp(46px,5.3vw,82px);line-height:.96;letter-spacing:-.045em;margin:0}.about-story-body .intro{font-family:Manrope,sans-serif;font-size:28px;line-height:1.45;color:#1b1d20;margin:0 0 44px}.story-columns{display:grid;grid-template-columns:1fr 1fr;gap:52px}.story-columns p{font-size:17px;line-height:1.8;color:#5b6066}.about-story blockquote{margin:52px 0 0;padding:30px 0 0;border-top:1px solid #cfcac0;font-family:Manrope,sans-serif;font-size:24px;line-height:1.5;color:var(--gold)}.about-stats{display:grid;grid-template-columns:repeat(4,1fr);background:var(--gold);color:#15120d;padding:0 5vw}.about-stats article{padding:54px 34px;border-right:1px solid rgba(0,0,0,.15)}.about-stats strong{font-size:64px;line-height:1}.about-stats strong span{font-size:.42em}.about-stats p{text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.06em;max-width:180px}.section-intro{max-width:820px}.section-intro.centered{text-align:center;margin:0 auto 56px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:58px}.value-card{min-height:290px;padding:34px;border:1px solid var(--line);background:linear-gradient(145deg,#16191d,#101216);transition:.28s}.value-card:hover{transform:translateY(-5px);border-color:rgba(216,189,132,.48)}.value-icon{width:58px;height:58px;display:grid;place-items:center;color:#f2eee6;margin-bottom:28px}.value-icon svg{width:54px;height:54px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.value-icon .accent{stroke:var(--gold)}.value-card h3{font-size:20px;margin:0 0 12px}.value-card p{color:#aeb3ba;line-height:1.7}.process-section{padding:120px 7vw}.process-track{display:grid;grid-template-columns:repeat(4,1fr);margin-top:70px;border-top:1px solid #cbc6bd}.process-track article{position:relative;padding:42px 35px 0 0}.process-track article:before{content:"";position:absolute;top:-6px;left:0;width:12px;height:12px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 7px rgba(216,189,132,.12)}.process-track article:not(:last-child):after{content:"→";position:absolute;right:18px;top:39px;color:var(--gold)}.process-track span{font-size:12px;color:var(--gold);font-weight:700}.process-track h3{font-size:20px;color:#16181b}.process-track p{color:#656a70;line-height:1.7}.expertise-section{display:grid;grid-template-columns:.82fr 1.18fr;gap:9vw;align-items:center;background:#11151b}.expertise-copy p:not(.eyebrow){color:#b7bcc3;font-size:18px;line-height:1.7}.text-link.light{color:var(--gold)}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.expertise-grid span{min-height:92px;display:grid;place-items:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.05em;color:#d7d9dc;transition:.25s}.expertise-grid span:hover{color:var(--gold);background:rgba(216,189,132,.06)}.trade-section{background:#181c23}.trade-panel{display:grid;grid-template-columns:1fr .9fr;gap:9vw;padding:78px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(120deg,rgba(216,189,132,.08),transparent 42%),#11141a}.trade-panel p{color:#b8bdc3;font-size:18px;line-height:1.7}.trade-tags{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.trade-tags span{border:1px solid rgba(255,255,255,.14);padding:10px 13px;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.about-final-cta{padding:120px 7vw;background:#f2f0ea;color:#111}.about-final-cta>p:not(.eyebrow){max-width:660px;color:#5f646a;font-size:18px;line-height:1.7}.about-outline{border:1px solid #222;color:#222}.about-final-cta .hero-actions{margin-top:30px}
@media(max-width:1000px){.about-hero{min-height:700px;padding-top:160px;background-size:100% 100%,100% 100%,74% auto}.about-story,.expertise-section,.trade-panel{grid-template-columns:1fr}.value-grid{grid-template-columns:1fr 1fr}.about-stats{grid-template-columns:1fr 1fr}.process-track{grid-template-columns:1fr 1fr;gap:40px}.process-track article:nth-child(2):after{display:none}}
@media(max-width:700px){.about-hero{min-height:760px;padding:135px 24px 60px;background-position:center,center,74% bottom;background-size:100% 100%,100% 100%,110% auto}.about-hero:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.32)}.about-hero h1{font-size:56px}.about-story,.about-values,.process-section,.expertise-section,.trade-section,.about-final-cta{padding:80px 24px}.about-story{grid-template-columns:1fr}.story-columns,.value-grid,.process-track{grid-template-columns:1fr}.about-stats{grid-template-columns:1fr 1fr;padding:0}.about-stats article{padding:38px 24px}.about-stats strong{font-size:50px}.process-track article:not(:last-child):after{display:none}.trade-panel{padding:38px 26px}.expertise-grid{grid-template-columns:1fr 1fr}}

@media(max-width:520px){.about-hero{min-height:780px;background-position:center,center,78% bottom;background-size:100% 100%,100% 100%,125% auto}}

/* Services page */
.services-page{background:#0b0d10}.services-hero{min-height:700px;padding:194px 4.5vw 74px;display:flex;align-items:center;position:relative;overflow:hidden;background-color:#090b0e;background-image:linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.93) 30%,rgba(5,6,7,.66) 48%,rgba(5,6,7,.12) 72%,rgba(5,6,7,.02) 100%),linear-gradient(0deg,rgba(4,5,6,.55),rgba(4,5,6,.02)),url('assets/hero-transit.jpg');background-repeat:no-repeat;background-position:center,right bottom,right bottom;background-size:100% 100%,100% 100%,66% auto}.services-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,#0b0d10)}.services-hero-copy{position:relative;z-index:2;max-width:800px}.services-hero h1{font-size:clamp(62px,6.8vw,108px);line-height:.9;letter-spacing:-.055em;text-transform:uppercase;margin:0 0 32px}.services-hero h1 span{color:var(--gold)}.services-hero-copy>p:not(.breadcrumb,.eyebrow){max-width:680px;color:#b8bcc2;font-size:20px;line-height:1.65}.service-jump{padding:110px 6vw}.service-jump-intro{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:50px}.service-jump-intro h2{font-size:clamp(42px,5vw,72px);line-height:1;margin:0;color:#111}.service-jump-grid{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #cbc6bd;border-left:1px solid #cbc6bd}.service-jump-grid a{min-height:170px;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;border-right:1px solid #cbc6bd;border-bottom:1px solid #cbc6bd;color:#181a1d;position:relative;transition:.25s}.service-jump-grid a:before{content:"";position:absolute;left:0;bottom:0;width:0;height:4px;background:var(--gold);transition:.3s}.service-jump-grid a:hover{background:#e8e4db;transform:translateY(-4px)}.service-jump-grid a:hover:before{width:100%}.service-jump-grid span{position:absolute;top:22px;color:var(--gold);font-size:12px;font-weight:700}.service-jump-grid strong{font-family:Manrope;font-size:17px}.service-jump-grid small{color:#73777c;margin-top:7px}.service-list{padding:30px 0}.service-feature{min-height:720px;display:grid;grid-template-columns:1fr 1fr;align-items:stretch;border-top:1px solid var(--line)}.service-feature.reverse .service-visual{order:2}.service-feature-copy{padding:110px clamp(48px,7vw,120px);display:flex;flex-direction:column;justify-content:center}.service-feature-copy h2{font-size:clamp(54px,6vw,90px);line-height:.92;letter-spacing:-.05em;margin:0 0 30px}.service-lead{font-size:20px;line-height:1.7;color:#c0c4ca;max-width:650px}.service-feature-copy ul{list-style:none;padding:0;margin:28px 0 38px;display:grid;grid-template-columns:1fr 1fr;gap:15px 28px}.service-feature-copy li{color:#d8dade;font-size:14px;padding-left:22px;position:relative}.service-feature-copy li:before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px;border:1px solid var(--gold);transform:rotate(45deg)}.service-feature-copy .button{align-self:flex-start}.service-visual{position:relative;min-height:620px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 70% 28%,rgba(216,189,132,.22),transparent 25%),linear-gradient(145deg,#181c22,#090b0e)}.service-visual:before{content:"";position:absolute;inset:7%;border:1px solid rgba(255,255,255,.08)}.service-visual:after{content:"";position:absolute;width:70%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(216,189,132,.15);box-shadow:0 0 80px rgba(216,189,132,.08)}.service-visual svg{position:relative;z-index:2;width:min(38%,220px);fill:none;stroke:#e8e9eb;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 20px 35px rgba(0,0,0,.5))}.service-visual svg .gold{stroke:var(--gold)}.visual-number{position:absolute;left:7%;bottom:4%;font-family:Manrope;font-size:clamp(100px,12vw,200px);font-weight:700;line-height:.8;color:rgba(255,255,255,.035);letter-spacing:-.08em}.visual-key{background:radial-gradient(circle at 35% 35%,rgba(216,189,132,.2),transparent 27%),linear-gradient(145deg,#13171e,#080a0d)}.visual-spare{background:radial-gradient(circle at 70% 70%,rgba(216,189,132,.18),transparent 30%),linear-gradient(160deg,#191b20,#090b0d)}.visual-cutting{background:linear-gradient(120deg,rgba(216,189,132,.08),transparent 45%),repeating-linear-gradient(0deg,transparent 0 45px,rgba(255,255,255,.025) 46px),#0d1014}.visual-programming{background:radial-gradient(circle at 50% 50%,rgba(216,189,132,.18),transparent 32%),linear-gradient(145deg,#151921,#080a0d)}.visual-ignition{background:radial-gradient(circle at 50% 45%,rgba(216,189,132,.2),transparent 30%),linear-gradient(160deg,#181b20,#090b0d)}.services-trust{padding:120px 6vw}.services-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#cec9be;border:1px solid #cec9be}.services-trust-grid article{padding:42px;background:#f2f0ea;min-height:230px}.services-trust-grid strong{display:block;font-size:52px;color:var(--gold);line-height:1;margin-bottom:24px}.services-trust-grid h3{color:#141619;font-size:19px}.services-trust-grid p{color:#666b71;line-height:1.7}.services-brands{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:center;background:#11151b}.services-brands h2{font-size:clamp(48px,5.5vw,82px);line-height:.95;letter-spacing:-.05em;margin:0 0 28px}.services-brands>div:first-child>p:not(.eyebrow){color:#b7bcc3;font-size:18px;line-height:1.7;margin-bottom:30px}.service-faq{padding:120px 7vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:10vw}.faq-heading h2{font-size:clamp(46px,5.4vw,78px);line-height:.96;letter-spacing:-.05em;color:#141619;margin:0}.faq-list details{border-top:1px solid #cfcac0}.faq-list details:last-child{border-bottom:1px solid #cfcac0}.faq-list summary{list-style:none;cursor:pointer;padding:27px 0;display:flex;justify-content:space-between;gap:20px;color:#181a1d;font-family:Manrope;font-weight:600;font-size:18px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--gold);font-size:25px;transition:.25s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:#62676d;line-height:1.75;margin:0;padding:0 50px 28px 0}.services-final-cta{padding:120px 7vw;background:#f2f0ea;color:#111}.services-final-cta h2{font-size:clamp(50px,6vw,88px);line-height:.94;letter-spacing:-.05em;margin:0 0 25px;max-width:1000px}.services-final-cta>p:not(.eyebrow){max-width:700px;color:#5f646a;font-size:18px;line-height:1.7}.services-final-cta .hero-actions{margin-top:32px}
@media(max-width:1100px){.services-hero{background-size:100% 100%,100% 100%,70% cover;background-position:center,center,82% center}.service-jump-grid{grid-template-columns:repeat(3,1fr)}.service-feature{min-height:620px}.service-feature-copy{padding:80px 50px}.services-brands,.service-faq{grid-template-columns:1fr}.services-trust-grid{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.services-hero{min-height:760px;padding:135px 24px 58px;background-position:center,center,68% bottom;background-size:100% 100%,100% 100%,115% auto}.services-hero:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.32)}.services-hero h1{font-size:54px}.service-jump{padding:80px 24px}.service-jump-intro{display:block}.service-feature,.service-feature.reverse{grid-template-columns:1fr}.service-feature.reverse .service-visual{order:0}.service-visual{min-height:430px}.service-feature-copy{padding:70px 24px 85px}.service-feature-copy ul{grid-template-columns:1fr}.services-trust,.services-brands,.service-faq,.services-final-cta{padding:80px 24px}.services-brands{gap:50px}.service-faq{gap:50px}}
@media(max-width:520px){.services-hero{min-height:780px;background-position:center,center,70% bottom;background-size:100% 100%,100% 100%,135% auto}.services-hero h1{font-size:47px}.service-jump-grid{grid-template-columns:1fr 1fr}.service-jump-grid a{min-height:140px;padding:18px}.services-trust-grid{grid-template-columns:1fr}.service-visual{min-height:350px}.service-feature-copy h2{font-size:50px}}

/* Commercial page */
.commercial-page{background:#0b0d10}.commercial-hero{min-height:700px;padding:194px 4.5vw 74px;display:flex;align-items:center;position:relative;overflow:hidden;background-color:#090b0e;background-image:linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.93) 30%,rgba(5,6,7,.66) 48%,rgba(5,6,7,.12) 72%,rgba(5,6,7,.02) 100%),linear-gradient(0deg,rgba(4,5,6,.6),rgba(4,5,6,.02)),url('assets/hero-transit.jpg');background-repeat:no-repeat;background-position:center,right bottom,right bottom;background-size:100% 100%,100% 100%,66% auto}.commercial-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,#0b0d10)}.commercial-hero-copy{position:relative;z-index:2;max-width:850px}.commercial-hero h1{font-size:clamp(62px,6.8vw,108px);line-height:.9;letter-spacing:-.055em;text-transform:uppercase;margin:0 0 32px}.commercial-hero h1 span{color:var(--gold)}.commercial-hero-copy>p:not(.breadcrumb,.eyebrow){max-width:720px;color:#b8bcc2;font-size:20px;line-height:1.65}.commercial-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw;padding:125px 7vw}.commercial-intro h2{font-size:clamp(48px,5.6vw,82px);line-height:.94;letter-spacing:-.05em;color:#141619;margin:0}.commercial-intro-copy>p{color:#656a70;line-height:1.8;font-size:17px}.commercial-intro-copy .lead-dark{font-family:Manrope;color:#1d2024;font-size:23px;line-height:1.55;margin-top:0}.commercial-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#cec9be;border:1px solid #cec9be;margin-top:42px}.commercial-proof span{background:#ebe8e1;padding:25px 22px;color:#64696f;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.commercial-proof strong{display:block;color:var(--gold);font-size:34px;letter-spacing:-.04em;margin-bottom:8px}.commercial-sectors{padding:125px 6vw}.commercial-sectors .section-intro>p:not(.eyebrow){color:#aeb3ba;max-width:650px;margin:18px auto 55px;line-height:1.7}.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.sector-grid article{position:relative;min-height:355px;padding:40px;background:#11151a;overflow:hidden;transition:.3s}.sector-grid article:hover{background:#171b21;transform:translateY(-4px)}.sector-grid svg{width:62px;fill:none;stroke:#dfe1e4;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-bottom:44px}.sector-grid svg .gold{stroke:var(--gold)}.sector-grid h3{font-size:21px;margin:0 0 14px}.sector-grid p{color:#aeb3ba;line-height:1.7;margin:0}.sector-number{position:absolute;right:22px;top:18px;font-family:Manrope;font-size:70px;font-weight:700;color:rgba(255,255,255,.035);line-height:1}.commercial-services{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;padding:125px 7vw}.commercial-services-copy{align-self:start;position:sticky;top:170px}.commercial-services h2{font-size:clamp(50px,5.6vw,82px);line-height:.94;letter-spacing:-.05em;color:#141619;margin:0 0 28px}.commercial-services-copy>p:not(.eyebrow){color:#666b71;line-height:1.75;font-size:17px;margin-bottom:34px}.commercial-capability-list{border-top:1px solid #cbc6bd}.commercial-capability-list article{display:grid;grid-template-columns:70px 1fr;gap:25px;padding:32px 0;border-bottom:1px solid #cbc6bd}.commercial-capability-list span{color:var(--gold);font-family:Manrope;font-weight:700}.commercial-capability-list h3{color:#181a1d;font-size:21px;margin:0 0 9px}.commercial-capability-list p{color:#666b71;line-height:1.7;margin:0}.commercial-process{padding:125px 7vw}.commercial-process .section-intro{max-width:850px;margin-bottom:60px}.commercial-process .section-intro h2{font-size:clamp(48px,5.8vw,84px);line-height:.94;letter-spacing:-.05em}.commercial-process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.commercial-process-grid article{padding:35px 30px 42px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:270px}.commercial-process-grid span{display:block;color:var(--gold);font-family:Manrope;font-weight:700;margin-bottom:60px}.commercial-process-grid h3{font-size:20px}.commercial-process-grid p{color:#aeb3ba;line-height:1.7}.commercial-advantages{display:grid;grid-template-columns:.85fr 1.15fr;min-height:780px}.commercial-advantages-visual{display:grid;place-items:center;background:radial-gradient(circle at center,rgba(216,189,132,.14),transparent 34%),linear-gradient(145deg,#161a20,#0b0e12);position:relative;overflow:hidden}.commercial-advantages-visual:before,.commercial-advantages-visual:after{content:"";position:absolute;border:1px solid rgba(216,189,132,.16);border-radius:50%}.commercial-advantages-visual:before{width:62%;aspect-ratio:1}.commercial-advantages-visual:after{width:86%;aspect-ratio:1}.advantage-ring{position:relative;z-index:2;width:210px;aspect-ratio:1;border:1px solid rgba(255,255,255,.28);border-radius:50%;display:grid;place-content:center;text-align:center;box-shadow:0 0 70px rgba(216,189,132,.12)}.advantage-ring span{font-family:Manrope;font-size:58px;font-weight:700;color:var(--gold);line-height:1}.advantage-ring small{margin-top:12px;color:#c5c9ce;text-transform:uppercase;letter-spacing:.12em;line-height:1.5}.commercial-advantages-copy{padding:105px 7vw}.commercial-advantages-copy h2{font-size:clamp(46px,5vw,74px);line-height:.96;letter-spacing:-.05em;color:#141619;margin:0 0 45px}.advantage-list{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.advantage-list article{border-top:1px solid #cbc6bd;padding:25px 0}.advantage-list strong{color:#1b1e22;font-family:Manrope}.advantage-list p{color:#686d73;line-height:1.65;font-size:14px}.commercial-faq{padding:125px 7vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:10vw}.commercial-final-cta{padding:125px 7vw;background:linear-gradient(120deg,rgba(216,189,132,.09),transparent 42%),#101319}.commercial-final-cta h2{font-size:clamp(52px,6.2vw,92px);line-height:.93;letter-spacing:-.055em;max-width:1100px;margin:0 0 28px}.commercial-final-cta>p:not(.eyebrow){max-width:710px;color:#b4b9c0;font-size:18px;line-height:1.75}.commercial-final-cta .hero-actions{margin-top:34px}
@media(max-width:1050px){.commercial-hero{background-size:100% 100%,100% 100%,74% auto}.commercial-intro,.commercial-services,.commercial-advantages,.commercial-faq{grid-template-columns:1fr}.commercial-services-copy{position:static}.sector-grid{grid-template-columns:1fr 1fr}.commercial-process-grid{grid-template-columns:1fr 1fr}.commercial-advantages-visual{min-height:520px}.commercial-proof{grid-template-columns:1fr 1fr 1fr}.commercial-faq{gap:55px}}
@media(max-width:760px){.commercial-hero{min-height:760px;padding:135px 24px 58px;background-position:center,center,74% bottom;background-size:100% 100%,100% 100%,110% auto}.commercial-hero:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.32)}.commercial-hero h1{font-size:52px}.commercial-intro,.commercial-sectors,.commercial-services,.commercial-process,.commercial-advantages-copy,.commercial-faq,.commercial-final-cta{padding:80px 24px}.commercial-proof,.sector-grid,.commercial-process-grid,.advantage-list{grid-template-columns:1fr}.commercial-proof span{padding:22px}.commercial-advantages-visual{min-height:390px}.commercial-capability-list article{grid-template-columns:48px 1fr}.sector-grid article{min-height:310px}.commercial-final-cta h2{font-size:50px}}
@media(max-width:520px){.commercial-hero{min-height:780px;background-position:center,center,78% bottom;background-size:100% 100%,100% 100%,125% auto}.commercial-hero h1{font-size:46px}.commercial-proof{grid-template-columns:1fr}.commercial-process-grid{grid-template-columns:1fr}}

/* Phase 5.1 — Lost car keys landing page */
.lost-keys-page{background:#0b0d10}.lost-keys-hero{min-height:720px;padding:194px 4.5vw 78px;display:flex;align-items:center;position:relative;overflow:hidden;background-color:#090b0e;background-image:linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.94) 31%,rgba(5,6,7,.7) 49%,rgba(5,6,7,.13) 72%,rgba(5,6,7,.02) 100%),linear-gradient(0deg,rgba(4,5,6,.66),rgba(4,5,6,.02)),url('assets/hero-transit.jpg');background-repeat:no-repeat;background-position:center,right bottom,right bottom;background-size:100% 100%,100% 100%,66% auto}.lost-keys-hero:after{content:"";position:absolute;inset:auto 0 0;height:130px;background:linear-gradient(transparent,#0b0d10)}.lost-keys-hero-copy{position:relative;z-index:2;max-width:850px}.lost-keys-hero h1{font-size:clamp(68px,7.4vw,116px);line-height:.87;letter-spacing:-.06em;text-transform:uppercase;margin:0 0 32px}.lost-keys-hero h1 span{color:var(--gold)}.lost-keys-hero-copy>p:not(.breadcrumb,.eyebrow){max-width:720px;color:#b8bcc2;font-size:20px;line-height:1.65}.hero-trust-inline{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:34px;color:#d5d8dc;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.hero-trust-inline span:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--gold);margin:0 10px 2px 0}.lost-reassurance{display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw;padding:125px 7vw}.lost-reassurance h2{font-size:clamp(50px,5.9vw,88px);line-height:.93;letter-spacing:-.055em;color:#141619;margin:0}.lost-reassurance-copy>p{color:#666b71;line-height:1.82;font-size:17px}.lost-reassurance-copy .lead-dark{font-family:Manrope;color:#1d2024;font-size:24px;line-height:1.5;margin-top:0}.lost-capabilities{padding:125px 6vw}.lost-capabilities .section-intro>p:not(.eyebrow){max-width:700px;margin:20px auto 58px;color:#adb2b8;line-height:1.7}.lost-capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.lost-capability-grid article{min-height:280px;padding:38px;background:#11151a;position:relative;transition:.3s}.lost-capability-grid article:hover{background:#171b21;transform:translateY(-4px)}.lost-capability-grid span{position:absolute;right:24px;top:18px;font:700 64px/1 Manrope;color:rgba(255,255,255,.04)}.lost-capability-grid h3{font-size:22px;margin:95px 0 13px}.lost-capability-grid p{color:#aeb3ba;line-height:1.7;margin:0}.lost-process{padding:125px 7vw}.lost-process .section-intro{max-width:850px;margin-bottom:58px}.lost-process .section-intro h2{font-size:clamp(50px,5.7vw,84px);line-height:.94;letter-spacing:-.05em;color:#141619}.lost-process-track{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #c9c4ba;border-left:1px solid #c9c4ba}.lost-process-track article{min-height:300px;padding:32px 27px;border-right:1px solid #c9c4ba;border-bottom:1px solid #c9c4ba}.lost-process-track span{display:block;color:var(--gold);font-family:Manrope;font-weight:700;margin-bottom:62px}.lost-process-track h3{color:#191c20;font-size:20px}.lost-process-track p{color:#696e74;line-height:1.65}.lost-editorial{display:grid;grid-template-columns:.86fr 1.14fr;min-height:820px}.lost-editorial-visual{display:grid;place-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at center,rgba(216,189,132,.14),transparent 35%),linear-gradient(145deg,#161a20,#0a0d11)}.lost-editorial-visual:before{content:"";position:absolute;width:72%;aspect-ratio:1;border:1px solid rgba(216,189,132,.15);border-radius:50%}.lost-editorial-visual svg{position:relative;z-index:2;width:65%;fill:none;stroke:#e1e3e5;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.lost-editorial-visual svg .gold{stroke:var(--gold)}.lost-editorial-copy{padding:105px 7vw}.lost-editorial-copy h2{font-size:clamp(48px,5.4vw,80px);line-height:.95;letter-spacing:-.052em;margin:0 0 28px}.lost-detail-list{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;margin-top:40px}.lost-detail-list article{padding:24px 0;border-top:1px solid var(--line)}.lost-detail-list strong{font-family:Manrope}.lost-detail-list p{color:#aeb3ba;line-height:1.65;font-size:14px}.lost-confidence{padding:125px 6vw}.lost-confidence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:60px;background:#cbc6bd;border:1px solid #cbc6bd}.lost-confidence-grid article{min-height:260px;padding:36px;background:#ebe8e1}.lost-confidence-grid strong{display:block;color:var(--gold);font:700 48px/1 Manrope;margin-bottom:52px}.lost-confidence-grid h3{color:#191c20;font-size:20px}.lost-confidence-grid p{color:#666b71;line-height:1.65}.lost-manufacturers{display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw;padding:125px 7vw}.lost-manufacturers h2{font-size:clamp(48px,5.5vw,82px);line-height:.94;letter-spacing:-.05em;margin:0 0 26px}.lost-manufacturers .manufacturer-copy>p:not(.eyebrow){color:#aeb3ba;line-height:1.78;font-size:17px;margin-bottom:32px}.lost-manufacturers .manufacturer-grid{align-self:center}.lost-faq{padding:125px 7vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:10vw}.lost-faq .faq-heading h2{color:#15181b}.lost-faq .faq-heading>p:not(.eyebrow){color:#666b71;line-height:1.72}.related-services{padding:125px 7vw}.related-services .section-intro{max-width:820px;margin-bottom:54px}.related-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.related-service-grid a{display:block;min-height:330px;padding:38px;background:#11151a;color:#fff;transition:.3s}.related-service-grid a:hover{background:#171b21;transform:translateY(-5px)}.related-service-grid span{color:var(--gold);font-family:Manrope;font-weight:700}.related-service-grid h3{font-size:25px;margin:75px 0 14px}.related-service-grid p{color:#aeb3ba;line-height:1.7}.related-service-grid strong{display:block;margin-top:28px;color:var(--gold);font-size:13px;text-transform:uppercase;letter-spacing:.07em}.lost-final-cta{padding:130px 7vw;background:linear-gradient(120deg,rgba(216,189,132,.1),transparent 42%),#101319}.lost-final-cta h2{font-size:clamp(58px,6.8vw,100px);line-height:.9;letter-spacing:-.06em;margin:0 0 30px;text-transform:uppercase}.lost-final-cta h2 span{color:var(--gold)}.lost-final-cta>p:not(.eyebrow){max-width:690px;color:#b4b9c0;font-size:18px;line-height:1.75}.lost-final-cta .hero-actions{margin-top:36px}
@media(max-width:1050px){.lost-keys-hero{background-size:100% 100%,100% 100%,74% auto}.lost-reassurance,.lost-editorial,.lost-manufacturers,.lost-faq{grid-template-columns:1fr}.lost-process-track{grid-template-columns:repeat(3,1fr)}.lost-capability-grid,.lost-confidence-grid{grid-template-columns:1fr 1fr}.lost-editorial-visual{min-height:520px}.lost-faq{gap:55px}}
@media(max-width:760px){.lost-keys-hero{min-height:780px;padding:135px 24px 60px;background-position:center,center,74% bottom;background-size:100% 100%,100% 100%,110% auto}.lost-keys-hero:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.32)}.lost-keys-hero h1{font-size:54px}.lost-reassurance,.lost-capabilities,.lost-process,.lost-editorial-copy,.lost-confidence,.lost-manufacturers,.lost-faq,.related-services,.lost-final-cta{padding:80px 24px}.lost-capability-grid,.lost-process-track,.lost-confidence-grid,.related-service-grid,.lost-detail-list{grid-template-columns:1fr}.lost-process-track article{min-height:235px}.lost-process-track span{margin-bottom:38px}.lost-editorial-visual{min-height:400px}.lost-capability-grid article,.related-service-grid a{min-height:270px}.lost-capability-grid h3,.related-service-grid h3{margin-top:62px}.hero-trust-inline{gap:12px 18px}.lost-final-cta h2{font-size:51px}}
@media(max-width:520px){.lost-keys-hero{min-height:800px;background-position:center,center,78% bottom;background-size:100% 100%,100% 100%,125% auto}.lost-keys-hero h1{font-size:48px}.lost-capability-grid,.lost-confidence-grid{grid-template-columns:1fr}.lost-reassurance-copy .lead-dark{font-size:21px}}




/* Emergency Vehicle Entry — corrected reassurance section spacing */
.vehicle-entry-page .lost-reassurance{
  padding-top:150px;
  padding-bottom:150px;
  grid-template-columns:.82fr 1.18fr;
  column-gap:12vw;
  align-items:start;
}
.vehicle-entry-page .lost-reassurance-title{
  padding-top:4px;
}
.vehicle-entry-page .lost-reassurance-title .eyebrow{
  margin-bottom:28px;
}


.vehicle-entry-page .lost-reassurance-copy{
  padding-top:8px;
}
.vehicle-entry-page .lost-reassurance-copy .lead-dark{
  margin:0 0 30px;
}
.vehicle-entry-page .lost-reassurance-copy p:not(.lead-dark){
  margin:0 0 22px;
}
.vehicle-entry-page .lost-reassurance-copy .text-link{
  display:inline-block;
  margin-top:10px;
}
@media(max-width:1050px){
  .vehicle-entry-page .lost-reassurance{
    row-gap:58px;
    padding-top:115px;
    padding-bottom:115px;
  }
}
@media(max-width:760px){
  .vehicle-entry-page .lost-reassurance{
    padding-top:88px;
    padding-bottom:88px;
    row-gap:42px;
  }
  
}

/* Emergency Vehicle Entry — explicit second-line position */
.vehicle-entry-page .lost-reassurance-title h2{
  display:block;
  line-height:.9;
}
.vehicle-entry-page .lost-reassurance-title h2 .heading-line-one,
.vehicle-entry-page .lost-reassurance-title h2 .heading-line-two{
  display:block;
}
.vehicle-entry-page .lost-reassurance-title h2 .heading-line-two{
  margin-top:32px;
}
@media(max-width:760px){
  .vehicle-entry-page .lost-reassurance-title h2 .heading-line-two{
    margin-top:22px;
  }
}




/* Spare Car Keys page */
.spare-keys-page .site-header{position:absolute}
.spare-hero{min-height:760px;padding:190px 4.5vw 70px;display:flex;align-items:center;position:relative;overflow:hidden;background-color:#08090a;background-image:linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.94) 32%,rgba(5,6,7,.68) 50%,rgba(5,6,7,.13) 74%,rgba(5,6,7,.03) 100%),linear-gradient(0deg,rgba(4,5,6,.55),rgba(4,5,6,.03)),url('assets/hero-transit.jpg');background-repeat:no-repeat;background-position:center,right bottom,right bottom;background-size:100% 100%,100% 100%,66% auto}
.spare-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,#090a0b)}
.spare-hero-copy{position:relative;z-index:1;max-width:720px}.spare-hero h1{font-size:clamp(66px,6.4vw,106px);line-height:.88;letter-spacing:-.05em;text-transform:uppercase;margin:0 0 28px}.spare-hero h1 span{color:var(--gold)}.spare-hero-copy>p:not(.breadcrumb):not(.eyebrow){max-width:640px;font-size:19px;line-height:1.62;color:#ececec}
.spare-hero-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px;max-width:720px}.spare-hero-proof span{display:flex;flex-direction:column;padding:16px 18px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.035);backdrop-filter:blur(10px)}.spare-hero-proof strong{font-family:Manrope,sans-serif;font-size:13px;text-transform:uppercase;color:#fff}.spare-hero-proof small{margin-top:4px;color:#aeb1b6;font-size:12px}
.spare-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;padding:105px 7vw}.spare-intro-heading h2,.spare-comparison-copy h2{font-size:clamp(44px,5vw,76px);line-height:.98;letter-spacing:-.04em}.spare-intro-copy{max-width:760px}.spare-intro-copy p{font-size:17px;line-height:1.8;color:#454545}.spare-intro-copy .lead-dark{font-size:22px;color:#111;font-weight:600}
.spare-benefits{padding:110px 5vw;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.08),transparent 28%),#0d0f11}.spare-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1450px;margin:50px auto 0}.spare-benefit-grid article{padding:34px 28px;min-height:260px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#17191b,#111315)}.spare-benefit-grid article>span{color:var(--gold);font-size:12px;font-weight:700}.spare-benefit-grid h3{margin:44px 0 12px;font-size:23px}.spare-benefit-grid p{margin:0;color:#b7b7b7;line-height:1.7}
.spare-comparison{padding:110px 7vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:start}.spare-comparison-copy p:last-child{font-size:18px;line-height:1.7;color:#555}.spare-comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.spare-comparison-grid article{padding:34px;border:1px solid #d8d4cc;border-radius:12px;background:#fff}.spare-comparison-grid article.preferred{border-color:var(--gold);box-shadow:0 18px 45px rgba(24,20,14,.08)}.comparison-label{color:var(--gold);text-transform:uppercase;font-weight:700;font-size:12px;letter-spacing:.06em}.spare-comparison-grid h3{font-size:28px;color:#111}.spare-comparison-grid ul{margin:24px 0 0;padding:0;list-style:none}.spare-comparison-grid li{padding:13px 0;border-top:1px solid #e9e5de;color:#424242}
.spare-key-types{padding:110px 7vw}.spare-key-types>.section-intro{max-width:760px}.spare-type-list{margin-top:55px;border-top:1px solid var(--line)}.spare-type-list article{display:grid;grid-template-columns:80px 1fr;gap:35px;padding:28px 0;border-bottom:1px solid var(--line);align-items:start}.spare-type-list article>span{color:var(--gold);font-weight:700}.spare-type-list h3{font-size:25px;margin:0 0 6px}.spare-type-list p{margin:0;color:#b7b7b7;line-height:1.65}
.spare-process{padding:110px 5vw}.spare-process-line{max-width:1450px;margin:55px auto 0;display:grid;grid-template-columns:repeat(5,1fr);position:relative}.spare-process-line:before{content:"";position:absolute;left:8%;right:8%;top:22px;height:1px;background:#d8d1c5}.spare-process-line article{padding:0 24px;text-align:center;position:relative}.spare-process-line span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;margin:0 auto 28px;background:#111;color:var(--gold);font-weight:700;position:relative;z-index:1}.spare-process-line h3{font-size:19px;color:#111}.spare-process-line p{font-size:14px;line-height:1.65;color:#606060}
.spare-precision{display:grid;grid-template-columns:.9fr 1.1fr;min-height:720px;background:#101214}.spare-precision-visual{display:grid;place-items:center;padding:70px;background:radial-gradient(circle,rgba(216,189,132,.12),transparent 55%),#0c0e10}.spare-precision-visual svg{width:min(80%,520px);fill:none;stroke:#eee7dc;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.spare-precision-visual .gold{stroke:var(--gold)}.spare-precision-copy{padding:100px 7vw 90px 5vw;align-self:center}.spare-precision-copy h2{font-size:clamp(44px,4.8vw,74px);line-height:.98;letter-spacing:-.04em}.spare-precision-copy .service-lead{font-size:19px;color:#d4d4d4;line-height:1.7}.spare-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:35px;border-top:1px solid var(--line)}.spare-detail-grid article{padding:24px 18px 24px 0;border-bottom:1px solid var(--line)}.spare-detail-grid strong{color:#fff}.spare-detail-grid p{color:#aaa;line-height:1.6;margin:8px 0 0;font-size:14px}
.spare-confidence{padding:105px 5vw}.spare-confidence-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1400px;margin:50px auto 0}.spare-confidence-grid article{padding:34px 28px;border:1px solid #ded9cf;border-radius:10px;background:#fff}.spare-confidence-grid strong{display:block;font-family:Manrope,sans-serif;font-size:48px;color:var(--gold);margin-bottom:20px}.spare-confidence-grid h3{font-size:19px;color:#111}.spare-confidence-grid p{color:#565656;line-height:1.65}
.spare-manufacturers{padding:110px 7vw;display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:center}.spare-manufacturer-copy h2{font-size:clamp(42px,4.7vw,72px);line-height:1;letter-spacing:-.04em}.spare-manufacturer-copy p{color:#bbb;line-height:1.75;font-size:17px;margin-bottom:28px}
.spare-faq{padding:110px 7vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.spare-final-cta{padding:120px 6vw;text-align:center;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.16),transparent 32%),#090a0b}.spare-final-cta h2{font-size:clamp(54px,6vw,92px);line-height:.9;text-transform:uppercase;letter-spacing:-.05em;margin:0 0 26px}.spare-final-cta h2 span{color:var(--gold)}.spare-final-cta>p:not(.eyebrow){max-width:760px;margin:0 auto 30px;color:#c6c6c6;font-size:18px;line-height:1.7}.spare-final-cta .hero-actions{justify-content:center}
@media(max-width:1050px){
  .spare-benefit-grid,.spare-confidence-grid{grid-template-columns:repeat(2,1fr)}
  .spare-process-line{grid-template-columns:repeat(2,1fr);gap:35px}.spare-process-line:before{display:none}
  .spare-intro,.spare-comparison,.spare-precision,.spare-manufacturers,.spare-faq{grid-template-columns:1fr}
}
@media(max-width:720px){
  .spare-hero{min-height:720px;background-size:100% 100%,100% 100%,cover;background-position:center,center,68% bottom}
  .spare-hero-proof,.spare-benefit-grid,.spare-comparison-grid,.spare-confidence-grid,.spare-detail-grid,.spare-process-line{grid-template-columns:1fr}
  .spare-intro,.spare-benefits,.spare-comparison,.spare-key-types,.spare-process,.spare-precision-copy,.spare-confidence,.spare-manufacturers,.spare-faq,.spare-final-cta{padding-left:24px;padding-right:24px}
  .spare-type-list article{grid-template-columns:48px 1fr;gap:16px}
}


/* Key Programming page */
.key-programming-page .site-header{position:absolute}
.programming-hero{min-height:760px;padding:190px 4.5vw 70px;display:flex;align-items:center;position:relative;overflow:hidden;background-color:#08090a;background-image:linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.94) 32%,rgba(5,6,7,.7) 50%,rgba(5,6,7,.14) 74%,rgba(5,6,7,.03) 100%),linear-gradient(0deg,rgba(4,5,6,.58),rgba(4,5,6,.03)),url('assets/hero-transit.jpg');background-repeat:no-repeat;background-position:center,right bottom,right bottom;background-size:100% 100%,100% 100%,66% auto}
.programming-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,#090a0b)}
.programming-hero-copy{position:relative;z-index:1;max-width:740px}.programming-hero h1{font-size:clamp(66px,6.4vw,106px);line-height:.88;letter-spacing:-.05em;text-transform:uppercase;margin:0 0 28px}.programming-hero h1 span{color:var(--gold)}.programming-hero-copy>p:not(.breadcrumb):not(.eyebrow){max-width:650px;font-size:19px;line-height:1.62;color:#ececec}
.programming-signal-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:36px}.programming-signal-strip span{padding:10px 14px;border:1px solid rgba(216,189,132,.35);border-radius:999px;background:rgba(216,189,132,.06);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#e9dcc2}
.programming-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;padding:105px 7vw}.programming-intro-heading h2,.programming-diagnostics-copy h2{font-size:clamp(44px,5vw,76px);line-height:.98;letter-spacing:-.04em}.programming-intro-copy p{font-size:17px;line-height:1.8;color:#454545}.programming-intro-copy .lead-dark{font-size:22px;color:#111;font-weight:600}
.programming-systems{padding:110px 5vw;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.08),transparent 28%),#0d0f11}.programming-system-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1450px;margin:50px auto 0}.programming-system-grid article{padding:34px 28px;min-height:250px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#17191b,#111315)}.programming-system-grid article>span{color:var(--gold);font-size:12px;font-weight:700}.programming-system-grid h3{margin:42px 0 12px;font-size:23px}.programming-system-grid p{margin:0;color:#b7b7b7;line-height:1.7}
.programming-diagnostics{padding:110px 7vw;display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw}.programming-diagnostics-copy p{font-size:17px;line-height:1.75;color:#555}.programming-diagnostic-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.programming-diagnostic-cards article{padding:30px;border:1px solid #d8d4cc;border-radius:12px;background:#fff}.programming-diagnostic-cards strong{display:block;color:#111;font-family:Manrope,sans-serif;font-size:18px;margin-bottom:10px}.programming-diagnostic-cards p{margin:0;color:#565656;line-height:1.65}
.programming-process{padding:110px 5vw}.programming-process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;max-width:1480px;margin:55px auto 0}.programming-process-grid article{padding:28px 22px;border-top:1px solid rgba(216,189,132,.55);background:linear-gradient(180deg,rgba(216,189,132,.06),transparent)}.programming-process-grid span{color:var(--gold);font-size:12px;font-weight:700}.programming-process-grid h3{font-size:19px;margin:30px 0 10px}.programming-process-grid p{color:#aaa;line-height:1.65;font-size:14px}
.programming-architecture{display:grid;grid-template-columns:.9fr 1.1fr;min-height:720px;background:#101214}.programming-architecture-visual{display:grid;place-items:center;padding:70px;background:radial-gradient(circle,rgba(216,189,132,.12),transparent 55%),#0c0e10}.programming-architecture-visual svg{width:min(82%,560px);fill:none;stroke:#eee7dc;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.programming-architecture-visual .gold{stroke:var(--gold)}.programming-architecture-copy{padding:100px 7vw 90px 5vw;align-self:center}.programming-architecture-copy h2{font-size:clamp(44px,4.8vw,74px);line-height:.98;letter-spacing:-.04em}.programming-architecture-copy .service-lead{font-size:19px;color:#d4d4d4;line-height:1.7}.programming-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:35px;border-top:1px solid var(--line)}.programming-detail-grid article{padding:24px 18px 24px 0;border-bottom:1px solid var(--line)}.programming-detail-grid p{color:#aaa;line-height:1.6;margin:8px 0 0;font-size:14px}
.programming-confidence{padding:105px 5vw}.programming-confidence-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1400px;margin:50px auto 0}.programming-confidence-grid article{padding:34px 28px;border:1px solid #ded9cf;border-radius:10px;background:#fff}.programming-confidence-grid strong{display:block;font-family:Manrope,sans-serif;font-size:48px;color:var(--gold);margin-bottom:20px}.programming-confidence-grid h3{font-size:19px;color:#111}.programming-confidence-grid p{color:#565656;line-height:1.65}
.programming-manufacturers{padding:110px 7vw;display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:center}.programming-manufacturer-copy h2{font-size:clamp(42px,4.7vw,72px);line-height:1;letter-spacing:-.04em}.programming-manufacturer-copy p{color:#bbb;line-height:1.75;font-size:17px;margin-bottom:28px}
.programming-faq{padding:110px 7vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.programming-final-cta{padding:120px 6vw;text-align:center;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.16),transparent 32%),#090a0b}.programming-final-cta h2{font-size:clamp(54px,6vw,92px);line-height:.9;text-transform:uppercase;letter-spacing:-.05em;margin:0 0 26px}.programming-final-cta h2 span{color:var(--gold)}.programming-final-cta>p:not(.eyebrow){max-width:760px;margin:0 auto 30px;color:#c6c6c6;font-size:18px;line-height:1.7}.programming-final-cta .hero-actions{justify-content:center}
@media(max-width:1050px){
  .programming-system-grid{grid-template-columns:repeat(2,1fr)}
  .programming-process-grid{grid-template-columns:repeat(2,1fr)}
  .programming-confidence-grid{grid-template-columns:repeat(2,1fr)}
  .programming-intro,.programming-diagnostics,.programming-architecture,.programming-manufacturers,.programming-faq{grid-template-columns:1fr}
}
@media(max-width:720px){
  .programming-hero{min-height:720px;background-size:100% 100%,100% 100%,cover;background-position:center,center,68% bottom}
  .programming-system-grid,.programming-diagnostic-cards,.programming-process-grid,.programming-confidence-grid,.programming-detail-grid{grid-template-columns:1fr}
  .programming-intro,.programming-systems,.programming-diagnostics,.programming-process,.programming-architecture-copy,.programming-confidence,.programming-manufacturers,.programming-faq,.programming-final-cta{padding-left:24px;padding-right:24px}
}


/* Broken Car Keys page */
.broken-keys-page .site-header{position:absolute}
.broken-hero{min-height:760px;padding:190px 4.5vw 70px;display:flex;align-items:center;position:relative;overflow:hidden;background-color:#08090a;background-image:linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.94) 32%,rgba(5,6,7,.7) 50%,rgba(5,6,7,.14) 74%,rgba(5,6,7,.03) 100%),linear-gradient(0deg,rgba(4,5,6,.58),rgba(4,5,6,.03)),url('assets/hero-transit.jpg');background-repeat:no-repeat;background-position:center,right bottom,right bottom;background-size:100% 100%,100% 100%,66% auto}
.broken-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,#090a0b)}
.broken-hero-copy{position:relative;z-index:1;max-width:740px}.broken-hero h1{font-size:clamp(66px,6.4vw,106px);line-height:.88;letter-spacing:-.05em;text-transform:uppercase;margin:0 0 28px}.broken-hero h1 span{color:var(--gold)}.broken-hero-copy>p:not(.breadcrumb):not(.eyebrow){max-width:650px;font-size:19px;line-height:1.62;color:#ececec}
.broken-hero-status{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px;max-width:720px}.broken-hero-status span{display:flex;flex-direction:column;padding:16px 18px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.035);backdrop-filter:blur(10px)}.broken-hero-status strong{font-family:Manrope,sans-serif;font-size:13px;text-transform:uppercase;color:#fff}.broken-hero-status small{margin-top:4px;color:#aeb1b6;font-size:12px}
.broken-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;padding:105px 7vw}.broken-intro-heading h2,.broken-decision-copy h2{font-size:clamp(44px,5vw,76px);line-height:.98;letter-spacing:-.04em}.broken-intro-copy p{font-size:17px;line-height:1.8;color:#454545}.broken-intro-copy .lead-dark{font-size:22px;color:#111;font-weight:600}
.broken-failures{padding:110px 5vw;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.08),transparent 28%),#0d0f11}.broken-failure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1450px;margin:50px auto 0}.broken-failure-grid article{padding:34px 28px;min-height:250px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#17191b,#111315)}.broken-failure-grid article>span{color:var(--gold);font-size:12px;font-weight:700}.broken-failure-grid h3{margin:42px 0 12px;font-size:23px}.broken-failure-grid p{margin:0;color:#b7b7b7;line-height:1.7}
.broken-decision{padding:110px 7vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw}.broken-decision-copy p{font-size:17px;line-height:1.75;color:#555}.broken-decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.broken-decision-grid article{padding:34px;border:1px solid #d8d4cc;border-radius:12px;background:#fff}.broken-decision-grid .repair-card{border-color:var(--gold);box-shadow:0 18px 45px rgba(24,20,14,.08)}.decision-label{color:var(--gold);text-transform:uppercase;font-weight:700;font-size:12px;letter-spacing:.06em}.broken-decision-grid h3{font-size:28px;color:#111}.broken-decision-grid ul{margin:24px 0 0;padding:0;list-style:none}.broken-decision-grid li{padding:13px 0;border-top:1px solid #e9e5de;color:#424242}
.broken-process{padding:110px 5vw}.broken-process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;max-width:1480px;margin:55px auto 0}.broken-process-grid article{padding:28px 22px;border-top:1px solid rgba(216,189,132,.55);background:linear-gradient(180deg,rgba(216,189,132,.06),transparent)}.broken-process-grid span{color:var(--gold);font-size:12px;font-weight:700}.broken-process-grid h3{font-size:19px;margin:30px 0 10px}.broken-process-grid p{color:#aaa;line-height:1.65;font-size:14px}
.broken-anatomy{display:grid;grid-template-columns:.9fr 1.1fr;min-height:720px;background:#101214}.broken-anatomy-visual{display:grid;place-items:center;padding:70px;background:radial-gradient(circle,rgba(216,189,132,.12),transparent 55%),#0c0e10}.broken-anatomy-visual svg{width:min(82%,580px);fill:none;stroke:#eee7dc;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.broken-anatomy-visual .gold{stroke:var(--gold)}.broken-anatomy-copy{padding:100px 7vw 90px 5vw;align-self:center}.broken-anatomy-copy h2{font-size:clamp(44px,4.8vw,74px);line-height:.98;letter-spacing:-.04em}.broken-anatomy-copy .service-lead{font-size:19px;color:#d4d4d4;line-height:1.7}.broken-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:35px;border-top:1px solid var(--line)}.broken-detail-grid article{padding:24px 18px 24px 0;border-bottom:1px solid var(--line)}.broken-detail-grid p{color:#aaa;line-height:1.6;margin:8px 0 0;font-size:14px}
.broken-use-cases{padding:105px 5vw}.broken-use-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1400px;margin:50px auto 0}.broken-use-grid article{padding:32px;border:1px solid #ded9cf;border-radius:10px;background:#fff}.broken-use-grid h3{font-size:21px;color:#111}.broken-use-grid p{color:#565656;line-height:1.65}
.broken-confidence{padding:105px 5vw}.broken-confidence-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1400px;margin:50px auto 0}.broken-confidence-grid article{padding:34px 28px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#17191b,#111315)}.broken-confidence-grid strong{display:block;font-family:Manrope,sans-serif;font-size:48px;color:var(--gold);margin-bottom:20px}.broken-confidence-grid h3{font-size:19px}.broken-confidence-grid p{color:#aaa;line-height:1.65}
.broken-faq{padding:110px 7vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.broken-final-cta{padding:120px 6vw;text-align:center;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.16),transparent 32%),#090a0b}.broken-final-cta h2{font-size:clamp(54px,6vw,92px);line-height:.9;text-transform:uppercase;letter-spacing:-.05em;margin:0 0 26px}.broken-final-cta h2 span{color:var(--gold)}.broken-final-cta>p:not(.eyebrow){max-width:760px;margin:0 auto 30px;color:#c6c6c6;font-size:18px;line-height:1.7}.broken-final-cta .hero-actions{justify-content:center}
@media(max-width:1050px){
  .broken-failure-grid{grid-template-columns:repeat(2,1fr)}
  .broken-process-grid{grid-template-columns:repeat(2,1fr)}
  .broken-use-grid,.broken-confidence-grid{grid-template-columns:repeat(2,1fr)}
  .broken-intro,.broken-decision,.broken-anatomy,.broken-faq{grid-template-columns:1fr}
}
@media(max-width:720px){
  .broken-hero{min-height:720px;background-size:100% 100%,100% 100%,cover;background-position:center,center,68% bottom}
  .broken-hero-status,.broken-failure-grid,.broken-decision-grid,.broken-process-grid,.broken-use-grid,.broken-confidence-grid,.broken-detail-grid{grid-template-columns:1fr}
  .broken-intro,.broken-failures,.broken-decision,.broken-process,.broken-anatomy-copy,.broken-use-cases,.broken-confidence,.broken-faq,.broken-final-cta{padding-left:24px;padding-right:24px}
}


/* Phase 6.2 — All Keys Lost */
.all-keys-page .site-header{position:absolute}
.all-keys-hero{min-height:850px;display:grid;grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr);gap:5vw;align-items:center;padding:190px 5vw 90px;position:relative;overflow:hidden;background:#070809;background-image:linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.93) 39%,rgba(5,6,7,.58) 62%,rgba(5,6,7,.18) 100%),linear-gradient(0deg,rgba(4,5,6,.7),transparent 52%),url('assets/hero-transit.jpg');background-repeat:no-repeat;background-position:center,center,right bottom;background-size:100% 100%,100% 100%,68% auto}
.all-keys-hero:after{content:"";position:absolute;inset:auto 0 0;height:130px;background:linear-gradient(transparent,#090a0b)}
.all-keys-hero-copy,.all-keys-help-card{position:relative;z-index:1}.all-keys-hero-copy{max-width:800px}.all-keys-hero h1{font-size:clamp(72px,7.2vw,122px);line-height:.84;letter-spacing:-.06em;text-transform:uppercase;margin:0 0 30px}.all-keys-hero h1 span{color:var(--gold)}.all-keys-hero-lead{max-width:680px;color:#ededed;font-size:20px;line-height:1.65}
.all-keys-proof{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:42px}.all-keys-proof span{min-height:92px;padding:17px 15px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.035);backdrop-filter:blur(10px)}.all-keys-proof strong{display:block;color:#fff;font-family:Manrope,sans-serif;font-size:18px}.all-keys-proof small{display:block;color:#aeb0b3;margin-top:7px;font-size:12px}
.all-keys-help-card{padding:34px;border:1px solid rgba(216,189,132,.35);border-radius:14px;background:rgba(12,14,16,.82);backdrop-filter:blur(16px);box-shadow:0 28px 90px rgba(0,0,0,.35)}.all-keys-help-card h2{font-size:33px;line-height:1.08;margin:10px 0 25px}.all-keys-help-card ol{list-style:none;padding:0;margin:0}.all-keys-help-card li{display:flex;gap:15px;padding:18px 0;border-top:1px solid var(--line)}.all-keys-help-card li>span{color:var(--gold);font-size:12px;font-weight:700;padding-top:4px}.all-keys-help-card p{display:flex;flex-direction:column;margin:0}.all-keys-help-card small{color:#9ea0a4;margin-top:4px}
.all-keys-reassurance{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;padding:110px 7vw}.all-keys-reassurance h2,.all-keys-comparison-copy h2{font-size:clamp(46px,5vw,78px);line-height:.97;letter-spacing:-.045em}.all-keys-reassurance>div:last-child p{color:#4a4a4a;line-height:1.8;font-size:17px}.all-keys-reassurance .lead-dark{font-size:22px;color:#111;font-weight:600}
.all-keys-timeline{padding:115px 5vw;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.1),transparent 30%),#0c0e10}.all-keys-timeline-track{max-width:1250px;margin:58px auto 0;position:relative}.all-keys-timeline-track:before{content:"";position:absolute;left:35px;top:25px;bottom:25px;width:1px;background:linear-gradient(var(--gold),rgba(216,189,132,.08))}.all-keys-timeline-track article{display:grid;grid-template-columns:72px 1fr;gap:25px;align-items:start;padding:20px 0}.all-keys-timeline-track article>span{position:relative;z-index:1;width:70px;height:70px;display:grid;place-items:center;border:1px solid rgba(216,189,132,.55);border-radius:50%;background:#0d0f11;color:var(--gold);font-weight:700;font-size:12px}.all-keys-timeline-track article div{padding:10px 0 28px;border-bottom:1px solid var(--line)}.all-keys-timeline-track h3{font-size:25px;margin:0 0 8px}.all-keys-timeline-track p{margin:0;color:#aaa;line-height:1.65}
.all-keys-capabilities{padding:110px 5vw}.all-keys-capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1450px;margin:52px auto 0}.all-keys-capability-grid article{padding:34px 28px;min-height:245px;border:1px solid #ddd7cc;border-radius:10px;background:#fff}.all-keys-capability-grid span{color:var(--gold);font-size:12px;font-weight:700}.all-keys-capability-grid h3{margin:48px 0 12px;color:#111;font-size:23px}.all-keys-capability-grid p{color:#565656;line-height:1.7}
.all-keys-comparison{padding:115px 7vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;align-items:start;background:#0d0f11}.all-keys-comparison-copy{position:sticky;top:130px}.all-keys-comparison-copy p{color:#aaa;font-size:17px;line-height:1.75}.all-keys-comparison-table{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#121416}.all-keys-comparison-table>div{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:18px;padding:22px 24px;border-top:1px solid var(--line);align-items:center}.all-keys-comparison-table .comparison-head{border-top:0;background:#191b1e;color:#fff}.all-keys-comparison-table span{font-weight:600;color:#fff}.all-keys-comparison-table p{margin:0;color:#a4a6a9;line-height:1.5}.all-keys-comparison-table .positive{color:#e7d5b4}
.all-keys-security{display:grid;grid-template-columns:.9fr 1.1fr;min-height:760px;background:#101214}.all-keys-security-visual{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle,rgba(216,189,132,.14),transparent 58%),#090b0d}.security-ring{position:absolute;border:1px solid rgba(216,189,132,.22);border-radius:50%}.ring-one{width:220px;height:220px}.ring-two{width:390px;height:390px}.ring-three{width:570px;height:570px}.security-core{position:relative;z-index:1;width:150px;height:150px;display:grid;place-items:center;border-radius:50%;background:#15181a;box-shadow:0 0 75px rgba(216,189,132,.14)}.security-core svg{width:70px;fill:none;stroke:var(--gold);stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.all-keys-security-copy{align-self:center;padding:100px 7vw 90px 5vw}.all-keys-security-copy h2{font-size:clamp(46px,5vw,76px);line-height:.97;letter-spacing:-.045em}.all-keys-security-copy .service-lead{color:#ddd;font-size:20px;line-height:1.7}.all-keys-security-points{margin-top:35px;border-top:1px solid var(--line)}.all-keys-security-points article{padding:22px 0;border-bottom:1px solid var(--line)}.all-keys-security-points p{margin:7px 0 0;color:#aaa;line-height:1.65}
.all-keys-scenarios{padding:105px 5vw}.all-keys-scenario-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1400px;margin:50px auto 0}.all-keys-scenario-grid article{padding:32px;border:1px solid #ded9cf;border-radius:10px;background:#fff}.all-keys-scenario-grid h3{color:#111;font-size:21px}.all-keys-scenario-grid p{color:#565656;line-height:1.65}
.all-keys-trust{padding:110px 5vw}.all-keys-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1400px;margin:50px auto 0}.all-keys-trust-grid article{padding:34px 28px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#17191b,#111315)}.all-keys-trust-grid strong{display:block;color:var(--gold);font-family:Manrope,sans-serif;font-size:48px;margin-bottom:20px}.all-keys-trust-grid h3{font-size:19px}.all-keys-trust-grid p{color:#aaa;line-height:1.65}
.all-keys-manufacturers{padding:110px 7vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw}.all-keys-manufacturers .manufacturer-copy h2{color:#111;font-size:clamp(43px,4.5vw,70px);line-height:.98;letter-spacing:-.04em}.all-keys-manufacturers .manufacturer-copy p{color:#565656;line-height:1.75}.all-keys-manufacturers .manufacturer-grid span{color:#111;border-color:#d8d2c7;background:#fff}
.all-keys-faq{padding:110px 7vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}
.all-keys-final-cta{padding:125px 6vw;text-align:center;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.17),transparent 32%),#090a0b}.all-keys-final-cta h2{font-size:clamp(56px,6.3vw,98px);line-height:.88;text-transform:uppercase;letter-spacing:-.055em;margin:0 0 28px}.all-keys-final-cta h2 span{color:var(--gold)}.all-keys-final-cta>p:not(.eyebrow){max-width:750px;margin:0 auto 30px;color:#c8c8c8;font-size:18px;line-height:1.7}.all-keys-final-cta .hero-actions{justify-content:center}
.mobile-emergency-bar{display:none}
@media(max-width:1080px){
  .all-keys-hero{grid-template-columns:1fr}.all-keys-help-card{max-width:680px}
  .all-keys-reassurance,.all-keys-comparison,.all-keys-security,.all-keys-manufacturers,.all-keys-faq{grid-template-columns:1fr}
  .all-keys-comparison-copy{position:static}.all-keys-capability-grid{grid-template-columns:repeat(2,1fr)}
  .all-keys-scenario-grid,.all-keys-trust-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .all-keys-page{padding-bottom:64px}.all-keys-hero{min-height:940px;padding:170px 24px 70px;background-size:100% 100%,100% 100%,cover;background-position:center,center,68% bottom}
  .all-keys-proof,.all-keys-capability-grid,.all-keys-scenario-grid,.all-keys-trust-grid{grid-template-columns:1fr}
  .all-keys-reassurance,.all-keys-timeline,.all-keys-capabilities,.all-keys-comparison,.all-keys-security-copy,.all-keys-scenarios,.all-keys-trust,.all-keys-manufacturers,.all-keys-faq,.all-keys-final-cta{padding-left:24px;padding-right:24px}
  .all-keys-comparison-table>div{grid-template-columns:1fr;padding:20px}.all-keys-comparison-table .comparison-head strong{display:none}
  .all-keys-comparison-table p:before{display:block;color:#777;text-transform:uppercase;font-size:10px;letter-spacing:.07em;margin-bottom:4px}.all-keys-comparison-table p:nth-child(2):before{content:"Traditional route"}.all-keys-comparison-table p:nth-child(3):before{content:"Odell Automotive"}
  .all-keys-security-visual{min-height:520px}.ring-three{width:470px;height:470px}
  .mobile-emergency-bar{display:flex;position:fixed;z-index:1000;left:12px;right:12px;bottom:10px;justify-content:space-between;align-items:center;padding:14px 18px;border-radius:9px;background:var(--gold);color:#111;box-shadow:0 16px 50px rgba(0,0,0,.35);font-size:13px}.mobile-emergency-bar strong{text-transform:uppercase;font-size:12px}
}


/* Phase 6.2.1 — Vehicle brand grid fix */
.all-keys-manufacturers{align-items:center}
.all-keys-brand-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  align-self:center;
  overflow:hidden;
  border:1px solid #d7d1c6;
  border-radius:12px;
  background:#d7d1c6;
  box-shadow:0 24px 65px rgba(28,24,18,.08);
}
.all-keys-brand-grid span{
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px 14px;
  background:#fff;
  color:#17191b;
  font-family:Manrope,sans-serif;
  font-size:14px;
  font-weight:700;
  letter-spacing:.035em;
  text-align:center;
  transition:transform .25s ease,background .25s ease,color .25s ease;
}
.all-keys-brand-grid span:hover{
  position:relative;
  z-index:1;
  transform:translateY(-3px);
  background:#17191b;
  color:var(--gold);
}
@media(max-width:1080px){
  .all-keys-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .all-keys-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:9px}
  .all-keys-brand-grid span{min-height:76px;padding:16px 10px;font-size:12px}
}


/* Phase 6.3 — Vehicle Security */
.vehicle-security-page .site-header{position:absolute}
.security-hero{min-height:860px;display:grid;grid-template-columns:1.15fr .85fr;gap:4vw;align-items:center;padding:190px 5vw 90px;position:relative;overflow:hidden;background:radial-gradient(circle at 76% 48%,rgba(216,189,132,.12),transparent 20%),linear-gradient(115deg,#070809 0%,#0a0c0e 58%,#111416 100%)}
.security-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,#090a0b)}
.security-hero-copy,.security-signal-visual{position:relative;z-index:1}.security-hero-copy{max-width:900px}.security-hero h1{font-size:clamp(68px,6.3vw,108px);line-height:.87;letter-spacing:-.055em;text-transform:uppercase;margin:0 0 30px}.security-hero h1 span{color:var(--gold)}.security-hero-copy>p:not(.breadcrumb):not(.eyebrow){max-width:700px;color:#d8d8d8;font-size:19px;line-height:1.68}
.security-signal-visual{min-height:540px;display:grid;place-items:center}.signal-orbit{position:absolute;border:1px solid rgba(216,189,132,.22);border-radius:50%}.orbit-a{width:220px;height:220px}.orbit-b{width:390px;height:390px}.orbit-c{width:560px;height:560px}.signal-key{width:190px;height:190px;display:grid;place-items:center;border-radius:50%;background:#141719;box-shadow:0 0 100px rgba(216,189,132,.13)}.signal-key svg{width:130px;fill:none;stroke:#f2eee7;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.signal-key .gold{stroke:var(--gold)}
.security-intro,.security-boundaries{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;padding:110px 7vw}.security-intro h2,.security-relay h2,.security-boundaries h2{font-size:clamp(46px,5vw,78px);line-height:.98;letter-spacing:-.045em}.security-intro>div:last-child p,.security-boundaries>div:last-child p{color:#4b4b4b;font-size:17px;line-height:1.8}.security-intro .lead-dark,.security-boundaries .lead-dark{font-size:22px;color:#111;font-weight:600}
.security-threats{padding:115px 5vw;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.08),transparent 28%),#0c0e10}.security-threat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1450px;margin:52px auto 0}.security-threat-grid article{padding:34px 28px;min-height:245px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#17191b,#111315)}.security-threat-grid span{color:var(--gold);font-size:12px;font-weight:700}.security-threat-grid h3{margin:45px 0 12px;font-size:23px}.security-threat-grid p{margin:0;color:#aaa;line-height:1.7}
.security-relay{padding:110px 7vw;display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;align-items:center}.security-relay-copy>p{color:#505050;line-height:1.8}.security-relay-steps{margin-top:34px;border-top:1px solid #d8d2c8}.security-relay-steps article{display:grid;grid-template-columns:50px 1fr;gap:15px;padding:20px 0;border-bottom:1px solid #d8d2c8}.security-relay-steps span{color:var(--gold);font-size:12px;font-weight:700}.security-relay-steps p{display:flex;flex-direction:column;margin:0}.security-relay-steps small{color:#696969;margin-top:5px;line-height:1.55}.security-relay-card{padding:38px;border-radius:14px;background:#101214;color:#fff;box-shadow:0 26px 70px rgba(20,18,14,.18)}.security-relay-card h3{font-size:34px;margin:10px 0 24px}.security-relay-card ul{padding:0;margin:0;list-style:none}.security-relay-card li{padding:15px 0 15px 26px;border-top:1px solid var(--line);position:relative;color:#c9c9c9;line-height:1.55}.security-relay-card li:before{content:"";position:absolute;left:0;top:23px;width:8px;height:8px;border-radius:50%;background:var(--gold)}
.security-response{padding:115px 5vw}.security-response-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;max-width:1480px;margin:55px auto 0}.security-response-grid article{padding:28px 23px;border-top:1px solid rgba(216,189,132,.55);background:linear-gradient(180deg,rgba(216,189,132,.06),transparent)}.security-response-grid strong{color:var(--gold);font-size:12px}.security-response-grid h3{font-size:20px;margin:30px 0 10px}.security-response-grid p{color:#aaa;line-height:1.65;font-size:14px}
.security-principles{padding:115px 7vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;background:#101214}.security-principles-copy h2{font-size:clamp(46px,4.8vw,76px);line-height:.98;letter-spacing:-.045em}.security-principles-copy .service-lead{color:#d3d3d3;line-height:1.7;font-size:19px}.security-principles-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.security-principles-grid article{padding:30px;border:1px solid var(--line);border-radius:10px;background:#151719}.security-principles-grid span{color:var(--gold);text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.08em}.security-principles-grid h3{font-size:22px;margin:24px 0 10px}.security-principles-grid p{color:#aaa;line-height:1.65}
.security-risk-check{padding:110px 5vw}.risk-checker{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;max-width:1350px;margin:52px auto 0}.risk-questions{display:grid;grid-template-columns:1fr 1fr;gap:18px}.risk-questions label{display:flex;flex-direction:column;gap:15px;padding:28px;border:1px solid #ddd7cd;border-radius:10px;background:#fff}.risk-questions label>span{color:var(--gold);font-size:12px;font-weight:700}.risk-questions strong{color:#111;line-height:1.45}.risk-questions select{width:100%;padding:14px 12px;border:1px solid #d0cbc2;border-radius:7px;background:#f8f6f2;font:inherit;color:#222}.risk-result{padding:38px;border-radius:12px;background:#101214;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.risk-result>strong{font-family:Manrope,sans-serif;font-size:48px;line-height:1;color:var(--gold);margin:15px 0 20px}.risk-result>p:last-child{color:#c4c4c4;line-height:1.7}
.security-tips{padding:110px 5vw}.security-tips-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1450px;margin:52px auto 0}.security-tips-grid article{padding:32px 28px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#17191b,#111315)}.security-tips-grid span{color:var(--gold);font-size:12px;font-weight:700}.security-tips-grid h3{font-size:22px;margin:35px 0 10px}.security-tips-grid p{color:#aaa;line-height:1.68}
.security-faq{padding:110px 7vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}
.security-final-cta{padding:125px 6vw;text-align:center;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.17),transparent 32%),#090a0b}.security-final-cta h2{font-size:clamp(56px,6.1vw,96px);line-height:.89;text-transform:uppercase;letter-spacing:-.055em;margin:0 0 28px}.security-final-cta h2 span{color:var(--gold)}.security-final-cta>p:not(.eyebrow){max-width:760px;margin:0 auto 30px;color:#c7c7c7;font-size:18px;line-height:1.7}.security-final-cta .hero-actions{justify-content:center}
@media(max-width:1080px){
  .security-hero,.security-intro,.security-relay,.security-principles,.security-boundaries,.security-faq{grid-template-columns:1fr}
  .security-signal-visual{min-height:470px}.security-threat-grid,.security-tips-grid{grid-template-columns:repeat(2,1fr)}
  .security-response-grid{grid-template-columns:repeat(2,1fr)}.risk-checker{grid-template-columns:1fr}
}
@media(max-width:720px){
  .security-hero{padding:170px 24px 70px}.orbit-c{width:440px;height:440px}
  .security-intro,.security-threats,.security-relay,.security-response,.security-principles,.security-risk-check,.security-tips,.security-boundaries,.security-faq,.security-final-cta{padding-left:24px;padding-right:24px}
  .security-threat-grid,.security-response-grid,.security-principles-grid,.risk-questions,.security-tips-grid{grid-template-columns:1fr}
  .risk-result>strong{font-size:38px}
}


/* Phase 6.4 — Fleet Locksmith Services */
.fleet-page .site-header{position:absolute}
.fleet-hero{min-height:860px;display:grid;grid-template-columns:1.15fr .85fr;gap:5vw;align-items:center;padding:190px 5vw 90px;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(6,7,8,.98),rgba(6,7,8,.88) 46%,rgba(6,7,8,.38)),url('assets/hero-transit.jpg');background-position:center,right center;background-size:100% 100%,cover}
.fleet-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,#090a0b)}
.fleet-hero-copy,.fleet-hero-panel{position:relative;z-index:1}.fleet-hero-copy{max-width:900px}.fleet-hero h1{font-size:clamp(66px,6vw,104px);line-height:.89;letter-spacing:-.055em;text-transform:uppercase;margin:0 0 28px}.fleet-hero h1 span{color:var(--gold)}.fleet-hero-copy>p:not(.breadcrumb):not(.eyebrow){max-width:700px;color:#dedede;font-size:19px;line-height:1.68}
.fleet-hero-proof{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:42px}.fleet-hero-proof span{padding:17px 15px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.035);backdrop-filter:blur(10px)}.fleet-hero-proof strong{display:block;color:#fff;font-family:Manrope,sans-serif}.fleet-hero-proof small{display:block;color:#aeb0b3;margin-top:6px;font-size:12px}
.fleet-hero-panel{padding:38px;border:1px solid rgba(216,189,132,.33);border-radius:14px;background:rgba(12,14,16,.84);backdrop-filter:blur(16px);box-shadow:0 28px 90px rgba(0,0,0,.34)}.fleet-hero-panel h2{font-size:34px;line-height:1.08;margin:12px 0 26px}.fleet-hero-panel ul{list-style:none;padding:0;margin:0}.fleet-hero-panel li{position:relative;padding:15px 0 15px 26px;border-top:1px solid var(--line);color:#c8c8c8}.fleet-hero-panel li:before{content:"";position:absolute;left:0;top:22px;width:8px;height:8px;border-radius:50%;background:var(--gold)}
.fleet-intro,.fleet-coverage{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;padding:110px 7vw}.fleet-intro h2,.fleet-services-copy h2,.fleet-coverage h2{font-size:clamp(46px,5vw,78px);line-height:.98;letter-spacing:-.045em}.fleet-intro>div:last-child p,.fleet-coverage>div:last-child p{color:#4b4b4b;font-size:17px;line-height:1.8}.fleet-intro .lead-dark,.fleet-coverage .lead-dark{font-size:22px;color:#111;font-weight:600}
.fleet-sectors{padding:115px 5vw;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.08),transparent 28%),#0c0e10}.fleet-sector-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1480px;margin:52px auto 0}.fleet-sector-grid article{padding:30px 26px;min-height:240px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#17191b,#111315)}.fleet-sector-grid span{color:var(--gold);font-size:12px;font-weight:700}.fleet-sector-grid h3{font-size:22px;margin:44px 0 10px}.fleet-sector-grid p{color:#aaa;line-height:1.68}
.fleet-services{padding:110px 7vw;display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw;align-items:start}.fleet-services-copy{position:sticky;top:130px}.fleet-services-copy p{color:#565656;line-height:1.75}.fleet-service-list{border-top:1px solid #d6d0c5}.fleet-service-list article{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid #d6d0c5}.fleet-service-list article>span{color:var(--gold);font-size:12px;font-weight:700;padding-top:5px}.fleet-service-list h3{margin:0 0 8px;color:#111;font-size:24px}.fleet-service-list p{margin:0;color:#565656;line-height:1.68}
.fleet-process{padding:115px 5vw}.fleet-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1450px;margin:55px auto 0}.fleet-process-grid article{padding:30px;border-top:1px solid rgba(216,189,132,.55);background:linear-gradient(180deg,rgba(216,189,132,.06),transparent)}.fleet-process-grid strong{color:var(--gold);font-size:12px}.fleet-process-grid h3{font-size:22px;margin:28px 0 10px}.fleet-process-grid p{color:#aaa;line-height:1.65}
.fleet-downtime{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;padding:115px 7vw;background:#101214}.fleet-downtime-copy h2{font-size:clamp(46px,5vw,78px);line-height:.98;letter-spacing:-.045em}.fleet-downtime-copy .service-lead{color:#ddd;font-size:19px;line-height:1.7}.fleet-downtime-copy>p:last-child{color:#aaa;line-height:1.7}.fleet-downtime-metrics{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fleet-downtime-metrics article{padding:30px;border:1px solid var(--line);border-radius:10px;background:#151719}.fleet-downtime-metrics strong{display:block;color:var(--gold);font-family:Manrope,sans-serif;font-size:44px;line-height:1}.fleet-downtime-metrics span{display:block;color:#fff;font-weight:700;margin:18px 0 8px}.fleet-downtime-metrics p{margin:0;color:#aaa;line-height:1.6}
.fleet-spares{display:grid;grid-template-columns:.9fr 1.1fr;min-height:720px}.fleet-spares-visual{display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle,rgba(216,189,132,.12),transparent 55%),#ede8de}.fleet-key-stack{position:relative;width:410px;height:360px}.fleet-key-card{position:absolute;left:50%;width:330px;height:170px;padding:28px;border-radius:16px;background:#111315;color:#fff;border:1px solid rgba(216,189,132,.28);box-shadow:0 28px 70px rgba(23,20,15,.18);display:flex;flex-direction:column;justify-content:space-between}.fleet-key-card span{color:var(--gold);font-size:12px}.fleet-key-card strong{font-family:Manrope,sans-serif;font-size:24px}.key-card-one{top:0;transform:translateX(-50%) rotate(-7deg)}.key-card-two{top:88px;transform:translateX(-50%) rotate(3deg);background:#17191b}.key-card-three{top:178px;transform:translateX(-50%) rotate(-2deg);background:#202326}.fleet-spares-copy{padding:100px 7vw 90px 5vw;align-self:center}.fleet-spares-copy h2{color:#111;font-size:clamp(46px,5vw,76px);line-height:.98;letter-spacing:-.045em}.fleet-spares-copy>p{color:#555;line-height:1.75}.fleet-spare-points{margin-top:32px;border-top:1px solid #d8d2c8}.fleet-spare-points article{padding:20px 0;border-bottom:1px solid #d8d2c8}.fleet-spare-points p{margin:6px 0 0;color:#666;line-height:1.6}
.fleet-standards{padding:110px 5vw}.fleet-standard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1450px;margin:52px auto 0}.fleet-standard-grid article{padding:32px 28px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#17191b,#111315)}.fleet-standard-grid span{color:var(--gold);text-transform:uppercase;font-size:11px;letter-spacing:.08em;font-weight:700}.fleet-standard-grid h3{font-size:21px;margin:34px 0 10px}.fleet-standard-grid p{color:#aaa;line-height:1.65}
.fleet-faq{padding:110px 7vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}
.fleet-final-cta{padding:125px 6vw;text-align:center;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.17),transparent 32%),#090a0b}.fleet-final-cta h2{font-size:clamp(56px,6.2vw,98px);line-height:.89;text-transform:uppercase;letter-spacing:-.055em;margin:0 0 28px}.fleet-final-cta h2 span{color:var(--gold)}.fleet-final-cta>p:not(.eyebrow){max-width:760px;margin:0 auto 30px;color:#c8c8c8;font-size:18px;line-height:1.7}.fleet-final-cta .hero-actions{justify-content:center}
@media(max-width:1080px){
  .fleet-hero,.fleet-intro,.fleet-services,.fleet-downtime,.fleet-spares,.fleet-coverage,.fleet-faq{grid-template-columns:1fr}
  .fleet-services-copy{position:static}.fleet-sector-grid,.fleet-standard-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .fleet-hero{padding:170px 24px 70px}.fleet-hero-proof,.fleet-sector-grid,.fleet-process-grid,.fleet-downtime-metrics,.fleet-standard-grid{grid-template-columns:1fr}
  .fleet-intro,.fleet-sectors,.fleet-services,.fleet-process,.fleet-downtime,.fleet-spares-copy,.fleet-standards,.fleet-coverage,.fleet-faq,.fleet-final-cta{padding-left:24px;padding-right:24px}
  .fleet-key-stack{transform:scale(.82)}
}


/* Phase 7.1 — Premium manufacturer design system */
.manufacturer-page .site-header,.manufacturer-hub-page .site-header{position:absolute}
.manufacturer-hero{min-height:920px;position:relative;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:4vw;padding:190px 5vw 110px;background:#07090c}
.manufacturer-hero-bg{position:absolute;inset:0;overflow:hidden}.manufacturer-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to right,black,transparent 78%)}
.bmw-light{position:absolute;border-radius:50%;filter:blur(10px)}.bmw-light-one{width:760px;height:760px;right:-180px;top:70px;background:radial-gradient(circle,rgba(216,189,132,.20),rgba(216,189,132,.05) 36%,transparent 68%)}.bmw-light-two{width:520px;height:520px;right:12%;bottom:-250px;background:radial-gradient(circle,rgba(216,189,132,.14),transparent 65%)}
.manufacturer-hero-copy,.manufacturer-key-visual{position:relative;z-index:2}.manufacturer-hero h1{font-size:clamp(72px,7vw,118px);line-height:.87;letter-spacing:-.06em;text-transform:uppercase;margin:0 0 30px}.manufacturer-hero h1 span{color:var(--gold)}.manufacturer-hero-copy>p:not(.breadcrumb):not(.eyebrow){max-width:720px;color:#d5d8de;font-size:19px;line-height:1.7}.manufacturer-hero-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:42px;max-width:760px}.manufacturer-hero-meta span{padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(255,255,255,.035);backdrop-filter:blur(12px)}.manufacturer-hero-meta strong,.manufacturer-hero-meta small{display:block}.manufacturer-hero-meta strong{font-family:Manrope,sans-serif}.manufacturer-hero-meta small{margin-top:5px;color:#aeb4bf;font-size:12px}
.manufacturer-key-visual{min-height:560px;display:grid;place-items:center}.key-orbit{position:absolute;border:1px solid rgba(216,189,132,.18);border-radius:50%}.orbit-one{width:230px;height:230px}.orbit-two{width:390px;height:390px}.orbit-three{width:560px;height:560px}.bmw-key-device{width:205px;height:350px;border-radius:55px;background:linear-gradient(145deg,#252a31,#0f1115);border:1px solid rgba(255,255,255,.18);box-shadow:0 40px 120px rgba(216,189,132,.28),inset 0 1px 1px rgba(255,255,255,.2);padding:22px;transform:rotate(8deg)}.bmw-key-screen{height:122px;border-radius:34px;background:linear-gradient(145deg,#0f1720,#020406);border:1px solid rgba(216,189,132,.25);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 30px rgba(216,189,132,.10)}.bmw-key-screen span{font-size:12px;color:var(--gold);letter-spacing:.18em}.bmw-key-screen strong{font-size:28px;margin-top:8px}.bmw-key-buttons{display:grid;gap:15px;margin-top:34px}.bmw-key-buttons i{display:block;width:100%;height:38px;border-radius:20px;background:linear-gradient(#303640,#171a20);border:1px solid rgba(255,255,255,.1)}
.scroll-cue{position:absolute;z-index:3;left:5vw;bottom:36px;color:#9fa5ae;font-size:12px;text-transform:uppercase;letter-spacing:.1em;display:flex;align-items:center;gap:12px}.scroll-cue span{width:40px;height:1px;background:var(--gold)}
.manufacturer-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;padding:110px 7vw}.manufacturer-intro h2,.manufacturer-services-copy h2,.manufacturer-security-copy h2{font-size:clamp(46px,5vw,78px);line-height:.98;letter-spacing:-.045em}.manufacturer-intro>div:last-child p{color:#4e4e4e;font-size:17px;line-height:1.8}.manufacturer-intro .lead-dark{font-size:22px;color:#111;font-weight:600}
.manufacturer-problem-grid{padding:115px 5vw;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.10),transparent 28%),#0b0e12}.premium-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1450px;margin:52px auto 0}.premium-card{display:block;min-height:280px;padding:32px 28px;border:1px solid rgba(255,255,255,.11);border-radius:12px;background:linear-gradient(145deg,#171b21,#101216);transition:.35s ease}.premium-card:hover{transform:translateY(-7px);border-color:rgba(216,189,132,.48);box-shadow:0 25px 70px rgba(91,61,18,.18)}.premium-card span{color:var(--gold);font-size:12px;font-weight:700}.premium-card h3{font-size:23px;margin:52px 0 12px}.premium-card p{color:#aeb2b9;line-height:1.68}.premium-card strong{color:#fff;font-size:13px}
.manufacturer-timeline{padding:110px 7vw}.timeline-heading{max-width:780px}.timeline-heading h2{font-size:clamp(46px,5vw,76px);line-height:.98;letter-spacing:-.045em}.timeline-heading>p:last-child{color:#5d5d5d;line-height:1.7}.key-system-timeline{display:grid;grid-template-columns:repeat(6,minmax(230px,1fr));gap:0;margin-top:54px;overflow-x:auto;padding-bottom:20px}.key-system-timeline article{position:relative;padding:34px 28px 34px 0;border-top:2px solid #d8c6a6;min-height:250px}.key-system-timeline article:before{content:"";position:absolute;top:-7px;left:0;width:12px;height:12px;border-radius:50%;background:var(--gold)}.key-system-timeline span{font-size:12px;color:var(--gold);font-weight:700}.key-system-timeline strong{display:block;color:#111;font-size:19px;margin:38px 0 12px}.key-system-timeline p{color:#626262;line-height:1.65;font-size:14px}
.manufacturer-services{padding:115px 7vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;background:#0d1014}.manufacturer-services-copy{position:sticky;top:130px}.manufacturer-services-copy>p{color:#aeb3bb;line-height:1.7}.manufacturer-service-stack{border-top:1px solid rgba(255,255,255,.12)}.manufacturer-service-stack article{display:grid;grid-template-columns:65px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.12)}.manufacturer-service-stack article>span{color:var(--gold);font-size:12px;font-weight:700;padding-top:5px}.manufacturer-service-stack h3{font-size:24px;margin:0 0 8px}.manufacturer-service-stack p{margin:0;color:#aeb2b8;line-height:1.65}
.manufacturer-fault-finder{padding:110px 5vw}.fault-finder{max-width:1370px;margin:52px auto 0;display:grid;grid-template-columns:1.15fr .85fr;gap:28px}.fault-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fault-options button{padding:24px;text-align:left;border:1px solid #d7d9dd;border-radius:10px;background:#fff;color:#161616;font:600 16px Inter,sans-serif;cursor:pointer;transition:.25s}.fault-options button:hover,.fault-options button.active{border-color:var(--gold);background:#f7f1e7;transform:translateY(-2px)}.fault-result{padding:40px;border-radius:14px;background:#0c1016;display:flex;flex-direction:column;justify-content:center}.fault-result>strong{font-family:Manrope,sans-serif;font-size:38px;line-height:1.08;color:var(--gold);margin:12px 0 18px}.fault-result>p:not(.eyebrow){color:#c5c8ce;line-height:1.7}
.manufacturer-models{padding:110px 5vw}.model-selector{max-width:1250px;margin:48px auto 0}.model-tabs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.model-tabs button{padding:13px 22px;border-radius:100px;border:1px solid rgba(255,255,255,.15);background:#15191f;color:#c8ccd2;font:600 14px Inter;cursor:pointer}.model-tabs button.active{background:var(--gold);color:#07101f;border-color:var(--gold)}.model-panels{margin-top:25px}.model-panel{display:none;grid-template-columns:repeat(5,1fr);gap:12px}.model-panel.active{display:grid}.model-panel span{padding:22px 16px;text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:linear-gradient(145deg,#171b21,#101216);font-weight:600}
.manufacturer-comparison{padding:110px 7vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw}.comparison-heading h2{font-size:clamp(46px,5vw,76px);line-height:.98;letter-spacing:-.045em}.comparison-heading>p:last-child{color:#5d5d5d;line-height:1.7}.comparison-table{border-top:1px solid #d4d6da}.comparison-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;padding:20px 0;border-bottom:1px solid #d4d6da;color:#555}.comparison-row strong{color:#111}.comparison-head{font-size:12px;text-transform:uppercase;letter-spacing:.07em;font-weight:700;color:var(--gold)}
.manufacturer-security{padding:115px 7vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;background:#0b0e12}.manufacturer-security-copy>p{color:#afb3ba;line-height:1.72}.security-layer-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.security-layer-list article{padding:28px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#12161b}.security-layer-list span{color:var(--gold);font-size:12px}.security-layer-list h3{font-size:21px;margin:30px 0 9px}.security-layer-list p{color:#aeb2b9;line-height:1.62}
.manufacturer-why{padding:110px 5vw}.manufacturer-proof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1450px;margin:50px auto 0}.manufacturer-proof-grid article{padding:30px;border:1px solid #d8d9dc;border-radius:10px;background:#fff}.manufacturer-proof-grid strong{display:block;color:var(--gold);font-family:Manrope,sans-serif;font-size:36px}.manufacturer-proof-grid span{display:block;color:#111;font-weight:700;margin:18px 0 8px}.manufacturer-proof-grid p{color:#626262;line-height:1.63}
.manufacturer-faq{padding:110px 7vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}
.manufacturer-final-cta{padding:125px 6vw;text-align:center;background:radial-gradient(circle at 50% 0,rgba(216,189,132,.16),transparent 34%),#080a0d}.manufacturer-final-cta h2{font-size:clamp(56px,6.2vw,98px);line-height:.89;text-transform:uppercase;letter-spacing:-.055em;margin:0 0 28px}.manufacturer-final-cta h2 span{color:var(--gold)}.manufacturer-final-cta>p:not(.eyebrow){max-width:760px;margin:0 auto 30px;color:#c8cbd1;font-size:18px;line-height:1.7}.manufacturer-final-cta .hero-actions{justify-content:center}
/* Manufacturer hub */
.hub-hero{padding:190px 6vw 90px;min-height:680px;position:relative;overflow:hidden;background-color:#090b0d;background-image:linear-gradient(90deg,rgba(6,8,10,.99) 0%,rgba(6,8,10,.96) 36%,rgba(6,8,10,.72) 53%,rgba(6,8,10,.14) 76%,rgba(6,8,10,.04) 100%),url('assets/brand-library/manufacturers-key-range.webp');background-repeat:no-repeat;background-position:center,right center;background-size:100% 100%,58% auto}.hub-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.22));pointer-events:none}.hub-hero>*{position:relative;z-index:1}.hub-hero h1{font-size:clamp(70px,7vw,116px);line-height:.88;text-transform:uppercase;letter-spacing:-.06em;margin:0 0 28px}.hub-hero h1 span{color:var(--gold)}.hub-hero>p:not(.breadcrumb):not(.eyebrow){max-width:720px;color:#c8c8c8;font-size:19px;line-height:1.7}.manufacturer-search{max-width:720px;margin-top:40px}.manufacturer-search label{display:block;color:#aaa;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.manufacturer-search input{width:100%;padding:19px 20px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(255,255,255,.055);color:#fff;font:500 17px Inter}
.hub-grid-section{padding:110px 5vw}.manufacturer-hub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1480px;margin:52px auto 0}.manufacturer-hub-card{min-height:235px;padding:28px;border:1px solid #d8d4cc;border-radius:10px;background:#fff;color:#111}.manufacturer-hub-card.featured{background:#111418;color:#fff;border-color:#111418;box-shadow:0 25px 70px rgba(20,20,20,.15)}.manufacturer-hub-card span{color:var(--gold);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.manufacturer-hub-card h2{font-size:30px;margin:45px 0 10px}.manufacturer-hub-card p{color:#666;line-height:1.58}.manufacturer-hub-card.featured p{color:#b9bcc1}.manufacturer-hub-card strong{font-size:13px}.manufacturer-empty{text-align:center;color:#555;margin-top:30px}
@media(max-width:1080px){
  .manufacturer-hero,.manufacturer-intro,.manufacturer-services,.manufacturer-comparison,.manufacturer-security,.manufacturer-faq{grid-template-columns:1fr}
  .manufacturer-services-copy{position:static}.premium-card-grid{grid-template-columns:repeat(2,1fr)}.fault-finder{grid-template-columns:1fr}.model-panel{grid-template-columns:repeat(3,1fr)}.manufacturer-proof-grid,.manufacturer-hub-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .manufacturer-hero{padding:170px 24px 80px}.manufacturer-key-visual{min-height:450px}.orbit-three{width:430px;height:430px}.manufacturer-hero-meta,.premium-card-grid,.fault-options,.security-layer-list,.manufacturer-proof-grid,.manufacturer-hub-grid{grid-template-columns:1fr}
  .manufacturer-intro,.manufacturer-problem-grid,.manufacturer-timeline,.manufacturer-services,.manufacturer-fault-finder,.manufacturer-models,.manufacturer-comparison,.manufacturer-security,.manufacturer-why,.manufacturer-faq,.manufacturer-final-cta,.hub-hero,.hub-grid-section{padding-left:24px;padding-right:24px}
  .model-panel{grid-template-columns:1fr 1fr}.comparison-row{grid-template-columns:1fr}.comparison-head{display:none}
}


/* Manufacturer palette rule:
   Manufacturer pages use Odell Automotive's charcoal, gold and off-white
   identity. Brand-specific colour accents are intentionally avoided. */


/* Phase 7.2 — Mercedes-Benz manufacturer page */
.mercedes-glow{position:absolute;border-radius:50%;filter:blur(12px)}
.mercedes-glow-one{width:760px;height:760px;right:-180px;top:40px;background:radial-gradient(circle,rgba(216,189,132,.18),rgba(216,189,132,.045) 38%,transparent 68%)}
.mercedes-glow-two{width:480px;height:480px;right:16%;bottom:-230px;background:radial-gradient(circle,rgba(239,219,178,.11),transparent 67%)}
.mercedes-key-device{width:220px;height:355px;border-radius:62px 62px 48px 48px;background:linear-gradient(145deg,#2d3138,#101216);border:1px solid rgba(255,255,255,.18);box-shadow:0 40px 120px rgba(106,74,23,.26),inset 0 1px 1px rgba(255,255,255,.18);padding:24px;transform:rotate(-7deg);position:relative}
.mercedes-key-top{width:112px;height:112px;border-radius:50%;margin:0 auto 24px;background:radial-gradient(circle at 35% 30%,#3b4048,#111419 70%);border:1px solid rgba(255,255,255,.14);display:grid;place-items:center;box-shadow:inset 0 0 0 10px rgba(255,255,255,.025)}
.mercedes-key-top span{font-family:Manrope,sans-serif;color:var(--gold);font-size:24px;letter-spacing:.12em;font-weight:700}
.mercedes-key-buttons{display:grid;gap:14px}
.mercedes-key-buttons i{display:block;height:38px;border-radius:22px;background:linear-gradient(#313740,#171a20);border:1px solid rgba(255,255,255,.1)}
.mercedes-key-base{position:absolute;left:50%;bottom:-14px;transform:translateX(-50%);width:74px;height:30px;border-radius:0 0 24px 24px;background:#171a20;border:1px solid rgba(255,255,255,.1)}
@media(max-width:720px){
  .mercedes-key-device{width:190px;height:315px}
  .mercedes-key-top{width:96px;height:96px}
}


/* Phase 7.3 — Audi manufacturer page */
.audi-glow{position:absolute;border-radius:50%;filter:blur(14px)}
.audi-glow-one{width:780px;height:780px;right:-180px;top:20px;background:radial-gradient(circle,rgba(216,189,132,.17),rgba(216,189,132,.04) 40%,transparent 69%)}
.audi-glow-two{width:460px;height:460px;right:22%;bottom:-220px;background:radial-gradient(circle,rgba(239,219,178,.1),transparent 68%)}
.audi-key-device{width:218px;height:360px;border-radius:54px;background:linear-gradient(145deg,#2f343c,#101216);border:1px solid rgba(255,255,255,.17);box-shadow:0 40px 120px rgba(105,72,25,.25),inset 0 1px 1px rgba(255,255,255,.17);padding:28px 24px;transform:rotate(7deg);position:relative}
.audi-key-mark{text-align:center;color:var(--gold);font-family:Manrope,sans-serif;font-size:14px;font-weight:700;letter-spacing:.16em}
.audi-key-screen{width:122px;height:82px;margin:28px auto;border-radius:18px;background:linear-gradient(#16191e,#090b0d);border:1px solid rgba(255,255,255,.1);display:grid;place-items:center;box-shadow:inset 0 0 24px rgba(216,189,132,.08)}
.audi-key-screen span{font-size:11px;color:#d8d8d8;letter-spacing:.16em}
.audi-key-buttons{display:grid;gap:14px}
.audi-key-buttons i{display:block;height:38px;border-radius:22px;background:linear-gradient(#303641,#171a20);border:1px solid rgba(255,255,255,.1)}
.audi-key-edge{position:absolute;right:-9px;top:72px;width:14px;height:176px;border-radius:0 8px 8px 0;background:#171a20;border:1px solid rgba(255,255,255,.08)}
@media(max-width:720px){
  .audi-key-device{width:188px;height:318px}
  .audi-key-screen{width:108px;height:70px}
}


/* Phase 7.4 — Volkswagen Premium */
.vw-glow{position:absolute;border-radius:50%;filter:blur(12px)}
.vw-glow-one{width:820px;height:820px;right:-230px;top:-40px;background:radial-gradient(circle,rgba(216,189,132,.18),rgba(216,189,132,.04) 42%,transparent 70%)}
.vw-glow-two{width:500px;height:500px;right:18%;bottom:-240px;background:radial-gradient(circle,rgba(240,220,180,.1),transparent 70%)}
.vw-concentric-rings{position:absolute;right:6%;top:50%;width:560px;height:560px;transform:translateY(-50%)}
.vw-concentric-rings i{position:absolute;inset:50%;transform:translate(-50%,-50%);border:1px solid rgba(216,189,132,.15);border-radius:50%;animation:vwPulse 7s ease-in-out infinite}
.vw-concentric-rings i:nth-child(1){width:160px;height:160px}
.vw-concentric-rings i:nth-child(2){width:280px;height:280px;animation-delay:.5s}
.vw-concentric-rings i:nth-child(3){width:410px;height:410px;animation-delay:1s}
.vw-concentric-rings i:nth-child(4){width:550px;height:550px;animation-delay:1.5s}
@keyframes vwPulse{0%,100%{opacity:.25;transform:translate(-50%,-50%) scale(.97)}50%{opacity:.75;transform:translate(-50%,-50%) scale(1.02)}}

.vw-key-device{width:220px;height:360px;border-radius:56px 56px 42px 42px;background:linear-gradient(145deg,#30353d,#0f1115);border:1px solid rgba(255,255,255,.17);box-shadow:0 44px 130px rgba(100,70,24,.28),inset 0 1px 1px rgba(255,255,255,.16);padding:24px;position:relative;transform:rotate(-6deg);animation:vwFloat 5s ease-in-out infinite}
@keyframes vwFloat{0%,100%{translate:0 0}50%{translate:0 -13px}}
.vw-key-logo{width:92px;height:92px;margin:0 auto 30px;border-radius:50%;display:grid;place-items:center;border:2px solid rgba(216,189,132,.72);color:var(--gold);font-family:Manrope,sans-serif;font-size:24px;font-weight:700;letter-spacing:-.08em;box-shadow:inset 0 0 0 9px rgba(216,189,132,.05),0 0 30px rgba(216,189,132,.08)}
.vw-key-buttons{display:grid;gap:14px}
.vw-key-buttons i{display:block;height:42px;border-radius:22px;background:linear-gradient(#323842,#171a20);border:1px solid rgba(255,255,255,.09)}
.vw-key-spine{position:absolute;left:50%;bottom:-18px;transform:translateX(-50%);width:78px;height:36px;border-radius:0 0 24px 24px;background:#171a20;border:1px solid rgba(255,255,255,.08)}
.vw-key-light{position:absolute;inset:8px;border-radius:48px;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.08),transparent 30%)}

.vw-problem-section{padding:110px 7vw;background:#111317;color:#fff}
.vw-problem-selector{max-width:1280px;margin:45px auto 0;display:grid;grid-template-columns:1.25fr .75fr;gap:28px;align-items:stretch}
.vw-problem-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.vw-problem-cards button{appearance:none;text-align:left;padding:28px;border-radius:24px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));color:#fff;cursor:pointer;transition:.3s ease;min-height:160px}
.vw-problem-cards button:hover,.vw-problem-cards button.active{transform:translateY(-4px);border-color:rgba(216,189,132,.65);background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025))}
.vw-problem-cards span{display:block;color:var(--gold);font-size:12px;letter-spacing:.16em;margin-bottom:24px}
.vw-problem-cards strong{display:block;font:600 21px/1.2 Manrope,sans-serif;margin-bottom:9px}
.vw-problem-cards small{color:#aeb2b8;font-size:14px}
.vw-problem-result{border-radius:28px;padding:38px;background:linear-gradient(155deg,#24272d,#15171b);border:1px solid rgba(216,189,132,.32);display:flex;flex-direction:column;justify-content:center;box-shadow:0 30px 70px rgba(0,0,0,.22)}
.vw-problem-result h3{font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;margin:16px 0}
.vw-problem-result>p:not(.eyebrow){color:#bbbfc5;line-height:1.7;margin-bottom:28px}

.vw-timeline-section{overflow:hidden}
.vw-timeline{max-width:1280px;margin:45px auto 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.vw-timeline button{padding:24px 16px;border:1px solid #d9d3c7;background:#fff;text-align:left;cursor:pointer;transition:.3s;border-radius:18px;min-height:130px}
.vw-timeline button:hover,.vw-timeline button.active{background:#17191d;color:#fff;border-color:#17191d;transform:translateY(-3px)}
.vw-timeline button span{display:block;color:var(--gold);font-size:11px;letter-spacing:.14em;margin-bottom:22px}
.vw-timeline button strong{font-family:Manrope,sans-serif;font-size:15px}
.vw-timeline-detail{max-width:900px;margin:24px auto 0;padding:36px 40px;border-radius:26px;background:#17191d;color:#fff;box-shadow:0 25px 65px rgba(0,0,0,.12)}
.vw-timeline-detail span{color:var(--gold);font-size:12px;letter-spacing:.16em}
.vw-timeline-detail h3{font:600 32px/1.15 Manrope,sans-serif;margin:12px 0}
.vw-timeline-detail p{color:#b8bcc2;line-height:1.7}

.vw-key-anatomy{padding:110px 7vw;background:#111317;color:#fff;display:grid;grid-template-columns:.82fr 1.18fr;gap:60px;align-items:center}
.vw-anatomy-visual{min-height:560px;display:grid;place-items:center}
.vw-anatomy-key{position:relative;width:260px;height:420px;border-radius:62px;background:linear-gradient(145deg,#30353d,#111318);border:1px solid rgba(255,255,255,.15);box-shadow:0 45px 110px rgba(0,0,0,.3)}
.anatomy-core{position:absolute;inset:50%;transform:translate(-50%,-50%);width:116px;height:116px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(216,189,132,.5);color:var(--gold);font:700 16px Manrope,sans-serif;letter-spacing:.12em}
.anatomy-node{position:absolute;width:180px;padding:14px 16px;border-radius:14px;background:#202329;border:1px solid rgba(216,189,132,.28);font-size:13px;box-shadow:0 12px 30px rgba(0,0,0,.2)}
.anatomy-node:after{content:"";position:absolute;top:50%;height:1px;width:72px;background:linear-gradient(90deg,rgba(216,189,132,.8),transparent)}
.node-remote{right:calc(100% + 90px);top:28px}.node-remote:after{left:100%}
.node-battery{left:calc(100% + 90px);top:95px}.node-battery:after{right:100%;transform:rotate(180deg)}
.node-transponder{right:calc(100% + 90px);top:190px}.node-transponder:after{left:100%}
.node-blade{left:calc(100% + 90px);top:280px}.node-blade:after{right:100%;transform:rotate(180deg)}
.node-authorisation{right:calc(100% + 90px);bottom:15px}.node-authorisation:after{left:100%}

.vw-security-architecture{padding:110px 7vw;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}
.vw-security-stack{display:grid;gap:12px}
.vw-security-stack article{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:18px;padding:22px 24px;border-radius:18px;background:#fff;border:1px solid #ded8cd;box-shadow:0 12px 34px rgba(0,0,0,.04);transition:.25s}
.vw-security-stack article:hover{transform:translateX(-5px);border-color:rgba(216,189,132,.65)}
.vw-security-stack span{color:var(--gold);font-size:12px;letter-spacing:.14em}
.vw-security-stack strong{font-family:Manrope,sans-serif}
.vw-security-stack small{color:#777c82}
.premium-faq details{transition:.25s ease}
.premium-faq details[open]{transform:translateX(6px);border-color:rgba(216,189,132,.55)}

@media(max-width:1000px){
  .vw-problem-selector,.vw-key-anatomy,.vw-security-architecture{grid-template-columns:1fr}
  .vw-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
  .vw-anatomy-visual{min-height:640px}
}
@media(max-width:720px){
  .vw-concentric-rings{width:360px;height:360px;right:-80px}
  .vw-concentric-rings i:nth-child(4){width:350px;height:350px}
  .vw-concentric-rings i:nth-child(3){width:280px;height:280px}
  .vw-key-device{width:188px;height:320px}
  .vw-problem-cards{grid-template-columns:1fr}
  .vw-timeline{grid-template-columns:1fr 1fr}
  .vw-key-anatomy{padding-bottom:60px}
  .vw-anatomy-visual{min-height:auto;display:block;overflow:hidden}
  .vw-anatomy-key{margin:30px auto 0;width:210px;height:350px}
  .anatomy-node{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%;margin:10px 0;transform:none}
  .anatomy-node:after{display:none}
  .anatomy-core{display:none}
  .vw-security-stack article{grid-template-columns:42px 1fr}
  .vw-security-stack small{grid-column:2}
}


/* Phase 7.4.3 Volkswagen services heading fix */
.volkswagen-page .manufacturer-services h2{
  color:#fff;
}
.volkswagen-page .manufacturer-services .manufacturer-services-copy>p:not(.eyebrow),
.volkswagen-page .manufacturer-services .manufacturer-services-copy .lead-dark,
.volkswagen-page .manufacturer-services .manufacturer-services-copy p{
  color:#c4c7cc;
}
.volkswagen-page .manufacturer-services .eyebrow{
  color:var(--gold);
}


/* Phase 7.5 — Ford */
.ford-hero-glow{position:absolute;width:760px;height:760px;right:-180px;top:-60px;border-radius:50%;background:radial-gradient(circle,rgba(216,189,132,.18),rgba(216,189,132,.04) 44%,transparent 72%);filter:blur(8px)}
.ford-motion-lines{position:absolute;right:2%;top:18%;width:52%;height:64%;transform:skewX(-14deg)}
.ford-motion-lines i{position:absolute;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(216,189,132,.45),transparent);animation:fordSweep 5s ease-in-out infinite}
.ford-motion-lines i:nth-child(1){top:5%;width:76%}.ford-motion-lines i:nth-child(2){top:25%;width:96%;animation-delay:.4s}.ford-motion-lines i:nth-child(3){top:48%;width:68%;animation-delay:.8s}.ford-motion-lines i:nth-child(4){top:70%;width:88%;animation-delay:1.2s}.ford-motion-lines i:nth-child(5){top:92%;width:58%;animation-delay:1.6s}
@keyframes fordSweep{0%,100%{opacity:.2;transform:translateX(14px)}50%{opacity:.8;transform:translateX(-10px)}}
.ford-key-device{width:225px;height:350px;border-radius:50px;background:linear-gradient(145deg,#30353d,#101217);border:1px solid rgba(255,255,255,.16);box-shadow:0 44px 120px rgba(100,70,24,.25),inset 0 1px rgba(255,255,255,.15);padding:26px;position:relative;transform:rotate(7deg);animation:fordFloat 5.2s ease-in-out infinite}
@keyframes fordFloat{0%,100%{translate:0 0}50%{translate:0 -14px}}
.ford-key-logo{height:80px;border:2px solid rgba(216,189,132,.65);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:700 18px Manrope,sans-serif;letter-spacing:.08em;margin-bottom:28px;box-shadow:inset 0 0 0 8px rgba(216,189,132,.04)}
.ford-key-buttons{display:grid;gap:14px}
.ford-key-buttons i{height:42px;border-radius:22px;background:linear-gradient(#343943,#171a1f);border:1px solid rgba(255,255,255,.08)}
.ford-key-edge{position:absolute;inset:8px;border-radius:43px;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.08),transparent 28%)}

.ford-problem-section{padding:110px 7vw;background:#111317;color:#fff}
.ford-problem-selector{max-width:1280px;margin:45px auto 0;display:grid;grid-template-columns:1.25fr .75fr;gap:28px}
.ford-problem-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ford-problem-cards button{appearance:none;text-align:left;padding:28px;border-radius:24px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));color:#fff;cursor:pointer;transition:.3s ease;min-height:160px}
.ford-problem-cards button:hover,.ford-problem-cards button.active{transform:translateY(-4px);border-color:rgba(216,189,132,.65);background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025))}
.ford-problem-cards span{display:block;color:var(--gold);font-size:12px;letter-spacing:.16em;margin-bottom:24px}
.ford-problem-cards strong{display:block;font:600 21px/1.2 Manrope,sans-serif;margin-bottom:9px}
.ford-problem-cards small{color:#aeb2b8;font-size:14px}
.ford-problem-result{border-radius:28px;padding:38px;background:linear-gradient(155deg,#24272d,#15171b);border:1px solid rgba(216,189,132,.32);display:flex;flex-direction:column;justify-content:center;box-shadow:0 30px 70px rgba(0,0,0,.22)}
.ford-problem-result h3{font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;margin:16px 0}
.ford-problem-result>p:not(.eyebrow){color:#bbbfc5;line-height:1.7;margin-bottom:28px}

.ford-timeline{max-width:1280px;margin:45px auto 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.ford-timeline button{padding:24px 16px;border:1px solid #d9d3c7;background:#fff;text-align:left;cursor:pointer;transition:.3s;border-radius:18px;min-height:130px}
.ford-timeline button:hover,.ford-timeline button.active{background:#17191d;color:#fff;border-color:#17191d;transform:translateY(-3px)}
.ford-timeline button span{display:block;color:var(--gold);font-size:11px;letter-spacing:.14em;margin-bottom:22px}
.ford-timeline button strong{font-family:Manrope,sans-serif;font-size:15px}
.ford-timeline-detail{max-width:900px;margin:24px auto 0;padding:36px 40px;border-radius:26px;background:#17191d;color:#fff;box-shadow:0 25px 65px rgba(0,0,0,.12)}
.ford-timeline-detail span{color:var(--gold);font-size:12px;letter-spacing:.16em}
.ford-timeline-detail h3{font:600 32px/1.15 Manrope,sans-serif;margin:12px 0}
.ford-timeline-detail p{color:#b8bcc2;line-height:1.7}

.ford-commercial-focus{padding:110px 7vw;background:#111317;color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}
.ford-commercial-focus .manufacturer-services-copy>p:not(.eyebrow){color:#c4c7cc}
.ford-commercial-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ford-commercial-grid article{padding:28px;border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.1);transition:.3s}
.ford-commercial-grid article:hover{transform:translateY(-4px);border-color:rgba(216,189,132,.55)}
.ford-commercial-grid span{color:var(--gold);font-size:12px;letter-spacing:.15em}
.ford-commercial-grid h3{font:600 22px Manrope,sans-serif;margin:18px 0 10px}
.ford-commercial-grid p{color:#b8bcc2;line-height:1.65}

@media(max-width:1000px){
  .ford-problem-selector,.ford-commercial-focus{grid-template-columns:1fr}
  .ford-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .ford-problem-cards,.ford-commercial-grid{grid-template-columns:1fr}
  .ford-timeline{grid-template-columns:1fr 1fr}
  .ford-key-device{width:190px;height:310px}
}


/* Phase 7.6 — Toyota */
.toyota-hero-glow{position:absolute;width:760px;height:760px;right:-170px;top:-50px;border-radius:50%;background:radial-gradient(circle,rgba(216,189,132,.17),rgba(216,189,132,.035) 45%,transparent 72%);filter:blur(8px)}
.toyota-ring-system{position:absolute;right:7%;top:12%;width:520px;height:520px}
.toyota-ring-system i{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(216,189,132,.22);animation:toyotaPulse 5s ease-in-out infinite}
.toyota-ring-system i:nth-child(2){inset:60px;animation-delay:.7s}.toyota-ring-system i:nth-child(3){inset:120px;animation-delay:1.4s}
@keyframes toyotaPulse{0%,100%{opacity:.28;transform:scale(.98)}50%{opacity:.8;transform:scale(1.03)}}
.toyota-key-device{width:230px;height:340px;border-radius:48px;background:linear-gradient(150deg,#333842,#101216);border:1px solid rgba(255,255,255,.15);box-shadow:0 45px 120px rgba(90,60,18,.26),inset 0 1px rgba(255,255,255,.14);padding:28px;position:relative;transform:rotate(-6deg);animation:toyotaFloat 5s ease-in-out infinite}
@keyframes toyotaFloat{0%,100%{translate:0 0}50%{translate:0 -13px}}
.toyota-key-emblem{height:82px;border:2px solid rgba(216,189,132,.65);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:700 15px Manrope,sans-serif;letter-spacing:.08em;margin-bottom:28px}
.toyota-key-buttons{display:grid;gap:14px}
.toyota-key-buttons i{height:42px;border-radius:22px;background:linear-gradient(#353a44,#17191d);border:1px solid rgba(255,255,255,.08)}
.toyota-key-detail{position:absolute;inset:9px;border-radius:40px;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.08),transparent 30%)}

.toyota-problem-section{padding:110px 7vw;background:#111317;color:#fff}
.toyota-problem-selector{max-width:1280px;margin:45px auto 0;display:grid;grid-template-columns:1.25fr .75fr;gap:28px}
.toyota-problem-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.toyota-problem-cards button{appearance:none;text-align:left;padding:28px;border-radius:24px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));color:#fff;cursor:pointer;transition:.3s ease;min-height:160px}
.toyota-problem-cards button:hover,.toyota-problem-cards button.active{transform:translateY(-4px);border-color:rgba(216,189,132,.65);background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025))}
.toyota-problem-cards span{display:block;color:var(--gold);font-size:12px;letter-spacing:.16em;margin-bottom:24px}
.toyota-problem-cards strong{display:block;font:600 21px/1.2 Manrope,sans-serif;margin-bottom:9px}
.toyota-problem-cards small{color:#aeb2b8;font-size:14px}
.toyota-problem-result{border-radius:28px;padding:38px;background:linear-gradient(155deg,#24272d,#15171b);border:1px solid rgba(216,189,132,.32);display:flex;flex-direction:column;justify-content:center;box-shadow:0 30px 70px rgba(0,0,0,.22)}
.toyota-problem-result h3{font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;margin:16px 0}
.toyota-problem-result>p:not(.eyebrow){color:#bbbfc5;line-height:1.7;margin-bottom:28px}

.toyota-timeline{max-width:1280px;margin:45px auto 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.toyota-timeline button{padding:24px 16px;border:1px solid #d9d3c7;background:#fff;text-align:left;cursor:pointer;transition:.3s;border-radius:18px;min-height:130px}
.toyota-timeline button:hover,.toyota-timeline button.active{background:#17191d;color:#fff;border-color:#17191d;transform:translateY(-3px)}
.toyota-timeline button span{display:block;color:var(--gold);font-size:11px;letter-spacing:.14em;margin-bottom:22px}
.toyota-timeline button strong{font-family:Manrope,sans-serif;font-size:15px}
.toyota-timeline-detail{max-width:900px;margin:24px auto 0;padding:36px 40px;border-radius:26px;background:#17191d;color:#fff;box-shadow:0 25px 65px rgba(0,0,0,.12)}
.toyota-timeline-detail span{color:var(--gold);font-size:12px;letter-spacing:.16em}
.toyota-timeline-detail h3{font:600 32px/1.15 Manrope,sans-serif;margin:12px 0}
.toyota-timeline-detail p{color:#b8bcc2;line-height:1.7}

@media(max-width:1000px){
  .toyota-problem-selector{grid-template-columns:1fr}
  .toyota-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .toyota-problem-cards{grid-template-columns:1fr}
  .toyota-timeline{grid-template-columns:1fr 1fr}
  .toyota-key-device{width:190px;height:300px}
}

/* Phase 7.7 — Land Rover */
.land-rover-hero-glow{position:absolute;width:760px;height:760px;right:-170px;top:-50px;border-radius:50%;background:radial-gradient(circle,rgba(216,189,132,.17),rgba(216,189,132,.035) 45%,transparent 72%);filter:blur(8px)}
.land-rover-ring-system{position:absolute;right:7%;top:12%;width:520px;height:520px}
.land-rover-ring-system i{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(216,189,132,.22);animation:land-roverPulse 5s ease-in-out infinite}
.land-rover-ring-system i:nth-child(2){inset:60px;animation-delay:.7s}.land-rover-ring-system i:nth-child(3){inset:120px;animation-delay:1.4s}
@keyframes land-roverPulse{0%,100%{opacity:.28;transform:scale(.98)}50%{opacity:.8;transform:scale(1.03)}}
.land-rover-key-device{width:230px;height:340px;border-radius:48px;background:linear-gradient(150deg,#333842,#101216);border:1px solid rgba(255,255,255,.15);box-shadow:0 45px 120px rgba(90,60,18,.26),inset 0 1px rgba(255,255,255,.14);padding:28px;position:relative;transform:rotate(-6deg);animation:land-roverFloat 5s ease-in-out infinite}
@keyframes land-roverFloat{0%,100%{translate:0 0}50%{translate:0 -13px}}
.land-rover-key-emblem{height:82px;border:2px solid rgba(216,189,132,.65);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:700 15px Manrope,sans-serif;letter-spacing:.08em;margin-bottom:28px}
.land-rover-key-buttons{display:grid;gap:14px}
.land-rover-key-buttons i{height:42px;border-radius:22px;background:linear-gradient(#353a44,#17191d);border:1px solid rgba(255,255,255,.08)}
.land-rover-key-detail{position:absolute;inset:9px;border-radius:40px;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.08),transparent 30%)}

.land-rover-problem-section{padding:110px 7vw;background:#111317;color:#fff}
.land-rover-problem-selector{max-width:1280px;margin:45px auto 0;display:grid;grid-template-columns:1.25fr .75fr;gap:28px}
.land-rover-problem-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.land-rover-problem-cards button{appearance:none;text-align:left;padding:28px;border-radius:24px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));color:#fff;cursor:pointer;transition:.3s ease;min-height:160px}
.land-rover-problem-cards button:hover,.land-rover-problem-cards button.active{transform:translateY(-4px);border-color:rgba(216,189,132,.65);background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025))}
.land-rover-problem-cards span{display:block;color:var(--gold);font-size:12px;letter-spacing:.16em;margin-bottom:24px}
.land-rover-problem-cards strong{display:block;font:600 21px/1.2 Manrope,sans-serif;margin-bottom:9px}
.land-rover-problem-cards small{color:#aeb2b8;font-size:14px}
.land-rover-problem-result{border-radius:28px;padding:38px;background:linear-gradient(155deg,#24272d,#15171b);border:1px solid rgba(216,189,132,.32);display:flex;flex-direction:column;justify-content:center;box-shadow:0 30px 70px rgba(0,0,0,.22)}
.land-rover-problem-result h3{font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;margin:16px 0}
.land-rover-problem-result>p:not(.eyebrow){color:#bbbfc5;line-height:1.7;margin-bottom:28px}

.land-rover-timeline{max-width:1280px;margin:45px auto 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.land-rover-timeline button{padding:24px 16px;border:1px solid #d9d3c7;background:#fff;text-align:left;cursor:pointer;transition:.3s;border-radius:18px;min-height:130px}
.land-rover-timeline button:hover,.land-rover-timeline button.active{background:#17191d;color:#fff;border-color:#17191d;transform:translateY(-3px)}
.land-rover-timeline button span{display:block;color:var(--gold);font-size:11px;letter-spacing:.14em;margin-bottom:22px}
.land-rover-timeline button strong{font-family:Manrope,sans-serif;font-size:15px}
.land-rover-timeline-detail{max-width:900px;margin:24px auto 0;padding:36px 40px;border-radius:26px;background:#17191d;color:#fff;box-shadow:0 25px 65px rgba(0,0,0,.12)}
.land-rover-timeline-detail span{color:var(--gold);font-size:12px;letter-spacing:.16em}
.land-rover-timeline-detail h3{font:600 32px/1.15 Manrope,sans-serif;margin:12px 0}
.land-rover-timeline-detail p{color:#b8bcc2;line-height:1.7}

@media(max-width:1000px){
  .land-rover-problem-selector{grid-template-columns:1fr}
  .land-rover-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .land-rover-problem-cards{grid-template-columns:1fr}
  .land-rover-timeline{grid-template-columns:1fr 1fr}
  .land-rover-key-device{width:190px;height:300px}
}

.land-rover-key-emblem{font-size:12px;letter-spacing:.08em;text-align:center;padding:0 12px}.land-rover-key-buttons{grid-template-columns:1fr 1fr}.land-rover-key-buttons i:last-child{grid-column:1/-1}


/* Phase 7.8 — MINI */
.mini-hero-glow{position:absolute;width:760px;height:760px;right:-170px;top:-70px;border-radius:50%;background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);filter:blur(9px)}
.mini-ring-system{position:absolute;right:7%;top:11%;width:540px;height:540px}
.mini-ring-system i{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(216,189,132,.23);animation:miniPulse 5.2s ease-in-out infinite}
.mini-ring-system i:nth-child(2){inset:62px;animation-delay:.65s}.mini-ring-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes miniPulse{0%,100%{opacity:.28;transform:scale(.98)}50%{opacity:.86;transform:scale(1.035)}}
.mini-key-device{width:240px;height:330px;border-radius:52px 52px 70px 70px;background:linear-gradient(150deg,#353941,#101216);border:1px solid rgba(255,255,255,.15);box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);padding:30px;position:relative;transform:rotate(-5deg);animation:miniFloat 5s ease-in-out infinite}
@keyframes miniFloat{0%,100%{translate:0 0;rotate:0}50%{translate:0 -14px;rotate:1deg}}
.mini-key-emblem{width:96px;height:96px;margin:0 auto 28px;border:2px solid rgba(216,189,132,.68);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:700 14px Manrope,sans-serif;letter-spacing:.12em}
.mini-key-buttons{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.mini-key-buttons i{height:48px;border-radius:50%;background:linear-gradient(#373c44,#181a1e);border:1px solid rgba(255,255,255,.08)}
.mini-key-buttons i:last-child{grid-column:1/-1;width:52px;justify-self:center}
.mini-key-detail{position:absolute;inset:10px;border-radius:44px 44px 60px 60px;pointer-events:none;background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%)}

.mini-problem-section{padding:110px 7vw;background:#111317;color:#fff}
.mini-problem-selector{max-width:1280px;margin:45px auto 0;display:grid;grid-template-columns:1.25fr .75fr;gap:28px}
.mini-problem-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.mini-problem-cards button{appearance:none;text-align:left;padding:28px;border-radius:24px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));color:#fff;cursor:pointer;transition:.3s ease;min-height:160px}
.mini-problem-cards button:hover,.mini-problem-cards button.active{transform:translateY(-4px);border-color:rgba(216,189,132,.65);background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025))}
.mini-problem-cards span{display:block;color:var(--gold);font-size:12px;letter-spacing:.16em;margin-bottom:24px}
.mini-problem-cards strong{display:block;font:600 21px/1.2 Manrope,sans-serif;margin-bottom:9px}
.mini-problem-cards small{color:#aeb2b8;font-size:14px}
.mini-problem-result{border-radius:28px;padding:38px;background:linear-gradient(155deg,#24272d,#15171b);border:1px solid rgba(216,189,132,.32);display:flex;flex-direction:column;justify-content:center;box-shadow:0 30px 70px rgba(0,0,0,.22)}
.mini-problem-result h3{font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;margin:16px 0}
.mini-problem-result>p:not(.eyebrow){color:#bbbfc5;line-height:1.7;margin-bottom:28px}

.mini-timeline{max-width:1280px;margin:45px auto 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.mini-timeline button{padding:24px 16px;border:1px solid #d9d3c7;background:#fff;text-align:left;cursor:pointer;transition:.3s;border-radius:18px;min-height:130px}
.mini-timeline button:hover,.mini-timeline button.active{background:#17191d;color:#fff;border-color:#17191d;transform:translateY(-3px)}
.mini-timeline button span{display:block;color:var(--gold);font-size:11px;letter-spacing:.14em;margin-bottom:22px}
.mini-timeline button strong{font-family:Manrope,sans-serif;font-size:15px}
.mini-timeline-detail{max-width:900px;margin:24px auto 0;padding:36px 40px;border-radius:26px;background:#17191d;color:#fff;box-shadow:0 25px 65px rgba(0,0,0,.12)}
.mini-timeline-detail span{color:var(--gold);font-size:12px;letter-spacing:.16em}
.mini-timeline-detail h3{font:600 32px/1.15 Manrope,sans-serif;margin:12px 0}
.mini-timeline-detail p{color:#b8bcc2;line-height:1.7}

@media(max-width:1000px){
  .mini-problem-selector{grid-template-columns:1fr}
  .mini-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .mini-problem-cards{grid-template-columns:1fr}
  .mini-timeline{grid-template-columns:1fr 1fr}
  .mini-key-device{width:195px;height:290px}
}

/* Phase 7.9 Porsche */
.porsche-hero{min-height:920px;background:linear-gradient(120deg,rgba(8,10,13,.98),rgba(20,22,26,.96) 58%,rgba(34,29,24,.92));overflow:hidden}.porsche-hero-glow{position:absolute;width:900px;height:900px;right:-230px;top:-100px;border-radius:50%;background:radial-gradient(circle,rgba(216,189,132,.22),rgba(255,255,255,.025) 42%,transparent 70%);filter:blur(14px)}.porsche-contour-system{position:absolute;right:1%;top:8%;width:720px;height:590px;transform:rotate(-7deg)}.porsche-contour-system i{position:absolute;inset:0;border-radius:54% 46% 48% 52%/46% 51% 49% 54%;border:1px solid rgba(216,189,132,.18);animation:porscheContour 7s ease-in-out infinite}.porsche-contour-system i:nth-child(2){inset:68px 86px;animation-delay:.9s}.porsche-contour-system i:nth-child(3){inset:136px 172px;animation-delay:1.8s}@keyframes porscheContour{0%,100%{opacity:.25;transform:scale(.98)}50%{opacity:.75;transform:scale(1.035) translateX(-8px)}}.porsche-key-device{width:255px;height:370px;border-radius:58px 58px 44px 44px;background:linear-gradient(145deg,#a9adb2 0%,#e5e5e2 18%,#5f646a 48%,#17191d 76%);border:1px solid rgba(255,255,255,.26);box-shadow:0 58px 150px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.5);padding:34px;position:relative;transform:rotate(-8deg);animation:porscheFloat 6.2s ease-in-out infinite}@keyframes porscheFloat{0%,100%{translate:0 0}50%{translate:0 -16px}}.porsche-key-emblem{height:92px;border-radius:24px;background:linear-gradient(145deg,#15171b,#31353a);border:1px solid rgba(255,255,255,.12);display:grid;place-items:center;color:var(--gold);font:700 13px Manrope,sans-serif;letter-spacing:.14em;margin-bottom:34px}.porsche-key-buttons{display:grid;gap:14px}.porsche-key-buttons i{height:50px;border-radius:16px;background:linear-gradient(#3b3f45,#191b20);border:1px solid rgba(255,255,255,.09)}.porsche-key-buttons i:last-child{width:65%;justify-self:center}.porsche-key-detail{position:absolute;inset:10px;border-radius:50px 50px 38px 38px;background:linear-gradient(128deg,rgba(255,255,255,.24),transparent 28%);pointer-events:none}.porsche-problem-section{padding:128px 7vw;background:#0d0f12;color:#fff}.porsche-problem-selector{max-width:1320px;margin:52px auto 0;display:grid;grid-template-columns:1.35fr .65fr;gap:30px}.porsche-problem-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.porsche-problem-cards button{appearance:none;text-align:left;padding:32px;border-radius:18px;border:1px solid rgba(255,255,255,.09);background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));color:#fff;cursor:pointer;transition:.35s;min-height:170px}.porsche-problem-cards button:hover,.porsche-problem-cards button.active{transform:translateY(-5px);border-color:rgba(216,189,132,.68);background:linear-gradient(145deg,rgba(216,189,132,.12),rgba(255,255,255,.02))}.porsche-problem-cards span{display:block;color:var(--gold);font-size:11px;letter-spacing:.18em;margin-bottom:28px}.porsche-problem-cards strong{display:block;font:600 22px/1.2 Manrope,sans-serif;margin-bottom:10px}.porsche-problem-cards small{color:#a9adb3;font-size:14px}.porsche-problem-result{border-radius:20px;padding:42px;background:linear-gradient(155deg,#272a2f,#14161a);border:1px solid rgba(216,189,132,.34);display:flex;flex-direction:column;justify-content:center}.porsche-timeline{max-width:1320px;margin:50px auto 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.porsche-timeline button{padding:28px 18px;border:1px solid #d7d0c5;background:#faf9f6;text-align:left;cursor:pointer;transition:.35s;border-radius:14px;min-height:140px}.porsche-timeline button:hover,.porsche-timeline button.active{background:#131519;color:#fff;border-color:#131519;transform:translateY(-4px)}.porsche-timeline button span{display:block;color:var(--gold);font-size:10px;letter-spacing:.16em;margin-bottom:26px}.porsche-timeline-detail{max-width:940px;margin:28px auto 0;padding:42px 46px;border-radius:18px;background:#131519;color:#fff}@media(max-width:1000px){.porsche-problem-selector{grid-template-columns:1fr}.porsche-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.porsche-problem-cards{grid-template-columns:1fr}.porsche-timeline{grid-template-columns:1fr 1fr}.porsche-key-device{width:205px;height:315px}}

/* Phase 7.10.1 — Nissan styling aligned with the shared manufacturer pages */
.nissan-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.nissan-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.nissan-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.nissan-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:nissanOrbit 5.2s ease-in-out infinite;
}
.nissan-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.nissan-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes nissanOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.nissan-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:nissanFloat 5s ease-in-out infinite;
}
@keyframes nissanFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.nissan-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.nissan-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.nissan-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.nissan-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.nissan-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.nissan-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.nissan-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.nissan-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.nissan-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.nissan-problem-cards button:hover,
.nissan-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.nissan-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.nissan-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.nissan-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.nissan-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.nissan-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.nissan-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.nissan-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.nissan-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.nissan-timeline button:hover,
.nissan-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.nissan-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.nissan-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.nissan-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.nissan-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.nissan-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.nissan-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .nissan-problem-selector{grid-template-columns:1fr}
  .nissan-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .nissan-problem-cards{grid-template-columns:1fr}
  .nissan-timeline{grid-template-columns:1fr 1fr}
  .nissan-key-device{width:195px;height:290px}
}


/* Phase 7.11 — Vauxhall styling aligned with the shared manufacturer pages */
.vauxhall-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.vauxhall-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.vauxhall-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.vauxhall-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:vauxhallOrbit 5.2s ease-in-out infinite;
}
.vauxhall-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.vauxhall-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes vauxhallOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.vauxhall-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:vauxhallFloat 5s ease-in-out infinite;
}
@keyframes vauxhallFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.vauxhall-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.vauxhall-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.vauxhall-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.vauxhall-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.vauxhall-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.vauxhall-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.vauxhall-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.vauxhall-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.vauxhall-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.vauxhall-problem-cards button:hover,
.vauxhall-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.vauxhall-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.vauxhall-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.vauxhall-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.vauxhall-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.vauxhall-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.vauxhall-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.vauxhall-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.vauxhall-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.vauxhall-timeline button:hover,
.vauxhall-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.vauxhall-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.vauxhall-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.vauxhall-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.vauxhall-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.vauxhall-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.vauxhall-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .vauxhall-problem-selector{grid-template-columns:1fr}
  .vauxhall-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .vauxhall-problem-cards{grid-template-columns:1fr}
  .vauxhall-timeline{grid-template-columns:1fr 1fr}
  .vauxhall-key-device{width:195px;height:290px}
}


/* Phase 7.12 — Volvo styling aligned with the shared manufacturer pages */
.volvo-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.volvo-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.volvo-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.volvo-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:volvoOrbit 5.2s ease-in-out infinite;
}
.volvo-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.volvo-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes volvoOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.volvo-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:volvoFloat 5s ease-in-out infinite;
}
@keyframes volvoFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.volvo-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.volvo-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.volvo-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.volvo-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.volvo-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.volvo-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.volvo-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.volvo-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.volvo-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.volvo-problem-cards button:hover,
.volvo-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.volvo-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.volvo-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.volvo-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.volvo-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.volvo-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.volvo-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.volvo-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.volvo-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.volvo-timeline button:hover,
.volvo-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.volvo-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.volvo-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.volvo-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.volvo-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.volvo-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.volvo-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .volvo-problem-selector{grid-template-columns:1fr}
  .volvo-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .volvo-problem-cards{grid-template-columns:1fr}
  .volvo-timeline{grid-template-columns:1fr 1fr}
  .volvo-key-device{width:195px;height:290px}
}


/* Phase 7.13 — Peugeot styling aligned with the shared manufacturer pages */
.peugeot-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.peugeot-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.peugeot-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.peugeot-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:peugeotOrbit 5.2s ease-in-out infinite;
}
.peugeot-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.peugeot-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes peugeotOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.peugeot-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:peugeotFloat 5s ease-in-out infinite;
}
@keyframes peugeotFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.peugeot-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.peugeot-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.peugeot-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.peugeot-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.peugeot-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.peugeot-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.peugeot-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.peugeot-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.peugeot-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.peugeot-problem-cards button:hover,
.peugeot-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.peugeot-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.peugeot-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.peugeot-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.peugeot-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.peugeot-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.peugeot-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.peugeot-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.peugeot-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.peugeot-timeline button:hover,
.peugeot-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.peugeot-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.peugeot-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.peugeot-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.peugeot-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.peugeot-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.peugeot-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .peugeot-problem-selector{grid-template-columns:1fr}
  .peugeot-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .peugeot-problem-cards{grid-template-columns:1fr}
  .peugeot-timeline{grid-template-columns:1fr 1fr}
  .peugeot-key-device{width:195px;height:290px}
}


/* Phase 7.14 — Renault styling aligned with the shared manufacturer pages */
.renault-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.renault-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.renault-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.renault-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:renaultOrbit 5.2s ease-in-out infinite;
}
.renault-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.renault-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes renaultOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.renault-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:renaultFloat 5s ease-in-out infinite;
}
@keyframes renaultFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.renault-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.renault-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.renault-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.renault-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.renault-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.renault-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.renault-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.renault-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.renault-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.renault-problem-cards button:hover,
.renault-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.renault-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.renault-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.renault-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.renault-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.renault-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.renault-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.renault-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.renault-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.renault-timeline button:hover,
.renault-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.renault-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.renault-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.renault-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.renault-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.renault-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.renault-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .renault-problem-selector{grid-template-columns:1fr}
  .renault-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .renault-problem-cards{grid-template-columns:1fr}
  .renault-timeline{grid-template-columns:1fr 1fr}
  .renault-key-device{width:195px;height:290px}
}


/* Phase 7.15 — Skoda page */
.skoda-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.skoda-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.skoda-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.skoda-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:skodaOrbit 5.2s ease-in-out infinite;
}
.skoda-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.skoda-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes skodaOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.skoda-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:skodaFloat 5s ease-in-out infinite;
}
@keyframes skodaFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.skoda-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.skoda-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.skoda-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.skoda-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.skoda-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.skoda-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.skoda-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.skoda-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.skoda-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.skoda-problem-cards button:hover,
.skoda-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.skoda-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.skoda-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.skoda-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.skoda-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.skoda-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.skoda-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.skoda-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.skoda-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.skoda-timeline button:hover,
.skoda-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.skoda-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.skoda-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.skoda-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.skoda-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.skoda-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.skoda-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .skoda-problem-selector{grid-template-columns:1fr}
  .skoda-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .skoda-problem-cards{grid-template-columns:1fr}
  .skoda-timeline{grid-template-columns:1fr 1fr}
  .skoda-key-device{width:195px;height:290px}
}


/* Phase 7.16 — SEAT manufacturer page */
.seat-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.seat-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.seat-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.seat-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:seatOrbit 5.2s ease-in-out infinite;
}
.seat-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.seat-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes seatOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.seat-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:seatFloat 5s ease-in-out infinite;
}
@keyframes seatFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.seat-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.seat-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.seat-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.seat-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.seat-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.seat-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.seat-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.seat-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.seat-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.seat-problem-cards button:hover,
.seat-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.seat-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.seat-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.seat-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.seat-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.seat-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.seat-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.seat-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.seat-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.seat-timeline button:hover,
.seat-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.seat-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.seat-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.seat-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.seat-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.seat-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.seat-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .seat-problem-selector{grid-template-columns:1fr}
  .seat-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .seat-problem-cards{grid-template-columns:1fr}
  .seat-timeline{grid-template-columns:1fr 1fr}
  .seat-key-device{width:195px;height:290px}
}


/* Phase 7.17 — CUPRA manufacturer page */
.cupra-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.cupra-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.cupra-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.cupra-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:cupraOrbit 5.2s ease-in-out infinite;
}
.cupra-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.cupra-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes cupraOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.cupra-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:cupraFloat 5s ease-in-out infinite;
}
@keyframes cupraFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.cupra-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.cupra-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.cupra-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.cupra-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.cupra-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.cupra-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.cupra-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.cupra-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.cupra-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.cupra-problem-cards button:hover,
.cupra-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.cupra-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.cupra-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.cupra-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.cupra-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.cupra-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.cupra-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.cupra-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.cupra-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.cupra-timeline button:hover,
.cupra-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.cupra-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.cupra-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.cupra-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.cupra-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.cupra-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.cupra-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .cupra-problem-selector{grid-template-columns:1fr}
  .cupra-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .cupra-problem-cards{grid-template-columns:1fr}
  .cupra-timeline{grid-template-columns:1fr 1fr}
  .cupra-key-device{width:195px;height:290px}
}


/* Phase 8 — Alfa Romeo */
.alfa-romeo-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.alfa-romeo-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.alfa-romeo-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.alfa-romeo-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:alfa-romeoOrbit 5.2s ease-in-out infinite;
}
.alfa-romeo-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.alfa-romeo-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes alfa-romeoOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.alfa-romeo-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:alfa-romeoFloat 5s ease-in-out infinite;
}
@keyframes alfa-romeoFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.alfa-romeo-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.alfa-romeo-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.alfa-romeo-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.alfa-romeo-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.alfa-romeo-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.alfa-romeo-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.alfa-romeo-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.alfa-romeo-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.alfa-romeo-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.alfa-romeo-problem-cards button:hover,
.alfa-romeo-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.alfa-romeo-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.alfa-romeo-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.alfa-romeo-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.alfa-romeo-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.alfa-romeo-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.alfa-romeo-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.alfa-romeo-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.alfa-romeo-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.alfa-romeo-timeline button:hover,
.alfa-romeo-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.alfa-romeo-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.alfa-romeo-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.alfa-romeo-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.alfa-romeo-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.alfa-romeo-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.alfa-romeo-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .alfa-romeo-problem-selector{grid-template-columns:1fr}
  .alfa-romeo-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .alfa-romeo-problem-cards{grid-template-columns:1fr}
  .alfa-romeo-timeline{grid-template-columns:1fr 1fr}
  .alfa-romeo-key-device{width:195px;height:290px}
}


/* Phase 8 — Abarth */
.abarth-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.abarth-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.abarth-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.abarth-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:abarthOrbit 5.2s ease-in-out infinite;
}
.abarth-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.abarth-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes abarthOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.abarth-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:abarthFloat 5s ease-in-out infinite;
}
@keyframes abarthFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.abarth-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.abarth-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.abarth-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.abarth-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.abarth-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.abarth-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.abarth-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.abarth-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.abarth-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.abarth-problem-cards button:hover,
.abarth-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.abarth-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.abarth-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.abarth-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.abarth-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.abarth-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.abarth-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.abarth-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.abarth-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.abarth-timeline button:hover,
.abarth-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.abarth-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.abarth-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.abarth-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.abarth-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.abarth-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.abarth-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .abarth-problem-selector{grid-template-columns:1fr}
  .abarth-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .abarth-problem-cards{grid-template-columns:1fr}
  .abarth-timeline{grid-template-columns:1fr 1fr}
  .abarth-key-device{width:195px;height:290px}
}


/* Phase 8 — BYD */
.byd-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.byd-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.byd-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.byd-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:bydOrbit 5.2s ease-in-out infinite;
}
.byd-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.byd-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes bydOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.byd-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:bydFloat 5s ease-in-out infinite;
}
@keyframes bydFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.byd-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.byd-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.byd-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.byd-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.byd-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.byd-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.byd-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.byd-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.byd-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.byd-problem-cards button:hover,
.byd-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.byd-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.byd-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.byd-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.byd-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.byd-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.byd-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.byd-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.byd-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.byd-timeline button:hover,
.byd-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.byd-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.byd-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.byd-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.byd-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.byd-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.byd-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .byd-problem-selector{grid-template-columns:1fr}
  .byd-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .byd-problem-cards{grid-template-columns:1fr}
  .byd-timeline{grid-template-columns:1fr 1fr}
  .byd-key-device{width:195px;height:290px}
}


/* Phase 8 — Citroen */
.citroen-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.citroen-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.citroen-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.citroen-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:citroenOrbit 5.2s ease-in-out infinite;
}
.citroen-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.citroen-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes citroenOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.citroen-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:citroenFloat 5s ease-in-out infinite;
}
@keyframes citroenFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.citroen-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.citroen-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.citroen-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.citroen-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.citroen-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.citroen-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.citroen-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.citroen-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.citroen-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.citroen-problem-cards button:hover,
.citroen-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.citroen-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.citroen-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.citroen-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.citroen-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.citroen-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.citroen-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.citroen-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.citroen-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.citroen-timeline button:hover,
.citroen-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.citroen-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.citroen-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.citroen-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.citroen-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.citroen-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.citroen-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .citroen-problem-selector{grid-template-columns:1fr}
  .citroen-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .citroen-problem-cards{grid-template-columns:1fr}
  .citroen-timeline{grid-template-columns:1fr 1fr}
  .citroen-key-device{width:195px;height:290px}
}


/* Phase 8 — Dacia */
.dacia-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.dacia-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.dacia-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.dacia-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:daciaOrbit 5.2s ease-in-out infinite;
}
.dacia-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.dacia-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes daciaOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.dacia-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:daciaFloat 5s ease-in-out infinite;
}
@keyframes daciaFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.dacia-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.dacia-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.dacia-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.dacia-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.dacia-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.dacia-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.dacia-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.dacia-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.dacia-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.dacia-problem-cards button:hover,
.dacia-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.dacia-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.dacia-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.dacia-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.dacia-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.dacia-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.dacia-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.dacia-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.dacia-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.dacia-timeline button:hover,
.dacia-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.dacia-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.dacia-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.dacia-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.dacia-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.dacia-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.dacia-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .dacia-problem-selector{grid-template-columns:1fr}
  .dacia-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .dacia-problem-cards{grid-template-columns:1fr}
  .dacia-timeline{grid-template-columns:1fr 1fr}
  .dacia-key-device{width:195px;height:290px}
}


/* Phase 8 — DS Automobiles */
.ds-automobiles-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.ds-automobiles-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.ds-automobiles-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.ds-automobiles-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:ds-automobilesOrbit 5.2s ease-in-out infinite;
}
.ds-automobiles-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.ds-automobiles-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes ds-automobilesOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.ds-automobiles-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:ds-automobilesFloat 5s ease-in-out infinite;
}
@keyframes ds-automobilesFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.ds-automobiles-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.ds-automobiles-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.ds-automobiles-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.ds-automobiles-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.ds-automobiles-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.ds-automobiles-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.ds-automobiles-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.ds-automobiles-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.ds-automobiles-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.ds-automobiles-problem-cards button:hover,
.ds-automobiles-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.ds-automobiles-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.ds-automobiles-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.ds-automobiles-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.ds-automobiles-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.ds-automobiles-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.ds-automobiles-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.ds-automobiles-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.ds-automobiles-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.ds-automobiles-timeline button:hover,
.ds-automobiles-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.ds-automobiles-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.ds-automobiles-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.ds-automobiles-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.ds-automobiles-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.ds-automobiles-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.ds-automobiles-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .ds-automobiles-problem-selector{grid-template-columns:1fr}
  .ds-automobiles-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .ds-automobiles-problem-cards{grid-template-columns:1fr}
  .ds-automobiles-timeline{grid-template-columns:1fr 1fr}
  .ds-automobiles-key-device{width:195px;height:290px}
}


/* Phase 8 — Fiat */
.fiat-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.fiat-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.fiat-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.fiat-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:fiatOrbit 5.2s ease-in-out infinite;
}
.fiat-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.fiat-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes fiatOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.fiat-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:fiatFloat 5s ease-in-out infinite;
}
@keyframes fiatFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.fiat-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.fiat-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.fiat-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.fiat-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.fiat-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.fiat-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.fiat-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.fiat-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.fiat-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.fiat-problem-cards button:hover,
.fiat-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.fiat-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.fiat-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.fiat-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.fiat-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.fiat-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.fiat-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.fiat-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.fiat-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.fiat-timeline button:hover,
.fiat-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.fiat-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.fiat-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.fiat-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.fiat-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.fiat-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.fiat-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .fiat-problem-selector{grid-template-columns:1fr}
  .fiat-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .fiat-problem-cards{grid-template-columns:1fr}
  .fiat-timeline{grid-template-columns:1fr 1fr}
  .fiat-key-device{width:195px;height:290px}
}


/* Phase 8 — Honda */
.honda-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.honda-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.honda-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.honda-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:hondaOrbit 5.2s ease-in-out infinite;
}
.honda-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.honda-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes hondaOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.honda-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:hondaFloat 5s ease-in-out infinite;
}
@keyframes hondaFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.honda-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.honda-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.honda-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.honda-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.honda-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.honda-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.honda-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.honda-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.honda-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.honda-problem-cards button:hover,
.honda-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.honda-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.honda-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.honda-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.honda-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.honda-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.honda-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.honda-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.honda-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.honda-timeline button:hover,
.honda-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.honda-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.honda-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.honda-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.honda-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.honda-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.honda-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .honda-problem-selector{grid-template-columns:1fr}
  .honda-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .honda-problem-cards{grid-template-columns:1fr}
  .honda-timeline{grid-template-columns:1fr 1fr}
  .honda-key-device{width:195px;height:290px}
}


/* Phase 8 — Hyundai */
.hyundai-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.hyundai-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.hyundai-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.hyundai-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:hyundaiOrbit 5.2s ease-in-out infinite;
}
.hyundai-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.hyundai-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes hyundaiOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.hyundai-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:hyundaiFloat 5s ease-in-out infinite;
}
@keyframes hyundaiFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.hyundai-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.hyundai-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.hyundai-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.hyundai-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.hyundai-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.hyundai-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.hyundai-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.hyundai-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.hyundai-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.hyundai-problem-cards button:hover,
.hyundai-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.hyundai-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.hyundai-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.hyundai-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.hyundai-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.hyundai-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.hyundai-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.hyundai-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.hyundai-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.hyundai-timeline button:hover,
.hyundai-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.hyundai-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.hyundai-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.hyundai-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.hyundai-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.hyundai-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.hyundai-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .hyundai-problem-selector{grid-template-columns:1fr}
  .hyundai-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .hyundai-problem-cards{grid-template-columns:1fr}
  .hyundai-timeline{grid-template-columns:1fr 1fr}
  .hyundai-key-device{width:195px;height:290px}
}


/* Phase 8 — Infiniti */
.infiniti-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.infiniti-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.infiniti-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.infiniti-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:infinitiOrbit 5.2s ease-in-out infinite;
}
.infiniti-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.infiniti-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes infinitiOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.infiniti-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:infinitiFloat 5s ease-in-out infinite;
}
@keyframes infinitiFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.infiniti-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.infiniti-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.infiniti-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.infiniti-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.infiniti-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.infiniti-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.infiniti-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.infiniti-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.infiniti-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.infiniti-problem-cards button:hover,
.infiniti-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.infiniti-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.infiniti-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.infiniti-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.infiniti-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.infiniti-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.infiniti-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.infiniti-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.infiniti-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.infiniti-timeline button:hover,
.infiniti-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.infiniti-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.infiniti-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.infiniti-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.infiniti-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.infiniti-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.infiniti-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .infiniti-problem-selector{grid-template-columns:1fr}
  .infiniti-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .infiniti-problem-cards{grid-template-columns:1fr}
  .infiniti-timeline{grid-template-columns:1fr 1fr}
  .infiniti-key-device{width:195px;height:290px}
}


/* Phase 8 — Jaguar */
.jaguar-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.jaguar-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.jaguar-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.jaguar-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:jaguarOrbit 5.2s ease-in-out infinite;
}
.jaguar-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.jaguar-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes jaguarOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.jaguar-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:jaguarFloat 5s ease-in-out infinite;
}
@keyframes jaguarFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.jaguar-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.jaguar-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.jaguar-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.jaguar-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.jaguar-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.jaguar-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.jaguar-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.jaguar-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.jaguar-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.jaguar-problem-cards button:hover,
.jaguar-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.jaguar-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.jaguar-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.jaguar-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.jaguar-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.jaguar-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.jaguar-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.jaguar-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.jaguar-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.jaguar-timeline button:hover,
.jaguar-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.jaguar-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.jaguar-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.jaguar-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.jaguar-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.jaguar-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.jaguar-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .jaguar-problem-selector{grid-template-columns:1fr}
  .jaguar-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .jaguar-problem-cards{grid-template-columns:1fr}
  .jaguar-timeline{grid-template-columns:1fr 1fr}
  .jaguar-key-device{width:195px;height:290px}
}


/* Phase 8 — Jeep */
.jeep-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.jeep-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.jeep-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.jeep-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:jeepOrbit 5.2s ease-in-out infinite;
}
.jeep-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.jeep-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes jeepOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.jeep-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:jeepFloat 5s ease-in-out infinite;
}
@keyframes jeepFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.jeep-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.jeep-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.jeep-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.jeep-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.jeep-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.jeep-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.jeep-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.jeep-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.jeep-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.jeep-problem-cards button:hover,
.jeep-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.jeep-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.jeep-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.jeep-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.jeep-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.jeep-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.jeep-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.jeep-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.jeep-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.jeep-timeline button:hover,
.jeep-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.jeep-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.jeep-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.jeep-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.jeep-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.jeep-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.jeep-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .jeep-problem-selector{grid-template-columns:1fr}
  .jeep-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .jeep-problem-cards{grid-template-columns:1fr}
  .jeep-timeline{grid-template-columns:1fr 1fr}
  .jeep-key-device{width:195px;height:290px}
}


/* Phase 8 — Kia */
.kia-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.kia-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.kia-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.kia-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:kiaOrbit 5.2s ease-in-out infinite;
}
.kia-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.kia-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes kiaOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.kia-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:kiaFloat 5s ease-in-out infinite;
}
@keyframes kiaFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.kia-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.kia-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.kia-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.kia-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.kia-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.kia-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.kia-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.kia-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.kia-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.kia-problem-cards button:hover,
.kia-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.kia-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.kia-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.kia-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.kia-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.kia-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.kia-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.kia-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.kia-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.kia-timeline button:hover,
.kia-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.kia-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.kia-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.kia-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.kia-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.kia-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.kia-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .kia-problem-selector{grid-template-columns:1fr}
  .kia-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .kia-problem-cards{grid-template-columns:1fr}
  .kia-timeline{grid-template-columns:1fr 1fr}
  .kia-key-device{width:195px;height:290px}
}


/* Phase 8 — Lexus */
.lexus-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.lexus-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.lexus-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.lexus-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:lexusOrbit 5.2s ease-in-out infinite;
}
.lexus-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.lexus-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes lexusOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.lexus-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:lexusFloat 5s ease-in-out infinite;
}
@keyframes lexusFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.lexus-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.lexus-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.lexus-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.lexus-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.lexus-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.lexus-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.lexus-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.lexus-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.lexus-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.lexus-problem-cards button:hover,
.lexus-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.lexus-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.lexus-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.lexus-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.lexus-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.lexus-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.lexus-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.lexus-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.lexus-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.lexus-timeline button:hover,
.lexus-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.lexus-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.lexus-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.lexus-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.lexus-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.lexus-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.lexus-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .lexus-problem-selector{grid-template-columns:1fr}
  .lexus-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .lexus-problem-cards{grid-template-columns:1fr}
  .lexus-timeline{grid-template-columns:1fr 1fr}
  .lexus-key-device{width:195px;height:290px}
}


/* Phase 8 — Maserati */
.maserati-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.maserati-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.maserati-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.maserati-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:maseratiOrbit 5.2s ease-in-out infinite;
}
.maserati-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.maserati-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes maseratiOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.maserati-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:maseratiFloat 5s ease-in-out infinite;
}
@keyframes maseratiFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.maserati-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.maserati-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.maserati-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.maserati-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.maserati-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.maserati-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.maserati-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.maserati-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.maserati-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.maserati-problem-cards button:hover,
.maserati-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.maserati-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.maserati-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.maserati-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.maserati-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.maserati-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.maserati-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.maserati-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.maserati-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.maserati-timeline button:hover,
.maserati-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.maserati-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.maserati-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.maserati-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.maserati-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.maserati-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.maserati-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .maserati-problem-selector{grid-template-columns:1fr}
  .maserati-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .maserati-problem-cards{grid-template-columns:1fr}
  .maserati-timeline{grid-template-columns:1fr 1fr}
  .maserati-key-device{width:195px;height:290px}
}


/* Phase 8 — Mazda */
.mazda-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.mazda-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.mazda-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.mazda-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:mazdaOrbit 5.2s ease-in-out infinite;
}
.mazda-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.mazda-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes mazdaOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.mazda-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:mazdaFloat 5s ease-in-out infinite;
}
@keyframes mazdaFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.mazda-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.mazda-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.mazda-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.mazda-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.mazda-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.mazda-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.mazda-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.mazda-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.mazda-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.mazda-problem-cards button:hover,
.mazda-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.mazda-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.mazda-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.mazda-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.mazda-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.mazda-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.mazda-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.mazda-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.mazda-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.mazda-timeline button:hover,
.mazda-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.mazda-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.mazda-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.mazda-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.mazda-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.mazda-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.mazda-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .mazda-problem-selector{grid-template-columns:1fr}
  .mazda-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .mazda-problem-cards{grid-template-columns:1fr}
  .mazda-timeline{grid-template-columns:1fr 1fr}
  .mazda-key-device{width:195px;height:290px}
}


/* Phase 8 — MG */
.mg-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.mg-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.mg-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.mg-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:mgOrbit 5.2s ease-in-out infinite;
}
.mg-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.mg-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes mgOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.mg-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:mgFloat 5s ease-in-out infinite;
}
@keyframes mgFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.mg-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.mg-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.mg-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.mg-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.mg-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.mg-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.mg-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.mg-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.mg-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.mg-problem-cards button:hover,
.mg-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.mg-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.mg-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.mg-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.mg-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.mg-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.mg-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.mg-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.mg-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.mg-timeline button:hover,
.mg-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.mg-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.mg-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.mg-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.mg-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.mg-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.mg-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .mg-problem-selector{grid-template-columns:1fr}
  .mg-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .mg-problem-cards{grid-template-columns:1fr}
  .mg-timeline{grid-template-columns:1fr 1fr}
  .mg-key-device{width:195px;height:290px}
}


/* Phase 8 — Mitsubishi */
.mitsubishi-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.mitsubishi-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.mitsubishi-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.mitsubishi-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:mitsubishiOrbit 5.2s ease-in-out infinite;
}
.mitsubishi-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.mitsubishi-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes mitsubishiOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.mitsubishi-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:mitsubishiFloat 5s ease-in-out infinite;
}
@keyframes mitsubishiFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.mitsubishi-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.mitsubishi-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.mitsubishi-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.mitsubishi-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.mitsubishi-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.mitsubishi-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.mitsubishi-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.mitsubishi-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.mitsubishi-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.mitsubishi-problem-cards button:hover,
.mitsubishi-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.mitsubishi-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.mitsubishi-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.mitsubishi-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.mitsubishi-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.mitsubishi-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.mitsubishi-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.mitsubishi-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.mitsubishi-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.mitsubishi-timeline button:hover,
.mitsubishi-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.mitsubishi-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.mitsubishi-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.mitsubishi-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.mitsubishi-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.mitsubishi-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.mitsubishi-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .mitsubishi-problem-selector{grid-template-columns:1fr}
  .mitsubishi-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .mitsubishi-problem-cards{grid-template-columns:1fr}
  .mitsubishi-timeline{grid-template-columns:1fr 1fr}
  .mitsubishi-key-device{width:195px;height:290px}
}


/* Phase 8 — Polestar */
.polestar-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.polestar-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.polestar-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.polestar-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:polestarOrbit 5.2s ease-in-out infinite;
}
.polestar-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.polestar-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes polestarOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.polestar-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:polestarFloat 5s ease-in-out infinite;
}
@keyframes polestarFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.polestar-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.polestar-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.polestar-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.polestar-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.polestar-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.polestar-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.polestar-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.polestar-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.polestar-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.polestar-problem-cards button:hover,
.polestar-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.polestar-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.polestar-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.polestar-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.polestar-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.polestar-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.polestar-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.polestar-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.polestar-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.polestar-timeline button:hover,
.polestar-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.polestar-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.polestar-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.polestar-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.polestar-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.polestar-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.polestar-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .polestar-problem-selector{grid-template-columns:1fr}
  .polestar-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .polestar-problem-cards{grid-template-columns:1fr}
  .polestar-timeline{grid-template-columns:1fr 1fr}
  .polestar-key-device{width:195px;height:290px}
}


/* Phase 8 — Smart */
.smart-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.smart-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.smart-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.smart-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:smartOrbit 5.2s ease-in-out infinite;
}
.smart-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.smart-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes smartOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.smart-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:smartFloat 5s ease-in-out infinite;
}
@keyframes smartFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.smart-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.smart-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.smart-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.smart-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.smart-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.smart-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.smart-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.smart-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.smart-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.smart-problem-cards button:hover,
.smart-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.smart-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.smart-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.smart-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.smart-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.smart-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.smart-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.smart-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.smart-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.smart-timeline button:hover,
.smart-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.smart-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.smart-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.smart-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.smart-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.smart-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.smart-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .smart-problem-selector{grid-template-columns:1fr}
  .smart-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .smart-problem-cards{grid-template-columns:1fr}
  .smart-timeline{grid-template-columns:1fr 1fr}
  .smart-key-device{width:195px;height:290px}
}


/* Phase 8 — Subaru */
.subaru-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.subaru-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.subaru-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.subaru-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:subaruOrbit 5.2s ease-in-out infinite;
}
.subaru-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.subaru-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes subaruOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.subaru-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:subaruFloat 5s ease-in-out infinite;
}
@keyframes subaruFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.subaru-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.subaru-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.subaru-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.subaru-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.subaru-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.subaru-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.subaru-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.subaru-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.subaru-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.subaru-problem-cards button:hover,
.subaru-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.subaru-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.subaru-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.subaru-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.subaru-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.subaru-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.subaru-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.subaru-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.subaru-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.subaru-timeline button:hover,
.subaru-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.subaru-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.subaru-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.subaru-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.subaru-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.subaru-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.subaru-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .subaru-problem-selector{grid-template-columns:1fr}
  .subaru-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .subaru-problem-cards{grid-template-columns:1fr}
  .subaru-timeline{grid-template-columns:1fr 1fr}
  .subaru-key-device{width:195px;height:290px}
}


/* Phase 8 — Suzuki */
.suzuki-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.suzuki-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.suzuki-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.suzuki-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:suzukiOrbit 5.2s ease-in-out infinite;
}
.suzuki-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.suzuki-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes suzukiOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.suzuki-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:suzukiFloat 5s ease-in-out infinite;
}
@keyframes suzukiFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.suzuki-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.suzuki-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.suzuki-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.suzuki-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.suzuki-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.suzuki-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.suzuki-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.suzuki-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.suzuki-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.suzuki-problem-cards button:hover,
.suzuki-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.suzuki-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.suzuki-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.suzuki-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.suzuki-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.suzuki-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.suzuki-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.suzuki-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.suzuki-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.suzuki-timeline button:hover,
.suzuki-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.suzuki-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.suzuki-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.suzuki-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.suzuki-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.suzuki-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.suzuki-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .suzuki-problem-selector{grid-template-columns:1fr}
  .suzuki-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .suzuki-problem-cards{grid-template-columns:1fr}
  .suzuki-timeline{grid-template-columns:1fr 1fr}
  .suzuki-key-device{width:195px;height:290px}
}


/* Phase 8 — Tesla */
.tesla-hero{
  min-height:920px;
  background:#07090c;
  overflow:hidden;
}
.tesla-hero-glow{
  position:absolute;
  width:760px;
  height:760px;
  right:-170px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,189,132,.18),rgba(255,255,255,.035) 42%,transparent 72%);
  filter:blur(9px);
}
.tesla-orbit-system{
  position:absolute;
  right:7%;
  top:11%;
  width:540px;
  height:540px;
}
.tesla-orbit-system i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(216,189,132,.23);
  animation:teslaOrbit 5.2s ease-in-out infinite;
}
.tesla-orbit-system i:nth-child(2){inset:62px;animation-delay:.65s}
.tesla-orbit-system i:nth-child(3){inset:124px;animation-delay:1.3s}
@keyframes teslaOrbit{
  0%,100%{opacity:.28;transform:scale(.98)}
  50%{opacity:.86;transform:scale(1.035)}
}
.tesla-key-device{
  width:240px;
  height:330px;
  border-radius:52px 52px 70px 70px;
  background:linear-gradient(150deg,#353941,#101216);
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 45px 120px rgba(70,52,22,.28),inset 0 1px rgba(255,255,255,.14);
  padding:30px;
  position:relative;
  transform:rotate(-5deg);
  animation:teslaFloat 5s ease-in-out infinite;
}
@keyframes teslaFloat{
  0%,100%{translate:0 0;rotate:0}
  50%{translate:0 -14px;rotate:1deg}
}
.tesla-key-emblem{
  width:96px;
  height:96px;
  margin:0 auto 28px;
  border:2px solid rgba(216,189,132,.68);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  font:700 13px Manrope,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.tesla-key-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.tesla-key-buttons i{
  height:48px;
  border-radius:50%;
  background:linear-gradient(#373c44,#181a1e);
  border:1px solid rgba(255,255,255,.08);
}
.tesla-key-buttons i:last-child{
  grid-column:1/-1;
  width:52px;
  justify-self:center;
}
.tesla-key-detail{
  position:absolute;
  inset:10px;
  border-radius:44px 44px 60px 60px;
  pointer-events:none;
  background:linear-gradient(128deg,rgba(255,255,255,.085),transparent 32%);
}

.tesla-problem-section{
  padding:110px 7vw;
  background:#111317;
  color:#fff;
}
.tesla-problem-selector{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
}
.tesla-problem-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.tesla-problem-cards button{
  appearance:none;
  text-align:left;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  color:#fff;
  cursor:pointer;
  transition:.3s ease;
  min-height:160px;
}
.tesla-problem-cards button:hover,
.tesla-problem-cards button.active{
  transform:translateY(-4px);
  border-color:rgba(216,189,132,.65);
  background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.025));
}
.tesla-problem-cards span{
  display:block;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
  margin-bottom:24px;
}
.tesla-problem-cards strong{
  display:block;
  font:600 21px/1.2 Manrope,sans-serif;
  margin-bottom:9px;
}
.tesla-problem-cards small{
  color:#aeb2b8;
  font-size:14px;
}
.tesla-problem-result{
  border-radius:28px;
  padding:38px;
  background:linear-gradient(155deg,#24272d,#15171b);
  border:1px solid rgba(216,189,132,.32);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.tesla-problem-result h3{
  font:600 clamp(28px,3vw,44px)/1.05 Manrope,sans-serif;
  margin:16px 0;
}
.tesla-problem-result>p:not(.eyebrow){
  color:#bbbfc5;
  line-height:1.7;
  margin-bottom:28px;
}

.tesla-timeline{
  max-width:1280px;
  margin:45px auto 0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.tesla-timeline button{
  padding:24px 16px;
  border:1px solid #d9d3c7;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:.3s;
  border-radius:18px;
  min-height:130px;
}
.tesla-timeline button:hover,
.tesla-timeline button.active{
  background:#17191d;
  color:#fff;
  border-color:#17191d;
  transform:translateY(-3px);
}
.tesla-timeline button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:22px;
}
.tesla-timeline button strong{
  font-family:Manrope,sans-serif;
  font-size:15px;
}
.tesla-timeline-detail{
  max-width:900px;
  margin:24px auto 0;
  padding:36px 40px;
  border-radius:26px;
  background:#17191d;
  color:#fff;
  box-shadow:0 25px 65px rgba(0,0,0,.12);
}
.tesla-timeline-detail span{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.16em;
}
.tesla-timeline-detail h3{
  font:600 32px/1.15 Manrope,sans-serif;
  margin:12px 0;
}
.tesla-timeline-detail p{
  color:#b8bcc2;
  line-height:1.7;
}

@media(max-width:1000px){
  .tesla-problem-selector{grid-template-columns:1fr}
  .tesla-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .tesla-problem-cards{grid-template-columns:1fr}
  .tesla-timeline{grid-template-columns:1fr 1fr}
  .tesla-key-device{width:195px;height:290px}
}

/* Phase 9 — technical SEO and 404 page */
.error-page{background:#0b0d10}
.error-main{min-height:76vh;display:grid;place-items:center;padding:180px 7vw 110px;background:radial-gradient(circle at 78% 35%,rgba(216,189,132,.12),transparent 30%),linear-gradient(145deg,#15191f,#080a0d)}
.error-panel{width:min(1100px,100%)}
.error-panel h1{font-size:clamp(68px,9vw,140px);line-height:.84;letter-spacing:-.065em;text-transform:uppercase;margin:0 0 34px}
.error-panel h1 span{color:var(--gold)}
.error-panel>p:not(.eyebrow){max-width:700px;color:#b9bec5;font-size:19px;line-height:1.7}
@media(max-width:760px){.error-main{padding:145px 24px 80px}.error-panel h1{font-size:58px}.error-panel .hero-actions{align-items:stretch;flex-direction:column}}

/* Homepage link repair */
a.service-card{display:block;color:inherit;text-decoration:none}
a.service-card:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.brand-band a{color:inherit;text-decoration:none;transition:opacity .2s ease,color .2s ease}
.brand-band a:hover,.brand-band a:focus-visible{color:var(--gold)}

/* Commercial hero information panel restoration */
.commercial-hero{
  min-height:700px;
  padding:194px 4.5vw 74px;
  align-items:center;
}
.commercial-hero-layout{
  position:relative;
  z-index:2;
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(310px,.62fr);
  gap:clamp(42px,6vw,100px);
  align-items:end;
}
.commercial-hero-copy{max-width:850px}
.commercial-hero-panel{
  align-self:end;
  padding:30px;
  border:1px solid rgba(255,255,255,.18);
  background:linear-gradient(145deg,rgba(19,22,27,.92),rgba(8,10,13,.84));
  backdrop-filter:blur(14px);
  box-shadow:0 24px 70px rgba(0,0,0,.34);
}
.commercial-panel-label{
  margin:0 0 15px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:11px;
  font-weight:700;
}
.commercial-hero-panel h2{
  margin:0 0 26px;
  font-size:clamp(24px,2.2vw,34px);
  line-height:1.08;
  letter-spacing:-.035em;
}
.commercial-panel-list{
  border-top:1px solid rgba(255,255,255,.13);
}
.commercial-panel-list div{
  display:grid;
  grid-template-columns:88px 1fr;
  gap:18px;
  align-items:center;
  padding:17px 0;
  border-bottom:1px solid rgba(255,255,255,.13);
}
.commercial-panel-list strong{
  color:var(--gold);
  font-family:Manrope,sans-serif;
  font-size:17px;
}
.commercial-panel-list span{
  color:#c1c5ca;
  font-size:13px;
  line-height:1.45;
}
.commercial-hero-panel>a{
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin-top:22px;
  color:#fff;
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.commercial-hero-panel>a span{color:var(--gold)}
@media(max-width:1050px){
  .commercial-hero-layout{grid-template-columns:1fr}
  .commercial-hero-panel{max-width:650px}
}
@media(max-width:760px){
  .commercial-hero{
    min-height:760px;
    padding:135px 24px 58px;
  }
  .commercial-hero-layout{gap:32px}
  .commercial-hero-panel{padding:24px}
}


/* Global hero top-spacing alignment — homepage is the master */
.hero,
.page-hero,
.service-hero,
.manufacturer-hero,
.commercial-hero,
.about-hero,
.error-hero {
  padding-top:194px !important;
}

@media (max-width:760px) {
  .hero,
  .page-hero,
  .service-hero,
  .manufacturer-hero,
  .commercial-hero,
  .about-hero,
  .error-hero {
    padding-top:135px !important;
  }
}


/* Additional detected hero classes */
.abarth-hero,
.alfa-romeo-hero,
.all-keys-hero,
.audi-hero,
.bmw-hero,
.broken-hero,
.byd-hero,
.citroen-hero,
.cupra-hero,
.dacia-hero,
.ds-automobiles-hero,
.fiat-hero,
.fleet-hero,
.ford-hero,
.honda-hero,
.hub-hero,
.hyundai-hero,
.ignition-hero,
.infiniti-hero,
.jaguar-hero,
.jeep-hero,
.kia-hero,
.land-rover-hero,
.lexus-hero,
.lost-keys-hero,
.maserati-hero,
.mazda-hero,
.mercedes-hero,
.mg-hero,
.mini-hero,
.mitsubishi-hero,
.nissan-hero,
.peugeot-hero,
.polestar-hero,
.porsche-hero,
.programming-hero,
.renault-hero,
.seat-hero,
.security-hero,
.services-hero,
.skoda-hero,
.smart-hero,
.spare-hero,
.subaru-hero,
.suzuki-hero,
.tesla-hero,
.toyota-hero,
.vauxhall-hero,
.volkswagen-hero,
.volvo-hero {
  padding-top:194px !important;
}
@media (max-width:760px) {
.abarth-hero,
.alfa-romeo-hero,
.all-keys-hero,
.audi-hero,
.bmw-hero,
.broken-hero,
.byd-hero,
.citroen-hero,
.cupra-hero,
.dacia-hero,
.ds-automobiles-hero,
.fiat-hero,
.fleet-hero,
.ford-hero,
.honda-hero,
.hub-hero,
.hyundai-hero,
.ignition-hero,
.infiniti-hero,
.jaguar-hero,
.jeep-hero,
.kia-hero,
.land-rover-hero,
.lexus-hero,
.lost-keys-hero,
.maserati-hero,
.mazda-hero,
.mercedes-hero,
.mg-hero,
.mini-hero,
.mitsubishi-hero,
.nissan-hero,
.peugeot-hero,
.polestar-hero,
.porsche-hero,
.programming-hero,
.renault-hero,
.seat-hero,
.security-hero,
.services-hero,
.skoda-hero,
.smart-hero,
.spare-hero,
.subaru-hero,
.suzuki-hero,
.tesla-hero,
.toyota-hero,
.vauxhall-hero,
.volkswagen-hero,
.volvo-hero {
  padding-top:135px !important;
}
}


/* Match the van image position to the homepage hero */
.services-hero,
.commercial-hero {
  background-position:
    center,
    right bottom,
    right calc(700px - 40.36vw) !important;
  padding-bottom:54px;
}

@media (max-width:1100px) {
  .services-hero,
  .commercial-hero {
    background-position:
      center,
      right bottom,
      right calc(700px - 45.25vw) !important;
  }
}

@media (max-width:800px) {
  .services-hero,
  .commercial-hero {
    background-position:
      center,
      center,
      74% calc(760px - 67.26vw) !important;
    padding-bottom:46px;
  }
}

@media (max-width:520px) {
  .services-hero,
  .commercial-hero {
    background-position:
      center,
      center,
      78% calc(780px - 76.44vw) !important;
  }
}


/* Global outer-hero van alignment — matches the approved Services/Commercial position */
section.about-hero,
section.all-keys-hero,
section.broken-hero,
section.commercial-hero,
section.fleet-hero,
section.hero,
section.hub-hero,
section.lost-keys-hero,
section.manufacturer-hero,
section.programming-hero,
section.security-hero,
section.services-hero,
section.spare-hero {
  background-position:
    center,
    right bottom,
    right calc(700px - 40.36vw) !important;
}

@media (max-width:1100px) {
section.about-hero,
section.all-keys-hero,
section.broken-hero,
section.commercial-hero,
section.fleet-hero,
section.hero,
section.hub-hero,
section.lost-keys-hero,
section.manufacturer-hero,
section.programming-hero,
section.security-hero,
section.services-hero,
section.spare-hero {
  background-position:
    center,
    right bottom,
    right calc(700px - 45.25vw) !important;
}
}

@media (max-width:800px) {
section.about-hero,
section.all-keys-hero,
section.broken-hero,
section.commercial-hero,
section.fleet-hero,
section.hero,
section.hub-hero,
section.lost-keys-hero,
section.manufacturer-hero,
section.programming-hero,
section.security-hero,
section.services-hero,
section.spare-hero {
  background-position:
    center,
    center,
    74% calc(760px - 67.26vw) !important;
}
}

@media (max-width:520px) {
section.about-hero,
section.all-keys-hero,
section.broken-hero,
section.commercial-hero,
section.fleet-hero,
section.hero,
section.hub-hero,
section.lost-keys-hero,
section.manufacturer-hero,
section.programming-hero,
section.security-hero,
section.services-hero,
section.spare-hero {
  background-position:
    center,
    center,
    78% calc(780px - 76.44vw) !important;
}
}


/* ================================================================
   PHASE 10.1 — HOMEPAGE SEO AUTHORITY
   ================================================================ */
.hero-assurance{margin:18px 0 0;color:rgba(255,255,255,.64);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.seo-intro,.authority-section,.vehicle-section,.coverage-authority{padding:clamp(76px,9vw,132px) max(5vw,24px)}
.seo-intro-grid,.coverage-authority-grid{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(44px,8vw,120px);align-items:start}
.seo-intro h2,.authority-heading h2,.process-heading h2,.vehicle-heading h2,.coverage-authority h2,.faq-heading h2{max-width:850px;margin:0;font-family:Manrope,sans-serif;font-size:clamp(2.2rem,4.8vw,4.8rem);line-height:1.02;letter-spacing:-.055em}
.long-copy{font-size:clamp(1rem,1.3vw,1.16rem);line-height:1.85}.long-copy p{margin:0 0 1.25em}.long-copy a{color:inherit;text-decoration-color:var(--gold);text-underline-offset:.2em}
.services-heading>p:last-child{max-width:720px;color:rgba(255,255,255,.68);line-height:1.75}.service-card{position:relative;min-height:330px}.service-number{display:block;margin-bottom:50px;color:var(--gold);font-family:Manrope,sans-serif;font-size:.76rem;letter-spacing:.14em}.card-link{display:block;margin-top:auto;padding-top:25px;color:var(--gold);font-size:.87rem;font-weight:600}.section-action{display:flex;justify-content:center;margin-top:42px}
.authority-heading,.process-heading,.vehicle-heading,.faq-heading{width:min(1180px,100%);margin:0 auto 58px}
.authority-grid{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(20,20,20,.18);border-bottom:1px solid rgba(20,20,20,.18)}
.authority-grid article{padding:44px 30px 46px 0}.authority-grid article+article{padding-left:30px;border-left:1px solid rgba(20,20,20,.18)}.authority-grid article>span{display:block;margin-bottom:42px;color:var(--gold);font:700 clamp(2.3rem,4vw,4.4rem)/1 Manrope,sans-serif;letter-spacing:-.06em}
.authority-grid h3,.process-grid h3{margin:0 0 14px;font:700 1.08rem/1.3 Manrope,sans-serif}.authority-grid p,.process-grid p{margin:0;color:#5f5c56;line-height:1.7}.expertise-copy{width:min(850px,100%);margin:68px auto 0}.expertise-copy h3{font:700 clamp(1.8rem,3vw,2.8rem)/1.15 Manrope,sans-serif;letter-spacing:-.04em}
.process-section{padding:clamp(80px,10vw,140px) max(5vw,24px);background:#121212;color:#f5f1e9}.process-grid{width:min(1180px,100%);margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none}.process-grid li{padding:38px 30px 10px 0;border-top:1px solid rgba(255,255,255,.18)}.process-grid li+li{padding-left:30px;border-left:1px solid rgba(255,255,255,.13)}.process-grid li>span{display:block;margin-bottom:56px;color:var(--gold);font-size:.78rem;letter-spacing:.14em}.process-grid p{color:rgba(255,255,255,.62)}.process-note{width:min(1180px,100%);margin:44px auto 0;color:rgba(255,255,255,.5);font-size:.82rem}
.emergency-feature{padding:clamp(80px,10vw,150px) max(5vw,24px);display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(50px,9vw,140px);background:#1a1917;color:#f5f1e9}.emergency-feature>*{max-width:650px}.emergency-feature>:first-child{justify-self:end}.emergency-feature h2{margin:0;font:700 clamp(2.3rem,4.8vw,5rem)/1.02 Manrope,sans-serif;letter-spacing:-.055em}.emergency-feature .long-copy{color:rgba(255,255,255,.68)}.inline-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}.light-link{color:#f5f1e9!important}
.vehicle-heading>p:last-child,.faq-heading>p:last-child{max-width:760px;line-height:1.75}.manufacturer-links{width:min(1180px,100%);margin:0 auto 42px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(20,20,20,.18)}.manufacturer-links a{padding:24px 12px 24px 0;border-bottom:1px solid rgba(20,20,20,.18);color:#191817;font:600 1rem Manrope,sans-serif;text-decoration:none}.manufacturer-links a:hover{color:var(--gold)}.vehicle-section>.button{display:table;margin:0 auto}.button-dark{background:#171717;color:#fff}.coverage-authority-grid{padding-top:10px}.coverage-authority .text-link{display:inline-block;margin-top:12px}
.faq-section{padding:clamp(80px,10vw,140px) max(5vw,24px);background:#111;color:#f4f0e8}.faq-list{width:min(1000px,100%);margin:0 auto;border-top:1px solid rgba(255,255,255,.2)}.faq-list details{border-bottom:1px solid rgba(255,255,255,.18)}.faq-list summary{position:relative;padding:28px 62px 28px 0;cursor:pointer;list-style:none;font:600 clamp(1rem,1.5vw,1.25rem)/1.4 Manrope,sans-serif}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";position:absolute;right:8px;top:22px;color:var(--gold);font-size:1.8rem;font-weight:400}.faq-list details[open] summary::after{content:"–"}.faq-list details p{max-width:790px;margin:-4px 0 28px;color:rgba(255,255,255,.65);line-height:1.75}.contact-cta>p:not(.eyebrow){max-width:680px;margin:22px auto 30px;color:rgba(255,255,255,.65);line-height:1.75}
@media(max-width:900px){.seo-intro-grid,.coverage-authority-grid,.emergency-feature{grid-template-columns:1fr;gap:34px}.emergency-feature>:first-child{justify-self:start}.authority-grid,.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.authority-grid article:nth-child(3),.process-grid li:nth-child(3){border-left:0}.authority-grid article:nth-child(n+3),.process-grid li:nth-child(n+3){border-top:1px solid rgba(20,20,20,.18)}.process-grid li:nth-child(n+3){border-top-color:rgba(255,255,255,.18)}.manufacturer-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.hero-assurance{max-width:340px;line-height:1.7}.authority-grid,.process-grid{grid-template-columns:1fr}.authority-grid article,.authority-grid article+article,.process-grid li,.process-grid li+li{padding:30px 0;border-left:0;border-top:1px solid rgba(20,20,20,.18)}.process-grid li,.process-grid li+li{border-top-color:rgba(255,255,255,.18)}.authority-grid article>span,.process-grid li>span{margin-bottom:28px}.manufacturer-links{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-actions{align-items:flex-start;flex-direction:column}}


/* ================================================================
   PHASE 10.2 — COLOUR CONTRAST & READABILITY POLISH
   Palette: rich black, warm charcoal, off-white, accessible gold.
   ================================================================ */
:root{
  --oa-black:#101010;
  --oa-charcoal:#191817;
  --oa-off-white:#f5f1e9;
  --oa-light:#fbf8f2;
  --oa-copy-light:#e2ddd4;
  --oa-copy-dark:#4b4842;
  --oa-gold:var(--gold);
  --oa-gold-dark:var(--gold);
}

/* Light sections: enforce dark, readable copy regardless of inherited rules. */
.section-light,.seo-intro,.authority-section,.vehicle-section,.coverage-authority{
  background-color:var(--oa-light);
  color:var(--oa-black);
}
.section-light h1,.section-light h2,.section-light h3,.section-light h4,
.seo-intro h1,.seo-intro h2,.seo-intro h3,
.authority-section h1,.authority-section h2,.authority-section h3,
.vehicle-section h1,.vehicle-section h2,.vehicle-section h3,
.coverage-authority h1,.coverage-authority h2,.coverage-authority h3{
  color:var(--oa-black);
}
.section-light p,.section-light li,
.seo-intro p,.authority-section p,.vehicle-section p,.coverage-authority p{
  color:var(--oa-copy-dark);
}
.eyebrow.dark{color:var(--oa-gold-dark)!important}

/* Dark sections: replace low-opacity grey with legible warm off-white. */
.hero-copy,.services-heading>p:last-child,.emergency-feature .long-copy,
.faq-heading>p:last-child,.faq-list details p,.contact-cta>p:not(.eyebrow),
.commercial-panel p,.process-grid p{
  color:var(--oa-copy-light)!important;
}
.hero-assurance,.process-note{color:#c9c3b9!important}
.services-showcase,.process-section,.faq-section{background-color:var(--oa-black)}
.emergency-feature{background-color:var(--oa-charcoal)}
.services-showcase h1,.services-showcase h2,.services-showcase h3,
.process-section h1,.process-section h2,.process-section h3,
.emergency-feature h1,.emergency-feature h2,.emergency-feature h3,
.faq-section h1,.faq-section h2,.faq-section h3,
.contact-cta h1,.contact-cta h2,.contact-cta h3{color:var(--oa-off-white)}

/* Gold is decorative on dark surfaces; use darker gold for small text on light surfaces. */
.section-light .card-link,.section-light .text-link,.section-light a:not(.button),
.vehicle-section .text-link,.coverage-authority .text-link{color:var(--oa-gold-dark)}
.service-number,.card-link,.process-grid li>span,.faq-list summary::after{color:var(--oa-gold)}

/* Buttons and focus states. */
.button-primary{background:var(--oa-gold);color:#101010!important;border-color:var(--oa-gold)}
.button-primary:hover{background:var(--gold);border-color:var(--gold);color:#101010!important}
.button-secondary{color:#fff!important;border-color:rgba(255,255,255,.72)}
.button-secondary:hover{background:#fff;color:#101010!important}
.button-dark{background:var(--oa-black);color:#fff!important}
a:focus-visible,button:focus-visible,summary:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:4px;
}

/* Improve navigation/footer secondary text without changing layout. */
.site-header nav a,.header-cta{opacity:1}
.site-footer p,.site-footer a,.footer p,.footer a{color:#ded8ce}

@media(max-width:620px){
  .hero-copy,.services-heading>p:last-child,.faq-list details p{color:#e8e3da!important}
}

/* ================================================================
   PHASE 10.2.1 — HOMEPAGE TARGETED READABILITY FIX
   ================================================================ */
/* Light expertise block: stronger dark text against the warm background. */
.authority-section .expertise-copy h3{
  color:#111111 !important;
}
.authority-section .expertise-copy p{
  color:#35322d !important;
}

/* FAQ block: brighter headings, questions and answers on black. */
.faq-section .faq-heading .eyebrow{
  color:var(--gold) !important;
}
.faq-section .faq-heading h2,
.faq-section .faq-list summary{
  color:#fffaf1 !important;
}
.faq-section .faq-heading > p:last-child,
.faq-section .faq-list details p{
  color:#e7e1d7 !important;
}

/* Contact CTA is a light section; enforce dark copy and a visible outline button. */
.contact-cta .eyebrow{
  color:var(--gold) !important;
}
.contact-cta h2{
  color:#111111 !important;
}
.contact-cta > p:not(.eyebrow){
  color:#3f3b35 !important;
}
.contact-cta .button-secondary{
  color:#111111 !important;
  border-color:#111111 !important;
}
.contact-cta .button-secondary:hover{
  background:#111111 !important;
  color:#ffffff !important;
}

/* ================================================================
   PHASE 11 — PREMIUM POLISH
   Subtle motion, tactile surfaces, refined navigation and mobile CTA.
   ================================================================ */
:root{
  --ease-premium:cubic-bezier(.22,1,.36,1);
  --shadow-soft:0 18px 55px rgba(0,0,0,.10);
  --shadow-dark:0 20px 65px rgba(0,0,0,.30);
}
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:rgba(216,189,132,.34);color:inherit}
.site-header{transition:background-color .35s ease,box-shadow .35s ease,backdrop-filter .35s ease,border-color .35s ease}
.site-header.scrolled{background:rgba(10,10,10,.88);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%);box-shadow:0 12px 38px rgba(0,0,0,.18);border-bottom:1px solid rgba(255,255,255,.08)}
.site-nav a{position:relative}
.site-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:linear-gradient(90deg,var(--gold),#ead4a7);transition:right .35s var(--ease-premium)}
.site-nav a:hover::after,.site-nav a:focus-visible::after{right:0}
.button{position:relative;isolation:isolate;overflow:hidden;transition:transform .3s var(--ease-premium),box-shadow .3s ease,border-color .3s ease,background-color .3s ease,color .3s ease}
.button::before{content:"";position:absolute;z-index:-1;inset:0;transform:translateX(-115%) skewX(-18deg);background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);transition:transform .7s var(--ease-premium)}
.button:hover::before{transform:translateX(115%) skewX(-18deg)}
.button:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.18)}
.button:active{transform:translateY(0) scale(.985)}

/* Premium card lift across the shared component library */
.service-card,.value-card,.sector-grid article,.commercial-capability-list article,.commercial-process-grid article,
.services-trust-grid article,.lost-capability-grid article,.lost-process-track article,.lost-confidence-grid article,
.spare-benefit-grid article,.spare-comparison-grid article,.spare-type-list article,.spare-process-line article,
.spare-confidence-grid article,.programming-system-grid article,.programming-diagnostic-cards article,
.programming-process-grid article,.programming-confidence-grid article,.broken-failure-grid article,
.broken-decision-grid article,.broken-process-grid article,.broken-use-grid article,.broken-confidence-grid article,
.all-keys-capability-grid article,.all-keys-scenario-grid article,.all-keys-trust-grid article,
.security-threat-grid article,.security-response-grid article,.security-principles-grid article,.security-tips-grid article,
.fleet-sector-grid article,.fleet-service-list article,.fleet-process-grid article,.fleet-downtime-metrics article,
.fleet-standard-grid article,.manufacturer-grid a,.related-service-grid a,.service-jump-grid a{
  transition:transform .42s var(--ease-premium),box-shadow .42s ease,border-color .42s ease,background-color .42s ease;
  will-change:transform;
}
.service-card:hover,.value-card:hover,.sector-grid article:hover,.commercial-capability-list article:hover,.commercial-process-grid article:hover,
.services-trust-grid article:hover,.lost-capability-grid article:hover,.lost-process-track article:hover,.lost-confidence-grid article:hover,
.spare-benefit-grid article:hover,.spare-comparison-grid article:hover,.spare-type-list article:hover,.spare-process-line article:hover,
.spare-confidence-grid article:hover,.programming-system-grid article:hover,.programming-diagnostic-cards article:hover,
.programming-process-grid article:hover,.programming-confidence-grid article:hover,.broken-failure-grid article:hover,
.broken-decision-grid article:hover,.broken-process-grid article:hover,.broken-use-grid article:hover,.broken-confidence-grid article:hover,
.all-keys-capability-grid article:hover,.all-keys-scenario-grid article:hover,.all-keys-trust-grid article:hover,
.security-threat-grid article:hover,.security-response-grid article:hover,.security-principles-grid article:hover,.security-tips-grid article:hover,
.fleet-sector-grid article:hover,.fleet-service-list article:hover,.fleet-process-grid article:hover,.fleet-downtime-metrics article:hover,
.fleet-standard-grid article:hover,.manufacturer-grid a:hover,.related-service-grid a:hover,.service-jump-grid a:hover{
  transform:translateY(-7px);
  box-shadow:var(--shadow-soft);
  border-color:rgba(216,189,132,.48);
}
.section-light .service-card:hover,.section-light .value-card:hover{box-shadow:var(--shadow-soft)}
.section-dark .service-card:hover,.section-dark .value-card:hover{box-shadow:var(--shadow-dark)}

/* More composed reveal motion with optional JS-set stagger. */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .85s var(--ease-premium),transform .85s var(--ease-premium);transition-delay:var(--reveal-delay,0ms)}
.reveal.visible{opacity:1;transform:none}

/* Fine visual depth on major imagery and editorial panels. */
.hero::after,.about-hero::after,.commercial-hero::after,.lost-hero::after,.spare-hero::after,.programming-hero::after,.broken-hero::after{pointer-events:none}
.story-visual,.service-visual,.commercial-panel,.fleet-hero-panel,.lost-editorial-visual,.spare-precision-visual,.programming-architecture-visual,.broken-anatomy-visual{overflow:hidden}
.story-visual img,.service-visual img,.commercial-panel img,.fleet-hero-panel img,.lost-editorial-visual img,.spare-precision-visual img{transition:transform 1.1s var(--ease-premium)}
.story-visual:hover img,.service-visual:hover img,.commercial-panel:hover img,.fleet-hero-panel:hover img,.lost-editorial-visual:hover img,.spare-precision-visual:hover img{transform:scale(1.025)}

/* Persistent mobile conversion control, injected by script.js. */
.mobile-call-cta{display:none}
@media(max-width:760px){
  body{padding-bottom:78px}
  .mobile-call-cta{display:flex;position:fixed;z-index:9999;left:14px;right:14px;bottom:14px;min-height:56px;align-items:center;justify-content:center;gap:10px;padding:0 22px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:linear-gradient(135deg,var(--gold),var(--gold));color:#111!important;font-family:Manrope,sans-serif;font-size:14px;font-weight:800;letter-spacing:.015em;text-decoration:none;box-shadow:0 14px 40px rgba(0,0,0,.34);transform:translateY(110px);opacity:0;transition:transform .55s var(--ease-premium),opacity .45s ease}
  .mobile-call-cta.is-visible{transform:none;opacity:1}
  .mobile-call-cta:active{transform:scale(.985)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}


/* PHASE 11.1 — SITE-WIDE FAQ ACCORDION POLISH */
.faq-list summary {
  list-style: none !important;
  -webkit-user-select: none;
  user-select: none;
  min-height: 72px;
  align-items: center;
}
.faq-list summary::-webkit-details-marker { display: none !important; }
.faq-list summary::marker { content: "" !important; font-size: 0 !important; }
.faq-list summary > span { display: none !important; }
.faq-list summary::after {
  content: "+" !important;
  display: inline-grid;
  place-items: center;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  position: absolute;
  right: 8px;
  top: 50% !important;
  transform: translateY(-50%) rotate(0deg);
  color: var(--oa-gold, var(--gold));
  font: 400 1.75rem/1 Arial, sans-serif;
  transition: transform .25s ease, color .25s ease;
}
.faq-list details[open] summary::after {
  content: "+" !important;
  transform: translateY(-50%) rotate(45deg);
}
.faq-list summary:focus-visible {
  outline: 2px solid var(--oa-gold, var(--gold));
  outline-offset: 6px;
  border-radius: 2px;
}
@media (max-width: 640px) {
  .faq-list summary { min-height: 68px; padding-right: 54px !important; }
  .faq-list summary::after { right: 4px; }
}
@media (prefers-reduced-motion: reduce) {
  .faq-list summary::after { transition: none; }
}


/* ================================================================
   PHASE 12 — AWWWARDS-INSPIRED HOMEPAGE EXPERIENCE
   ================================================================ */
body{background:#090909}
.phase12-hero{min-height:92vh;display:grid;align-items:end;position:relative;background-position:center 42%;overflow:hidden}
.phase12-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 28%,rgba(216,189,132,.16),transparent 34%),linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.68) 46%,rgba(0,0,0,.22) 75%,rgba(0,0,0,.45) 100%);z-index:0}
.phase12-hero::after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(transparent,#090909);z-index:0}
.phase12-hero .hero-content{position:relative;z-index:1;padding-top:190px;padding-bottom:90px}
.phase12-hero h1{font-size:clamp(3.35rem,7.7vw,8.2rem);line-height:.87;letter-spacing:-.067em;max-width:1080px;text-wrap:balance}
.phase12-hero h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.62)}
.availability-pill{display:inline-flex;align-items:center;gap:9px;margin-bottom:24px;padding:9px 14px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(13,13,13,.5);backdrop-filter:blur(12px);font:700 11px/1 Manrope,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#f6f0e6}
.availability-pill span{width:7px;height:7px;border-radius:50%;background:#71d79a;box-shadow:0 0 0 6px rgba(113,215,154,.1);animation:oaPulse 2s infinite}
@keyframes oaPulse{50%{box-shadow:0 0 0 11px rgba(113,215,154,0)}}
.button-whatsapp{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.32);color:#fff!important}
.phase12-showcase{padding:120px max(6vw,28px);background:#090909;color:#fff;overflow:hidden}
.phase12-section-head{display:grid;grid-template-columns:1.25fr .75fr;gap:8vw;align-items:end;max-width:1440px;margin:0 auto 58px}
.phase12-section-head h2{font-size:clamp(3rem,6vw,6.6rem);line-height:.9;letter-spacing:-.06em;margin:0}
.phase12-section-head>p{max-width:560px;color:#c8c3ba;font-size:1.04rem;line-height:1.8}
.marque-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(310px,26vw);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px max(0px,calc((100vw - 1440px)/2)) 32px;scrollbar-width:thin}
.marque-rail a{scroll-snap-align:start;min-height:430px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.12);text-decoration:none;color:#fff;background:radial-gradient(circle at 70% 20%,rgba(216,189,132,.23),transparent 34%),linear-gradient(145deg,#242321,#0e0e0e);transition:transform .5s var(--ease-premium),border-color .4s ease}
.marque-rail a:nth-child(even){background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.10),transparent 35%),linear-gradient(145deg,#171717,#050505)}
.marque-rail a::before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.06);transition:inset .45s var(--ease-premium)}
.marque-rail a:hover{transform:translateY(-8px);border-color:rgba(216,189,132,.55)}.marque-rail a:hover::before{inset:12px}
.marque-rail span{position:absolute;top:28px;left:28px;color:var(--gold);font:700 12px Manrope,sans-serif}.marque-rail strong{font:700 clamp(2.2rem,4vw,4.6rem)/.95 Manrope,sans-serif;letter-spacing:-.055em}.marque-rail small{margin-top:14px;color:#aaa49a;font-size:.9rem}
.phase12-services .service-card{position:relative;overflow:hidden;min-height:360px}.service-icon{width:52px;height:52px;display:grid;place-items:center;margin-bottom:32px;color:var(--gold)}.service-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.phase12-services .service-card::after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-90px;top:-90px;background:rgba(216,189,132,.08);transition:transform .55s var(--ease-premium)}.phase12-services .service-card:hover::after{transform:scale(1.65)}
.phase12-stats{display:grid;grid-template-columns:repeat(4,1fr);padding:0 max(6vw,28px) 120px;background:#090909;color:#fff}.phase12-stats article{padding:54px 28px;border-top:1px solid rgba(255,255,255,.16);border-right:1px solid rgba(255,255,255,.10)}.phase12-stats strong{font:700 clamp(3.2rem,6vw,6.8rem)/1 Manrope,sans-serif;letter-spacing:-.07em}.phase12-stats article>span{font-size:2rem;color:var(--gold)}.phase12-stats p{max-width:210px;color:#aaa49a;margin:17px 0 0;line-height:1.5}
.phase12-process .process-grid{position:relative}.phase12-process .process-grid::before{content:"";position:absolute;top:41px;left:8%;right:8%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.phase12-process .process-grid li{position:relative}.phase12-process .process-grid li>span{position:relative;z-index:1;background:#0b0b0b;border:1px solid rgba(216,189,132,.45);border-radius:50%;width:82px;height:82px;display:grid;place-items:center;margin-bottom:26px}
.phase12-proof{padding:120px max(6vw,28px);display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}.phase12-proof-copy h2{font-size:clamp(3rem,5vw,6rem);line-height:.92;letter-spacing:-.06em}.phase12-proof-copy>p:last-child{max-width:550px;line-height:1.8;color:#4b4740}.proof-cards{display:grid;gap:0}.proof-cards article{padding:32px 0;border-top:1px solid rgba(0,0,0,.15);display:grid;grid-template-columns:60px 1fr;column-gap:22px}.proof-cards article span{grid-row:1/3;color:var(--gold);font:700 12px Manrope,sans-serif}.proof-cards h3{margin:0 0 10px;font-size:1.45rem}.proof-cards p{margin:0;color:#555049;line-height:1.7}
.phase12-manufacturers .manufacturer-links a{position:relative;overflow:hidden}.phase12-manufacturers .manufacturer-links a::after{content:"↗";opacity:0;transform:translate(-8px,8px);transition:.3s ease}.phase12-manufacturers .manufacturer-links a:hover::after{opacity:1;transform:none}
.phase12-coverage{min-height:760px;padding:120px max(6vw,28px);display:grid;grid-template-columns:.72fr 1.28fr;gap:6vw;align-items:center;background:#0b0b0b;color:#fff;overflow:hidden}.coverage-map-copy h2{font-size:clamp(3rem,5vw,6rem);line-height:.92;letter-spacing:-.06em}.coverage-map-copy>p{max-width:520px;color:#bdb7ad;line-height:1.8;margin-bottom:32px}.ni-map{height:600px;position:relative;border:1px solid rgba(255,255,255,.10);background:radial-gradient(ellipse at 38% 44%,rgba(216,189,132,.18),transparent 34%),linear-gradient(145deg,#171717,#080808);clip-path:polygon(29% 1%,58% 7%,75% 21%,92% 41%,85% 59%,96% 78%,71% 94%,49% 88%,32% 99%,20% 80%,4% 66%,13% 44%,3% 25%,20% 16%)}.ni-map::before{content:"";position:absolute;inset:8%;border:1px solid rgba(216,189,132,.15);clip-path:inherit}.map-glow{position:absolute;width:180px;height:180px;border-radius:50%;left:22%;top:23%;background:radial-gradient(circle,rgba(216,189,132,.3),transparent 68%);animation:mapGlow 3s ease-in-out infinite}@keyframes mapGlow{50%{transform:scale(1.24);opacity:.62}}.map-point{position:absolute;display:grid;grid-template-columns:12px auto;column-gap:10px;align-items:center;font-size:.75rem}.map-point i{width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 6px rgba(216,189,132,.12);grid-row:1/3}.map-point b{font:700 12px Manrope,sans-serif}.map-point small{color:#aaa49a}.point-limavady{left:30%;top:27%}.point-derry{left:18%;top:34%}.point-coleraine{left:43%;top:24%}.point-ballymoney{left:49%;top:40%}.point-ballymena{left:61%;top:52%}.point-belfast{left:72%;top:68%}
.phase12-faq{position:relative}.phase12-faq::before{content:"FAQ";position:absolute;right:3vw;top:20px;font:800 clamp(7rem,18vw,18rem)/1 Manrope,sans-serif;color:rgba(255,255,255,.025);pointer-events:none}
.phase12-float-actions{position:fixed;right:22px;bottom:22px;z-index:9000;display:flex;gap:8px}.phase12-float-actions a{padding:13px 17px;border-radius:999px;text-decoration:none;font:800 11px Manrope,sans-serif;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 12px 28px rgba(0,0,0,.25)}.phase12-float-actions a:first-child{background:linear-gradient(135deg,var(--gold),var(--gold));color:#111}.phase12-float-actions a:last-child{background:#fff;color:#111}
@media(max-width:900px){.phase12-section-head,.phase12-proof,.phase12-coverage{grid-template-columns:1fr}.phase12-stats{grid-template-columns:1fr 1fr}.ni-map{height:520px}.phase12-process .process-grid::before{display:none}}
@media(max-width:620px){.phase12-hero{min-height:860px}.phase12-hero .hero-content{padding-top:150px;padding-bottom:70px}.phase12-hero h1{font-size:clamp(3.2rem,17vw,5.2rem)}.phase12-showcase,.phase12-proof,.phase12-coverage{padding:86px 22px}.phase12-section-head{gap:26px}.marque-rail{grid-auto-columns:82vw}.phase12-stats{grid-template-columns:1fr 1fr;padding:0 22px 85px}.phase12-stats article{padding:34px 16px}.phase12-stats p{font-size:.8rem}.ni-map{height:430px;margin-inline:-10px}.map-point b{font-size:10px}.phase12-float-actions{display:none}.button-whatsapp{display:inline-flex}}

/* ================================================================
   PHASE 12.1 — HOMEPAGE HERO TYPOGRAPHY & POSITION FIX
   ================================================================ */
.phase12-hero{
  align-items:start;
}
.phase12-hero .hero-content{
  padding-top:clamp(132px,15vh,170px);
  padding-bottom:72px;
}
.phase12-hero h1{
  line-height:.91;
  letter-spacing:-.052em;
}
.phase12-hero h1 span{
  color:#f6f0e6;
  -webkit-text-stroke:0 transparent;
  text-shadow:none;
}
@media(max-width:900px){
  .phase12-hero .hero-content{
    padding-top:132px;
    padding-bottom:64px;
  }
}
@media(max-width:620px){
  .phase12-hero{
    min-height:800px;
  }
  .phase12-hero .hero-content{
    padding-top:118px;
    padding-bottom:54px;
  }
  .phase12-hero h1{
    line-height:.94;
    letter-spacing:-.045em;
  }
}

/* ==========================================================
   PHASE 12.2 — REFINED HOMEPAGE HIERARCHY
   ========================================================== */
.phase12-hero{
  min-height:clamp(700px,88vh,920px);
  display:flex;
  align-items:flex-start;
  background-position:center 38%;
}
.phase12-hero .hero-content{
  width:min(100%,1320px);
  padding-top:clamp(150px,18vh,205px)!important;
  padding-bottom:72px!important;
}
.phase12-hero h1{
  max-width:900px;
  margin:18px 0 24px;
  font-size:clamp(3.25rem,6.4vw,7rem)!important;
  line-height:.93!important;
  letter-spacing:-.055em!important;
  text-wrap:balance;
  color:#f4f0e8!important;
}
.phase12-hero h1 span{
  display:block;
  margin-top:.06em;
  color:var(--gold)!important;
  -webkit-text-stroke:0!important;
  background:none!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
  text-shadow:none!important;
}
.phase12-hero .hero-copy{
  max-width:680px;
  font-size:clamp(1rem,1.25vw,1.18rem);
  line-height:1.7;
}
.phase12-hero .hero-actions{margin-top:30px}
.phase12-hero .trust-strip{margin-top:46px}
.phase12-showcase{padding-top:110px}
.phase12-services{padding-top:120px}
.phase12-manufacturers .vehicle-heading{max-width:760px;margin-inline:auto;text-align:center}
.phase12-manufacturers>.button{margin-top:42px!important}
@media(max-width:900px){
  .phase12-hero{min-height:760px;background-position:62% 40%}
  .phase12-hero .hero-content{padding-top:145px!important}
  .phase12-hero h1{font-size:clamp(3rem,10vw,5.5rem)!important}
  .phase12-hero .trust-strip{margin-top:34px}
}
@media(max-width:620px){
  .phase12-hero{min-height:760px;background-position:66% 42%}
  .phase12-hero .hero-content{padding-top:125px!important;padding-bottom:52px!important}
  .phase12-hero h1{font-size:clamp(2.75rem,13.6vw,4.4rem)!important;letter-spacing:-.045em!important}
  .phase12-hero .hero-copy{font-size:.98rem;line-height:1.65}
  .phase12-hero .hero-actions{gap:12px}
  .phase12-hero .hero-actions .button{width:100%}
  .phase12-hero .trust-strip{display:none}
}

/* ================================================================
   PHASE 12.3 — HERO COMPOSITION REWORK
   ================================================================ */
.phase12-hero{
  min-height:clamp(660px,90vh,880px)!important;
  display:flex!important;
  align-items:flex-start!important;
  background-position:center 36%!important;
}
.phase12-hero .hero-content{
  width:min(100%,1320px);
  padding-top:clamp(104px,11vh,132px)!important;
  padding-bottom:68px!important;
}
.phase12-hero .availability-pill{
  margin-top:16px!important;
  margin-bottom:20px!important;
}
.phase12-hero h1{
  max-width:840px!important;
  margin:0 0 30px!important;
  font-size:clamp(3.6rem,6.8vw,7.4rem)!important;
  line-height:.9!important;
  letter-spacing:-.058em!important;
  color:#f4f0e8!important;
}
.phase12-hero h1 span{
  display:block;
  margin-top:.035em!important;
  color:var(--gold)!important;
  -webkit-text-stroke:0!important;
  background:none!important;
  text-shadow:none!important;
}
.phase12-hero .hero-copy{
  max-width:650px;
  margin:0;
  font-size:clamp(1rem,1.2vw,1.16rem);
  line-height:1.72;
  color:#ded9d0;
}
.phase12-hero .hero-actions{
  margin-top:34px!important;
}
.phase12-hero .hero-assurance{
  margin-top:24px;
}
.phase12-hero .trust-strip{
  margin-top:38px!important;
}
@media(max-width:900px){
  .phase12-hero{
    min-height:730px!important;
    background-position:61% 38%!important;
  }
  .phase12-hero .hero-content{
    padding-top:108px!important;
    padding-bottom:56px!important;
  }
  .phase12-hero h1{
    font-size:clamp(3.15rem,10vw,5.8rem)!important;
  }
}
@media(max-width:620px){
  .phase12-hero{
    min-height:720px!important;
    background-position:67% 40%!important;
  }
  .phase12-hero .hero-content{
    padding-top:96px!important;
    padding-bottom:46px!important;
  }
  .phase12-hero .availability-pill{
    margin-bottom:22px;
  }
  .phase12-hero h1{
    margin-bottom:24px!important;
    font-size:clamp(2.85rem,14vw,4.55rem)!important;
    line-height:.93!important;
    letter-spacing:-.048em!important;
  }
  .phase12-hero .hero-actions{
    margin-top:28px!important;
  }
}

/* ================================================================
   PHASE 12.4 — HERO POSITION RAISED
   Keep the hero composition anchored directly beneath the navigation.
   ================================================================ */
.phase12-hero .hero-content{
  padding-top:82px!important;
}
@media(max-width:900px){
  .phase12-hero .hero-content{
    padding-top:84px!important;
  }
}
@media(max-width:620px){
  .phase12-hero .hero-content{
    padding-top:80px!important;
  }
}

/* ================================================================
   PHASE 12.5 — HERO LAYOUT REBUILD
   Remove the original hero's inherited top padding so the content is
   genuinely anchored beneath the navigation rather than being offset twice.
   ================================================================ */
.phase12-hero{
  min-height:clamp(650px,88vh,860px)!important;
  padding:0 4.5vw 54px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1320px)!important;
  align-content:start!important;
  align-items:start!important;
  justify-content:start!important;
}
.phase12-hero .hero-content{
  width:100%!important;
  max-width:1320px!important;
  padding:148px 0 60px!important;
  margin:0!important;
  transform:none!important;
}
@media(max-width:1100px){
  .phase12-hero{
    padding:0 4.5vw 48px!important;
  }
  .phase12-hero .hero-content{
    padding-top:112px!important;
  }
}
@media(max-width:800px){
  .phase12-hero{
    min-height:700px!important;
    padding:0 24px 42px!important;
  }
  .phase12-hero .hero-content{
    padding-top:84px!important;
    padding-bottom:44px!important;
  }
}
@media(max-width:520px){
  .phase12-hero{
    min-height:690px!important;
    padding:0 22px 36px!important;
  }
  .phase12-hero .hero-content{
    padding-top:78px!important;
    padding-bottom:38px!important;
  }
}

/* ================================================================
   PHASE 13 — HOMEPAGE REFINEMENT PASS
   Keeps the approved hero and overall visual direction unchanged.
   Refines card geometry, spacing, typography and interaction consistency.
   ================================================================ */

/* Shared homepage rhythm */
.phase12-showcase,
.phase12-services,
.authority-section,
.phase12-process,
.emergency-feature,
.phase12-manufacturers,
.commercial-section,
.phase12-coverage,
.phase12-faq,
.contact-cta {
  scroll-margin-top: 110px;
}

.phase12-section-head,
.services-heading,
.authority-heading,
.process-heading,
.vehicle-heading,
.faq-heading {
  text-wrap: balance;
}

.phase12-section-head h2,
.services-heading h2,
.authority-heading h2,
.process-heading h2,
.vehicle-heading h2,
.faq-heading h2 {
  letter-spacing: -.035em;
}

/* Vehicle expertise rail — equal cards and protected outer borders */
.phase12-showcase {
  padding-inline: max(5vw, 28px);
  overflow: hidden;
}

.phase12-showcase .marque-rail {
  width: min(1420px, 100%);
  margin-inline: auto;
  padding: 3px 3px 24px;
  gap: 18px;
  scroll-padding-inline: 3px;
}

.phase12-showcase .marque-rail a {
  min-height: 250px;
  height: 100%;
  padding: 30px 28px 28px;
  border-radius: 12px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  isolation: isolate;
  transition: transform .3s var(--ease-premium), border-color .3s ease, box-shadow .3s ease, background .3s ease;
}

.phase12-showcase .marque-rail a strong {
  margin-top: auto;
  margin-bottom: 10px;
  line-height: 1.08;
}

.phase12-showcase .marque-rail a small {
  min-height: 3.2em;
  line-height: 1.6;
}

.phase12-showcase .marque-rail a:hover,
.phase12-showcase .marque-rail a:focus-visible {
  transform: translateY(-6px);
  border-color: rgba(216,189,132,.55);
  box-shadow: 0 22px 50px rgba(0,0,0,.18);
  outline: none;
}

/* Service cards — uniform internal alignment */
.phase12-services .service-grid {
  align-items: stretch;
}

.phase12-services .service-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 12px;
  padding: 30px 24px 27px;
}

.phase12-services .service-card .service-icon {
  flex: 0 0 auto;
}

.phase12-services .service-card h3 {
  min-height: 2.6em;
  display: flex;
  align-items: flex-end;
}

.phase12-services .service-card p {
  flex: 1 1 auto;
}

.phase12-services .service-card .card-link {
  margin-top: auto;
}

/* Why-us and process cards — more consistent alignment */
.authority-grid,
.process-grid {
  align-items: stretch;
}

.authority-grid article,
.process-grid li {
  min-height: 100%;
}

.authority-grid article h3,
.process-grid li h3 {
  min-height: 2.7em;
}

/* Manufacturer index — clearer premium cards without changing content */
.phase12-manufacturers .manufacturer-links {
  width: min(1180px, 100%);
  gap: 14px;
  border-top: 0;
}

.phase12-manufacturers .manufacturer-links a {
  min-height: 72px;
  padding: 0 20px;
  border: 1px solid rgba(20,20,20,.15);
  border-radius: 10px;
  background: rgba(255,255,255,.42);
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
  transition: transform .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease;
}

.phase12-manufacturers .manufacturer-links a:hover,
.phase12-manufacturers .manufacturer-links a:focus-visible {
  color: #171717;
  transform: translateY(-3px);
  border-color: rgba(216,189,132,.55);
  background: #fff;
  box-shadow: 0 14px 30px rgba(30,25,18,.08);
  outline: none;
}

.phase12-manufacturers .manufacturer-links a::after {
  margin-left: 12px;
}

/* Consistent panel radius and subtle depth */
.commercial-panel,
.emergency-feature,
.phase12-faq .faq-list,
.contact-cta {
  border-radius: 12px;
}

.button {
  border-radius: 8px;
}

.button:focus-visible,
a:focus-visible,
summary:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 4px;
}

@media (max-width: 900px) {
  .phase12-showcase .marque-rail a {
    min-height: 225px;
  }
  .phase12-manufacturers .manufacturer-links {
    gap: 12px;
  }
}

@media (max-width: 620px) {
  .phase12-showcase {
    padding-inline: 22px;
  }
  .phase12-showcase .marque-rail {
    padding-left: 3px;
    padding-right: 3px;
  }
  .phase12-showcase .marque-rail a {
    min-height: 215px;
    padding: 26px 22px 24px;
  }
  .phase12-services .service-card {
    min-height: auto;
  }
  .phase12-services .service-card h3,
  .authority-grid article h3,
  .process-grid li h3 {
    min-height: 0;
  }
  .phase12-manufacturers .manufacturer-links {
    grid-template-columns: 1fr;
  }
  .phase12-manufacturers .manufacturer-links a {
    min-height: 64px;
  }
}


/* ================================================================
   PHASE 15 — TEXT-ONLY MANUFACTURERS + MERCEDES CARD FIX
   ================================================================ */
/* Keep the manufacturer section clean and text-only. */
.phase12-manufacturers .manufacturer-links{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.phase12-manufacturers .manufacturer-links a{
  min-width:0;
  text-align:left;
}

/* Prevent the 03 marker from competing with the longer Mercedes-Benz name. */
.phase12-showcase .marque-rail .marque-mercedes strong{
  font-size:clamp(1.85rem,3.25vw,3.8rem);
  max-width:100%;
  overflow-wrap:anywhere;
}
.phase12-showcase .marque-rail .marque-mercedes span{
  z-index:2;
}

@media(max-width:900px){
  .phase12-manufacturers .manufacturer-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .phase12-manufacturers .manufacturer-links{grid-template-columns:1fr}
  .phase12-showcase .marque-rail .marque-mercedes strong{
    font-size:clamp(1.75rem,9vw,2.65rem);
  }
}

/* Phase 16.1 — centre service introduction and display all service-area locations */
.phase12-services .services-heading {
  width: min(100%, 900px);
  margin-inline: auto;
  text-align: center;
}

.phase12-services .services-heading .eyebrow,
.phase12-services .services-heading h2,
.phase12-services .services-heading > p {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.phase12-services .services-heading > p:not(.eyebrow) {
  max-width: 760px;
  line-height: 1.75;
}

.phase12-services .service-card {
  text-align: center;
  align-items: center;
}

.phase12-services .service-card h3 {
  justify-content: center;
  text-align: center;
}

.phase12-services .service-card p,
.phase12-services .service-card .card-link {
  width: 100%;
  text-align: center;
}

/* Additional map markers. These classes existed in the HTML but previously had no positions. */
.point-portrush { left: 42%; top: 14%; }
.point-portstewart { left: 29%; top: 18%; }
.point-omagh { left: 27%; top: 61%; }
.point-magherafelt { left: 48%; top: 55%; }
.point-cookstown { left: 43%; top: 67%; }
.point-antrim { left: 62%; top: 61%; }
.point-lisburn { left: 68%; top: 78%; }
.point-newry { left: 66%; top: 88%; }

/* Keep dense labels readable over the stylised map. */
.ni-map .map-point {
  z-index: 2;
  max-width: 155px;
}

.ni-map .map-point b,
.ni-map .map-point small {
  text-shadow: 0 1px 5px rgba(0,0,0,.95);
}

@media (max-width: 900px) {
  .point-portrush { left: 43%; top: 13%; }
  .point-portstewart { left: 27%; top: 18%; }
  .point-omagh { left: 24%; top: 62%; }
  .point-magherafelt { left: 47%; top: 54%; }
  .point-cookstown { left: 41%; top: 68%; }
  .point-antrim { left: 61%; top: 60%; }
  .point-lisburn { left: 67%; top: 79%; }
  .point-newry { left: 63%; top: 89%; }
}

@media (max-width: 620px) {
  .ni-map .map-point {
    grid-template-columns: 9px auto;
    column-gap: 6px;
  }

  .ni-map .map-point i {
    width: 7px;
    height: 7px;
    box-shadow: 0 0 0 4px rgba(216,189,132,.12);
  }

  .ni-map .map-point b { font-size: 8px; }
  .ni-map .map-point small { display: none; }

  .point-portrush { left: 42%; top: 12%; }
  .point-portstewart { left: 25%; top: 18%; }
  .point-omagh { left: 20%; top: 62%; }
  .point-magherafelt { left: 45%; top: 53%; }
  .point-cookstown { left: 38%; top: 69%; }
  .point-antrim { left: 60%; top: 59%; }
  .point-lisburn { left: 65%; top: 80%; }
  .point-newry { left: 59%; top: 90%; }
}


/* Phase 17 — Conversion and trust */
.phase17-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#111;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);padding:0 max(5vw,24px)}
.phase17-stats article{min-height:150px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border-left:1px solid rgba(255,255,255,.1)}
.phase17-stats article:last-child{border-right:1px solid rgba(255,255,255,.1)}
.phase17-stats strong{font:700 clamp(2.4rem,4.5vw,4.8rem)/1 Manrope,sans-serif;color:var(--gold);letter-spacing:-.06em}
.phase17-stats span{margin-top:10px;color:#d1ccc3;font:600 .78rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.09em}
.phase17-trust-grid{grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:0}
.phase17-trust-grid article{padding:38px 30px;border-bottom:1px solid rgba(20,20,20,.18)}
.phase17-trust-grid article+article{padding-left:30px}
.phase17-trust-grid article:nth-child(4){border-left:0}
.phase17-trust-grid article>span{margin-bottom:28px}
.phase17-mobile-service{padding:clamp(80px,10vw,140px) max(5vw,24px);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(48px,8vw,120px);align-items:center;background:#111;color:#fff}
.phase17-mobile-copy h2{margin:0 0 24px;font:700 clamp(2.5rem,5vw,5rem)/1.02 Manrope,sans-serif;letter-spacing:-.055em}
.phase17-mobile-copy>p:not(.eyebrow){max-width:650px;color:#bbb5ab;line-height:1.8}
.phase17-visit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}
.phase17-visit-grid article{min-height:210px;padding:32px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.phase17-visit-grid span{display:block;margin-bottom:42px;color:var(--gold);font:700 .8rem Manrope,sans-serif;letter-spacing:.12em}
.phase17-visit-grid h3{margin:0 0 12px;font:700 1.2rem Manrope,sans-serif}
.phase17-visit-grid p{margin:0;color:#aaa49a;line-height:1.65}
.phase17-capability-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.phase17-capability-row span{padding:10px 14px;border:1px solid rgba(20,20,20,.18);border-radius:999px;color:#5e594f;font:700 .72rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.07em}
.phase17-location-list{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 18px}
.phase17-location-list span{padding:8px 11px;border:1px solid rgba(255,255,255,.15);border-radius:999px;color:#ddd7cd;font-size:.75rem}
.coverage-map-copy .coverage-note{margin:0 0 28px;color:var(--gold);font-weight:600}
.point-enniskillen{left:23%;top:69%}
.phase17-final-cta{background:radial-gradient(circle at 50% 0,rgba(216,189,132,.13),transparent 40%),#0d0d0d}
.phase17-final-cta .button-whatsapp{display:inline-flex}
.phase17-mobile-bar{display:none}
@media(max-width:900px){
 .phase17-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 .phase17-stats article:nth-child(3){border-top:1px solid rgba(255,255,255,.1)}
 .phase17-stats article:nth-child(4){border-top:1px solid rgba(255,255,255,.1)}
 .phase17-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .phase17-trust-grid article:nth-child(odd){border-left:0}
 .phase17-trust-grid article:nth-child(even){border-left:1px solid rgba(20,20,20,.18)}
 .phase17-mobile-service{grid-template-columns:1fr}
}
@media(max-width:620px){
 body{padding-bottom:76px}
 .phase17-stats{padding:0 16px}
 .phase17-stats article{min-height:120px}
 .phase17-stats strong{font-size:2.6rem}
 .phase17-stats span{font-size:.67rem;padding:0 8px}
 .phase17-trust-grid{grid-template-columns:1fr}
 .phase17-trust-grid article,.phase17-trust-grid article+article,.phase17-trust-grid article:nth-child(even){padding:30px 0;border-left:0}
 .phase17-visit-grid{grid-template-columns:1fr}
 .phase17-visit-grid article{min-height:auto}
 .phase17-mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:10000;display:grid;grid-template-columns:1fr 1fr;padding:10px;background:rgba(10,10,10,.96);backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.14)}
 .phase17-mobile-bar a{min-height:52px;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font:800 .82rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.04em}
 .phase17-mobile-bar a:first-child{background:linear-gradient(135deg,var(--gold),var(--gold));color:#111;border-radius:999px 0 0 999px}
 .phase17-mobile-bar a:last-child{background:#fff;color:#111;border-radius:0 999px 999px 0}
 .mobile-call-cta{display:none!important}
}


/* Phase 18A — homepage interaction and premium polish */
.phase18-assistant{
  padding:clamp(84px,10vw,142px) max(6vw,24px);
  background:linear-gradient(135deg,#f3f0e9 0%,#e8e3d9 100%);
  color:#151515;
}
.phase18-assistant-copy{
  width:min(1180px,100%);
  margin:0 auto 48px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);
  gap:clamp(28px,6vw,90px);
  align-items:end;
}
.phase18-assistant-copy .eyebrow{grid-column:1/-1;margin-bottom:-18px;color:var(--gold)}
.phase18-assistant-copy h2{margin:0;font-size:clamp(2.7rem,5.6vw,6rem);line-height:.94;letter-spacing:-.06em;max-width:820px}
.phase18-assistant-copy>p:last-child{margin:0;color:#5f5a52;line-height:1.8;max-width:560px}
.phase18-help-grid{
  width:min(1180px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid rgba(20,20,20,.18);
  border-left:1px solid rgba(20,20,20,.18);
}
.phase18-help-grid a{
  min-height:260px;
  display:flex;
  flex-direction:column;
  padding:30px;
  color:#171717;
  text-decoration:none;
  border-right:1px solid rgba(20,20,20,.18);
  border-bottom:1px solid rgba(20,20,20,.18);
  background:rgba(255,255,255,.30);
  transition:transform .3s ease,background .3s ease,box-shadow .3s ease;
}
.phase18-help-grid a:hover,.phase18-help-grid a:focus-visible{
  transform:translateY(-5px);
  background:#fff;
  box-shadow:0 22px 52px rgba(27,23,16,.10);
  outline:none;
}
.phase18-help-grid span{font:700 .72rem/1 Manrope,sans-serif;letter-spacing:.16em;color:var(--gold);margin-bottom:auto}
.phase18-help-grid strong{font:700 clamp(1.25rem,1.9vw,1.75rem)/1.15 Manrope,sans-serif;letter-spacing:-.035em;margin:30px 0 12px}
.phase18-help-grid small{font-size:.95rem;line-height:1.65;color:#686158;max-width:30ch}
.phase18-help-grid b{margin-top:25px;font:700 .8rem/1 Manrope,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--gold)}
.phase18-assistant-actions{width:min(1180px,100%);margin:34px auto 0;display:flex;gap:12px;flex-wrap:wrap}

/* More considered homepage motion */
.phase18-help-grid a,.phase17-stats article,.phase17-trust-grid article,.phase17-visit-grid article{will-change:transform}
.phase17-stats article,.phase17-trust-grid article,.phase17-visit-grid article{transition:transform .3s ease,border-color .3s ease,background .3s ease}
.phase17-stats article:hover,.phase17-trust-grid article:hover,.phase17-visit-grid article:hover{transform:translateY(-4px)}
.phase12-showcase h2,.services-heading h2,.authority-heading h2,.process-heading h2,.faq-heading h2{position:relative}
.phase12-showcase h2::after,.services-heading h2::after,.authority-heading h2::after,.process-heading h2::after,.faq-heading h2::after{
  content:"";display:block;width:54px;height:2px;margin-top:24px;background:var(--gold);transform-origin:left;transition:width .35s ease
}
.phase12-showcase:hover h2::after,.services-showcase:hover .services-heading h2::after,.authority-section:hover .authority-heading h2::after,.process-section:hover .process-heading h2::after,.faq-section:hover .faq-heading h2::after{width:94px}
.faq-list details{transition:background .25s ease,padding .25s ease}
.faq-list details[open]{background:rgba(255,255,255,.035);padding-inline:18px}
.faq-list summary{transition:color .25s ease}
.faq-list details[open] summary{color:var(--gold)}

@media(max-width:900px){
  .phase18-assistant-copy{grid-template-columns:1fr;align-items:start}
  .phase18-assistant-copy .eyebrow{grid-column:auto;margin-bottom:0}
  .phase18-help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .phase18-assistant{padding:76px 22px}
  .phase18-help-grid{grid-template-columns:1fr}
  .phase18-help-grid a{min-height:220px;padding:26px}
  .phase18-assistant-actions{display:grid;grid-template-columns:1fr}
  .phase18-assistant-actions .button{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  .phase18-help-grid a,.phase17-stats article,.phase17-trust-grid article,.phase17-visit-grid article,
  .phase12-showcase h2::after,.services-heading h2::after,.authority-heading h2::after,.process-heading h2::after,.faq-heading h2::after{transition:none!important;transform:none!important}
}

/* Phase 18B — Premium visual identity */
:root{--visual-grid:rgba(255,255,255,.035)}
body{background-image:linear-gradient(var(--visual-grid) 1px,transparent 1px),linear-gradient(90deg,var(--visual-grid) 1px,transparent 1px);background-size:64px 64px;background-attachment:fixed}
.site-header{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.phase12-hero::before{background:radial-gradient(circle at 76% 28%,rgba(216,189,132,.20),transparent 32%),linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.72) 44%,rgba(0,0,0,.20) 75%,rgba(0,0,0,.50) 100%)}
.phase12-hero::after{height:42%;background:linear-gradient(transparent,#090909)}
.phase12-hero{background-size:cover;background-position:center 46%}
.phase12-hero .hero-content::before{content:"";position:absolute;left:-28px;top:164px;width:1px;height:125px;background:linear-gradient(transparent,var(--gold),transparent);opacity:.8}
.phase18-assistant,.section-light,.services-showcase{position:relative;isolation:isolate}
.phase18-assistant::before,.section-light::before,.services-showcase::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(20,20,20,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(20,20,20,.025) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent)}
.service-icon,.trust-icon{filter:drop-shadow(0 10px 18px rgba(216,189,132,.12))}
.service-card,.phase18-help-grid a,.phase17-trust-grid article{position:relative;overflow:hidden}
.service-card::after,.phase18-help-grid a::after,.phase17-trust-grid article::after{content:"";position:absolute;inset:auto -30% -70% 30%;height:160px;background:radial-gradient(circle,rgba(216,189,132,.14),transparent 65%);opacity:0;transition:opacity .35s ease,transform .35s ease;transform:translateY(15px)}
.service-card:hover::after,.phase18-help-grid a:hover::after,.phase17-trust-grid article:hover::after{opacity:1;transform:none}
.marque-rail a{background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.008))}
.marque-rail a:hover{background:linear-gradient(145deg,rgba(216,189,132,.13),rgba(255,255,255,.02))}
.ni-map{background-image:radial-gradient(circle at 50% 40%,rgba(216,189,132,.12),transparent 48%),url('assets/visuals/coverage-ni.svg');background-repeat:no-repeat;background-position:center;background-size:76% auto}

/* Bespoke service hero illustrations */
.lost-keys-hero,.spare-hero,.programming-hero,.broken-hero,.fleet-hero,.security-hero{background-color:#090b0e!important;background-repeat:no-repeat!important;background-size:100% 100%,min(54vw,880px) auto!important;background-position:center,right 50%!important}
.lost-keys-page:not(.vehicle-entry-page):not(.ignition-repairs-page) .lost-keys-hero{background-image:linear-gradient(90deg,rgba(6,7,8,.99) 0%,rgba(6,7,8,.87) 47%,rgba(6,7,8,.28) 75%,rgba(6,7,8,.62)),url('assets/visuals/lost-keys.svg')!important}
.vehicle-entry-page .lost-keys-hero{background-image:linear-gradient(90deg,rgba(6,7,8,.99) 0%,rgba(6,7,8,.87) 47%,rgba(6,7,8,.28) 75%,rgba(6,7,8,.62)),url('assets/visuals/vehicle-entry.svg')!important}
.ignition-repairs-page .lost-keys-hero{background-image:linear-gradient(90deg,rgba(6,7,8,.99) 0%,rgba(6,7,8,.87) 47%,rgba(6,7,8,.28) 75%,rgba(6,7,8,.62)),url('assets/visuals/ignition.svg')!important}
.spare-hero{background-image:linear-gradient(90deg,rgba(6,7,8,.99) 0%,rgba(6,7,8,.87) 47%,rgba(6,7,8,.28) 75%,rgba(6,7,8,.62)),url('assets/visuals/spare-key.svg')!important}
.programming-hero{background-image:linear-gradient(90deg,rgba(6,7,8,.99) 0%,rgba(6,7,8,.87) 47%,rgba(6,7,8,.28) 75%,rgba(6,7,8,.62)),url('assets/visuals/programming.svg')!important}
.broken-hero{background-image:linear-gradient(90deg,rgba(6,7,8,.99) 0%,rgba(6,7,8,.87) 47%,rgba(6,7,8,.28) 75%,rgba(6,7,8,.62)),url('assets/visuals/broken-key.svg')!important}
.fleet-hero{background-image:linear-gradient(90deg,rgba(6,7,8,.99) 0%,rgba(6,7,8,.87) 47%,rgba(6,7,8,.28) 75%,rgba(6,7,8,.62)),url('assets/visuals/fleet.svg')!important}
.security-hero{background-image:linear-gradient(90deg,rgba(6,7,8,.99) 0%,rgba(6,7,8,.87) 47%,rgba(6,7,8,.28) 75%,rgba(6,7,8,.62)),url('assets/visuals/security.svg')!important}

/* Consistent premium motion */
@keyframes odellFadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.hero-content,.phase18-assistant-copy,.phase12-section-head{animation:odellFadeUp .75s cubic-bezier(.2,.7,.2,1) both}
.button{position:relative;overflow:hidden}
.button::after{content:"";position:absolute;inset:0;transform:translateX(-120%) skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.26),transparent);transition:transform .65s ease}
.button:hover::after{transform:translateX(120%) skewX(-18deg)}
@media(max-width:800px){.lost-keys-hero,.spare-hero,.programming-hero,.broken-hero,.fleet-hero,.security-hero{background-size:100% 100%,115% auto!important;background-position:center,72% 76%!important}.phase12-hero .hero-content::before{display:none}}
@media(prefers-reduced-motion:reduce){.hero-content,.phase18-assistant-copy,.phase12-section-head{animation:none}.button::after{display:none}}

/* Phase 19: production accessibility and performance */
.skip-link{position:fixed;left:16px;top:12px;z-index:9999;padding:12px 16px;background:#fff;color:#111;border-radius:6px;transform:translateY(-180%);transition:transform .2s ease}.skip-link:focus{transform:translateY(0)}
:where(a,button,summary,[tabindex]):focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:4px}
html{scroll-padding-top:100px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Phase 19.1 — dedicated Areas We Cover page */
.coverage-page-hero .about-hero-copy{max-width:900px}
.coverage-page-hero .hero-actions{margin-top:2rem}
.coverage-page-map{scroll-margin-top:120px}
@media (max-width:760px){.coverage-page-hero h1{font-size:clamp(2.6rem,13vw,4.5rem)}}


/* Phase 21 temporary premium image library — replace these files with real photography later */
.page-home .hero{background-image:linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.93) 31%,rgba(5,6,7,.61) 50%,rgba(5,6,7,.13) 73%,rgba(5,6,7,.03) 100%),linear-gradient(0deg,rgba(4,5,6,.58),rgba(4,5,6,.02)),url('assets/brand-library/home-van.webp');background-size:100% 100%,100% 100%,64% auto;background-position:center,right bottom,right center}
.page-lost-keys .lost-keys-hero,.page-spare-keys .spare-hero,.page-key-programming .programming-hero,.page-vehicle-entry .lost-keys-hero,.page-ignition .lost-keys-hero,.page-broken-keys .broken-hero,.page-commercial .commercial-hero,.page-fleet .fleet-hero,.page-about .about-hero,.page-coverage .about-hero{position:relative;isolation:isolate;background-repeat:no-repeat;background-position:center;background-size:cover}
.page-lost-keys .lost-keys-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.88) 48%,rgba(5,6,8,.38) 100%),url('assets/brand-library/lost-keys.webp')}
.page-spare-keys .spare-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.86) 48%,rgba(5,6,8,.32) 100%),url('assets/brand-library/key-range.webp')}
.page-key-programming .programming-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.84) 48%,rgba(5,6,8,.28) 100%),url('assets/brand-library/programming.webp')}
.page-vehicle-entry .lost-keys-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.85) 48%,rgba(5,6,8,.27) 100%),url('assets/brand-library/vehicle-entry.webp')}
.page-ignition .lost-keys-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.85) 48%,rgba(5,6,8,.26) 100%),url('assets/brand-library/ignition-barrel.webp')}
.page-broken-keys .broken-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.85) 48%,rgba(5,6,8,.26) 100%),url('assets/brand-library/key-cutting.webp')}
.page-commercial .commercial-hero,.page-fleet .fleet-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.87) 46%,rgba(5,6,8,.34) 100%),url('assets/brand-library/fleet-van.webp')}
.page-about .about-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.84) 52%,rgba(5,6,8,.30) 100%),url('assets/brand-library/about-textures.webp')}
.page-coverage .about-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.82) 50%,rgba(5,6,8,.24) 100%),url('assets/brand-library/coverage-hero-route-map.webp')}
.page-security .security-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.98),rgba(5,6,8,.79) 52%,rgba(5,6,8,.25)),url('assets/brand-library/electronics.webp');background-repeat:no-repeat;background-position:center;background-size:cover}
.page-services .hub-hero{background-image:linear-gradient(90deg,rgba(5,6,8,.97),rgba(5,6,8,.75)),url('assets/brand-library/brand-tools.webp');background-repeat:no-repeat;background-position:center;background-size:cover}
@media(max-width:800px){.page-home .hero{background-size:100% 100%,100% 100%,cover;background-position:center}.page-lost-keys .lost-keys-hero,.page-spare-keys .spare-hero,.page-key-programming .programming-hero,.page-vehicle-entry .lost-keys-hero,.page-ignition .lost-keys-hero,.page-broken-keys .broken-hero,.page-commercial .commercial-hero,.page-fleet .fleet-hero,.page-about .about-hero,.page-coverage .about-hero{background-position:62% center}}

/* Phase 21.2 — corrected homepage and coverage hero framing */
.page-home .phase12-hero{
  background-color:#08090b;
  background-image:
    linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.95) 31%,rgba(5,6,7,.72) 48%,rgba(5,6,7,.18) 72%,rgba(5,6,7,.08) 100%),
    linear-gradient(0deg,rgba(4,5,6,.64),rgba(4,5,6,.04)),
    url('assets/hero-transit.webp');
  background-repeat:no-repeat;
  background-size:100% 100%,100% 100%,72% auto;
  background-position:center,center,right 48%;
}
.page-coverage .coverage-page-hero{
  background-color:#08090b;
  background-image:
    linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.94) 39%,rgba(5,6,8,.68) 55%,rgba(5,6,8,.20) 100%),
    url('assets/brand-library/coverage-hero-route-map.webp');
  background-repeat:no-repeat;
  background-size:100% 100%,cover;
  background-position:center,center;
}
@media(max-width:1050px){
  .page-home .phase12-hero{background-size:100% 100%,100% 100%,82% auto;background-position:center,center,78% 52%}
  .page-coverage .coverage-page-hero{background-size:100% 100%,cover;background-position:center,58% center}
}
@media(max-width:800px){
  .page-home .phase12-hero{background-size:100% 100%,100% 100%,cover;background-position:center,center,68% center}
  .page-coverage .coverage-page-hero{background-size:100% 100%,cover;background-position:center,66% center}
}
@media(max-width:560px){
  .page-coverage .coverage-page-hero{background-size:100% 100%,cover;background-position:center,72% center}
}


/* Phase 21.5 — simple modern Areas We Cover hero */
.page-coverage .coverage-page-hero{
  background-color:#08090b;
  background-image:
    linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.96) 36%,rgba(5,6,8,.72) 54%,rgba(5,6,8,.10) 100%),
    url('assets/brand-library/coverage-hero-minimal.svg');
  background-repeat:no-repeat;
  background-size:100% 100%,cover;
  background-position:center,center;
}
@media(max-width:900px){
  .page-coverage .coverage-page-hero{
    background-image:
      linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.93) 55%,rgba(5,6,8,.34) 100%),
      url('assets/brand-library/coverage-hero-minimal.svg');
    background-size:100% 100%,auto 100%;
    background-position:center,66% center;
  }
}
@media(max-width:620px){
  .page-coverage .coverage-page-hero{
    background-image:
      linear-gradient(180deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.94) 54%,rgba(5,6,8,.62) 100%),
      url('assets/brand-library/coverage-hero-minimal.svg');
    background-size:100% 100%,auto 78%;
    background-position:center,72% 88%;
  }
}

/* Phase 21.6 — manufacturer hub hero photography */
@media(max-width:1100px){.hub-hero{background-position:center,115% center;background-size:100% 100%,72% auto}}
@media(max-width:760px){.hub-hero{min-height:720px;padding-top:160px;background-image:linear-gradient(180deg,rgba(6,8,10,.97) 0%,rgba(6,8,10,.90) 52%,rgba(6,8,10,.34) 78%,rgba(6,8,10,.15) 100%),url('assets/brand-library/manufacturers-key-range.webp');background-position:center,bottom center;background-size:100% 100%,auto 48%}.hub-hero>p:not(.breadcrumb):not(.eyebrow){max-width:520px}.manufacturer-search{max-width:100%}}

/* PHASE 21.7.1 — force the approved Services workbench hero */
body.page-services section.services-hero {
  background-color:#090b0e !important;
  background-image:
    linear-gradient(90deg,rgba(5,6,7,.99) 0%,rgba(5,6,7,.93) 31%,rgba(5,6,7,.70) 48%,rgba(5,6,7,.18) 66%,rgba(5,6,7,.03) 100%),
    linear-gradient(0deg,rgba(4,5,6,.56),rgba(4,5,6,.02)),
    url('assets/brand-library/services-hero-workbench-v2.webp') !important;
  background-repeat:no-repeat !important;
  background-position:center,center,right center !important;
  background-size:100% 100%,100% 100%,66% cover !important;
}
@media (max-width:1100px){
  body.page-services section.services-hero{
    background-position:center,center,72% center !important;
    background-size:100% 100%,100% 100%,78% cover !important;
  }
}
@media (max-width:760px){
  body.page-services section.services-hero{
    background-position:center,center,68% center !important;
    background-size:100% 100%,100% 100%,auto 100% !important;
  }
  body.page-services section.services-hero::before{
    content:"";position:absolute;inset:0;background:rgba(0,0,0,.28);z-index:1;pointer-events:none;
  }
  body.page-services .services-hero-copy{z-index:2}
}

/* Phase 21.8.1 — Lost Car Keys bespoke studio hero */
.page-lost-keys .lost-keys-hero{
  background-color:#07090b!important;
  background-image:
    linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.96) 31%,rgba(5,6,8,.78) 48%,rgba(5,6,8,.20) 72%,rgba(5,6,8,.07) 100%),
    linear-gradient(0deg,rgba(3,4,6,.66),rgba(3,4,6,.02)),
    url('assets/brand-library/lost-keys-studio.svg')!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%,100% 100%,cover!important;
  background-position:center,center,center!important;
}
@media(max-width:1050px){
  .page-lost-keys .lost-keys-hero{background-position:center,center,60% center!important}
}
@media(max-width:760px){
  .page-lost-keys .lost-keys-hero{
    background-image:
      linear-gradient(180deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.90) 48%,rgba(5,6,8,.46) 73%,rgba(5,6,8,.82) 100%),
      linear-gradient(0deg,rgba(3,4,6,.72),rgba(3,4,6,.04)),
      url('assets/brand-library/lost-keys-studio.svg')!important;
    background-size:100% 100%,100% 100%,auto 84%!important;
    background-position:center,center,69% 86%!important;
  }
}

/* Phase 21.8.2 — complete bespoke individual service hero collection */
.page-spare-keys .spare-hero{background-color:#07090b!important;background-image:linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.95) 31%,rgba(5,6,8,.76) 48%,rgba(5,6,8,.18) 72%,rgba(5,6,8,.06) 100%),linear-gradient(0deg,rgba(3,4,6,.64),rgba(3,4,6,.02)),url('assets/brand-library/spare-keys-studio.svg')!important;background-position:center,center,center!important;background-size:100% 100%,100% 100%,cover!important}
.page-key-programming .programming-hero{background-color:#07090b!important;background-image:linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.95) 31%,rgba(5,6,8,.75) 48%,rgba(5,6,8,.17) 72%,rgba(5,6,8,.05) 100%),linear-gradient(0deg,rgba(3,4,6,.62),rgba(3,4,6,.02)),url('assets/brand-library/key-programming-smart-pro.svg')!important;background-position:center,center,center!important;background-size:100% 100%,100% 100%,cover!important}
.page-vehicle-entry .lost-keys-hero{background-color:#07090b!important;background-image:linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.95) 31%,rgba(5,6,8,.75) 48%,rgba(5,6,8,.17) 72%,rgba(5,6,8,.05) 100%),linear-gradient(0deg,rgba(3,4,6,.62),rgba(3,4,6,.02)),url('assets/brand-library/vehicle-entry-studio.svg')!important;background-position:center,center,center!important;background-size:100% 100%,100% 100%,cover!important}
.page-ignition .lost-keys-hero{background-color:#07090b!important;background-image:linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.95) 31%,rgba(5,6,8,.75) 48%,rgba(5,6,8,.17) 72%,rgba(5,6,8,.05) 100%),linear-gradient(0deg,rgba(3,4,6,.62),rgba(3,4,6,.02)),url('assets/brand-library/ignition-repair-studio.svg')!important;background-position:center,center,center!important;background-size:100% 100%,100% 100%,cover!important}
.page-broken-keys .broken-hero{background-color:#07090b!important;background-image:linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.95) 31%,rgba(5,6,8,.75) 48%,rgba(5,6,8,.17) 72%,rgba(5,6,8,.05) 100%),linear-gradient(0deg,rgba(3,4,6,.62),rgba(3,4,6,.02)),url('assets/brand-library/broken-key-studio.svg')!important;background-position:center,center,center!important;background-size:100% 100%,100% 100%,cover!important}
.page-commercial .commercial-hero,.page-fleet .fleet-hero{background-color:#07090b!important;background-image:linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.95) 31%,rgba(5,6,8,.75) 48%,rgba(5,6,8,.17) 72%,rgba(5,6,8,.05) 100%),linear-gradient(0deg,rgba(3,4,6,.62),rgba(3,4,6,.02)),url('assets/brand-library/commercial-fleet-keys.svg')!important;background-position:center,center,center!important;background-size:100% 100%,100% 100%,cover!important}
.page-security .security-hero{background-color:#07090b!important;background-image:linear-gradient(90deg,rgba(5,6,8,.99) 0%,rgba(5,6,8,.95) 31%,rgba(5,6,8,.75) 48%,rgba(5,6,8,.17) 72%,rgba(5,6,8,.05) 100%),linear-gradient(0deg,rgba(3,4,6,.62),rgba(3,4,6,.02)),url('assets/brand-library/vehicle-security-studio.svg')!important;background-position:center,center,center!important;background-size:100% 100%,100% 100%,cover!important}
@media(max-width:1050px){.page-spare-keys .spare-hero,.page-key-programming .programming-hero,.page-vehicle-entry .lost-keys-hero,.page-ignition .lost-keys-hero,.page-broken-keys .broken-hero,.page-commercial .commercial-hero,.page-fleet .fleet-hero,.page-security .security-hero{background-position:center,center,61% center!important}}
@media(max-width:760px){.page-spare-keys .spare-hero,.page-key-programming .programming-hero,.page-vehicle-entry .lost-keys-hero,.page-ignition .lost-keys-hero,.page-broken-keys .broken-hero,.page-commercial .commercial-hero,.page-fleet .fleet-hero,.page-security .security-hero{background-image:linear-gradient(180deg,rgba(5,6,8,.98) 0%,rgba(5,6,8,.91) 47%,rgba(5,6,8,.48) 73%,rgba(5,6,8,.84) 100%),linear-gradient(0deg,rgba(3,4,6,.72),rgba(3,4,6,.04)),var(--service-hero-image)!important;background-size:100% 100%,100% 100%,auto 84%!important;background-position:center,center,69% 86%!important}.page-spare-keys .spare-hero{--service-hero-image:url('assets/brand-library/spare-keys-studio.svg')}.page-key-programming .programming-hero{--service-hero-image:url('assets/brand-library/key-programming-smart-pro.svg')}.page-vehicle-entry .lost-keys-hero{--service-hero-image:url('assets/brand-library/vehicle-entry-studio.svg')}.page-ignition .lost-keys-hero{--service-hero-image:url('assets/brand-library/ignition-repair-studio.svg')}.page-broken-keys .broken-hero{--service-hero-image:url('assets/brand-library/broken-key-studio.svg')}.page-commercial .commercial-hero,.page-fleet .fleet-hero{--service-hero-image:url('assets/brand-library/commercial-fleet-keys.svg')}.page-security .security-hero{--service-hero-image:url('assets/brand-library/vehicle-security-studio.svg')}}


/* Phase 21.8.5 — dedicated All Keys Lost empty-ignition hero */
body.all-keys-page section.all-keys-hero{
  background-color:#06080a!important;
  background-image:
    linear-gradient(90deg,rgba(4,6,8,.99) 0%,rgba(4,6,8,.96) 34%,rgba(4,6,8,.76) 52%,rgba(4,6,8,.18) 78%,rgba(4,6,8,.04) 100%),
    linear-gradient(0deg,rgba(2,3,5,.64),rgba(2,3,5,.03)),
    url('assets/brand-library/all-keys-lost-empty-ignition.webp')!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%,100% 100%,cover!important;
  background-position:center,center,center!important;
}
@media(max-width:1050px){
  body.all-keys-page section.all-keys-hero{background-position:center,center,62% center!important}
}
@media(max-width:760px){
  body.all-keys-page section.all-keys-hero{
    background-image:
      linear-gradient(180deg,rgba(4,6,8,.99) 0%,rgba(4,6,8,.94) 48%,rgba(4,6,8,.48) 72%,rgba(4,6,8,.84) 100%),
      linear-gradient(0deg,rgba(2,3,5,.68),rgba(2,3,5,.04)),
      url('assets/brand-library/all-keys-lost-empty-ignition.webp')!important;
    background-size:100% 100%,100% 100%,auto 100%!important;
    background-position:center,center,70% center!important;
  }
}

/* Phase 21.8.6 — All Keys Lost hero framing: zoomed out */
body.all-keys-page section.all-keys-hero{
  background-size:100% 100%,100% 100%,82% auto!important;
  background-position:center,center,right center!important;
}
@media(max-width:1050px){
  body.all-keys-page section.all-keys-hero{
    background-size:100% 100%,100% 100%,96% auto!important;
    background-position:center,center,74% center!important;
  }
}
@media(max-width:760px){
  body.all-keys-page section.all-keys-hero{
    background-size:100% 100%,100% 100%,auto 76%!important;
    background-position:center,center,68% 88%!important;
  }
}
@media(max-width:480px){
  body.all-keys-page section.all-keys-hero{
    background-size:100% 100%,100% 100%,auto 68%!important;
    background-position:center,center,68% 92%!important;
  }
}


/* Phase 21.8.7 — further zoomed out hero */
body.all-keys-page section.all-keys-hero{
  background-size:100% 100%,100% 100%,64% auto!important;
  background-position:center,center,82% center!important;
}
@media(max-width:1050px){
  body.all-keys-page section.all-keys-hero{
    background-size:100% 100%,100% 100%,78% auto!important;
    background-position:center,center,80% center!important;
  }
}
@media(max-width:760px){
  body.all-keys-page section.all-keys-hero{
    background-size:100% 100%,100% 100%,auto 60%!important;
    background-position:center,center,74% 90%!important;
  }
}
@media(max-width:480px){
  body.all-keys-page section.all-keys-hero{
    background-size:100% 100%,100% 100%,auto 54%!important;
    background-position:center,center,72% 94%!important;
  }
}


/* Phase 21.8.9 — dedicated Key Cutting page and hero */
body.page-key-cutting section.key-cutting-hero{
  background-color:#050709!important;
  background-image:linear-gradient(90deg,rgba(4,6,8,.99) 0%,rgba(4,6,8,.95) 37%,rgba(4,6,8,.70) 55%,rgba(4,6,8,.16) 78%,rgba(4,6,8,.03) 100%),url('assets/brand-library/key-cutting.webp')!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%,auto 92%!important;
  background-position:center,84% center!important;
}
@media(max-width:1050px){body.page-key-cutting section.key-cutting-hero{background-size:100% 100%,auto 76%!important;background-position:center,82% center!important;}}
@media(max-width:760px){body.page-key-cutting section.key-cutting-hero{background-image:linear-gradient(180deg,rgba(4,6,8,.99) 0%,rgba(4,6,8,.94) 48%,rgba(4,6,8,.52) 72%,rgba(4,6,8,.88) 100%),url('assets/brand-library/key-cutting.webp')!important;background-size:100% 100%,auto 48%!important;background-position:center,72% 92%!important;}}

/* Phase 21.8.10 — Key Cutting hero scale and colour audit */
body.page-key-cutting{
  --kc-dark:#0b0d10;
  --kc-panel:#12161b;
  --kc-panel-soft:#171c22;
  --kc-light:#f4f1ea;
  --kc-light-alt:#ebe7de;
  --kc-copy-dark:#4f555d;
  --kc-copy-light:#c5cad0;
  --kc-accent:var(--gold);
}

/* Give the cutting equipment more space so it no longer feels cropped. */
body.page-key-cutting section.key-cutting-hero{
  background-color:#050709!important;
  background-image:
    linear-gradient(90deg,rgba(4,6,8,.995) 0%,rgba(4,6,8,.97) 39%,rgba(4,6,8,.80) 55%,rgba(4,6,8,.30) 76%,rgba(4,6,8,.08) 100%),
    url('assets/brand-library/key-cutting.webp')!important;
  background-size:100% 100%,auto 68%!important;
  background-position:center,86% center!important;
}

/* Refined page palette: warmer light sections and clearer dark-section contrast. */
body.page-key-cutting .section-light,
body.page-key-cutting .spare-intro,
body.page-key-cutting .spare-process,
body.page-key-cutting .spare-confidence,
body.page-key-cutting .spare-faq{
  background:var(--kc-light)!important;
  color:#15181c;
}
body.page-key-cutting .spare-comparison{
  background:var(--kc-light-alt)!important;
  color:#15181c;
}
body.page-key-cutting .spare-key-types,
body.page-key-cutting .related-services{
  background:var(--kc-dark)!important;
}
body.page-key-cutting .spare-precision{
  background:var(--kc-panel)!important;
}
body.page-key-cutting .spare-precision-visual{
  background:radial-gradient(circle at 50% 45%,rgba(216,189,132,.14),transparent 56%),#090c10!important;
}
body.page-key-cutting .spare-intro .section-intro>p:last-child,
body.page-key-cutting .spare-comparison .section-intro>p:last-child,
body.page-key-cutting .spare-confidence-grid p,
body.page-key-cutting .spare-faq .faq-heading>p:last-child,
body.page-key-cutting .spare-faq details p{
  color:var(--kc-copy-dark)!important;
}
body.page-key-cutting .spare-key-types .section-intro>p:last-child,
body.page-key-cutting .related-services .section-intro>p:last-child,
body.page-key-cutting .spare-type-list p,
body.page-key-cutting .related-service-grid p{
  color:var(--kc-copy-light)!important;
}
body.page-key-cutting .spare-comparison-grid article,
body.page-key-cutting .spare-confidence-grid article{
  background:#fff!important;
  border-color:#d8d2c7!important;
  box-shadow:0 16px 42px rgba(18,20,24,.06);
}
body.page-key-cutting .spare-comparison-grid article.preferred{
  border-color:rgba(216,189,132,.62)!important;
  box-shadow:0 18px 48px rgba(216,189,132,.10);
}
body.page-key-cutting .spare-process-line span{
  background:#171a1f!important;
  color:var(--gold)!important;
}
body.page-key-cutting .spare-confidence-grid strong,
body.page-key-cutting .comparison-label{
  color:var(--gold)!important;
}
body.page-key-cutting .spare-faq details{
  border-color:#d9d3c8!important;
}
body.page-key-cutting .spare-faq summary{
  color:#171a1f!important;
}
body.page-key-cutting .related-service-grid a{
  background:linear-gradient(145deg,#171b20,#101318)!important;
  border-color:rgba(255,255,255,.12)!important;
}
body.page-key-cutting .related-service-grid a:hover{
  border-color:rgba(216,189,132,.5)!important;
  background:linear-gradient(145deg,#1b2026,#12161b)!important;
}
body.page-key-cutting .button-secondary:hover{
  background:rgba(216,189,132,.12);
  border-color:var(--kc-accent);
}

@media(max-width:1050px){
  body.page-key-cutting section.key-cutting-hero{
    background-size:100% 100%,auto 58%!important;
    background-position:center,84% center!important;
  }
}
@media(max-width:760px){
  body.page-key-cutting section.key-cutting-hero{
    background-image:
      linear-gradient(180deg,rgba(4,6,8,.995) 0%,rgba(4,6,8,.96) 48%,rgba(4,6,8,.64) 72%,rgba(4,6,8,.92) 100%),
      url('assets/brand-library/key-cutting.webp')!important;
    background-size:100% 100%,auto 38%!important;
    background-position:center,72% 90%!important;
  }
}
@media(max-width:480px){
  body.page-key-cutting section.key-cutting-hero{
    background-size:100% 100%,auto 33%!important;
    background-position:center,70% 91%!important;
  }
}


/* Phase 21.8.11 - Programming hero framing */
body.page-programming section.programming-hero{
  background-size:100% 100%,100% 100%,auto 62%!important;
  background-position:center,center,78% center!important;
}
@media(max-width:1024px){
 body.page-programming section.programming-hero{
  background-size:100% 100%,100% 100%,auto 74%!important;
 }
}
@media(max-width:768px){
 body.page-programming section.programming-hero{
  background-size:100% 100%,100% 100%,auto 58%!important;
  background-position:center,center,70% 92%!important;
 }
}

/* Phase 21.8.12 — dedicated photorealistic Smart Pro key-programming hero */
body.page-key-programming section.programming-hero{
  background-color:#06080a!important;
  background-image:
    linear-gradient(90deg,rgba(4,6,8,.995) 0%,rgba(4,6,8,.97) 31%,rgba(4,6,8,.82) 47%,rgba(4,6,8,.28) 70%,rgba(4,6,8,.08) 100%),
    linear-gradient(0deg,rgba(2,3,5,.62),rgba(2,3,5,.02)),
    url('assets/brand-library/key-programming-smart-pro-photorealistic.webp')!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%,100% 100%,auto 72%!important;
  background-position:center,center,82% center!important;
}
@media(max-width:1050px){
  body.page-key-programming section.programming-hero{
    background-size:100% 100%,100% 100%,auto 66%!important;
    background-position:center,center,76% center!important;
  }
}
@media(max-width:760px){
  body.page-key-programming section.programming-hero{
    background-image:
      linear-gradient(180deg,rgba(4,6,8,.995) 0%,rgba(4,6,8,.96) 47%,rgba(4,6,8,.56) 72%,rgba(4,6,8,.90) 100%),
      linear-gradient(0deg,rgba(2,3,5,.70),rgba(2,3,5,.04)),
      url('assets/brand-library/key-programming-smart-pro-photorealistic.webp')!important;
    background-size:100% 100%,100% 100%,auto 48%!important;
    background-position:center,center,69% 92%!important;
  }
}
@media(max-width:480px){
  body.page-key-programming section.programming-hero{
    background-size:100% 100%,100% 100%,auto 42%!important;
    background-position:center,center,67% 93%!important;
  }
}

/* Phase 21.8.13 — key-programming hero composition refinement */
body.page-key-programming section.programming-hero{
  background-image:
    linear-gradient(90deg,rgba(4,6,8,.995) 0%,rgba(4,6,8,.96) 30%,rgba(4,6,8,.72) 49%,rgba(4,6,8,.18) 72%,rgba(4,6,8,.04) 100%),
    linear-gradient(0deg,rgba(2,3,5,.52),rgba(2,3,5,.01)),
    url('assets/brand-library/key-programming-smart-pro-hero-wide.webp')!important;
  background-size:100% 100%,100% 100%,cover!important;
  background-position:center,center,center!important;
}
@media(max-width:1050px){
  body.page-key-programming section.programming-hero{
    background-size:100% 100%,100% 100%,auto 86%!important;
    background-position:center,center,72% center!important;
  }
}
@media(max-width:760px){
  body.page-key-programming section.programming-hero{
    background-image:
      linear-gradient(180deg,rgba(4,6,8,.995) 0%,rgba(4,6,8,.96) 45%,rgba(4,6,8,.52) 70%,rgba(4,6,8,.92) 100%),
      linear-gradient(0deg,rgba(2,3,5,.72),rgba(2,3,5,.03)),
      url('assets/brand-library/key-programming-smart-pro-hero-wide.webp')!important;
    background-size:100% 100%,100% 100%,auto 62%!important;
    background-position:center,center,69% 91%!important;
  }
}
@media(max-width:480px){
  body.page-key-programming section.programming-hero{
    background-size:100% 100%,100% 100%,auto 56%!important;
    background-position:center,center,67% 93%!important;
  }
}


/* Phase 21.8.14 — Vehicle Entry dedicated photographic hero */
body.page-vehicle-entry section.lost-keys-hero{
  --service-hero-image:url('assets/brand-library/vehicle-entry-hero-premium.webp');
  background-color:#050709!important;
  background-image:
    linear-gradient(90deg,rgba(4,6,8,.99) 0%,rgba(4,6,8,.96) 33%,rgba(4,6,8,.72) 50%,rgba(4,6,8,.18) 75%,rgba(4,6,8,.04) 100%),
    linear-gradient(0deg,rgba(2,3,5,.58),rgba(2,3,5,.02)),
    var(--service-hero-image)!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%,100% 100%,auto 78%!important;
  background-position:center,center,82% center!important;
}
@media(max-width:1050px){
  body.page-vehicle-entry section.lost-keys-hero{
    background-size:100% 100%,100% 100%,auto 70%!important;
    background-position:center,center,78% center!important;
  }
}
@media(max-width:760px){
  body.page-vehicle-entry section.lost-keys-hero{
    background-image:
      linear-gradient(180deg,rgba(4,6,8,.99) 0%,rgba(4,6,8,.95) 46%,rgba(4,6,8,.54) 71%,rgba(4,6,8,.9) 100%),
      linear-gradient(0deg,rgba(2,3,5,.7),rgba(2,3,5,.04)),
      var(--service-hero-image)!important;
    background-size:100% 100%,100% 100%,auto 60%!important;
    background-position:center,center,72% 91%!important;
  }
}
@media(max-width:480px){
  body.page-vehicle-entry section.lost-keys-hero{
    background-size:100% 100%,100% 100%,auto 54%!important;
    background-position:center,center,69% 94%!important;
  }
}


/* Global WhatsApp button — matched to the homepage quick-contact styling */
.floating-whatsapp{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:9999;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:13px 17px;
  border-radius:999px;
  background:#fff;
  color:#111!important;
  text-decoration:none;
  font:800 11px Manrope,sans-serif;
  letter-spacing:.04em;
  line-height:1;
  text-transform:uppercase;
  box-shadow:0 12px 28px rgba(0,0,0,.25);
  transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease;
}
.floating-whatsapp:hover{
  transform:translateY(-2px);
  background:#f6f6f6;
  box-shadow:0 15px 32px rgba(0,0,0,.3);
}
.floating-whatsapp svg{display:none}
@media(max-width:620px){
  .floating-whatsapp{
    right:14px;
    bottom:14px;
    min-height:44px;
    padding:14px 18px;
  }
  body:has(.phase17-mobile-bar) .floating-whatsapp{display:none}
}


/* Phase 21.8.18 — corrected WhatsApp icon sizing and homepage match */
.floating-whatsapp,
.home-whatsapp-icon{
  width:62px;
  height:62px;
  min-width:62px;
  min-height:62px;
  padding:0!important;
  border:0;
  border-radius:50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#25D366!important;
  color:#fff!important;
  text-decoration:none;
  line-height:0!important;
  box-shadow:0 12px 28px rgba(0,0,0,.25);
  transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease;
}
.floating-whatsapp:hover,
.home-whatsapp-icon:hover{
  transform:translateY(-2px) scale(1.03);
  background:#20c65a!important;
  box-shadow:0 15px 34px rgba(0,0,0,.32);
}
.floating-whatsapp::before{content:none!important}
.floating-whatsapp svg,
.home-whatsapp-icon svg{
  display:block!important;
  width:38px!important;
  height:38px!important;
  flex:0 0 38px;
  fill:currentColor;
}
@media(max-width:620px){
  .floating-whatsapp,
  .home-whatsapp-icon{
    width:58px;
    height:58px;
    min-width:58px;
    min-height:58px;
  }
  .floating-whatsapp svg,
  .home-whatsapp-icon svg{
    width:35px!important;
    height:35px!important;
    flex-basis:35px;
  }
}

.phase17-mobile-bar .mobile-wa-icon{display:inline-flex;align-items:center;justify-content:center;line-height:0}
.phase17-mobile-bar .mobile-wa-icon svg{width:20px;height:20px;fill:currentColor;display:block}


/* Phase 21.8.19 — ultra-realistic Spare Keys photographic hero */
body.page-spare-keys section.spare-hero{
  --service-hero-image:url('assets/brand-library/spare-keys-ultra-realistic-hero.webp');
  background-color:#050709!important;
  background-image:
    linear-gradient(90deg,rgba(4,6,8,.99) 0%,rgba(4,6,8,.96) 31%,rgba(4,6,8,.72) 49%,rgba(4,6,8,.18) 74%,rgba(4,6,8,.03) 100%),
    linear-gradient(0deg,rgba(2,3,5,.62),rgba(2,3,5,.02)),
    var(--service-hero-image)!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%,100% 100%,auto 78%!important;
  background-position:center,center,82% center!important;
}
@media(max-width:1050px){
  body.page-spare-keys section.spare-hero{
    background-size:100% 100%,100% 100%,auto 70%!important;
    background-position:center,center,78% center!important;
  }
}
@media(max-width:760px){
  body.page-spare-keys section.spare-hero{
    background-image:
      linear-gradient(180deg,rgba(4,6,8,.99) 0%,rgba(4,6,8,.96) 45%,rgba(4,6,8,.55) 70%,rgba(4,6,8,.9) 100%),
      linear-gradient(0deg,rgba(2,3,5,.7),rgba(2,3,5,.03)),
      var(--service-hero-image)!important;
    background-size:100% 100%,100% 100%,auto 61%!important;
    background-position:center,center,71% 91%!important;
  }
}
@media(max-width:480px){
  body.page-spare-keys section.spare-hero{
    background-size:100% 100%,100% 100%,auto 55%!important;
    background-position:center,center,68% 94%!important;
  }
}


/* Phase 21.8.20 - WhatsApp buttons */
.button-whatsapp{
display:inline-flex!important;
align-items:center;
justify-content:center;
padding:14px 26px;
border:1px solid rgba(255,255,255,.35);
border-radius:10px;
background:rgba(255,255,255,.06);
color:#fff!important;
font-weight:700;
text-decoration:none;
gap:10px;
}
.button-whatsapp svg{width:18px;height:18px;fill:currentColor;flex:none}


/* ================================================================
   PHASE 21.8.21 — WHATSAPP BUTTON AUDIT & BRAND CONSISTENCY
   Canonical rule:
   - Bottom-corner control: green circular WhatsApp icon only.
   - All in-page WhatsApp actions: boxed "WhatsApp us" buttons.
   ================================================================ */

/* In-page WhatsApp buttons: match Odell Automotive monochrome/gold theme */
a.button-whatsapp{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  min-height:48px;
  padding:14px 24px!important;
  border:1px solid rgba(255,255,255,.32)!important;
  border-radius:0!important;
  background:rgba(255,255,255,.06)!important;
  color:#fff!important;
  font-family:Manrope,Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  box-shadow:none!important;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease!important;
}
a.button-whatsapp:hover,
a.button-whatsapp:focus-visible{
  background:#fff!important;
  border-color:#fff!important;
  color:#111!important;
  transform:translateY(-1px);
}
a.button-whatsapp svg{
  display:block!important;
  width:19px!important;
  height:19px!important;
  flex:0 0 19px!important;
  fill:currentColor!important;
}
a.button-whatsapp span{
  display:inline-block!important;
}

/* Light-section variant: dark outlined button rather than off-theme green */
.section-light a.button-whatsapp,
.spare-intro a.button-whatsapp,
.spare-process a.button-whatsapp,
.spare-confidence a.button-whatsapp,
.spare-faq a.button-whatsapp{
  border-color:rgba(17,17,17,.28)!important;
  background:transparent!important;
  color:#111!important;
}
.section-light a.button-whatsapp:hover,
.section-light a.button-whatsapp:focus-visible,
.spare-intro a.button-whatsapp:hover,
.spare-process a.button-whatsapp:hover,
.spare-confidence a.button-whatsapp:hover,
.spare-faq a.button-whatsapp:hover{
  background:#111!important;
  border-color:#111!important;
  color:#fff!important;
}

/* Only the bottom-corner button keeps WhatsApp green */
a.floating-whatsapp{
  width:62px!important;
  height:62px!important;
  min-width:62px!important;
  min-height:62px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#25D366!important;
  color:#fff!important;
  font-size:0!important;
  line-height:0!important;
  box-shadow:0 12px 28px rgba(0,0,0,.28)!important;
}
a.floating-whatsapp svg{
  width:38px!important;
  height:38px!important;
  flex:0 0 38px!important;
  display:block!important;
  fill:currentColor!important;
}
a.floating-whatsapp:hover,
a.floating-whatsapp:focus-visible{
  background:#20c65a!important;
  transform:translateY(-2px) scale(1.03)!important;
}
@media(max-width:620px){
  a.button-whatsapp{
    min-height:46px;
    padding:13px 19px!important;
    font-size:11px!important;
  }
  a.floating-whatsapp{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    min-height:58px!important;
  }
  a.floating-whatsapp svg{
    width:35px!important;
    height:35px!important;
    flex-basis:35px!important;
  }
}


/* Phase 21.8.22 */
a.button-whatsapp{
  border-radius:12px!important;
}

/* Phase 21.8.23 — homepage floating WhatsApp icon repair */
body a.floating-whatsapp svg{
  display:block!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  flex:0 0 38px!important;
  fill:#fff!important;
  color:#fff!important;
  visibility:visible!important;
  opacity:1!important;
}
body a.floating-whatsapp svg path{
  display:block!important;
  fill:#fff!important;
}
@media(max-width:620px){
  body a.floating-whatsapp svg{
    width:35px!important;
    height:35px!important;
    min-width:35px!important;
    min-height:35px!important;
    flex-basis:35px!important;
  }
}


/* ================================================================
   PHASE 21.8.24 — "NEED AN AUTOMOTIVE LOCKSMITH TODAY?" CONTRAST FIX
   Ensures every reused CTA remains readable on dark/image backgrounds.
   ================================================================ */

/* Target common CTA wrappers and any section containing the CTA heading */
.cta-section,
.contact-cta,
.final-cta,
.service-cta,
.emergency-cta,
.locksmith-cta,
section:has(h2[id*="locksmith"]),
section:has(h2[class*="cta"]),
section:has(h2[class*="locksmith"]){
  isolation:isolate;
}

/* Main heading */
.cta-section h2,
.contact-cta h2,
.final-cta h2,
.service-cta h2,
.emergency-cta h2,
.locksmith-cta h2{
  color:#fff!important;
  opacity:1!important;
  text-shadow:0 2px 18px rgba(0,0,0,.38);
}

/* Supporting copy */
.cta-section p,
.contact-cta p,
.final-cta p,
.service-cta p,
.emergency-cta p,
.locksmith-cta p{
  color:rgba(255,255,255,.88)!important;
  opacity:1!important;
}

/* Inline emphasis and links */
.cta-section strong,
.cta-section b,
.contact-cta strong,
.contact-cta b,
.final-cta strong,
.final-cta b,
.service-cta strong,
.service-cta b,
.emergency-cta strong,
.emergency-cta b,
.locksmith-cta strong,
.locksmith-cta b{
  color:#fff!important;
}

.cta-section a:not(.button),
.contact-cta a:not(.button),
.final-cta a:not(.button),
.service-cta a:not(.button),
.emergency-cta a:not(.button),
.locksmith-cta a:not(.button){
  color:#fff!important;
  text-decoration-color:rgba(255,255,255,.55)!important;
}

/* Kicker / eyebrow text */
.cta-section .eyebrow,
.cta-section .kicker,
.cta-section .section-label,
.contact-cta .eyebrow,
.contact-cta .kicker,
.contact-cta .section-label,
.final-cta .eyebrow,
.final-cta .kicker,
.final-cta .section-label,
.service-cta .eyebrow,
.service-cta .kicker,
.service-cta .section-label,
.emergency-cta .eyebrow,
.emergency-cta .kicker,
.emergency-cta .section-label,
.locksmith-cta .eyebrow,
.locksmith-cta .kicker,
.locksmith-cta .section-label{
  color:var(--gold)!important;
  opacity:1!important;
}

/* Button text remains clear */
.cta-section .button,
.contact-cta .button,
.final-cta .button,
.service-cta .button,
.emergency-cta .button,
.locksmith-cta .button{
  opacity:1!important;
}

/* Specific text-based fallback for older page markup */
body .need-locksmith-cta,
body .need-locksmith-today,
body .automotive-locksmith-cta{
  color:#fff!important;
}
body .need-locksmith-cta h1,
body .need-locksmith-cta h2,
body .need-locksmith-cta h3,
body .need-locksmith-today h1,
body .need-locksmith-today h2,
body .need-locksmith-today h3,
body .automotive-locksmith-cta h1,
body .automotive-locksmith-cta h2,
body .automotive-locksmith-cta h3{
  color:#fff!important;
}
body .need-locksmith-cta p,
body .need-locksmith-today p,
body .automotive-locksmith-cta p{
  color:rgba(255,255,255,.88)!important;
}


/* Phase 21.8.25 - brighten CTA small text */
.need-locksmith-cta .eyebrow,
.need-locksmith-cta .kicker,
.need-locksmith-cta .section-label,
.need-locksmith-cta .overline,
.need-locksmith-cta .subtitle,
.need-locksmith-cta small,
.contact-cta .eyebrow,
.contact-cta .kicker,
.contact-cta .section-label,
.contact-cta .overline,
.contact-cta small{
    color:#F4E7C1 !important;
    opacity:1 !important;
    text-shadow:0 2px 10px rgba(0,0,0,.45);
}
.need-locksmith-cta p,
.contact-cta p{
    color:#F5F5F5 !important;
}


/* Phase 21.8.27 — exact supporting sentence readability repair */
body .contact-cta.phase17-final-cta .cta-support-copy,
body .need-locksmith-cta .cta-support-copy{
  color:#F7F7F7!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  -webkit-text-fill-color:#F7F7F7!important;
  text-shadow:0 1px 8px rgba(0,0,0,.35)!important;
}




/* ================================================================
   PHASE 21.8.31 — AUDITED PREMIUM UI & UX POLISH
   Verified against the existing Odell Automotive monochrome theme.
   ================================================================ */

:root{
  --oa-radius-sm:10px;
  --oa-radius-md:14px;
  --oa-radius-lg:20px;
  --oa-control-height:50px;
  --oa-transition:180ms ease;
  --oa-shadow-soft:0 14px 36px rgba(0,0,0,.10);
}

/* Buttons: consistent geometry without changing established colours */
.button{
  min-height:var(--oa-control-height);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 24px;
  border-radius:var(--oa-radius-md);
  line-height:1.1;
  text-align:center;
  vertical-align:middle;
  transition:
    transform var(--oa-transition),
    background-color var(--oa-transition),
    border-color var(--oa-transition),
    color var(--oa-transition),
    box-shadow var(--oa-transition);
}
.button:hover,
.button:focus-visible{
  transform:translateY(-1px);
}
.button:focus-visible{
  outline:2px solid currentColor;
  outline-offset:3px;
}
a.button-whatsapp{
  border-radius:var(--oa-radius-md)!important;
}
.button svg,
.button img,
.icon-button svg,
.icon-button img{
  width:19px;
  height:19px;
  flex:0 0 19px;
  object-fit:contain;
}

/* Cards: geometry only, preserving existing colour treatments */
.card,
.service-card,
.info-card,
.brand-card,
.vehicle-card,
.manufacturer-card,
.faq-item,
details{
  border-radius:var(--oa-radius-lg);
}
.card,
.service-card,
.info-card,
.brand-card,
.vehicle-card,
.manufacturer-card{
  transition:
    transform var(--oa-transition),
    box-shadow var(--oa-transition),
    border-color var(--oa-transition);
}
@media (hover:hover){
  .card:hover,
  .service-card:hover,
  .info-card:hover,
  .brand-card:hover,
  .vehicle-card:hover,
  .manufacturer-card:hover{
    transform:translateY(-2px);
  }
}

details > summary{
  min-height:54px;
  display:flex;
  align-items:center;
  cursor:pointer;
}
details > p,
details > div{
  margin-top:12px;
}

.card img,
.service-card img,
.info-card img,
.brand-card img,
.vehicle-card img,
.manufacturer-card img{
  border-radius:calc(var(--oa-radius-lg) - 2px);
}

.hero-actions,
.cta-actions,
.button-group,
.actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
}

.site-header a,
header nav a{
  transition:color var(--oa-transition), opacity var(--oa-transition);
}
.site-header a:hover,
header nav a:hover{
  opacity:.82;
}

a.floating-whatsapp{
  border-radius:50%!important;
  transition:
    transform var(--oa-transition),
    box-shadow var(--oa-transition),
    background-color var(--oa-transition)!important;
}

@media(max-width:760px){
  .button{
    min-height:48px;
    padding:13px 20px;
  }
  .hero-actions,
  .cta-actions,
  .button-group,
  .actions{
    gap:10px;
  }
  details > summary{
    min-height:58px;
  }
}

@media(prefers-reduced-motion:reduce){
  .button,
  .card,
  .service-card,
  .info-card,
  .brand-card,
  .vehicle-card,
  .manufacturer-card,
  a.floating-whatsapp,
  .site-header a,
  header nav a{
    transition:none!important;
  }
  .button:hover,
  .card:hover,
  .service-card:hover,
  .info-card:hover,
  .brand-card:hover,
  .vehicle-card:hover,
  .manufacturer-card:hover,
  a.floating-whatsapp:hover{
    transform:none!important;
  }
}

/* Buttons: consistent sizing, radius and interaction */
.button{
  min-height:var(--oa-control-height);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 24px;
  border-radius:var(--oa-radius-md);
  line-height:1.1;
  text-align:center;
  vertical-align:middle;
  transition:
    transform var(--oa-transition),
    background-color var(--oa-transition),
    border-color var(--oa-transition),
    color var(--oa-transition),
    box-shadow var(--oa-transition);
}
.button:hover,
.button:focus-visible{
  transform:translateY(-1px);
}
.button:focus-visible{
  outline:2px solid currentColor;
  outline-offset:3px;
}

/* Keep WhatsApp in-page buttons consistent with the rest of the design */
a.button-whatsapp{
  border-radius:var(--oa-radius-md)!important;
}

/* Icon consistency inside actionable controls */
.button svg,
.button img,
.icon-button svg,
.icon-button img{
  width:19px;
  height:19px;
  flex:0 0 19px;
  object-fit:contain;
}

/* Cards: consistent radius, border and hover restraint */
.card,
.service-card,
.info-card,
.brand-card,
.vehicle-card,
.manufacturer-card,
.faq-item,
details{
  border-radius:var(--oa-radius-lg);
}
.card,
.service-card,
.info-card,
.brand-card,
.vehicle-card,
.manufacturer-card{
  transition:
    transform var(--oa-transition),
    box-shadow var(--oa-transition),
    border-color var(--oa-transition);
}
@media (hover:hover){
  .card:hover,
  .service-card:hover,
  .info-card:hover,
  .brand-card:hover,
  .vehicle-card:hover,
  .manufacturer-card:hover{
    transform:translateY(-2px);
    box-shadow:var(--oa-shadow-soft);
  }
}

/* FAQ details: improved touch target and spacing */
details > summary{
  min-height:54px;
  display:flex;
  align-items:center;
  cursor:pointer;
}
details > p,
details > div{
  margin-top:12px;
}

/* Images: consistent clipping without changing existing aspect ratios */
.card img,
.service-card img,
.info-card img,
.brand-card img,
.vehicle-card img,
.manufacturer-card img{
  border-radius:calc(var(--oa-radius-lg) - 2px);
}

/* Hero actions and CTA button groups */
.hero-actions,
.cta-actions,
.button-group,
.actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
}

/* Navigation polish */
.site-header a,
header nav a{
  transition:color var(--oa-transition), opacity var(--oa-transition);
}
.site-header a:hover,
header nav a:hover{
  opacity:.82;
}

/* Floating WhatsApp remains circular and visually separate */
a.floating-whatsapp{
  border-radius:50%!important;
  transition:
    transform var(--oa-transition),
    box-shadow var(--oa-transition),
    background-color var(--oa-transition)!important;
}

/* Mobile touch targets and stacking */
@media(max-width:760px){
  .button{
    min-height:48px;
    padding:13px 20px;
  }
  .hero-actions,
  .cta-actions,
  .button-group,
  .actions{
    gap:10px;
  }
  .hero-actions .button,
  .cta-actions .button{
    width:100%;
  }
  details > summary{
    min-height:58px;
  }
}

/* Reduced-motion accessibility */
@media(prefers-reduced-motion:reduce){
  .button,
  .card,
  .service-card,
  .info-card,
  .brand-card,
  .vehicle-card,
  .manufacturer-card,
  a.floating-whatsapp,
  .site-header a,
  header nav a{
    transition:none!important;
  }
  .button:hover,
  .card:hover,
  .service-card:hover,
  .info-card:hover,
  .brand-card:hover,
  .vehicle-card:hover,
  .manufacturer-card:hover,
  a.floating-whatsapp:hover{
    transform:none!important;
  }
}




/* ===========================================================
PHASE 21.8.33 - Refined Premium WhatsApp CTA
Soft monochrome palette matching the Odell Automotive brand.
=========================================================== */

/* Light sections */
.button-whatsapp,
a.button-whatsapp,
.button.whatsapp{
    background:#2B2B2B!important;
    color:#F8F8F8!important;
    border:1px solid #404040!important;
}
.button-whatsapp:hover,
a.button-whatsapp:hover,
.button.whatsapp:hover{
    background:#3A3A3A!important;
    border-color:#555555!important;
    color:#FFFFFF!important;
}

/* Dark/image sections */
.hero .button-whatsapp,
.dark .button-whatsapp,
.section-dark .button-whatsapp,
.bg-dark .button-whatsapp,
.contact-cta .button-whatsapp,
.final-cta .button-whatsapp,
.need-locksmith-cta .button-whatsapp{
    background:rgba(255,255,255,.10)!important;
    backdrop-filter:blur(6px);
    color:#FAFAFA!important;
    border:1px solid rgba(255,255,255,.28)!important;
}
.hero .button-whatsapp:hover,
.dark .button-whatsapp:hover,
.section-dark .button-whatsapp:hover,
.bg-dark .button-whatsapp:hover,
.contact-cta .button-whatsapp:hover,
.final-cta .button-whatsapp:hover,
.need-locksmith-cta .button-whatsapp:hover{
    background:rgba(255,255,255,.18)!important;
    border-color:rgba(255,255,255,.42)!important;
    color:#FFFFFF!important;
}


/* ===========================================================
PHASE 21.8.34 - Manufacturer Card Readability
Improves visibility of manufacturer names on manufacturer pages.
=========================================================== */

.manufacturer-card,
.brand-card,
.vehicle-card{
    background:#f5f5f5;
    border:1px solid rgba(0,0,0,.08);
}

.manufacturer-card h2,
.manufacturer-card h3,
.manufacturer-card h4,
.brand-card h2,
.brand-card h3,
.brand-card h4,
.vehicle-card h2,
.vehicle-card h3,
.vehicle-card h4,
.manufacturer-card .manufacturer-name,
.brand-card .manufacturer-name,
.vehicle-card .manufacturer-name{
    color:#1f1f1f!important;
    opacity:1!important;
}

.manufacturer-card p,
.brand-card p,
.vehicle-card p{
    color:#555!important;
    opacity:1!important;
}

.manufacturer-card:hover,
.brand-card:hover,
.vehicle-card:hover{
    background:#ffffff;
    border-color:rgba(0,0,0,.14);
}


/* ===========================================================
PHASE 21.8.35 - ACTUAL MANUFACTURER HUB CARD READABILITY FIX
Targets the real classes used on manufacturers.html.
=========================================================== */

.manufacturer-hub-card{
    background:#f7f6f3;
    border-color:#d8d4cc;
    color:#171717;
}

.manufacturer-hub-card h2,
.manufacturer-hub-card strong{
    color:#171717 !important;
    -webkit-text-fill-color:#171717 !important;
    opacity:1 !important;
}

.manufacturer-hub-card p{
    color:#5f5f5f !important;
    -webkit-text-fill-color:#5f5f5f !important;
    opacity:1 !important;
}

/* Featured cards retain the dark premium treatment with bright readable copy */
.manufacturer-hub-card.featured{
    background:#1c1e21;
    border-color:#2b2e32;
    color:#ffffff;
}

.manufacturer-hub-card.featured h2,
.manufacturer-hub-card.featured strong{
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    opacity:1 !important;
}

.manufacturer-hub-card.featured p{
    color:#d4d6d9 !important;
    -webkit-text-fill-color:#d4d6d9 !important;
    opacity:1 !important;
}

.manufacturer-hub-card.featured span{
    color:var(--gold) !important;
    -webkit-text-fill-color:var(--gold) !important;
    opacity:1 !important;
}

.manufacturer-hub-card:hover{
    border-color:#bcb7ad;
}

.manufacturer-hub-card.featured:hover{
    background:#24272b;
    border-color:#3a3e43;
}




/* ===========================================================
PHASE 21.8.37 - ORIGINAL PALETTE RESTORATION
Restores the premium Odell Automotive black, ivory, graphite and warm-gold system.
Component-specific rules only; no broad dark-section overrides.
=========================================================== */

:root{
  --oa-ink:#141414;
  --oa-graphite:#222428;
  --oa-charcoal:#2b2d31;
  --oa-copy:#5f6165;
  --oa-copy-light:#d7d9dc;
  --oa-ivory:#f7f5ef;
  --oa-white:#ffffff;
  --oa-gold:var(--gold);
  --oa-gold-light:var(--gold);
  --oa-line-light:#d8d4cc;
  --oa-line-dark:rgba(255,255,255,.22);
}

/* Manufacturer hub cards */
.manufacturer-hub-card{
  background:var(--oa-ivory);
  border-color:var(--oa-line-light);
  color:var(--oa-ink);
}
.manufacturer-hub-card h2,
.manufacturer-hub-card strong{
  color:var(--oa-ink)!important;
  -webkit-text-fill-color:var(--oa-ink)!important;
}
.manufacturer-hub-card p{
  color:var(--oa-copy)!important;
  -webkit-text-fill-color:var(--oa-copy)!important;
}
.manufacturer-hub-card span{
  color:var(--oa-gold)!important;
  -webkit-text-fill-color:var(--oa-gold)!important;
}

.manufacturer-hub-card.featured{
  background:var(--oa-graphite);
  border-color:#303237;
  color:var(--oa-white);
}
.manufacturer-hub-card.featured h2,
.manufacturer-hub-card.featured strong{
  color:var(--oa-white)!important;
  -webkit-text-fill-color:var(--oa-white)!important;
}
.manufacturer-hub-card.featured p{
  color:var(--oa-copy-light)!important;
  -webkit-text-fill-color:var(--oa-copy-light)!important;
}
.manufacturer-hub-card.featured span{
  color:var(--oa-gold-light)!important;
  -webkit-text-fill-color:var(--oa-gold-light)!important;
}

/* Hero copy */
.hero .eyebrow,
.hero .kicker,
.hero .section-label,
[class*="hero-"] .eyebrow,
[class*="-hero"] .eyebrow{
  color:var(--oa-gold-light)!important;
  -webkit-text-fill-color:var(--oa-gold-light)!important;
}
.hero h1,
.hero h2,
[class*="hero-"] h1,
[class*="-hero"] h1{
  color:var(--oa-white)!important;
  -webkit-text-fill-color:var(--oa-white)!important;
}
.hero p,
[class*="hero-"] p,
[class*="-hero"] p{
  color:var(--oa-copy-light)!important;
  -webkit-text-fill-color:var(--oa-copy-light)!important;
}

/* Dark CTA components */
.contact-cta,
.final-cta,
.need-locksmith-cta,
.manufacturer-final-cta{
  color:var(--oa-white);
}
.contact-cta h2,
.contact-cta h3,
.final-cta h2,
.final-cta h3,
.need-locksmith-cta h2,
.need-locksmith-cta h3,
.manufacturer-final-cta h2,
.manufacturer-final-cta h3{
  color:var(--oa-white)!important;
  -webkit-text-fill-color:var(--oa-white)!important;
}
.contact-cta p,
.final-cta p,
.need-locksmith-cta p,
.manufacturer-final-cta p{
  color:var(--oa-copy-light)!important;
  -webkit-text-fill-color:var(--oa-copy-light)!important;
}
.contact-cta .eyebrow,
.final-cta .eyebrow,
.need-locksmith-cta .eyebrow,
.manufacturer-final-cta .eyebrow{
  color:var(--oa-gold-light)!important;
  -webkit-text-fill-color:var(--oa-gold-light)!important;
}

/* Preserve the exact high-contrast CTA sentence */
.contact-cta.phase17-final-cta .cta-support-copy,
.need-locksmith-cta .cta-support-copy{
  color:#f7f7f7!important;
  -webkit-text-fill-color:#f7f7f7!important;
  opacity:1!important;
}

/* WhatsApp CTAs retain the softer premium treatment */
.button-whatsapp,
a.button-whatsapp,
.button.whatsapp{
  background:var(--oa-charcoal)!important;
  border-color:#42454a!important;
  color:var(--oa-white)!important;
}
.button-whatsapp:hover,
a.button-whatsapp:hover,
.button.whatsapp:hover{
  background:#373a3f!important;
  border-color:#555960!important;
  color:var(--oa-white)!important;
}
.hero .button-whatsapp,
.contact-cta .button-whatsapp,
.final-cta .button-whatsapp,
.need-locksmith-cta .button-whatsapp,
.manufacturer-final-cta .button-whatsapp{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.30)!important;
  color:var(--oa-white)!important;
}
.hero .button-whatsapp:hover,
.contact-cta .button-whatsapp:hover,
.final-cta .button-whatsapp:hover,
.need-locksmith-cta .button-whatsapp:hover,
.manufacturer-final-cta .button-whatsapp:hover{
  background:rgba(255,255,255,.17)!important;
  border-color:rgba(255,255,255,.44)!important;
}

/* Light content components */
.section-light h2,
.section-light h3,
.hub-grid-section h2,
.hub-grid-section h3{
  color:var(--oa-ink);
}
.section-light p,
.hub-grid-section p{
  color:var(--oa-copy);
}


/* ===========================================================
PHASE 21.8.38 - MISSED PALETTE AREAS
Completes the original black, ivory, graphite and warm-gold colour system.
Targets additional dark cards and dark sections missed in Phase 21.8.37.
=========================================================== */

/* Dark content cards and panels */
:is(
  .premium-card,
  .authority-card,
  .trust-card,
  .value-card.dark,
  .service-card.dark,
  .info-card.dark,
  .all-keys-help-card,
  .all-keys-capability-card,
  .all-keys-scenario-card,
  .commercial-card.dark,
  .fault-option.dark,
  .security-layer-item.dark,
  .process-card.dark,
  .visit-card.dark
){
  color:var(--oa-white);
}

:is(
  .premium-card,
  .authority-card,
  .trust-card,
  .value-card.dark,
  .service-card.dark,
  .info-card.dark,
  .all-keys-help-card,
  .all-keys-capability-card,
  .all-keys-scenario-card,
  .commercial-card.dark,
  .fault-option.dark,
  .security-layer-item.dark,
  .process-card.dark,
  .visit-card.dark
) :is(h2,h3,h4,strong){
  color:var(--oa-white)!important;
  -webkit-text-fill-color:var(--oa-white)!important;
  opacity:1!important;
}

:is(
  .premium-card,
  .authority-card,
  .trust-card,
  .value-card.dark,
  .service-card.dark,
  .info-card.dark,
  .all-keys-help-card,
  .all-keys-capability-card,
  .all-keys-scenario-card,
  .commercial-card.dark,
  .fault-option.dark,
  .security-layer-item.dark,
  .process-card.dark,
  .visit-card.dark
) :is(p,li,small){
  color:var(--oa-copy-light)!important;
  -webkit-text-fill-color:var(--oa-copy-light)!important;
  opacity:1!important;
}

/* Dark comparison, proof and information bands */
:is(
  .manufacturer-proof,
  .manufacturer-security,
  .manufacturer-comparison,
  .all-keys-trust,
  .all-keys-process,
  .commercial-proof,
  .dark-band,
  .proof-band,
  .trust-band,
  .stats-band
) :is(h2,h3,h4,strong){
  color:var(--oa-white)!important;
  -webkit-text-fill-color:var(--oa-white)!important;
}

:is(
  .manufacturer-proof,
  .manufacturer-security,
  .manufacturer-comparison,
  .all-keys-trust,
  .all-keys-process,
  .commercial-proof,
  .dark-band,
  .proof-band,
  .trust-band,
  .stats-band
) :is(p,li,small){
  color:var(--oa-copy-light)!important;
  -webkit-text-fill-color:var(--oa-copy-light)!important;
}

/* Dark stat/metric blocks */
:is(.stat-card,.metric-card,.proof-card).dark,
:is(.dark,.section-dark,.bg-dark) :is(.stat-card,.metric-card,.proof-card){
  color:var(--oa-white);
}
:is(.stat-card,.metric-card,.proof-card).dark :is(h2,h3,strong),
:is(.dark,.section-dark,.bg-dark) :is(.stat-card,.metric-card,.proof-card) :is(h2,h3,strong){
  color:var(--oa-white)!important;
  -webkit-text-fill-color:var(--oa-white)!important;
}
:is(.stat-card,.metric-card,.proof-card).dark :is(p,small,span),
:is(.dark,.section-dark,.bg-dark) :is(.stat-card,.metric-card,.proof-card) :is(p,small,span){
  color:var(--oa-copy-light)!important;
  -webkit-text-fill-color:var(--oa-copy-light)!important;
}

/* Gold accents retained only for labels and metadata */
:is(
  .premium-card,
  .authority-card,
  .trust-card,
  .manufacturer-proof,
  .manufacturer-security,
  .manufacturer-comparison,
  .all-keys-trust,
  .all-keys-process,
  .commercial-proof,
  .dark-band,
  .proof-band,
  .trust-band,
  .stats-band
) :is(.eyebrow,.kicker,.section-label,.overline,.meta-label){
  color:var(--oa-gold-light)!important;
  -webkit-text-fill-color:var(--oa-gold-light)!important;
  opacity:1!important;
}

/* Footer columns and dark navigation panels */
.site-footer :is(h2,h3,h4,strong),
footer :is(h2,h3,h4,strong),
.mobile-menu :is(h2,h3,strong){
  color:var(--oa-white)!important;
  -webkit-text-fill-color:var(--oa-white)!important;
}
.site-footer :is(p,li,small),
footer :is(p,li,small),
.mobile-menu :is(p,li,small){
  color:var(--oa-copy-light)!important;
  -webkit-text-fill-color:var(--oa-copy-light)!important;
}
.site-footer a,
footer a,
.mobile-menu a{
  color:var(--oa-white)!important;
}

/* FAQ cards on dark backgrounds */
:is(.dark,.section-dark,.bg-dark,.manufacturer-faq.dark) details,
:is(.dark,.section-dark,.bg-dark,.manufacturer-faq.dark) .faq-item{
  color:var(--oa-white);
}
:is(.dark,.section-dark,.bg-dark,.manufacturer-faq.dark) details summary,
:is(.dark,.section-dark,.bg-dark,.manufacturer-faq.dark) .faq-item h3{
  color:var(--oa-white)!important;
}
:is(.dark,.section-dark,.bg-dark,.manufacturer-faq.dark) details p,
:is(.dark,.section-dark,.bg-dark,.manufacturer-faq.dark) .faq-item p{
  color:var(--oa-copy-light)!important;
}

/* ===========================================================
PHASE 21.8.42 — SERVICES NAVIGATION BOX CONSISTENCY
Minimal, page-specific fix. Only the six clickable boxes in
services.html are affected; the rest of the site is unchanged.
=========================================================== */
body.page-services .service-jump-grid > a,
body.page-services .service-jump-grid > a:link,
body.page-services .service-jump-grid > a:visited {
  box-sizing: border-box;
  min-width: 0;
  min-height: 170px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  position: relative;
  background: #f2f0ea;
  border-top: 0;
  border-left: 0;
  border-right: 1px solid #cbc6bd;
  border-bottom: 1px solid #cbc6bd;
  border-radius: 0;
  color: #181a1d;
  text-decoration: none;
  box-shadow: none;
}
body.page-services .service-jump-grid > a > span {
  position: absolute;
  top: 22px;
  left: 24px;
  margin: 0;
  color: var(--gold);
  -webkit-text-fill-color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
body.page-services .service-jump-grid > a > strong {
  display: block;
  min-height: 42px;
  margin: 0;
  color: #181a1d;
  -webkit-text-fill-color: #181a1d;
  font-family: Manrope, sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.24;
}
body.page-services .service-jump-grid > a > small {
  display: block;
  min-height: 20px;
  margin: 7px 0 0;
  color: #73777c;
  -webkit-text-fill-color: #73777c;
  font-size: inherit;
  line-height: 1.4;
}
body.page-services .service-jump-grid > a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 4px;
  background: var(--gold);
  transition: width .3s ease;
}
body.page-services .service-jump-grid > a:hover,
body.page-services .service-jump-grid > a:focus-visible {
  background: #e8e4db;
  color: #181a1d;
  transform: translateY(-4px);
  box-shadow: var(--shadow-soft);
  border-color: #cbc6bd;
}
body.page-services .service-jump-grid > a:hover::before,
body.page-services .service-jump-grid > a:focus-visible::before {
  width: 100%;
}
@media (max-width: 520px) {
  body.page-services .service-jump-grid > a,
  body.page-services .service-jump-grid > a:link,
  body.page-services .service-jump-grid > a:visited {
    min-height: 140px;
    padding: 18px;
  }
  body.page-services .service-jump-grid > a > span {
    top: 18px;
    left: 18px;
  }
}





/* Keep grouped CTA rows evenly aligned */
.page-services main :is(.hero-actions,.service-inline-links){
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
}

/* Six service navigation cards: one consistent card shape */
.page-services .service-jump-grid > a{
  border-radius:18px!important;
  overflow:hidden;
}

@media (max-width:620px){
  .page-services main .services-unified-cta{
    width:100%!important;
    min-height:54px!important;
    padding:16px 20px!important;
    white-space:normal!important;
  }

  .page-services main :is(.hero-actions,.service-inline-links){
    width:100%;
  }
}


/* ===========================================================
PHASE 21.8.46 — SERVICES PAGE MATCHED TO HOMEPAGE COMPONENTS
Services page CTAs now use the same global .button, .button-primary and
.button-secondary components as the homepage. No page-specific CTA skin.
=========================================================== */

/* Keep the six service navigation cards consistent with the site's card system. */
.page-services .service-jump-grid > a{
  border-radius:var(--radius-lg,18px);
  overflow:hidden;
}

/* Match homepage CTA-row wrapping and spacing without changing button appearance. */
.page-services main :is(.hero-actions,.service-inline-links){
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
}

@media (max-width:620px){
  .page-services main :is(.hero-actions,.service-inline-links){
    width:100%;
  }
}


/* PHASE 21.8.47 - All Services CTAs use homepage primary style */
.page-services main a.button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.page-services main a.button::after{
    content:" →";
    font-weight:700;
}


/* PRODUCTION 1.0.1 — HOMEPAGE HEADING ACCENTS */
.heading-gold{
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}


/* ===========================================================
PRODUCTION 1.0.3 — SINGLE BRAND GOLD + HERO HEADING ACCENTS
All gold accents inherit one source of truth. Hero H1 accent spans
are forced to the same gold while the remaining heading text stays white.
=========================================================== */
:root {
  --gold:#D8BD84;
  --brand-gold:#D8BD84;
}

:is(
  .hero,
  .inner-hero,
  .service-hero,
  .manufacturer-hero,
  .hub-hero,
  .commercial-hero,
  .about-hero,
  .contact-hero,
  .coverage-hero,
  .faq-hero,
  .page-hero,
  [class*="hero"]
) h1 {
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

:is(
  .hero,
  .inner-hero,
  .service-hero,
  .manufacturer-hero,
  .hub-hero,
  .commercial-hero,
  .about-hero,
  .contact-hero,
  .coverage-hero,
  .faq-hero,
  .page-hero,
  [class*="hero"]
) h1 span,
:is(
  .hero,
  .inner-hero,
  .service-hero,
  .manufacturer-hero,
  .hub-hero,
  .commercial-hero,
  .about-hero,
  .contact-hero,
  .coverage-hero,
  .faq-hero,
  .page-hero,
  [class*="hero"]
) h1 .heading-gold {
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}

/* Buttons and principal gold controls use one flat, consistent shade. */
.button-primary,
.header-cta,
.page-services main a.button.button-primary,
button.button-primary,
input[type="submit"].button-primary {
  background:var(--gold)!important;
  border-color:var(--gold)!important;
}


/* ===========================================================
PRODUCTION 1.0.4 — MANUFACTURER NAVIGATION CARD LEGIBILITY
Prevents the status-label span styling from shrinking or recolouring
manufacturer names inside card headings.
=========================================================== */
.manufacturer-hub-grid{
  align-items:stretch;
}

.manufacturer-hub-card{
  display:flex;
  flex-direction:column;
  min-height:250px;
  padding:28px;
  color:#17191d!important;
  text-decoration:none;
}

.manufacturer-hub-card > span{
  color:var(--gold)!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}

.manufacturer-hub-card h2{
  margin:38px 0 12px!important;
  color:#17191d!important;
  font-size:clamp(24px,2vw,30px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  font-weight:700!important;
  overflow-wrap:anywhere;
}

.manufacturer-hub-card h2 span,
.manufacturer-hub-card h2 .heading-gold{
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
  font:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  text-transform:none!important;
}

.manufacturer-hub-card p{
  color:#565b63!important;
  font-size:15px!important;
  line-height:1.6!important;
  margin:0 0 22px!important;
}

.manufacturer-hub-card strong{
  display:block;
  margin-top:auto;
  color:#17191d!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:700!important;
}

.manufacturer-hub-card.featured{
  color:#fff!important;
}

.manufacturer-hub-card.featured h2,
.manufacturer-hub-card.featured h2 span,
.manufacturer-hub-card.featured h2 .heading-gold{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

.manufacturer-hub-card.featured p{
  color:#c8ccd2!important;
}

.manufacturer-hub-card.featured strong{
  color:var(--gold)!important;
}

.manufacturer-hub-card:hover h2,
.manufacturer-hub-card:hover h2 span{
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}

@media (max-width:760px){
  .manufacturer-hub-card{
    min-height:220px;
    padding:24px;
  }
  .manufacturer-hub-card h2{
    font-size:clamp(23px,7vw,28px)!important;
    margin-top:30px!important;
  }
  .manufacturer-hub-card p{
    font-size:14px!important;
  }
}


/* ===========================================================
PRODUCTION 1.0.5 — MANUFACTURER CARD CTA GOLD
All “Explore [manufacturer] support” links use the unified brand gold.
=========================================================== */
.manufacturer-hub-card strong,
.manufacturer-hub-card.featured strong,
.manufacturer-hub-card:hover strong,
.manufacturer-hub-card:focus-visible strong{
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}


/* v1.0.8 Manufacturer Key Evolution panel contrast fix */
.key-evolution,
.key-evolution-panel,
.key-evolution-content,
.evolution-panel,
.timeline-panel,
[class*="evolution"] .panel,
[class*="key-evolution"] .panel,
[class*="timeline"] .panel{
  color:#F5F5F5!important;
}

.key-evolution h3,
.key-evolution-panel h3,
.key-evolution-content h3,
.evolution-panel h3,
.timeline-panel h3,
[class*="evolution"] .panel h3,
[class*="timeline"] .panel h3{
  color:var(--gold)!important;
}

.key-evolution p,
.key-evolution li,
.key-evolution-panel p,
.key-evolution-panel li,
.key-evolution-content p,
.key-evolution-content li,
.evolution-panel p,
.evolution-panel li,
.timeline-panel p,
.timeline-panel li,
[class*="evolution"] .panel p,
[class*="evolution"] .panel li,
[class*="timeline"] .panel p,
[class*="timeline"] .panel li{
  color:#E6E6E6!important;
}

.key-evolution a,
.key-evolution-panel a,
.key-evolution-content a,
.evolution-panel a,
.timeline-panel a{
 color:var(--gold)!important;
}


/* ===========================================================
PRODUCTION 1.0.9 — EXACT MANUFACTURER TIMELINE DETAIL CONTRAST
Targets the actual black result boxes used on every manufacturer page.
=========================================================== */
[class$="-timeline-detail"],
[class*="-timeline-detail "] {
  color:#FFFFFF!important;
}

[class$="-timeline-detail"] h1,
[class$="-timeline-detail"] h2,
[class$="-timeline-detail"] h3,
[class$="-timeline-detail"] h4,
[class$="-timeline-detail"] strong,
[class*="-timeline-detail "] h1,
[class*="-timeline-detail "] h2,
[class*="-timeline-detail "] h3,
[class*="-timeline-detail "] h4,
[class*="-timeline-detail "] strong {
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

[class$="-timeline-detail"] > span,
[class$="-timeline-detail"] .eyebrow,
[class*="-timeline-detail "] > span,
[class*="-timeline-detail "] .eyebrow {
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}

[class$="-timeline-detail"] p,
[class$="-timeline-detail"] li,
[class$="-timeline-detail"] small,
[class*="-timeline-detail "] p,
[class*="-timeline-detail "] li,
[class*="-timeline-detail "] small {
  color:#C9CDD3!important;
  -webkit-text-fill-color:#C9CDD3!important;
}

/* Ensure the selected black timeline buttons also remain readable. */
[class$="-timeline"] button.active strong,
[class$="-timeline"] button:hover strong,
[class*="-timeline "] button.active strong,
[class*="-timeline "] button:hover strong {
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}


/* v1.0.11 Mobile locksmith or dealer section readability */
.mobile-locksmith-dealer,
.mobile-locksmith-dealer p,
.mobile-locksmith-dealer li,
.mobile-locksmith-dealer h2,
.mobile-locksmith-dealer h3,
.mobile-locksmith-dealer h4,
.mobile-locksmith-dealer strong,
[class*="dealer"] .comparison-card,
[class*="dealer"] .comparison-card p,
[class*="dealer"] .comparison-card li,
[class*="dealer"] .comparison-card h3,
[class*="mobile-locksmith"] p,
[class*="mobile-locksmith"] li,
[class*="mobile-locksmith"] h2,
[class*="mobile-locksmith"] h3{
 color:#17191d!important;
 -webkit-text-fill-color:#17191d!important;
}

.mobile-locksmith-dealer .heading-gold,
[class*="dealer"] .heading-gold{
 color:var(--gold)!important;
 -webkit-text-fill-color:var(--gold)!important;
}


/* ===========================================================
PRODUCTION 1.0.12 — PRECISE MANUFACTURER COMPARISON COLOURS
Targets the actual “Mobile locksmith or dealer?” component.
This overrides the older global dark-band colour rule.
=========================================================== */

.manufacturer-comparison.section-light,
.manufacturer-comparison.section-light .comparison-heading,
.manufacturer-comparison.section-light .comparison-table,
.manufacturer-comparison.section-light .comparison-row {
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
}

.manufacturer-comparison.section-light .comparison-heading h2,
.manufacturer-comparison.section-light .comparison-heading p,
.manufacturer-comparison.section-light .comparison-heading .eyebrow,
.manufacturer-comparison.section-light .comparison-row,
.manufacturer-comparison.section-light .comparison-row strong,
.manufacturer-comparison.section-light .comparison-row span {
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
  opacity:1!important;
}

/* Keep the intended gold accent word in the heading. */
.manufacturer-comparison.section-light .heading-gold {
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}

/* ===========================================================
PRODUCTION 1.0.12 — ALFA ROMEO EMBLEM TEXT ONLY
Keeps the circular badge in its existing position and centres
only the text within its fixed 96 × 96 px area.
=========================================================== */

.alfa-romeo-key-emblem {
  width:96px!important;
  height:96px!important;
  margin:0 auto 28px!important;
  padding:0!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.12!important;
  white-space:normal!important;
  transform:none!important;
  translate:none!important;
}


/* v1.0.13 Comparison heading gold */
.manufacturer-comparison.section-light .comparison-heading h2,
.manufacturer-comparison.section-light .comparison-heading h2 *,
.manufacturer-comparison.section-light .comparison-heading .eyebrow{
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}

.manufacturer-comparison.section-light .comparison-table th,
.manufacturer-comparison.section-light .comparison-table thead th,
.manufacturer-comparison.section-light .comparison-table .table-heading,
.manufacturer-comparison.section-light .comparison-table .comparison-title{
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}


/* v1.0.14 exact comparison colours */
.manufacturer-comparison.section-light .comparison-table thead tr th,
.manufacturer-comparison.section-light .comparison-table thead tr th *,
.manufacturer-comparison.section-light .comparison-table .comparison-header,
.manufacturer-comparison.section-light .comparison-table .comparison-header *,
.manufacturer-comparison.section-light .comparison-table [role="columnheader"]{
 color:var(--gold)!important;
 -webkit-text-fill-color:var(--gold)!important;
 opacity:1!important;
}

.manufacturer-comparison.section-light .comparison-heading p,
.manufacturer-comparison.section-light .comparison-heading .lead,
.manufacturer-comparison.section-light .comparison-heading .section-intro{
 color:#111!important;
 -webkit-text-fill-color:#111!important;
 opacity:1!important;
}

/* v1.0.15 exact manufacturer comparison heading colours */
.manufacturer-comparison.section-light .comparison-heading > p.eyebrow,
.manufacturer-comparison.section-light .comparison-heading > p.eyebrow.dark {
  color: var(--gold) !important;
  -webkit-text-fill-color: var(--gold) !important;
  opacity: 1 !important;
}

.manufacturer-comparison.section-light .comparison-heading > h2,
.manufacturer-comparison.section-light .comparison-heading > h2 * {
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  opacity: 1 !important;
}

.manufacturer-comparison.section-light .comparison-heading > h2 + p {
  color: var(--gold) !important;
  -webkit-text-fill-color: var(--gold) !important;
  opacity: 1 !important;
}

.manufacturer-comparison.section-light .comparison-row.comparison-head [role="columnheader"] {
  color: var(--gold) !important;
  -webkit-text-fill-color: var(--gold) !important;
  opacity: 1 !important;
}

/* Mobile refinement — 2026-07-29
   Keeps the existing CTA height while giving both actions matching geometry,
   tighter mobile spacing, and safer content clearance above the fixed bar. */
@media (max-width:620px){
  body{padding-bottom:84px}

  .phase17-mobile-bar{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:8px;
    padding:10px 14px 14px;
  }
  .phase17-mobile-bar a,
  .phase17-mobile-bar a:first-child,
  .phase17-mobile-bar a:last-child{
    min-width:0;
    min-height:52px;
    height:52px;
    padding:0 12px;
    border-radius:999px!important;
  }
  .phase17-mobile-bar a:last-child{
    background:#2b2c30;
    color:#fff;
    border:1px solid rgba(255,255,255,.14);
  }

  .phase17-stats{padding:0}
  .phase17-stats article{min-height:116px}

  .phase18-assistant{
    padding:64px 22px 92px;
  }
  .phase18-assistant-copy{
    margin-bottom:34px;
    gap:22px;
  }
  .phase18-assistant-copy .eyebrow{
    margin-bottom:0;
  }
  .phase18-assistant-copy h2{
    font-size:clamp(2.7rem,13vw,3.75rem);
    line-height:.96;
    letter-spacing:-.055em;
  }
  .phase18-assistant-copy>p:last-child{
    font-size:1rem;
    line-height:1.72;
  }
  .phase18-help-grid a{
    min-height:190px;
    padding:24px;
  }
  .phase18-help-grid strong{
    margin:24px 0 10px;
  }

  main > section:last-child,
  .site-footer{
    scroll-margin-bottom:84px;
  }
}

@media (max-width:380px){
  .phase17-mobile-bar{gap:6px;padding-inline:10px}
  .phase17-mobile-bar a{font-size:.76rem;letter-spacing:.025em;padding-inline:8px}
  .phase18-assistant{padding-inline:18px}
}

/* Phase 2.0.3 — mobile hero image refinement
   Keeps desktop presentation unchanged while improving focal points and reducing
   excessive image cropping on phones. */
@media (max-width:800px){
  /* Homepage: show more of the sign-written van instead of using an aggressive cover crop. */
  .page-home .hero{
    min-height:780px;
    background-position:center,center,72% bottom !important;
    background-size:100% 100%,100% 100%,auto 58% !important;
    background-repeat:no-repeat;
  }
  .page-home .hero::before{
    background:linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,.40) 55%,rgba(0,0,0,.66) 100%);
  }

  /* Service pages: preserve the subject in the lower half of the hero and keep copy clear. */
  .page-lost-keys .lost-keys-hero,
  .page-spare-keys .spare-hero,
  .page-key-programming .programming-hero,
  .page-vehicle-entry .lost-keys-hero,
  .page-ignition .lost-keys-hero,
  .page-broken-keys .broken-hero,
  .all-keys-hero{
    background-position:center,center,70% bottom !important;
    background-size:100% 100%,100% 100%,auto 55% !important;
    background-repeat:no-repeat;
  }

  /* Commercial/fleet photography benefits from a wider, less zoomed crop. */
  .page-commercial .commercial-hero,
  .page-fleet .fleet-hero,
  .fleet-hero{
    background-position:center,68% center !important;
    background-size:100% 100%,auto 100% !important;
    background-repeat:no-repeat;
  }

  /* About and coverage hero imagery: favour the subject and avoid edge clipping. */
  .page-about .about-hero,
  .page-coverage .about-hero{
    background-position:center,66% center !important;
    background-size:100% 100%,auto 100% !important;
    background-repeat:no-repeat;
  }

  /* Services and manufacturer hub: show the product/workbench image as a composed panel. */
  .services-hero,
  .hub-hero{
    background-position:center,72% bottom !important;
    background-size:100% 100%,auto 56% !important;
    background-repeat:no-repeat;
  }

  /* Consistent mobile contrast without hiding the photography. */
  .hero,
  .lost-keys-hero,
  .spare-hero,
  .programming-hero,
  .broken-hero,
  .all-keys-hero,
  .commercial-hero,
  .fleet-hero,
  .about-hero,
  .services-hero,
  .hub-hero{
    background-color:#080a0d;
  }
}

@media (max-width:520px){
  .page-home .hero{
    min-height:790px;
    background-position:center,center,74% bottom !important;
    background-size:100% 100%,100% 100%,auto 52% !important;
  }
  .page-lost-keys .lost-keys-hero,
  .page-spare-keys .spare-hero,
  .page-key-programming .programming-hero,
  .page-vehicle-entry .lost-keys-hero,
  .page-ignition .lost-keys-hero,
  .page-broken-keys .broken-hero,
  .all-keys-hero{
    background-position:center,72% bottom !important;
    background-size:100% 100%,100% 100%,auto 48% !important;
  }
  .services-hero,
  .hub-hero{
    background-position:center,74% bottom !important;
    background-size:100% 100%,auto 50% !important;
  }
}


/* v2.1.0 — mobile-first refinement and FAQ readability
   Preserves the established desktop design while improving phone layouts,
   tap targets, spacing, hero composition and light-background contrast. */

/* FAQ page: answers on the light panel must be fully legible. */
.page-faq .service-faq.section-light .faq-list details p{
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
  opacity:1!important;
}
.page-faq .service-faq.section-light .faq-list summary{
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
}
.page-faq .service-faq.section-light .faq-heading>p:last-child{
  color:#2d2d2d!important;
  -webkit-text-fill-color:#2d2d2d!important;
  opacity:1!important;
}

@media (max-width:800px){
  html{scroll-padding-top:92px}
  body{overflow-x:hidden}

  /* Header and navigation: larger, cleaner tap targets. */
  .nav-row{min-height:76px;padding-inline:20px}
  .brand img{max-width:190px;height:auto}
  .menu-toggle{min-width:72px;min-height:44px;padding:0 16px;border-radius:999px}
  .site-nav a{min-height:48px;display:flex;align-items:center}

  /* Consistent page rhythm on phones. */
  .section,
  .service-jump,
  .services-trust,
  .services-brands,
  .service-faq,
  .manufacturer-faq,
  .spare-faq,
  .programming-faq,
  .broken-faq,
  .all-keys-faq,
  .security-faq,
  .fleet-faq{
    padding-top:76px;
    padding-bottom:76px;
  }

  /* Mobile hero copy remains readable without hiding the photography. */
  .hero-copy,
  .services-hero-copy,
  .lost-keys-hero-copy,
  .spare-hero-copy,
  .programming-hero-copy,
  .broken-hero-copy,
  .all-keys-hero-copy,
  .commercial-hero-copy,
  .fleet-hero-copy,
  .about-hero-copy,
  .hub-hero-copy{
    width:100%;
    max-width:680px;
  }
  .services-hero,
  .hub-hero{
    min-height:720px;
    padding:148px 24px 72px;
    align-items:flex-start;
  }
  .services-hero h1,
  .hub-hero h1{
    font-size:clamp(3.15rem,13vw,5rem);
    line-height:.94;
    letter-spacing:-.055em;
    margin-bottom:22px;
  }
  .services-hero-copy>p:not(.breadcrumb,.eyebrow),
  .hub-hero-copy>p:not(.breadcrumb,.eyebrow){
    font-size:1rem;
    line-height:1.65;
    max-width:38rem;
  }

  /* CTA groups stack predictably and remain easy to tap. */
  .hero-actions{gap:10px;align-items:stretch}
  .hero-actions .button{min-height:52px;justify-content:center;text-align:center}

  /* FAQ accordions: clearer hierarchy and larger tap area. */
  .faq-heading{margin-bottom:38px}
  .faq-heading h2{font-size:clamp(2.55rem,11vw,4rem);line-height:1}
  .faq-list summary{
    min-height:70px;
    padding-top:22px!important;
    padding-bottom:22px!important;
    padding-right:52px!important;
    font-size:1rem;
    line-height:1.45;
  }
  .faq-list details p{
    margin-top:0;
    margin-bottom:24px;
    font-size:.98rem;
    line-height:1.72;
  }
  .faq-list details[open]{padding-inline:14px}

  /* Cards and grids breathe consistently on narrow screens. */
  .service-jump-grid,
  .services-trust-grid,
  .manufacturer-links,
  .phase18-help-grid{
    gap:12px;
  }
  .service-jump-grid a,
  .services-trust-grid article{
    min-height:170px;
    padding:24px;
  }

  /* Footer and final CTA clearance above the fixed mobile contact bar. */
  .site-footer{padding-bottom:108px}
  main>section:last-child{padding-bottom:max(96px,calc(76px + env(safe-area-inset-bottom)))}
}

@media (max-width:620px){
  .contact-bar{display:none}
  .site-header{background:rgba(9,11,14,.96);backdrop-filter:blur(14px)}

  .hero-actions{display:grid;grid-template-columns:1fr}
  .hero-actions .button{width:100%}

  .services-hero,
  .hub-hero{
    min-height:690px;
    padding-top:126px;
    padding-left:20px;
    padding-right:20px;
  }

  .service-faq,
  .manufacturer-faq,
  .spare-faq,
  .programming-faq,
  .broken-faq,
  .all-keys-faq,
  .security-faq,
  .fleet-faq{
    padding-left:20px!important;
    padding-right:20px!important;
    gap:34px;
  }

  .service-jump-grid{grid-template-columns:1fr 1fr}
  .service-jump-grid a{min-height:150px}

  .floating-whatsapp{display:none!important}

  .phase17-mobile-bar{
    padding-bottom:calc(12px + env(safe-area-inset-bottom));
    box-shadow:0 -12px 32px rgba(0,0,0,.22);
  }
}

@media (max-width:380px){
  .nav-row{padding-inline:14px}
  .brand img{max-width:166px}
  .services-hero h1,.hub-hero h1{font-size:2.9rem}
  .service-jump-grid{grid-template-columns:1fr}
  .service-jump-grid a{min-height:132px}
}

/* v2.1.1 — FAQ hierarchy and mobile hero position */
.page-faq .service-faq.section-light .faq-list summary{
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}
.page-faq .service-faq.section-light .faq-list details p{
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
  opacity:1!important;
}

@media (max-width:800px){
  /* Lift the FAQ hero photography so it is visible sooner on mobile. */
  .page-faq .services-hero{
    background-position:center,center,72% center!important;
    background-size:100% 100%,100% 100%,auto 68%!important;
  }
}

@media (max-width:520px){
  .page-faq .services-hero{
    min-height:660px;
    padding-top:112px;
    background-position:center,center,72% 58%!important;
    background-size:100% 100%,100% 100%,auto 64%!important;
  }
}

/* v2.1.2 — homepage mobile hero image position
   Lift the sign-written van higher in the frame without changing desktop. */
@media (max-width:800px){
  .page-home .hero.phase12-hero{
    background-position:center,center,72% 58%!important;
    background-size:100% 100%,100% 100%,auto 58%!important;
  }
}

@media (max-width:520px){
  .page-home .hero.phase12-hero{
    min-height:760px;
    background-position:center,center,74% 54%!important;
    background-size:100% 100%,100% 100%,auto 54%!important;
  }
}

/* v2.1.4 — final mobile usability layer
   Keeps the established desktop design while making every shared component
   safer and easier to use on narrow phone screens. */
@media (max-width:760px){
  html{
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
    scroll-padding-top:84px;
  }

  body,
  main{
    width:100%;
    min-width:0;
    overflow-x:clip;
  }

  *,
  *::before,
  *::after{
    min-width:0;
  }

  img,
  picture,
  video,
  canvas,
  svg{
    max-width:100%;
    height:auto;
  }

  h1,
  h2,
  h3,
  p,
  li,
  summary,
  a{
    overflow-wrap:break-word;
  }

  .nav-row{
    width:100%;
    min-height:72px;
    padding:10px 18px;
    gap:12px;
  }

  .brand{
    flex:1 1 auto;
    min-width:0;
  }

  .brand img{
    display:block;
    width:min(184px,52vw);
    max-height:58px;
    object-fit:contain;
  }

  .menu-toggle{
    flex:0 0 auto;
    min-width:76px;
    min-height:46px;
    touch-action:manipulation;
  }

  .site-nav{
    max-height:calc(100dvh - 72px);
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }

  .site-nav a,
  .button,
  button,
  summary{
    touch-action:manipulation;
  }

  .site-nav a{
    min-height:50px;
    padding-block:13px;
  }

  main>section{
    max-width:100%;
  }

  .hero,
  .services-hero,
  .hub-hero,
  .lost-keys-hero,
  .spare-hero,
  .programming-hero,
  .broken-hero,
  .all-keys-hero,
  .commercial-hero,
  .fleet-hero,
  .security-hero,
  .about-hero{
    width:100%;
    overflow:hidden;
  }

  .hero h1,
  .services-hero h1,
  .hub-hero h1,
  .lost-keys-hero h1,
  .spare-hero h1,
  .programming-hero h1,
  .broken-hero h1,
  .all-keys-hero h1,
  .commercial-hero h1,
  .fleet-hero h1,
  .security-hero h1,
  .about-hero h1{
    max-width:100%;
    font-size:clamp(2.7rem,13vw,4.4rem);
    line-height:.96;
    letter-spacing:-.045em;
  }

  .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
    max-width:440px;
    gap:10px;
  }

  .hero-actions .button{
    width:100%;
    min-height:52px;
    padding:14px 18px;
    justify-content:center;
    text-align:center;
  }

  :where(
    .service-grid,
    .service-jump-grid,
    .related-service-grid,
    .services-trust-grid,
    .spare-benefit-grid,
    .spare-comparison-grid,
    .spare-detail-grid,
    .spare-confidence-grid,
    .programming-grid,
    .broken-grid,
    .all-keys-grid,
    .fleet-grid,
    .security-grid,
    .manufacturer-grid,
    .manufacturer-card-grid,
    .coverage-grid,
    .authority-grid,
    .process-grid
  ) > *{
    min-width:0;
    max-width:100%;
  }

  .faq-list,
  .faq-list details,
  .faq-list summary,
  .faq-list details p{
    max-width:100%;
  }

  .faq-list summary{
    min-height:64px;
    padding:20px 48px 20px 0!important;
  }

  table{
    display:block;
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
  }

  input,
  select,
  textarea{
    max-width:100%;
    min-height:48px;
    font-size:16px;
  }

  .marque-rail,
  [class*="scroll"]{
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
  }

  .site-footer{
    gap:34px;
    padding-inline:20px;
    padding-bottom:calc(112px + env(safe-area-inset-bottom));
  }
}

@media (max-width:520px){
  .nav-row{
    padding-inline:14px;
  }

  .brand img{
    width:min(166px,50vw);
  }

  .hero,
  .services-hero,
  .hub-hero,
  .lost-keys-hero,
  .spare-hero,
  .programming-hero,
  .broken-hero,
  .all-keys-hero,
  .commercial-hero,
  .fleet-hero,
  .security-hero,
  .about-hero{
    padding-left:18px!important;
    padding-right:18px!important;
  }

  .hero h1,
  .services-hero h1,
  .hub-hero h1,
  .lost-keys-hero h1,
  .spare-hero h1,
  .programming-hero h1,
  .broken-hero h1,
  .all-keys-hero h1,
  .commercial-hero h1,
  .fleet-hero h1,
  .security-hero h1,
  .about-hero h1{
    font-size:clamp(2.55rem,13.5vw,3.8rem);
  }

  :where(
    .service-grid,
    .related-service-grid,
    .services-trust-grid,
    .spare-benefit-grid,
    .spare-comparison-grid,
    .spare-detail-grid,
    .spare-confidence-grid,
    .programming-grid,
    .broken-grid,
    .all-keys-grid,
    .fleet-grid,
    .security-grid,
    .manufacturer-grid,
    .manufacturer-card-grid,
    .coverage-grid,
    .authority-grid,
    .process-grid
  ){
    grid-template-columns:1fr!important;
  }

  .service-jump-grid{
    grid-template-columns:1fr!important;
  }

  .service-jump-grid a,
  .services-trust-grid article{
    min-height:auto;
  }

  .phase12-stats{
    grid-template-columns:1fr 1fr;
    padding-inline:18px;
  }

  .phase12-stats article{
    padding:28px 12px;
  }

  .ni-map{
    height:360px;
    margin-inline:0;
  }

  .phase17-mobile-bar{
    gap:8px;
    padding:8px 10px calc(8px + env(safe-area-inset-bottom));
  }

  .phase17-mobile-bar a{
    min-height:52px;
    padding-inline:8px;
    font-size:.75rem;
    letter-spacing:.02em;
  }
}

@media (max-width:360px){
  .brand img{
    width:148px;
  }

  .menu-toggle{
    min-width:68px;
    padding-inline:12px;
  }

  .phase12-stats{
    grid-template-columns:1fr;
  }
}

/* v2.1.3 — homepage mobile hero gap correction
   Pull the van artwork up directly beneath the mobile navigation and remove
   the empty band created by the previous bottom-weighted image positioning. */
@media (max-width:800px){
  .page-home .hero.phase12-hero{
    min-height:720px;
    background-size:100% 100%,100% 100%,auto 74%!important;
    background-position:center,center,74% 18%!important;
  }
  .page-home .hero.phase12-hero .hero-content{
    padding-top:104px!important;
    padding-bottom:48px!important;
  }
}

@media (max-width:520px){
  .page-home .hero.phase12-hero{
    min-height:700px;
    background-size:100% 100%,100% 100%,auto 76%!important;
    background-position:center,center,76% 14%!important;
  }
  .page-home .hero.phase12-hero .hero-content{
    padding-top:92px!important;
    padding-bottom:42px!important;
  }
}
