@font-face{font-family:Onest;src:url('./fonts/onest-variable.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Unbounded;src:url('./fonts/unbounded-variable.ttf') format('truetype');font-style:normal;font-weight:200 900;font-display:swap}
:root{--bg:#17191a;--surface:#202324;--ink:#f7f3ed;--muted:#b9b8b4;--accent:#d09b72;--copper:#282421;--line:#404342;--gutter:clamp(1.25rem,4.2vw,4.5rem);font-family:Onest,Arial,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:2rem}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}p,h1,h2,h3,figure{margin:0}p{line-height:1.65}h1,h2,h3{font-weight:500;letter-spacing:-.055em;line-height:1.06}a,button,input,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #f2ba88;outline-offset:5px}::selection{background:var(--accent);color:#17191a}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;z-index:10;top:1rem;left:1rem;padding:1rem;background:white;color:black}.site-header{min-height:6rem;padding:1rem var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.75rem;font-size:1.75rem;font-weight:800;letter-spacing:.1em}.brand img{width:3.2rem;height:3rem;object-fit:contain;background:#eeeae3}.brand-dot{color:var(--accent)}.site-header nav{display:flex;align-items:center;gap:clamp(1.2rem,4vw,4rem)}.back-link{display:flex;align-items:center;gap:.75rem;font-size:.8rem}.back-link:hover{color:var(--accent)}.language-switch{display:flex;gap:.2rem}.language-switch a{min-width:2.75rem;min-height:2.75rem;display:grid;place-items:center;font-size:.75rem;letter-spacing:.08em;color:var(--muted);border:1px solid transparent}.language-switch a[aria-current]{border-color:#77614f;color:var(--ink)}.language-switch a:hover{background:#34312c;color:white}.eyebrow{text-transform:uppercase;font-size:.7rem;letter-spacing:.16em;font-weight:600;line-height:1.6;color:var(--accent)}
.home-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;padding:2.5rem var(--gutter) 2rem}.home-intro h1{font-size:clamp(4rem,8.4vw,8.5rem);font-weight:700;letter-spacing:-.07em;margin-top:.6rem;line-height:.88}.home-intro h1 span{color:var(--accent)}.intro-note{max-width:19rem;font-size:.9rem}.intro-note>span{color:var(--muted);font-size:.7rem;display:flex;justify-content:space-between;gap:1.5rem;margin-top:1.2rem}.directions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;min-height:34rem;height:calc(100svh - 18.5rem)}.direction{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:2rem clamp(1.5rem,3vw,3rem)}.direction:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,15,17,.28) 0%,rgba(11,15,17,.08) 33%,rgba(11,15,17,.82) 77%,#0b0f11 100%);z-index:-1}.direction-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s cubic-bezier(.2,.65,.3,1),filter .6s;filter:saturate(.65)}.direction-parts .direction-image{object-position:50% 36%}.direction-abrasives .direction-image{object-position:53% 36%}.direction-home .direction-image{object-position:51% 50%}.direction:hover .direction-image,.direction:focus-visible .direction-image{transform:scale(1.045);filter:saturate(1)}.direction:focus-visible{outline-offset:-6px}.direction-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.14em}.direction-top>span:first-child{font-size:1rem;letter-spacing:0}.direction-content{padding-top:10rem}.direction-content h2{font-size:clamp(1.8rem,3.1vw,3.35rem);max-width:12ch;overflow-wrap:normal}.direction-home h2{max-width:9ch;letter-spacing:-.025em}.direction-content p{color:#d4d3ce;font-size:.78rem;margin-top:1rem;min-height:2.6rem;max-width:24rem}.direction-cta{margin-top:1.3rem;padding-top:1.2rem;border-top:1px solid #ffffff47;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.75rem}.arrow{display:inline-block;font-size:1.65rem;line-height:1;transition:transform .25s}.direction:hover .arrow,.button:hover .arrow{transform:translate(3px,-3px)}
.site-footer{background:var(--copper);padding:3rem var(--gutter);display:grid;grid-template-columns:.9fr 1fr 1fr 1.45fr;gap:2rem;align-items:center;color:#fff5eb;font-size:.8rem;line-height:1.8}.site-footer strong{font-size:1.1rem;font-weight:600}.site-footer address{font-style:normal;line-height:1.8}.footer-logo{display:block;width:6rem}.footer-logo img{width:6rem;height:5.6rem;object-fit:contain;background:#eeeae3}.iban{overflow-wrap:anywhere}
.auto-hero{min-height:36rem;position:relative;isolation:isolate;display:flex;align-items:center;padding:5rem var(--gutter)}.hero-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 54%}.auto-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,16,18,.93),rgba(12,16,18,.56) 60%,rgba(12,16,18,.17))}.hero-copy{max-width:58rem}.hero-copy h1{font-size:clamp(3rem,5.8vw,6rem);margin:1.5rem 0}.hero-description{color:#d0d0cc;font-size:1rem;max-width:27rem}.button{background:var(--accent);color:#1b1d1d;display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-height:3.6rem;padding:1rem 1.35rem;font-weight:700;font-size:.85rem;border:1px solid transparent;transition:background .2s}.button:hover{background:#e5b38c}.button:disabled{cursor:wait;opacity:.8}.hero-copy .button{margin-top:2rem;min-width:14rem}.hero-index{position:absolute;bottom:2rem;right:var(--gutter);font-size:.7rem;letter-spacing:.1em;color:#d8cbbf}.enquiry-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,7vw,8rem);padding:6rem var(--gutter);max-width:1600px;margin:auto}.enquiry-intro h2{font-size:clamp(2.7rem,4.4vw,4.5rem);margin:1.25rem 0 1.5rem}.contact-description{max-width:29rem;color:var(--muted);font-size:.95rem}.direct-contact{margin:1.8rem 0 2rem}.direct-contact span{display:block;font-size:.7rem;color:var(--muted);margin-bottom:.3rem}.direct-contact a{font-size:1.1rem;color:var(--accent)}.direct-contact a:hover{text-decoration:underline}.cars-figure{overflow:hidden;max-width:33rem}.cars-figure img{width:100%;height:20rem;object-fit:cover;object-position:50% 64%}.enquiry-form{border-top:1px solid #80705e;padding-top:1.7rem;align-self:start;min-width:0}.enquiry-form h3{font-size:1.9rem;line-height:1.2}.form-note{font-size:.75rem;color:var(--muted);margin-top:.75rem}.form-fields{margin-top:2rem;display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}.field{min-width:0}.field-message{grid-column:1/-1}.field label{display:block;font-size:.8rem;margin-bottom:.75rem}.field label span{color:var(--accent)}input,textarea{background:var(--surface);color:var(--ink);border:1px solid #646662;border-radius:0;padding:.9rem 1rem;min-height:3.2rem;width:100%;max-width:100%}textarea{resize:vertical;min-height:10rem;line-height:1.6}textarea::placeholder{color:#a9aaa5;font-size:.8rem}input[aria-invalid],textarea[aria-invalid]{border-color:#ffb6a2}.field-error{color:#ffb6a2;font-size:.75rem;line-height:1.45;margin-top:.5rem}.field-error:empty{display:none}.submit-button{width:100%;margin-top:1rem}.form-status{font-size:.8rem;margin-top:.75rem;color:var(--accent)}.form-status[data-error]{color:#ffb6a2}.form-status:empty{display:none}.privacy,.captcha-note{font-size:.68rem;color:var(--muted);line-height:1.7;margin-top:1rem}.privacy a{text-decoration:underline;text-underline-offset:3px}.form-help{display:inline-block;font-size:.72rem;margin-top:1.2rem;text-decoration:underline;text-underline-offset:4px;color:var(--accent)}.honeypot{display:none!important}
.brands-section{padding:2.7rem var(--gutter) 3rem;background:#f1eee8;color:#303331}.brands-heading{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1.75rem}.brands-heading h2{font-size:1.5rem;letter-spacing:-.04em}.brands-heading p{font-size:.75rem;color:#62645f}.brand-strip{display:grid;grid-template-columns:repeat(19,minmax(0,1fr));gap:1.1rem .6rem;list-style:none;padding:0;margin:0}.brand-strip li{display:flex;align-items:center;justify-content:center;min-width:0}.brand-strip img{width:3.5rem;height:3.5rem;object-fit:contain;mix-blend-mode:multiply;filter:grayscale(1);opacity:.8;transition:filter .25s,opacity .25s}.brand-strip img:hover{filter:grayscale(0);opacity:1}
.result-section{max-width:62rem;margin:auto;padding:5rem var(--gutter) 6rem;min-height:65vh}.result-symbol{display:grid;place-items:center;width:3.5rem;height:3.5rem;border:1px solid var(--accent);color:var(--accent);font-size:1.8rem;margin:2rem 0}.result-section h1{font-size:clamp(2.5rem,5vw,4.5rem);max-width:17ch;margin-bottom:1.5rem}.result-section>p:not(.eyebrow){color:var(--muted);max-width:35rem}.result-section .button{margin-top:2rem}.result-email{display:block;margin-top:1.5rem;color:var(--accent)}.result-back{display:block;font-size:.85rem;margin-top:2rem;text-decoration:underline;text-underline-offset:4px}
@keyframes enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.home-intro h1,.hero-copy h1{animation:enter .7s both}.intro-note,.hero-description{animation:enter .7s .1s both}.direction-content{animation:enter .8s .15s both}
@media(min-width:1600px){.direction-content h2{font-size:3.5rem}.directions{min-height:40rem}}
@media(max-width:1100px){.brand-strip{grid-template-columns:repeat(13,minmax(0,1fr))}.site-footer{grid-template-columns:.7fr 1fr 1.4fr}.site-footer address{grid-column:2;grid-row:2}.site-footer>p:last-child{grid-column:3;grid-row:1/3}.footer-logo{grid-row:1/3}.form-fields{grid-template-columns:1fr}.field-message{grid-column:auto}.enquiry-section{gap:2.5rem}.direction{padding:1.5rem}.direction-content h2{font-size:2.3rem}.home-intro{padding-top:2rem;padding-bottom:2rem}}
@media(max-width:800px){.site-header{flex-wrap:wrap;gap:1rem;min-height:5.25rem}.brand{font-size:1.35rem}.brand img{width:2.7rem;height:2.5rem}.site-header nav{gap:1rem}.back-link{font-size:.7rem}.language-switch a{min-width:2.5rem}.home-intro{align-items:flex-start}.home-intro h1{font-size:5rem}.intro-note{max-width:14rem;font-size:.8rem}.directions{height:auto;min-height:0;grid-template-columns:1fr}.direction{min-height:30rem;padding:2rem var(--gutter)}.direction-image{object-position:center 50%}.direction-parts .direction-image{object-position:50% 42%}.direction-abrasives .direction-image{object-position:50% 43%}.direction-content{padding-top:9rem}.direction-content h2{font-size:2.75rem;max-width:15ch}.direction-home h2{max-width:none}.direction-content p{font-size:.9rem;min-height:0}.direction-cta{max-width:32rem}.direction-home .direction-image{object-position:50% 57%}.enquiry-section{grid-template-columns:1fr;padding-top:4rem;padding-bottom:4rem;gap:3rem}.enquiry-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:2rem}.enquiry-intro>.eyebrow,.enquiry-intro>h2,.enquiry-intro>.contact-description,.enquiry-intro>.direct-contact{grid-column:1}.cars-figure{grid-column:2;grid-row:1/5;align-self:stretch}.cars-figure img{height:100%;object-position:50% 50%}.enquiry-intro h2{font-size:2.8rem}.contact-description{font-size:.85rem}.direct-contact{margin-bottom:0}.form-fields{grid-template-columns:1fr 1fr}.field-message{grid-column:1/-1}.brand-strip{grid-template-columns:repeat(10,minmax(0,1fr))}.auto-hero{min-height:35rem;padding-top:4rem;padding-bottom:4rem}.hero-copy h1{font-size:3.7rem}.site-footer{gap:1.5rem}}
@media(max-width:560px){.site-header{padding-top:1rem;padding-bottom:.9rem}.site-header nav{width:100%;justify-content:space-between;flex-direction:row-reverse;gap:1rem}.site-header .brand{font-size:1.6rem}.site-header .brand img{width:2.5rem;height:2.3rem}.language-switch a{min-height:2.4rem;min-width:2.5rem}.back-link{font-size:.7rem}.home-intro{display:block;padding-top:2rem;padding-bottom:1.75rem}.home-intro .eyebrow{font-size:.6rem;letter-spacing:.1em}.home-intro h1{font-size:clamp(4rem,21vw,6rem);margin-top:1rem}.intro-note{max-width:none;margin-top:1.5rem;font-size:.85rem}.intro-note>span{margin-top:.8rem}.direction{min-height:28rem;padding-top:1.5rem;padding-bottom:1.5rem}.direction-content h2{font-size:2.6rem}.direction-content p{font-size:.8rem}.direction-top{font-size:.6rem}.direction-home{min-height:29rem}.auto-hero{min-height:33rem;padding-top:3.5rem;padding-bottom:3.5rem}.hero-copy h1{font-size:clamp(2.5rem,11vw,3.5rem)}.hero-copy .eyebrow{font-size:.6rem}.hero-description{font-size:.9rem}.auto-hero:before{background:linear-gradient(90deg,rgba(12,16,18,.9),rgba(12,16,18,.6))}.hero-image{object-position:63% 50%}.enquiry-intro{display:block}.enquiry-intro h2{font-size:3rem}.direct-contact{margin-bottom:2rem}.cars-figure img{height:18rem;object-position:50% 64%}.form-fields{grid-template-columns:1fr}.field-message{grid-column:auto}.enquiry-form h3{font-size:1.8rem}.brands-heading{display:block}.brands-heading p{margin-top:.8rem}.brand-strip{grid-template-columns:repeat(6,minmax(0,1fr));gap:.8rem .5rem}.brand-strip img{width:3rem;height:3rem}.site-footer{grid-template-columns:1fr;gap:1.75rem;padding-top:2.5rem;padding-bottom:2.5rem}.site-footer address,.site-footer>p:last-child,.footer-logo{grid-column:auto;grid-row:auto}.site-footer{font-size:.8rem}.result-section{padding-top:3rem;padding-bottom:4rem}.result-section h1{font-size:2.7rem}}
/* Content expands with text-only zoom; no fixed-height text containers. */
h1,h2,h3,.direction-content,.button,.site-footer p{overflow-wrap:anywhere}
.direction-content h2{overflow-wrap:anywhere}
.site-header,.site-header nav,.home-intro{flex-wrap:wrap}
.site-header nav,.home-intro>div,.hero-copy{min-width:0;max-width:100%}
.hero-copy{width:100%}
.hero-copy .button{min-width:min(14rem,100%)}
.button{max-width:100%;gap:clamp(.5rem,2vw,2rem)}
.button>span{min-width:0}.button>.arrow{flex-shrink:0}
.directions{height:auto;min-height:max(34rem,calc(100svh - 18.5rem))}
@media(max-width:800px){.directions{min-height:0}}
.home-page .back-link{display:none}
.home-page .directions{min-height:calc(100svh - 6rem)}
.home-page .direction{justify-content:flex-end}
.home-page .direction-content{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding-top:0;width:100%}
.home-page .direction-content h2{font-size:clamp(1.5rem,2.1vw,2.25rem);max-width:16ch;letter-spacing:-.035em}
.home-page .direction-content>.arrow{flex-shrink:0}
@media(max-width:800px){.home-page .directions{min-height:0}.home-page .direction{min-height:26rem}}
@media(max-width:560px){.home-page .site-header{flex-wrap:wrap;gap:.5rem}.home-page .site-header nav{width:auto;flex-wrap:nowrap}.home-page .site-header .brand{font-size:1.25rem;gap:.5rem}.home-page .language-switch a{min-width:2rem}.home-page .direction{min-height:25rem}.home-page .direction-content h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.direction:hover .direction-image,.direction:focus-visible .direction-image,.direction:hover .arrow,.button:hover .arrow{transform:none}}

/* Refined typography: independent of the original site's typefaces. */
h1,h2,h3{font-family:Unbounded,Onest,sans-serif;font-weight:400;letter-spacing:-.025em;line-height:1.18}
.brand{font-family:Unbounded,Onest,sans-serif;letter-spacing:.035em;font-weight:600}
.brand img{background:transparent;filter:brightness(0) invert(1);opacity:.88}
.home-page .direction-content h2{font-size:clamp(1.3rem,1.85vw,1.85rem);letter-spacing:-.025em;line-height:1.3;font-weight:400}
.enquiry-intro h2{font-size:clamp(2.25rem,3.7vw,3.75rem)}
.hero-copy h1{font-size:clamp(2.4rem,5vw,5rem);line-height:1.2;letter-spacing:-.035em}
.enquiry-form h3{font-size:1.45rem;letter-spacing:-.02em}
.site-footer{display:block;background:#282421;padding:clamp(2.5rem,5vw,5rem) var(--gutter);color:#fff3e5}
.footer-masthead{padding-bottom:2.25rem;margin-bottom:2.25rem;border-bottom:1px solid #ffffff36}
.site-footer .footer-logo{display:inline-flex;align-items:center;gap:1.3rem;width:auto;max-width:100%;font-family:Unbounded,Onest,sans-serif;font-size:clamp(2.2rem,5vw,4.5rem);font-weight:500;letter-spacing:.035em;line-height:1.1}
.site-footer .footer-logo img{width:4.5rem;height:4.5rem;object-fit:contain;background:transparent;filter:brightness(0) invert(1);opacity:.85;flex-shrink:0}
.footer-dot{color:#d09b72}
.footer-details{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:3rem}
.footer-detail{min-width:0}
.site-footer .footer-label{font-size:.63rem;letter-spacing:.16em;text-transform:uppercase;color:#f0ceac;line-height:1.5;margin-bottom:1rem}
.footer-detail>p:not(.footer-label),.footer-detail address{font-size:.95rem;line-height:1.85;font-style:normal}
.site-footer strong{font-size:1.1rem;font-weight:500}
.footer-secondary{color:#eed7c4;font-size:.85rem}
.footer-bank .iban{display:inline-block;margin-top:.45rem;font-size:.83rem;font-variant-numeric:tabular-nums;letter-spacing:.015em}
@media(max-width:800px){.footer-details{grid-template-columns:1fr 1fr;gap:2rem}.footer-bank{grid-column:1/-1}.site-footer .footer-logo{font-size:3rem}.hero-copy h1{font-size:clamp(2.4rem,6vw,3.7rem)}}
@media(max-width:560px){.footer-details{grid-template-columns:1fr;gap:1.7rem}.footer-bank{grid-column:auto}.footer-detail+.footer-detail{border-top:1px solid #ffffff24;padding-top:1.6rem}.footer-masthead{padding-bottom:1.75rem;margin-bottom:1.75rem}.site-footer .footer-logo{font-size:clamp(1.5rem,7.5vw,2.4rem);gap:.8rem}.site-footer .footer-logo img{width:3.25rem;height:3.25rem}.site-footer .footer-label{margin-bottom:.65rem}.home-page .direction-content h2{font-size:1.6rem}.hero-copy h1{font-size:2.3rem}.enquiry-intro h2{font-size:2.25rem}.brand{font-size:1.25rem}}
.brand,.site-footer .footer-logo{flex-wrap:wrap;max-width:100%}.brand>span,.footer-logo>span{min-width:0;overflow-wrap:anywhere}
