/* A shared wide canvas keeps hero, services and contact aligned. */
:root{--gutter:clamp(24px,4vw,100px)}
.container{max-width:2400px}
.hero-slides{position:relative;z-index:2;height:calc(100% - 95px);display:grid;grid-template-columns:minmax(0,1fr);padding-top:36px;padding-bottom:85px}
.hero-content{grid-area:1/1;align-self:center;padding:0;max-width:100%;flex:none}
.hero-content[hidden]{visibility:hidden;pointer-events:none}
.hero-toolbar{margin-bottom:28px}
.hero-photo{right:0;top:0;width:100%;height:calc(100% - 95px);clip-path:none;background:#09090c}
.hero-photo img{object-position:66% 50%;filter:brightness(.88) saturate(.95)}
.hero-photo::after{background:linear-gradient(90deg,#09090ced 0%,#09090c80 30%,transparent 62%),linear-gradient(0deg,#0b0b0d 0%,transparent 25%)}
.hero-red-edge{display:none}
.hero h1{max-width:1050px;font-size:clamp(32px,2.9vw,65px)}
.hero h1>span:last-child{font-size:clamp(84px,8.5vw,178px)}
.hero-description{max-width:450px;font-size:18px;line-height:1.55}
.hero-cta{margin-top:30px}
.tyre-photo{position:absolute;inset:0 0 95px;pointer-events:none;overflow:hidden;visibility:hidden;background:#09090c;z-index:0}
.tyre-photo img{width:100%;height:100%;object-fit:cover;object-position:65% 50%}
.tyre-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#09090cec 0%,#09090c80 33%,transparent 65%),linear-gradient(0deg,#0b0b0d 0%,transparent 25%)}

.hero[data-slide="tyres"] .hero-instrument{opacity:0!important}
.hero-instrument{transition:opacity .5s}
.tyre-content{max-width:740px}
.tyre-content .hero-eyebrow{color:#f6cccc;border-color:#ff34464d;background:#1c0b0dd4;margin-bottom:24px}
.tyre-content h2{font-size:clamp(38px,4.6vw,94px);line-height:.98;max-width:12ch;text-wrap:balance;color:#fff}
.tyre-price{margin:28px 0 30px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.tyre-price>span{font-size:14px;font-weight:600;letter-spacing:.22em;color:#e4c9cf}
.tyre-price strong{font-family:var(--display);font-style:italic;font-size:clamp(78px,8vw,166px);font-weight:800;line-height:1;color:#ff2639;letter-spacing:-.03em;text-shadow:0 0 35px #ff203c30;white-space:nowrap}
.tyre-price small{font-size:.28em;letter-spacing:0;color:#fff;font-weight:600}
.hero-slider-controls{position:absolute;left:var(--gutter);bottom:20px;display:flex;gap:8px;align-items:center}
.hero-slider-controls button{display:flex;gap:10px;align-items:center;justify-content:center;border:1px solid #ffffff26;background:#101014da;padding:12px 16px;color:#b1a6ab;font:600 12px/1 var(--body);min-height:44px;border-radius:4px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.hero-slider-controls button>span:first-child{color:#ff3446}
.hero-slider-controls button[aria-pressed="true"]{color:#fff;border-color:#fc344e;background:#381018c9}
.hero-slider-controls button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.hero-slider-controls button[data-slider-pause]{width:44px;padding:0}
.hero-slider-controls button[data-slider-pause]>span:first-child{color:#e6d5da;font-size:15px}
.contact-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.05fr) minmax(0,1.25fr);gap:24px;align-items:stretch}
.contact-info{display:flex;flex-direction:column;padding:32px;background:#121216;border:1px solid #2c2c31;border-radius:6px 28px 6px 6px}
.contact-intro{font-size:17px;line-height:1.6;margin-bottom:22px}
.contact-phone{font-size:clamp(30px,2.4vw,52px);max-width:none;gap:12px;white-space:nowrap}
.contact-email{font-size:18px;max-width:none;gap:10px;overflow-wrap:anywhere}
.contact-address{margin-top:32px}
.contact-language{margin-top:auto;padding-top:32px}
.contact-form{max-width:none;padding:30px;display:flex;flex-direction:column;min-width:0}
.contact-form h3{font-size:30px;line-height:1.1}
.contact-form label{min-width:0}.contact-form input,.contact-form textarea{width:100%;min-width:0}
.contact-form .form-note{line-height:1.5;margin-top:auto}
.contact-form .form-row{gap:14px}
.contact-grid>.garage-location{display:flex;min-width:0;margin-top:0;border-radius:6px 28px 6px 6px;border-color:#64303b}
.contact-grid .map-viewport{width:100%}
.map-header{padding:26px 24px 22px;background:#cf182b;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.map-header h3{font-size:31px;line-height:1.05;max-width:8ch}
.map-header .map-open{font-size:12px;margin:0;line-height:1.5;max-width:100px;text-align:right}
.contact-grid .map-render-link{height:auto;min-height:330px}
.contact-grid .map-topline{padding:16px 20px}
.contact-grid .map-copyright{padding:12px 16px;font-size:11px}
@media(min-width:1800px){.hero{min-height:760px;max-height:1100px}.hero-slides{padding-bottom:105px}.hero-content{max-width:1100px}.hero-description{font-size:20px;max-width:530px}.tyre-content{max-width:850px}.hero-instrument{width:240px;height:240px}.instrument-readout{top:128px}.instrument-readout strong{font-size:30px}.section-heading h2,.about-copy h2,.contact-heading h2{font-size:clamp(65px,4.4vw,100px)}}
@media(max-width:1099px){.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid>.garage-location{grid-column:1/-1;min-height:480px}.contact-grid .map-render-link{min-height:330px}.map-header h3{max-width:none}.hero h1{font-size:36px}.hero h1>span:last-child{font-size:100px}.tyre-content h2{font-size:65px}.tyre-price strong{font-size:115px}.contact-phone{font-size:36px}}
@media(max-width:760px){.contact-grid{grid-template-columns:minmax(0,1fr);gap:18px}.contact-info{display:flex;padding:26px}.contact-grid>.garage-location{grid-column:auto;min-height:490px}.contact-form{padding:26px}.contact-phone{font-size:40px}.contact-language{padding-top:24px}.contact-form .form-row{grid-template-columns:1fr}.hero-slides{height:auto;min-height:690px;padding-top:55px;padding-bottom:105px;justify-content:flex-start}.hero-content{padding:0}.hero{height:auto;min-height:820px}.hero-bottom{height:110px}.hero-photo{width:100%;right:0;top:0;height:calc(100% - 110px);clip-path:none}.hero-photo::after{background:linear-gradient(90deg,#0b0b0dd9,#0b0b0d50),linear-gradient(0deg,#0b0b0d,transparent 80%)}.hero-photo img{object-position:66% 50%}.hero h1{font-size:clamp(26px,6.5vw,45px)}.hero h1>span:last-child{font-size:clamp(56px,15vw,104px)}.hero-description{font-size:16px;max-width:350px}.hero-instrument{bottom:120px;right:27px;width:125px;height:125px}.instrument-readout{top:63px}.instrument-readout strong{font-size:18px}.hero-toolbar{margin-bottom:25px}.hero-slider-controls{bottom:25px}.hero-slider-controls button{font-size:11px;padding:12px}.tyre-photo{bottom:110px}.tyre-photo img{object-position:69% 50%}.tyre-photo::after{background:linear-gradient(90deg,#09090cea,#09090c70 65%,#09090c25),linear-gradient(0deg,#0b0b0d 0%,transparent 55%)}.tyre-content h2{font-size:clamp(38px,10vw,64px);max-width:11ch}.tyre-price strong{font-size:clamp(78px,20vw,115px)}.tyre-price{margin:24px 0 28px}.hero-red-edge{display:none}}
@media(prefers-reduced-motion:reduce){.hero-content:not([hidden]){animation:none}.tyre-photo,.hero-photo,.hero-instrument,.hero-slider-controls button{transition:none}}
@media(max-width:760px){.hero-content{align-self:start}.hero-instrument{bottom:200px}}

/* Continuous navigation bar, without the clipped floating frame. */
.site-header{background:#101014f2;backdrop-filter:blur(20px);border-bottom:1px solid #ffffff12;padding-inline:var(--gutter)}
.site-header::before{display:none}
.desktop-nav{gap:clamp(8px,1.4vw,28px)}
.desktop-nav a{font-size:15px;line-height:1.2;padding:12px 16px}
.language-switch a{font-size:12px}
.header-book{font-size:15px;min-height:48px}
/* Decorative photographic layers never affect section measurements. */
.section{position:relative;isolation:isolate}
.section-background{position:absolute;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);overflow:hidden;pointer-events:none;z-index:-1;background:#0b0b0d}
.section-background img{width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.3) saturate(.8) blur(3px);transform:scale(1.025)}
.section-background::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b0b0d 0%,#0b0b0d20 25%,#0b0b0d30 75%,#0b0b0d 100%),linear-gradient(90deg,#0b0b0d90,#0b0b0d15)}
#about .section-background img{object-position:65% center}
#faq .section-background img{object-position:70% center}
#contact::before{display:none}
.tyre-content h2{max-width:none;font-size:clamp(42px,4.4vw,90px);line-height:1.04;letter-spacing:-.025em}
.tyre-content h2>span{display:block;white-space:nowrap}
.tyre-price{margin:24px 0 30px;gap:10px}
.tyre-price strong{display:block;font-size:clamp(80px,7.5vw,152px);line-height:1.04}
.tyre-price small{display:inline-block;vertical-align:baseline;margin-left:8px;font-size:.3em}
@media(max-width:1099px){.tyre-content h2{font-size:64px}.tyre-price strong{font-size:112px}}
@media(max-width:760px){.tyre-content h2{font-size:clamp(30px,8.4vw,60px)}.tyre-price strong{font-size:clamp(72px,20vw,112px)}.tyre-price{margin:24px 0 28px}.section-background img{filter:brightness(.25) saturate(.8) blur(2px)}.site-header{padding-inline:24px}.language-switch a{font-size:10px}}
@media(prefers-reduced-motion:reduce){.tyre-photo{transition:none}}

/* Both panels share the same four content rows, including while inactive. */
.hero-slides{grid-template-rows:repeat(4,max-content);align-content:center;row-gap:26px}
.hero-content,.hero-content[hidden]{display:grid;grid-area:1/1/5/2;grid-template-rows:subgrid;align-self:stretch;align-items:start;justify-items:start;padding:0}
.hero-content :is(.hero-toolbar,.hero-eyebrow,.hero-description,.hero-cta,.tyre-price){margin:0}
.hero-content :is(h1,h2){align-self:start}
.hero-content>.hero-cta{align-self:start;min-height:56px}
.hero-content .button{width:230px;min-height:56px;height:56px;padding:0 29px;font-size:13px;flex:none;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}
.hero-content .button-red:hover{transform:none}
body.intro-complete .hero h1>span,body.intro-complete .hero-photo{animation:none}
.hero-photo,.tyre-photo{transition:none;transform:none;opacity:1}
.hero-photo[hidden],.tyre-photo[hidden]{display:block;visibility:hidden}
.tyre-photo:not([hidden]){visibility:visible}
.hero-photo{z-index:0}.tyre-photo{z-index:0}
.hero-instrument{z-index:1}
/* A single bounded photograph belongs to each section; no overlapping canvases. */
.section{overflow:hidden;background:#0b0b0d}
.section-background{left:0;width:100%;transform:none}
.section-background img{transform:none;filter:brightness(.45) saturate(.85) blur(.7px)}
.section-background::after{background:linear-gradient(90deg,#08080bab 0%,#08080b70 45%,#08080b40 100%)}
.section+.section{border-top:0}
.faq{display:block}
.faq>.section-inner{display:grid;grid-template-columns:1fr 1.35fr;gap:90px}
.pitstop{width:100%;max-width:none;border-radius:0;clip-path:none;border-block:1px solid #ffffff0d}
.pitstop>img{filter:brightness(.4) saturate(.85) blur(.7px)}
@media(max-width:900px){.faq>.section-inner{grid-template-columns:1fr;gap:40px}}
@media(max-width:760px){.hero-slides{align-content:start;row-gap:22px;min-height:710px}.hero-content .hero-cta{gap:12px}.hero-content .button{width:230px;height:56px;min-height:56px;padding:0 29px;font-size:13px}.section-background img{filter:brightness(.4) saturate(.85) blur(.5px)}}
@media(max-width:600px){.faq>.section-inner{gap:29px}}

/* Soft image boundaries are restricted to the top and bottom edge bands. */
.section,.about,.contact,.pitstop{border-top:0;border-bottom:0}
.section-background::before{content:'';position:absolute;inset:0;backdrop-filter:blur(12px);mask-image:linear-gradient(#000,transparent 95px,transparent calc(100% - 95px),#000);pointer-events:none}
.section-background::after{background:linear-gradient(180deg,#0b0b0d,transparent 110px,transparent calc(100% - 110px),#0b0b0d),linear-gradient(90deg,#08080bab,#08080b40)}
.pitstop::before{content:'';position:absolute;inset:0;backdrop-filter:blur(12px);mask-image:linear-gradient(#000,transparent 95px,transparent calc(100% - 95px),#000);pointer-events:none}
.pitstop::after{background:linear-gradient(180deg,#0b0b0d,transparent 110px,transparent calc(100% - 110px),#0b0b0d),linear-gradient(90deg,#08080bab,#08080b30)}
.hero-slides{padding-bottom:55px}
@media(min-width:1800px){.hero-slides{padding-bottom:65px}}
@media(max-width:760px){.hero-slides{padding-bottom:100px;min-height:710px}.section-background::before,.pitstop::before{mask-image:linear-gradient(#000,transparent 70px,transparent calc(100% - 70px),#000)}.section-background::after,.pitstop::after{background:linear-gradient(180deg,#0b0b0d,transparent 85px,transparent calc(100% - 85px),#0b0b0d),linear-gradient(90deg,#08080bab,#08080b40)}}

/* Independent phone targets stay adjacent across all viewport widths. */
.hero-phones{display:flex;align-items:center;gap:12px}
.contact-info{container-type:inline-size}
.phone-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;margin:2px 0 12px}
.phone-pair .contact-phone{position:relative;display:flex;grid-column:auto;grid-row:auto;align-items:flex-start;justify-content:flex-end;flex-direction:column;min-width:0;min-height:78px;padding:30px 8px 12px;gap:0;border:1px solid #ff344638;border-radius:4px;background:#ff263908;font-size:clamp(17px,6.8cqw,30px);line-height:1;white-space:nowrap}
.phone-pair .phone-digits{font-size:inherit;color:inherit;letter-spacing:0}
.phone-pair .phone-call-arrow{position:absolute;right:10px;top:8px;font-size:18px;line-height:1}
.phone-pair .contact-phone:hover{border-color:#ff3446;background:#ff263914}
.faq-phones{display:flex;gap:20px;align-items:center;flex-wrap:nowrap;margin-top:18px}
.faq-phones .text-link{font-size:18px;gap:10px;white-space:nowrap}
#process .section-background img{object-position:70% center}
@media(max-width:760px){.hero-bottom{height:122px;gap:8px 10px}.hero-phones{gap:8px;width:100%;order:2}.hero-phones .hero-phone{margin:0;gap:8px;padding:0 12px;min-width:0;justify-content:center;flex:1;font-size:12px}.hero-bottom .scroll-cue{display:none}.hero-bottom .location-link{height:38px;min-height:38px}.hero-photo,.tyre-photo{height:calc(100% - 122px);bottom:122px}.hero-phones .hero-phone-label{white-space:nowrap}.faq-phones{gap:18px}.faq-phones .text-link{font-size:17px;gap:8px}}
.service-phones{display:flex;gap:10px;margin-left:auto}.services-footnote .service-phones a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:42px;margin:0;padding:0 12px;border:1px solid #ff344638;border-radius:4px;white-space:nowrap;width:auto;font-size:14px}.services-footnote .service-phones a:hover{border-color:#ff3446;background:#ff263914}@media(max-width:760px){.service-phones{width:100%;margin:8px 0 0}.services-footnote .service-phones a{flex:1;padding:0 8px;font-size:13px}}
