/* reset */
*,::before,::after{box-sizing:border-box;border:0 solid;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;line-height:1.5;-webkit-tap-highlight-color:transparent}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
b,strong{font-weight:bolder}
small{font-size:80%}
ol,ul,menu{list-style:none}
summary{display:list-item}
img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}
img,video{max-width:100%;height:auto}
button,input,select,optgroup,textarea{font:inherit;letter-spacing:inherit;color:inherit;background-color:transparent;border-radius:0}
button,input:where([type=button],[type=reset],[type=submit]){appearance:button}
textarea{resize:vertical}
::placeholder{opacity:1;color:#777771}
[hidden]{display:none!important}
:root{--orange:#ff5a1f;--orange-deep:#df3f0b;--ink:#101010;--paper:#f6f5f1;--white:#fff;--gray-100:#eeeeea;--gray-300:#c9c8c2;--gray-500:#777771;--gray-800:#242424;--line:#10101029;--display:"Arial Narrow", "Helvetica Neue Condensed", Impact, sans-serif;--body:"Helvetica Neue", Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:96px}body{background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}body::selection{background:var(--orange);color:var(--white)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.shell{width:min(1240px,100% - 64px);margin-inline:auto}.section{padding:128px 0}.site-header{z-index:30;width:100%;color:var(--white);-webkit-backdrop-filter:blur(16px);background:#090909d1;border-bottom:1px solid #ffffff29;position:fixed;top:0;left:0}.header-inner{grid-template-columns:235px 1fr auto;align-items:center;gap:28px;min-height:86px;display:grid}.brand{align-items:center;gap:13px;width:max-content;display:inline-flex}.brand-mark{background:var(--orange);border-radius:15px 15px 4px 4px;width:48px;height:29px;display:inline-block;position:relative;transform:skew(-11deg)}.brand-mark:before,.brand-mark:after{content:"";background:var(--ink);width:10px;height:10px;color:var(--orange);border:4px solid;border-radius:50%;position:absolute;bottom:-5px}.brand-mark:before{left:5px}.brand-mark:after{right:5px}.brand-mark span{background:var(--orange);border-radius:4px 12px 0 0;width:24px;height:15px;position:absolute;top:-8px;left:14px}.brand-copy{flex-direction:column;line-height:1;display:flex}.brand-copy strong{font-family:var(--body);letter-spacing:.075em;white-space:nowrap;align-items:baseline;gap:9px;font-size:21px;font-weight:900;display:flex}.brand-copy strong b{color:var(--orange);font-weight:950}.brand-copy strong span{color:#c8c8c8;font-weight:680}.brand-copy small{color:var(--orange);letter-spacing:.29em;margin-top:6px;font-size:8px;font-weight:800}nav{letter-spacing:.02em;justify-content:center;gap:clamp(16px,1.8vw,28px);font-size:12px;font-weight:700;display:flex}nav a{padding:8px 0;position:relative}nav a:after{content:"";background:var(--orange);transform-origin:100%;width:100%;height:2px;transition:transform .18s;position:absolute;bottom:0;left:0;transform:scaleX(0)}nav a:hover:after{transform-origin:0;transform:scaleX(1)}.header-call{font-family:var(--display);flex-direction:column;align-items:flex-end;font-size:19px;font-weight:800;line-height:1.1;display:flex}.header-tools{justify-content:flex-end;align-items:center;gap:18px;display:flex}.language-switch{border:1px solid #ffffff40;border-radius:999px;align-items:center;padding:3px;display:inline-flex}.language-switch button,.language-switch a{color:#ffffff85;cursor:pointer;width:34px;height:28px;font:800 9px/1 var(--body);letter-spacing:.08em;background:0 0;border:0;border-radius:999px;padding:0;transition:color .16s,background .16s}.language-switch button.active,.language-switch a.active{background:var(--orange);color:var(--white)}.menu-trigger{width:45px;height:45px;color:var(--white);cursor:pointer;background:0 0;border:1px solid #ffffff4d;flex-direction:column;justify-content:center;gap:6px;padding:0 11px;display:none}.menu-trigger span{background:currentColor;width:100%;height:2px;transition:transform .16s;display:block}.menu-trigger:hover span:first-child{transform:translate(4px)}.menu-trigger:hover span:last-child{transform:translate(-4px)}.header-call span{color:var(--orange);font-family:var(--body);letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:800}.hero{background:var(--ink);height:100svh;min-height:850px;color:var(--white);align-items:center;display:flex;position:relative;overflow:hidden}.hero-photo,.fleet-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-photo{object-position:56% center;animation:.9s ease-out both hero-reveal}@keyframes hero-reveal{0%{opacity:0;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}.hero-shade{background:linear-gradient(90deg,#050505f5 0%,#050505cc 38%,#0505051a 72%),linear-gradient(#00000038,#0000 48%,#000000b3);position:absolute;inset:0}.hero-stripe,.contact-stripe{z-index:2;background:repeating-linear-gradient(135deg, var(--orange) 0 18px, transparent 18px 29px);width:156px;height:17px;position:absolute;top:0;right:7%}.hero-content{z-index:3;padding-top:92px;position:relative}.eyebrow{color:var(--gray-500);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:11px;margin:0 0 25px;font-size:11px;font-weight:800;display:flex}.eyebrow span{background:var(--orange);width:34px;height:4px;display:inline-block;transform:skew(-18deg)}.eyebrow.light{color:#ffffffb3}.eyebrow.dark{color:#101010a6}.eyebrow.dark span{background:var(--ink)}.hero h1,.section-heading h2,.inspection-copy h2,.process h2,.fleet h2,.reviews h2,.faq h2,.contact h2{font-family:var(--display);letter-spacing:-.052em;text-transform:uppercase;margin:0;font-weight:900;line-height:.88}.hero h1{letter-spacing:-.045em;max-width:1120px;font-size:clamp(70px,8.4vw,124px)}html[lang=ru] .hero h1{font-size:clamp(34px,8vw,100px);line-height:.94}.hero h1 em{color:var(--orange);font-style:normal}.hero-lede{color:#ffffffc7;max-width:610px;margin:34px 0 0;font-size:clamp(18px,2vw,23px);line-height:1.45}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:38px;display:flex}.button{appearance:none;cursor:pointer;min-height:58px;font-family:var(--body);letter-spacing:.05em;text-transform:uppercase;border:1px solid #0000;justify-content:center;align-items:center;gap:26px;padding:0 25px;font-size:12px;font-weight:850;transition:transform .18s,background .18s,color .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button>span{transition:transform .18s}.button:hover>span{transform:translate(3px,-2px)}.button-primary{background:var(--orange);color:var(--white)}.button-primary:hover{background:var(--orange-deep)}.button-ghost{color:var(--white);border-color:#ffffff61}.button-ghost:hover{background:var(--white);color:var(--ink)}.button-dark{background:var(--ink);color:var(--white)}.button-dark:hover{background:var(--gray-800)}.hero-notes{color:#ffffffad;letter-spacing:.13em;text-transform:uppercase;gap:0;margin-top:50px;font-size:11px;font-weight:700;display:flex}.hero-notes span{border-right:1px solid #ffffff42;padding:0 22px}.hero-notes span:first-child{padding-left:0}.hero-notes span:last-child{border-right:0}.license-strip{background:var(--white);border-bottom:1px solid var(--line)}.license-grid{grid-template-columns:1.55fr repeat(3,1fr);align-items:stretch;min-height:148px;display:grid}.license-intro,.license-item{border-right:1px solid var(--line);align-items:center;display:flex}.license-intro{gap:18px;padding-right:30px}.license-item{gap:18px;padding:0 28px}.license-item:last-child{border-right:0}.license-seal{background:var(--ink);width:56px;height:56px;color:var(--white);font-family:var(--display);box-shadow:0 0 0 5px var(--white), 0 0 0 6px var(--ink);border-radius:50%;flex:none;place-items:center;font-size:20px;font-weight:900;display:grid}.license-intro p{color:var(--gray-500);margin:0;font-size:12px;line-height:1.6}.license-intro strong{color:var(--ink);font-size:13px}.license-item>span{color:var(--orange);font-family:var(--display);font-size:16px;font-weight:900}.license-item strong{font-family:var(--display);text-transform:uppercase;font-size:16px;line-height:1.18}.license-line{color:inherit;display:block}.service-ticker{background:var(--orange);width:100%;color:var(--ink);border-bottom:1px solid #00000047;overflow:hidden}.service-ticker>div{width:max-content;padding:13px 0;animation:28s linear infinite ticker-move;display:flex}.service-ticker span{font-family:var(--body);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:30px;padding-right:30px;font-size:11px;font-weight:900;display:inline-flex}.service-ticker b{color:var(--white);font-size:14px}@keyframes ticker-move{to{transform:translate(-50%)}}.services{background:var(--paper)}.section-heading{grid-template-columns:1.45fr .75fr;align-items:end;gap:80px;margin-bottom:68px;display:grid}.section-heading h2,.process h2,.faq h2{font-size:clamp(60px,7.4vw,104px)}.section-heading>p,.gallery-heading>p{max-width:460px;color:var(--gray-500);margin:0 0 5px;font-size:18px;line-height:1.6}.service-showcase{grid-template-columns:1.55fr 1fr;gap:16px;margin-bottom:16px;display:grid}.service-photo-card{background:var(--ink);min-height:420px;position:relative;overflow:hidden}.service-photo-card img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.2,.75,.2,1);position:absolute;inset:0}.service-photo-card-large img{object-position:55% center}.service-photo-card:hover img{transform:scale(1.025)}.service-photo-card:after{content:"";background:linear-gradient(#0000 35%,#000000d1);position:absolute;inset:0}.photo-card-copy{z-index:2;width:100%;color:var(--white);padding:34px;position:absolute;bottom:0;left:0}.photo-card-copy p{color:var(--orange);letter-spacing:.15em;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:800}.section-heading h2>span,.inspection-copy h2>span,.process h2>span,.fleet h2>span,.contact h2>span{display:block}.photo-card-copy h3{max-width:540px;font-family:var(--display);text-transform:uppercase;margin:0;font-size:clamp(28px,3.5vw,46px);line-height:1}.service-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.service-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;min-height:310px;padding:32px;transition:color .18s,background .18s,transform .18s;display:flex}.service-card:hover{z-index:1;background:var(--ink);color:var(--white);transform:translateY(-5px)}.service-number{color:var(--orange);font-family:var(--display);font-size:14px;font-weight:900}.service-card h3{font-family:var(--display);text-transform:uppercase;margin:auto 0 12px;font-size:28px;line-height:1}.service-card p{min-height:72px;color:var(--gray-500);margin:0 0 25px;font-size:14px;line-height:1.55}.service-card:hover p{color:#ffffff9e}.service-card a{color:var(--orange);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;font-size:10px;font-weight:850;display:flex}.service-tags{flex-wrap:wrap;gap:8px;margin-top:26px;display:flex}.service-tags span{border:1px solid var(--line);background:var(--white);color:var(--gray-500);padding:11px 14px;font-size:11px;font-weight:700}.inspection{background:var(--orange);grid-template-columns:1.05fr .95fr;min-height:760px;display:grid}.inspection-photo{min-height:600px;position:relative;overflow:hidden}.inspection-photo img{object-fit:cover;width:100%;height:100%}.inspection-label{background:var(--ink);color:var(--white);letter-spacing:.18em;text-transform:uppercase;padding:15px 23px;font-size:10px;font-weight:800;position:absolute;bottom:0;right:0}.inspection-copy{flex-direction:column;justify-content:center;padding:clamp(70px,8vw,128px);display:flex}.inspection-copy h2{font-size:clamp(58px,6vw,92px)}.inspection-copy>p:not(.eyebrow){max-width:560px;margin:33px 0;font-size:18px;line-height:1.6}.inspection-copy ul{border-top:1px solid #10101042;margin:0 0 38px;padding:0;list-style:none}.inspection-copy li{border-bottom:1px solid #10101042;align-items:center;gap:18px;padding:14px 0;font-size:13px;font-weight:750;display:flex}.inspection-copy li span{font-family:var(--display);font-weight:900}.inspection-copy .button{align-self:flex-start}.process{background:var(--white)}.process-grid{grid-template-columns:.9fr 1.1fr;align-items:start;gap:110px;display:grid}.process-title{position:sticky;top:70px}.process-steps{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.process-steps li{border-bottom:1px solid var(--line);grid-template-columns:74px 1fr;gap:24px;padding:37px 0;display:grid}.process-steps>li>span{color:var(--orange);font-family:var(--display);font-weight:900}.process-steps h3{font-family:var(--display);text-transform:uppercase;margin:0 0 10px;font-size:27px;line-height:1}.process-steps p{max-width:530px;color:var(--gray-500);margin:0;font-size:15px;line-height:1.65}.fleet{min-height:790px;color:var(--white);background:var(--ink);align-items:center;display:flex;position:relative;overflow:hidden}.fleet-photo{object-position:center}.fleet-shade{background:linear-gradient(90deg,#050505ed 0%,#050505ba 43%,#05050514 78%);position:absolute;inset:0}.fleet-content{z-index:2;position:relative}.fleet-kicker{background:var(--orange);width:max-content;color:var(--white);letter-spacing:.18em;text-transform:uppercase;margin-bottom:30px;padding:8px 12px;font-size:9px;font-weight:850;transform:rotate(-2deg)}.fleet h2{max-width:750px;font-size:clamp(66px,8.5vw,124px)}.fleet-content>p{color:#ffffffb3;max-width:590px;margin:32px 0;font-size:18px;line-height:1.6}.fleet-points{flex-wrap:wrap;gap:8px;max-width:680px;margin-bottom:36px;display:flex}.fleet-points span{color:#ffffffc7;letter-spacing:.07em;text-transform:uppercase;border:1px solid #ffffff47;padding:10px 13px;font-size:10px;font-weight:750}.gallery{background:var(--paper)}.gallery-grid{grid-template-columns:repeat(4,1fr);grid-auto-flow:dense;grid-auto-rows:235px;gap:10px;display:grid}.gallery-item{background:var(--gray-800);cursor:zoom-in;text-align:left;border:0;min-width:0;padding:0;position:relative;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .45s cubic-bezier(.2,.75,.2,1),filter .25s}.gallery-item:hover img{filter:brightness(.75);transform:scale(1.035)}.gallery-feature{grid-area:span 2/span 2}.gallery-wide{grid-column:span 2}.gallery-banner{grid-column:1/-1}.gallery-item>span{color:var(--white);letter-spacing:.11em;text-transform:uppercase;opacity:0;background:linear-gradient(#0000,#000000bf);align-items:center;gap:10px;padding:18px;font-size:9px;font-style:normal;font-weight:800;transition:opacity .18s,transform .18s;display:flex;position:absolute;inset:auto 0 0;transform:translateY(8px)}.gallery-item:hover>span,.gallery-item:focus-visible>span{opacity:1;transform:translateY(0)}.gallery-item>span b{color:var(--orange)}.gallery-item>span i{margin-left:auto;font-style:normal}.journal{background:#e9e8e2}.journal .eyebrow.light{color:var(--gray-500)}.journal-heading h2{font-size:clamp(56px,7vw,98px)}.journal-heading>p{color:var(--gray-500)}.article-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.article-card{background:var(--white);min-width:0;color:var(--ink);cursor:pointer;text-align:left;border:0;flex-direction:column;padding:0 0 28px;transition:transform .22s,box-shadow .22s;display:flex}.article-card:hover{transform:translateY(-7px);box-shadow:0 24px 55px #1010101f}.article-image{aspect-ratio:1.42;background:var(--gray-800);display:block;position:relative;overflow:hidden}.article-image:after{content:"";background:linear-gradient(#0000 55%,#0000006b);position:absolute;inset:0}.article-image img{object-fit:cover;width:100%;height:100%;transition:transform .45s cubic-bezier(.2,.75,.2,1)}.article-card:hover .article-image img{transform:scale(1.04)}.article-image i{z-index:2;color:var(--white);font-family:var(--display);font-size:34px;font-style:normal;font-weight:900;position:absolute;bottom:14px;right:18px}.article-meta{color:var(--orange);letter-spacing:.11em;text-transform:uppercase;justify-content:space-between;gap:15px;padding:23px 25px 0;font-size:9px;font-weight:850;display:flex}.article-meta b{color:var(--gray-500);font-weight:750}.article-card>strong{font-family:var(--display);text-transform:uppercase;padding:18px 25px 0;font-size:28px;line-height:1.04}.article-teaser{min-height:78px;color:var(--gray-500);padding:15px 25px 0;font-size:14px;line-height:1.55}.article-link{border-bottom:1px solid var(--ink);color:var(--ink);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;margin:auto 25px 0;padding-top:23px;font-size:10px;font-weight:850;line-height:2.3;display:flex}.article-link i{color:var(--orange);font-style:normal;transition:transform .18s}.article-card:hover .article-link i{transform:translate(5px)}.reviews{background:var(--ink);color:var(--white)}.reviews-top{justify-content:space-between;align-items:end;gap:40px;margin-bottom:65px;display:flex}.reviews h2{font-size:clamp(62px,8.5vw,120px)}.warranty-note{color:#ffffff73;text-align:right;text-transform:uppercase;margin:0 0 6px;font-size:12px;line-height:1.5}.warranty-note strong{color:var(--orange);font-family:var(--display);font-size:25px}.review-grid{border-top:1px solid #ffffff2e;border-left:1px solid #ffffff2e;grid-template-columns:repeat(3,1fr);display:grid}.review-grid figure{border-bottom:1px solid #ffffff2e;border-right:1px solid #ffffff2e;flex-direction:column;min-height:340px;margin:0;padding:34px;display:flex}.stars{color:var(--orange);letter-spacing:.2em;font-size:12px}.review-grid blockquote{font-family:var(--display);text-transform:uppercase;margin:auto 0 34px;font-size:26px;line-height:1.23}.review-grid figcaption{color:var(--white);font-size:12px;font-weight:800}.review-grid figcaption span{color:#ffffff61;letter-spacing:.12em;text-transform:uppercase;margin-top:4px;font-size:9px;font-weight:700;display:block}.warranty-disclaimer{color:#ffffff57;margin:20px 0 0;font-size:10px}.faq{background:var(--white)}.faq-grid{grid-template-columns:.85fr 1.15fr;gap:90px;display:grid}.faq h2{font-size:clamp(58px,6.5vw,90px)}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font-family:var(--display);text-transform:uppercase;justify-content:space-between;align-items:center;gap:30px;padding:25px 0;font-size:22px;font-weight:850;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--orange);font-family:var(--body);font-size:26px;font-weight:400;transition:transform .18s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:620px;color:var(--gray-500);margin:-7px 0 25px;font-size:15px;line-height:1.65}.contact{background:var(--ink);color:var(--white);padding:120px 0;position:relative;overflow:hidden}.contact-stripe{left:3%;right:auto}.contact-grid{grid-template-columns:1.25fr .75fr;align-items:end;gap:100px;display:grid}.contact h2{font-size:clamp(68px,8.5vw,122px)}.contact-phone{color:var(--orange);font-family:var(--display);letter-spacing:-.03em;align-items:center;gap:28px;margin-top:42px;font-size:clamp(34px,4.7vw,66px);font-weight:900;line-height:1;display:flex}.contact-details{grid-template-columns:1fr 1fr;gap:36px 28px;display:grid}.contact-details p{color:var(--orange);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:9px;font-weight:850}.contact-details a:not(.button),.contact-details address{color:#ffffffad;font-size:14px;font-style:normal;line-height:1.7}.contact-details a:not(.button):hover{color:var(--white)}.contact-button{grid-column:1/-1}.ai-discovery{background:var(--gray-800);color:var(--white);border-top:1px solid #ffffff1f;padding:92px 0;overflow:hidden}.ai-discovery-grid{grid-template-columns:.9fr 1.1fr;align-items:end;gap:90px;display:grid}.ai-discovery h2{font-family:var(--display);letter-spacing:-.045em;text-transform:uppercase;margin:0;font-size:clamp(54px,6vw,88px);font-weight:900;line-height:.9}.ai-discovery h2 span{display:block}.ai-discovery-grid>div>p:last-child{color:#ffffff9e;max-width:610px;margin:30px 0 0;font-size:16px;line-height:1.65}.ai-discovery-links{border-top:1px solid #fff3;display:block}.ai-discovery-links a{border-bottom:1px solid #fff3;grid-template-columns:52px 1fr auto;align-items:center;gap:15px;min-height:82px;padding:18px 4px;display:grid}.ai-discovery-links a>span{color:var(--orange);letter-spacing:.14em;font-size:9px;font-weight:850}.ai-discovery-links strong{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;font-size:22px;line-height:1.05}.ai-discovery-links i{color:#ffffff73;font-size:20px;font-style:normal;transition:color .18s,transform .18s}.ai-discovery-links a:hover i{color:var(--orange);transform:translate(4px,-3px)}footer{color:var(--white);background:#080808;border-top:1px solid #ffffff1f;padding:44px 0}.footer-grid{grid-template-columns:1fr 1.15fr 1.1fr .85fr;align-items:center;gap:34px;display:grid}.footer-grid p{color:#ffffff61;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:10px;line-height:1.7}.footer-grid p:last-child{text-align:right}.footer-ai{gap:4px;font-size:10px;line-height:1.5;display:grid}.footer-ai>span{color:#ffffff59;letter-spacing:.13em;text-transform:uppercase;margin-bottom:3px;font-size:8px;font-weight:800}.footer-ai a{color:#ffffffb8}.footer-ai a:hover{color:var(--orange)}.mobile-call{display:none}.reveal{opacity:1}.reveal[data-animate-reveal]{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.75,.2,1);transform:translateY(28px)}.reveal[data-animate-reveal].is-visible{opacity:1;transform:translateY(0)}.menu-overlay,.lightbox,.article-modal,.business-card-modal{z-index:100;-webkit-backdrop-filter:blur(8px);background:#000000b8;position:fixed;inset:0}.menu-overlay{pointer-events:none;visibility:hidden;opacity:0;transition:opacity .24s,visibility .24s;overflow:hidden}.menu-overlay.open{visibility:visible;opacity:1;pointer-events:auto}.menu-panel{background:var(--ink);width:min(610px,100%);height:100%;color:var(--white);flex-direction:column;margin-left:auto;padding:35px 45px;transition:transform .42s cubic-bezier(.2,.75,.2,1);display:flex;overflow-y:auto;transform:translate(100%)}.menu-overlay.open .menu-panel{transform:translate(0)}.menu-top{justify-content:space-between;align-items:center;gap:30px;display:flex}.overlay-close{width:48px;height:48px;color:var(--white);cursor:pointer;font:300 34px/1 var(--body);background:0 0;border:1px solid #ffffff47;flex:none;transition:color .16s,background .16s,transform .16s}.overlay-close:hover{background:var(--orange);color:var(--white);transform:rotate(4deg)}.menu-copy{margin:58px 0 22px}.menu-copy p{color:var(--orange);letter-spacing:.14em;text-transform:uppercase;margin:0 0 11px;font-size:10px;font-weight:800}.menu-copy h2{font-family:var(--display);text-transform:uppercase;margin:0;font-size:43px;line-height:1}.menu-nav{display:block}.menu-nav a{font-family:var(--display);text-transform:uppercase;border-bottom:1px solid #ffffff29;grid-template-columns:48px 1fr auto;align-items:center;padding:16px 0;font-size:29px;line-height:1;display:grid}.menu-nav a:first-child{border-top:1px solid #ffffff29}.menu-nav a>span{color:var(--orange);font-family:var(--body);font-size:9px;font-weight:850}.menu-nav a i{color:#ffffff59;font-family:var(--body);font-size:16px;font-style:normal;transition:color .16s,transform .16s}.menu-nav a:hover i{color:var(--orange);transform:translate(3px,-2px)}.menu-bottom{color:#ffffffa6;grid-template-columns:1fr 1fr;gap:25px;margin-top:auto;padding-top:35px;font-size:13px;line-height:1.6;display:grid}.menu-bottom small{color:var(--orange);letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px;font-size:8px;font-weight:850;display:block}.menu-language{grid-column:1/-1;justify-self:start}.lightbox,.article-modal,.business-card-modal{place-items:center;padding:50px;animation:.22s both overlay-in;display:grid}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.lightbox figure{width:min(1120px,86vw);margin:0}.lightbox figure img{object-fit:contain;width:100%;max-height:78vh}.lightbox figcaption{color:#ffffff9e;letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;gap:25px;padding-top:14px;font-size:11px;display:flex}.lightbox figcaption span{color:var(--orange);font-weight:850}.lightbox-close{position:absolute;top:24px;right:24px}.lightbox-arrow{width:52px;height:70px;color:var(--white);cursor:pointer;background:#00000073;border:1px solid #ffffff40;font-size:22px;transition:background .16s;position:absolute;top:50%}.lightbox-arrow:hover{background:var(--orange)}.lightbox-arrow.previous{left:24px}.lightbox-arrow.next{right:24px}.article-modal{align-items:start;overflow-y:auto}.article-sheet{background:var(--paper);grid-template-columns:.88fr 1.12fr;width:min(920px,100%);margin:auto;display:grid;position:relative;box-shadow:0 30px 100px #00000080}.article-close{z-index:3;background:#0000009e;position:absolute;top:18px;right:18px}.article-hero{min-height:620px;position:relative}.article-hero img{object-fit:cover;width:100%;height:100%}.article-hero:after{content:"";background:linear-gradient(#0000 55%,#000000b8);position:absolute;inset:0}.article-hero>span{z-index:2;background:var(--orange);color:var(--white);letter-spacing:.12em;text-transform:uppercase;padding:8px 11px;font-size:9px;font-weight:850;position:absolute;bottom:22px;left:24px}.article-body{padding:62px 55px 48px}.article-source{color:var(--orange);letter-spacing:.13em;text-transform:uppercase;margin:0 0 18px;font-size:9px;font-weight:850}.article-body h2{font-family:var(--display);text-transform:uppercase;margin:0 0 28px;font-size:clamp(35px,4vw,52px);line-height:.98}.article-body>p:not(.article-source){color:var(--gray-500);font-size:15px;line-height:1.7}.article-body .button{width:100%;margin-top:22px}.business-card-modal{place-items:center;padding:28px;animation:.22s both overlay-in;display:grid}.business-card-sheet{background:#f2f3f5;width:min(900px,100%);height:min(880px,100svh - 56px);position:relative;overflow:hidden;box-shadow:0 30px 100px #0000008c}.business-card-sheet iframe{background:#f2f3f5;border:0;width:100%;height:100%}.business-card-close{z-index:4;background:#000000d1;position:absolute;top:16px;right:16px}.official-info{background:var(--paper);min-height:100vh}.official-header{background:var(--ink);min-height:88px;color:var(--white);border-bottom:1px solid #ffffff29;justify-content:space-between;align-items:center;gap:30px;padding:0 max(32px,50vw - 620px);display:flex}.official-language{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #fff6;padding-bottom:5px;font-size:11px;font-weight:800}.official-language span{color:var(--orange)}.official-hero{background:var(--ink);color:var(--white);padding:120px max(32px,50vw - 620px) 110px;overflow:hidden}.official-hero h1{max-width:1040px;font-family:var(--display);letter-spacing:-.05em;text-transform:uppercase;margin:0;font-size:clamp(66px,9vw,132px);font-weight:900;line-height:.88}.official-hero>p:not(.eyebrow){color:#ffffffad;max-width:720px;margin:38px 0 0;font-size:clamp(18px,2.2vw,25px);line-height:1.5}.official-actions{flex-wrap:wrap;gap:12px;margin-top:42px;display:flex}.official-content{width:min(1240px,100% - 64px);margin:0 auto;padding:110px 0 120px}.official-section{border-top:1px solid var(--line);grid-template-columns:140px minmax(0,780px);gap:55px;padding:56px 0;display:grid}.official-number{color:var(--orange);letter-spacing:.16em;font-size:11px;font-weight:850}.official-section h2,.official-split h2,.official-resources h2{font-family:var(--display);letter-spacing:-.035em;text-transform:uppercase;margin:0 0 27px;font-size:clamp(38px,4.5vw,64px);font-weight:900;line-height:.95}.official-section p{color:var(--gray-500);margin:0 0 18px;font-size:17px;line-height:1.72}.official-facts{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:1fr 1fr;margin:34px 0 0;display:grid}.official-facts div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:98px;padding:18px}.official-facts dt{color:var(--gray-500);letter-spacing:.11em;text-transform:uppercase;font-size:9px;font-weight:800}.official-facts dd{font-family:var(--display);text-transform:uppercase;margin:9px 0 0;font-size:22px;font-weight:850}.official-split{border:1px solid var(--line);grid-template-columns:1fr 1fr;margin-top:55px;display:grid}.official-split>section{min-height:470px;padding:55px}.official-split>section:first-child{background:var(--white)}.official-split>section>a{color:var(--gray-500);margin-top:8px;font-size:15px;display:block}.official-split>section>a:hover{color:var(--orange)}.official-split ul{border-top:1px solid var(--line);margin:34px 0 0;padding:0;list-style:none}.official-split li{border-bottom:1px solid var(--line);color:var(--gray-500);padding:13px 0;font-size:14px}.official-ai-note{background:var(--orange);color:var(--white);flex-direction:column;justify-content:space-between;display:flex}.official-ai-note .eyebrow{color:#ffffffb8}.official-ai-note .eyebrow span{background:var(--ink)}.official-ai-note>p:last-child{font-family:var(--display);text-transform:uppercase;margin:0;font-size:clamp(28px,3vw,42px);font-weight:800;line-height:1.13}.official-resources{margin-top:110px}.official-resources nav{border-top:1px solid var(--line);display:block}.official-resources a{border-bottom:1px solid var(--line);min-height:84px;font-family:var(--display);text-transform:uppercase;grid-template-columns:70px 1fr auto;align-items:center;padding:18px 4px;font-size:22px;font-weight:850;display:grid}.official-resources a span{color:var(--orange);font-family:var(--body);letter-spacing:.14em;font-size:9px}.official-resources a i{color:var(--orange);font-family:var(--body);font-size:20px;font-style:normal;transition:transform .18s}.official-resources a:hover i{transform:translate(4px,-3px)}.official-footer{background:var(--ink);justify-content:space-between;gap:30px;padding:38px max(32px,50vw - 620px);display:flex}.official-footer p{color:#ffffff73;letter-spacing:.07em;text-transform:uppercase;margin:0;font-size:10px}@media (max-width:1080px){.header-inner{grid-template-columns:1fr auto}nav{display:none}.menu-trigger{display:flex}.license-grid{grid-template-columns:1.35fr repeat(3,1fr)}.license-item{padding:0 18px}.service-grid{grid-template-columns:repeat(2,1fr)}.inspection-copy{padding:70px 48px}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-feature{grid-column:span 2}.gallery-banner{grid-column:1/-1}.contact-grid{grid-template-columns:1fr}.ai-discovery-grid{grid-template-columns:1fr;gap:50px}.footer-grid{grid-template-columns:1fr 1fr}.official-section{grid-template-columns:80px minmax(0,1fr);gap:30px}}@media (max-width:780px){body{padding-bottom:68px}.shell{width:min(100% - 36px,1240px)}.section{padding:82px 0}.site-header{position:fixed}.header-inner{min-height:78px}.header-call{display:none}.brand-copy strong{letter-spacing:.065em;gap:7px;font-size:18px}.brand-copy small{font-size:7px}.header-tools{gap:9px}.language-switch button,.language-switch a{width:31px}.hero{align-items:end;height:100svh;min-height:760px;padding-bottom:86px}.hero-photo{object-position:64% center}.hero-shade{background:linear-gradient(90deg,#050505e8,#0505056b),linear-gradient(#00000026,#0000 35%,#000000db)}.hero-content{padding-top:115px}.hero h1{font-size:clamp(52px,14vw,76px);line-height:.92}.hero-lede{margin-top:26px;font-size:17px}.hero-actions{margin-top:30px}.button{width:100%;min-height:54px}.hero-notes{flex-wrap:wrap;gap:8px 0;margin-top:34px}.hero-notes span{padding:0 12px;font-size:9px}.hero-notes span:nth-child(3){border-right:0;padding-left:0}.license-grid{grid-template-columns:1fr;width:100%;display:grid}.license-intro,.license-item{border-right:0;border-bottom:1px solid var(--line);min-height:95px;padding:20px 24px}.license-item:last-child{border-bottom:0}.section-heading{grid-template-columns:1fr;gap:28px;margin-bottom:44px}.section-heading h2,.process h2{font-size:61px}.section-heading>p{font-size:16px}.service-showcase{grid-template-columns:1fr}.service-photo-card{min-height:340px}.service-grid{grid-template-columns:1fr}.service-card{min-height:270px}.inspection{grid-template-columns:1fr}.inspection-photo{min-height:430px}.inspection-copy{padding:72px 18px}.inspection-copy h2{font-size:59px}.inspection-copy>p:not(.eyebrow){font-size:16px}.process-grid{grid-template-columns:1fr;gap:45px}.process-title{position:static}.process-steps li{grid-template-columns:42px 1fr;gap:10px}.fleet{align-items:end;min-height:720px;padding-bottom:78px}.fleet-photo{object-position:58% center}.fleet-shade{background:linear-gradient(90deg,#050505e6,#05050561),linear-gradient(#0000,#050505e6)}.fleet h2{font-size:66px}.fleet-content>p{font-size:16px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}.gallery-feature{grid-area:span 2/span 2}.gallery-wide,.gallery-banner{grid-column:span 2}.gallery-item>span{opacity:1;transform:none}.article-grid{grid-template-columns:1fr}.article-card{grid-template-columns:40% 1fr;padding:0;display:grid}.article-image{aspect-ratio:auto;grid-row:1/span 4;min-height:280px}.article-meta,.article-card>strong,.article-teaser{padding-left:23px;padding-right:23px}.article-card>strong{font-size:25px}.article-teaser{min-height:auto;padding-bottom:20px}.article-link{margin:auto 23px 23px}.reviews-top{flex-direction:column;align-items:start}.reviews h2{font-size:65px}.warranty-note{text-align:left}.review-grid{grid-template-columns:1fr}.review-grid figure{min-height:290px}.faq-grid{grid-template-columns:1fr;gap:44px}.faq h2{font-size:61px}.faq-list summary{font-size:19px}.contact{padding:82px 0}.contact-grid{gap:55px}.contact h2{font-size:66px}.contact-phone{font-size:36px}.contact-details{grid-template-columns:1fr}.contact-button{grid-column:auto}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-grid p:last-child{text-align:left}.ai-discovery{padding:76px 0}.ai-discovery h2{font-size:53px}.ai-discovery-links strong{font-size:19px}.mobile-call{z-index:50;background:var(--orange);width:100%;height:68px;color:var(--white);justify-content:space-between;align-items:center;padding:0 18px;display:flex;position:fixed;bottom:0;left:0;box-shadow:0 -10px 35px #0003}.mobile-call span{letter-spacing:.09em;text-transform:uppercase;font-size:10px;font-weight:850}.mobile-call strong{font-family:var(--display);font-size:20px}.menu-panel{padding:28px 22px}.menu-copy{margin-top:45px}.menu-copy h2{font-size:37px}.menu-nav a{font-size:25px}.menu-bottom{grid-template-columns:1fr}.menu-language{grid-column:auto}.lightbox{padding:72px 18px}.lightbox figure{width:100%}.lightbox-arrow{width:58px;height:45px;top:auto;bottom:20px}.lightbox-arrow.previous{left:18px}.lightbox-arrow.next{right:18px}.lightbox-close{top:16px;right:16px}.article-modal{padding:18px}.article-sheet{grid-template-columns:1fr}.article-hero{min-height:285px}.article-body{padding:38px 27px 32px}.article-body h2{padding-right:10px;font-size:37px}.business-card-modal{padding:12px}.business-card-sheet{height:calc(100svh - 24px)}.business-card-close{top:10px;right:10px}.official-header{min-height:78px;padding:0 18px}.official-language{font-size:9px}.official-hero{padding:92px 18px 78px}.official-hero h1{font-size:58px}.official-hero>p:not(.eyebrow){font-size:18px}.official-actions .button{width:100%}.official-content{width:calc(100% - 36px);padding:72px 0 80px}.official-section{grid-template-columns:1fr;gap:16px;padding:42px 0}.official-section h2,.official-split h2,.official-resources h2{font-size:39px}.official-section p{font-size:16px}.official-facts,.official-split{grid-template-columns:1fr}.official-split>section{min-height:390px;padding:34px 25px}.official-resources{margin-top:72px}.official-resources a{grid-template-columns:45px 1fr auto;font-size:18px}.official-footer{flex-direction:column;padding:30px 18px 98px}}@media (max-width:430px){.hero h1{font-size:50px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:240px}.gallery-feature,.gallery-wide,.gallery-banner{grid-area:span 1/span 1}.article-card{display:flex}.article-image{aspect-ratio:1.42;min-height:240px}.article-meta{padding-top:20px}.article-card>strong{padding-top:16px}.article-link{margin-top:20px}.contact-phone{font-size:32px}}@media (max-width:780px),(pointer:coarse){.site-header{-webkit-backdrop-filter:none;background:#101010}.menu-overlay,.lightbox,.article-modal,.business-card-modal{-webkit-backdrop-filter:none}.hero-photo,.service-ticker>div{animation:none}.reveal[data-animate-reveal]{opacity:1;transition:none;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal[data-animate-reveal]{opacity:1;transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}

/* --- static build additions --- */
html.is-locked{overflow:hidden}
.language-switch a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.lightbox figcaption i{font-style:normal}
.lightbox figure img{background:#000}
.article-cover{width:100%;height:auto;aspect-ratio:2200/1235;object-fit:cover;margin:0 0 34px}
.article-text .official-number{line-height:1.6}
.official-hero>p:not(.eyebrow){text-wrap:pretty}
.menu-language a{width:34px}

/* ===================== v2 additions ===================== */
:root{--display:"Roboto Condensed","Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;--orange-soft:#ffb27a}

/* Big type: a consistent web font on every device + a little air between the letters */
.hero h1,.section-heading h2,.inspection-copy h2,.process h2,.fleet h2,.reviews h2,.faq h2,.contact h2,.ai-discovery h2,.official-hero h1,.official-section h2,.official-split h2,.official-resources h2,.article-body h2,.menu-copy h2,.photo-card-copy h3,.service-card h3,.process-steps h3,.article-card>strong,.review-grid blockquote,.faq-list summary,.license-item strong,.ai-discovery-links strong,.menu-nav a,.info-body h2,.form-head h2,.form-success h2{letter-spacing:.014em;font-weight:800}
.hero h1{line-height:.94}
.section-heading h2,.inspection-copy h2,.process h2,.fleet h2,.reviews h2,.faq h2,.contact h2,.ai-discovery h2{line-height:.97}
.official-hero h1{line-height:.92}
.review-grid blockquote{line-height:1.25}
.header-call,.contact-phone,.mobile-call strong,.license-seal,.license-item>span,.service-number,.process-steps>li>span,.article-image i,.warranty-note strong,.official-facts dd,.official-resources a{font-family:var(--display)}

/* ---------- Hero: cinematic slideshow, softer shade, drifting orange glow ---------- */
.hero{background:#141416;align-items:flex-start;padding-top:clamp(128px,17vh,190px);padding-bottom:70px}
.hero-content{padding-top:0}
.hero-slides{position:absolute;inset:0;overflow:hidden;background:#141416}
.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:56% center;opacity:0;visibility:hidden;transition:opacity 1.4s ease,visibility 0s 1.4s;transform:none}
/* Ken Burns without jumps: the move lasts exactly one slide interval (7s = JS DUR), the outgoing slide keeps its animation while it
   fades, and slides alternate direction (in → out → in), so every new slide starts at the exact scale where the previous one stopped. */
.hero-slide.is-active,.hero-slide.is-prev{visibility:visible;transition:opacity 1.4s ease,visibility 0s;animation:kb-in 7s cubic-bezier(.45,0,.55,1) both;will-change:transform,opacity}
.hero-slide.kb-out.is-active,.hero-slide.kb-out.is-prev{animation-name:kb-out}
.hero-slide.is-active{opacity:1}
@keyframes kb-in{0%{transform:scale(1) translate(0,0)}100%{transform:scale(1.1) translate(-1.6%,1.2%)}}
@keyframes kb-out{0%{transform:scale(1.1) translate(-1.6%,1.2%)}100%{transform:scale(1) translate(0,0)}}
.hero-shade{background:linear-gradient(90deg,rgba(12,12,14,.9) 0%,rgba(12,12,14,.7) 42%,rgba(12,12,14,.16) 78%),linear-gradient(rgba(0,0,0,.28),rgba(0,0,0,0) 45%,rgba(0,0,0,.62))}
.hero-glow{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.hero-glow i{position:absolute;display:block;border-radius:50%;pointer-events:none}
.hero-glow i:nth-child(1){left:-18%;bottom:-22%;width:78vmin;height:78vmin;background:radial-gradient(circle,rgba(255,90,31,.62) 0%,rgba(255,90,31,.22) 42%,transparent 68%);animation:glow-a 14s ease-in-out infinite alternate}
.hero-glow i:nth-child(2){right:-14%;top:-18%;width:64vmin;height:64vmin;background:radial-gradient(circle,rgba(255,178,122,.5) 0%,rgba(255,150,90,.18) 45%,transparent 68%);animation:glow-b 18s ease-in-out infinite alternate}
.hero-glow i:nth-child(3){left:38%;bottom:-30%;width:70vmin;height:70vmin;background:radial-gradient(circle,rgba(255,122,60,.42) 0%,rgba(255,122,60,.14) 45%,transparent 68%);animation:glow-c 16s ease-in-out infinite alternate}
@keyframes glow-a{0%{transform:translate(0,0)}100%{transform:translate(9%,-8%)}}
@keyframes glow-b{0%{transform:translate(0,0)}100%{transform:translate(-10%,10%)}}
@keyframes glow-c{0%{transform:translate(0,0)}100%{transform:translate(-8%,-6%)}}
.hero-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 90% at 50% 45%,transparent 55%,rgba(0,0,0,.42) 100%)}
.hero-stripe{animation:tape-slide 1.4s linear infinite;background-size:41px 41px}
@keyframes tape-slide{to{background-position:41px 0}}
.hero-actions .button-primary{position:relative;overflow:hidden}
.hero-actions .button-primary:after{content:"";position:absolute;top:0;bottom:0;left:0;width:40%;transform:translateX(-160%);background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);animation:sweep 5s ease-in-out infinite;pointer-events:none}
@keyframes sweep{0%,72%{transform:translateX(-160%)}100%{transform:translateX(360%)}}

/* ---------- Service tape (police-tape ticker) ---------- */
.service-ticker{position:relative;background-color:var(--orange);background-image:repeating-linear-gradient(135deg,rgba(0,0,0,.05) 0 16px,transparent 16px 32px);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(0,0,0,.25)}
.service-ticker>div{animation:26s linear infinite ticker-move!important;padding:14px 0}
.service-ticker span{padding-right:0;gap:0;font-size:11.5px;letter-spacing:.16em}
.service-ticker b{display:inline-block;width:52px;height:14px;margin:0 22px;font-size:0;line-height:0;background:repeating-linear-gradient(135deg,rgba(16,16,16,.18) 0 5px,transparent 5px 10px);border-radius:1px}
.service-ticker span:nth-child(even){color:#fff}
.service-ticker span:nth-child(even) b{background:repeating-linear-gradient(135deg,rgba(255,255,255,.35) 0 5px,transparent 5px 10px)}

/* ---------- Inspection: white headline and copy on orange ---------- */
.inspection-copy h2,.inspection-copy>p:not(.eyebrow){color:var(--ink)}

/* ---------- Licenses: clickable, seal with a slow dashed ring ---------- */
button.license-item{appearance:none;background:transparent;border:0;border-right:1px solid var(--line);font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background .2s}
button.license-item:hover{background:var(--paper)}
.license-item strong{position:relative;padding-right:26px}
.license-item strong:after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--orange);font-family:var(--body);font-size:20px;font-weight:400;transition:transform .2s}
button.license-item:hover strong:after{transform:translateY(-50%) rotate(90deg)}
.license-seal{position:relative}
.license-seal:after{content:"";position:absolute;inset:-10px;border-radius:50%;border:1px dashed rgba(16,16,16,.5);animation:spin 14s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ---------- Services: whole card opens the details popup ---------- */
.service-card{cursor:pointer;position:relative}
.card-more{position:absolute;top:24px;right:24px;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font:400 20px/1 var(--body);color:var(--orange);transition:transform .22s,background .22s,color .22s,border-color .22s;pointer-events:none}
.service-card:hover .card-more,.service-card:focus-visible .card-more{background:var(--orange);color:#fff;border-color:var(--orange);transform:rotate(90deg)}
.service-card:focus-visible{outline:3px solid var(--orange);outline-offset:-3px}

/* ---------- Fleet: floating badge, clickable points ---------- */
.fleet-kicker{animation:kicker-float 4.6s ease-in-out infinite}
@keyframes kicker-float{0%,100%{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(-.6deg) translateY(-7px)}}
.fleet-points button{appearance:none;cursor:pointer;color:#ffffffd0;letter-spacing:.07em;text-transform:uppercase;border:1px solid #ffffff52;background:#ffffff0d;padding:10px 13px;font:750 10px/1.3 var(--body);display:inline-flex;align-items:center;gap:9px;transition:background .18s,color .18s,border-color .18s,transform .18s}
.fleet-points button:after{content:"+";color:var(--orange);font-size:15px;line-height:1;font-weight:400;transition:color .18s}
.fleet-points button:hover,.fleet-points button:focus-visible{background:var(--orange);border-color:var(--orange);color:#fff;transform:translateY(-2px)}
.fleet-points button:hover:after,.fleet-points button:focus-visible:after{color:#fff}

/* ---------- Motion details ---------- */
.reveal[data-animate-reveal] .eyebrow span{transform:skew(-18deg) scaleX(0);transform-origin:left;transition:transform .7s .2s cubic-bezier(.2,.75,.2,1)}
.reveal[data-animate-reveal].is-visible .eyebrow span{transform:skew(-18deg) scaleX(1)}
.contact-phone span{animation:nudge 2.6s ease-in-out infinite}
@keyframes nudge{0%,100%{transform:translate(0,0)}50%{transform:translate(6px,-6px)}}
.gallery-item img{transition:transform .6s cubic-bezier(.2,.75,.2,1),filter .3s}
.article-image:after{transition:opacity .3s}
.process-steps li{transition:transform .25s,background .25s}
.process-steps li:hover{background:var(--paper)}
.process-steps li:hover>span{color:var(--ink)}

/* ---------- Journal ---------- */
.journal-more{margin:26px 0 0;display:flex;justify-content:flex-end}
.article-body h3,.article-text h3{font-family:var(--display);text-transform:uppercase;letter-spacing:.014em;font-size:22px;font-weight:800;margin:22px 0 10px;line-height:1.05}
.article-body ul,.article-text ul{list-style:none;margin:0 0 18px;padding:0}
.article-body li,.article-text li{position:relative;padding:6px 0 6px 24px;color:var(--gray-500);font-size:15px;line-height:1.55}
.article-text li{font-size:16px}
.article-body li:before,.article-text li:before{content:"";position:absolute;left:0;top:14px;width:12px;height:4px;background:var(--orange);transform:skew(-18deg)}
.article-body .article-date,.article-text .article-date{color:var(--gray-500);font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 20px}
.article-hero img.is-cover{object-position:center}
.blog-grid{margin-top:8px}
a.article-card{text-decoration:none}

/* ---------- Info popups & fleet form ---------- */
.info-modal,.form-modal{z-index:100;background:#000000b8;position:fixed;inset:0;place-items:center;padding:28px;display:grid;overflow-y:auto;animation:.22s both overlay-in;-webkit-backdrop-filter:blur(8px)}
.info-sheet,.form-sheet{background:var(--paper);width:min(640px,100%);margin:auto;position:relative;box-shadow:0 30px 100px #00000080;color:var(--ink)}
.info-sheet .overlay-close,.form-sheet .overlay-close{position:absolute;top:14px;right:14px;z-index:3;background:#000000b3}
.info-cover{aspect-ratio:16/9;background:var(--gray-800);overflow:hidden;position:relative}
.info-cover img{width:100%;height:100%;object-fit:cover;display:block}
.info-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(#0000 50%,#000000b0)}
.info-cover .eyebrow{position:absolute;left:24px;bottom:18px;margin:0;color:#ffffffd9;z-index:2}
.info-cover .eyebrow span{background:var(--orange)}
.info-body{padding:28px 32px 32px}
.info-body h2{font-family:var(--display);text-transform:uppercase;margin:0 0 12px;font-size:clamp(30px,4vw,40px);line-height:1}
.info-body>p{color:var(--gray-500);font-size:15px;line-height:1.65;margin:0 0 18px}
.info-body ul{list-style:none;margin:0 0 22px;padding:0;border-top:1px solid var(--line)}
.info-body li{border-bottom:1px solid var(--line);padding:10px 0 10px 26px;font-size:14px;line-height:1.5;position:relative}
.info-body li:before{content:"";position:absolute;left:2px;top:16px;width:12px;height:4px;background:var(--orange);transform:skew(-18deg)}
.info-actions{display:flex;flex-wrap:wrap;gap:10px}
.info-actions .button{flex:1 1 auto;min-height:52px}
.form-head{padding:30px 32px 0}
.form-head h2{font-family:var(--display);text-transform:uppercase;margin:0 0 10px;font-size:clamp(30px,4vw,40px);line-height:1}
.form-head p{color:var(--gray-500);font-size:15px;line-height:1.6;margin:0}
.lead-form{padding:20px 32px 32px;display:grid;grid-template-columns:1fr 1fr;gap:14px;position:relative}
.lead-form label{display:grid;gap:6px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--gray-500)}
.lead-form input,.lead-form textarea{border:1px solid var(--line);background:#fff;padding:13px 14px;font:500 15px/1.3 var(--body);color:var(--ink);border-radius:0;width:100%;letter-spacing:0;text-transform:none}
.lead-form input:focus,.lead-form textarea:focus{outline:2px solid var(--orange);outline-offset:0;border-color:var(--orange)}
.lead-form .full{grid-column:1/-1}
.lead-form textarea{min-height:84px;resize:vertical}
.lead-form .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;overflow:hidden}
.lead-form .button{grid-column:1/-1;width:100%}
.form-status{grid-column:1/-1;margin:0;font-size:13px;min-height:1em;color:var(--gray-500)}
.form-status.is-error{color:#c8330d}
.form-privacy{grid-column:1/-1;margin:0;font-size:11px;color:var(--gray-500);line-height:1.5}
.form-success{padding:52px 32px 56px;text-align:center}
.form-success h2{font-family:var(--display);text-transform:uppercase;font-size:38px;margin:0 0 10px;line-height:1}
.form-success p{color:var(--gray-500);margin:0 auto;max-width:380px;line-height:1.6}
.form-success .check{width:66px;height:66px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;margin:0 auto 18px;font-size:30px;animation:pop .5s cubic-bezier(.2,.8,.2,1.4)}
@keyframes pop{0%{transform:scale(.4);opacity:0}100%{transform:scale(1);opacity:1}}

/* ---------- Social links ---------- */
.social{display:flex;flex-wrap:wrap;gap:8px}
.social a{display:inline-flex;align-items:center;gap:7px;border:1px solid #ffffff2e;padding:9px 12px;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#ffffffb8;transition:color .18s,border-color .18s,background .18s,transform .18s}
.social a:hover{color:#fff;border-color:var(--orange);background:#ff5a1f26;transform:translateY(-2px)}
.social svg{width:13px;height:13px;fill:currentColor;flex:none}
.contact-social{grid-column:1/-1}
.contact-social>p{color:var(--orange);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:9px;font-weight:850}

/* ---------- Footer ---------- */
.footer-grid{grid-template-columns:1fr 1.1fr 1.35fr .75fr;align-items:start}
.footer-ai{justify-content:start;justify-items:start}
.footer-col{display:grid;gap:14px}
.footer-col .social a{padding:7px 10px;font-size:9px}

/* ---------- Mobile call bar ---------- */
.mobile-call{overflow:hidden}
.mobile-call:before{content:"";position:absolute;top:0;bottom:0;left:0;width:35%;transform:translateX(-120%);background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent);animation:sweep-bar 6s ease-in-out infinite;pointer-events:none}
@keyframes sweep-bar{0%,70%{transform:translateX(-120%)}100%{transform:translateX(400%)}}
.mobile-call-copy{display:flex;flex-direction:column;gap:3px;position:relative}
.mobile-call small{font:400 9px/1.2 var(--body);letter-spacing:.05em;text-transform:none;color:#ffffffe0}

/* ---------- Mobile adjustments ---------- */
@media (max-width:1080px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:780px){
  .hero{align-items:flex-start;padding-top:104px;padding-bottom:64px;min-height:640px}
  .hero-content{padding-top:0}
  .hero h1{line-height:.96}
  .license-item strong{padding-right:26px}
  button.license-item{border-right:0;border-bottom:1px solid var(--line);width:100%}
  .info-modal,.form-modal{padding:12px;align-items:start}
  .info-body{padding:24px 20px 26px}
  .info-body h2{font-size:30px}
  .lead-form{grid-template-columns:1fr;padding:14px 20px 24px}
  .form-head{padding:26px 20px 0}
  .form-success{padding:44px 20px 46px}
  .journal-more{justify-content:stretch}
  .journal-more .button{width:100%}
  footer{padding:30px 0 22px}
  .footer-grid{grid-template-columns:1fr;gap:16px}
  .footer-grid p{font-size:9px;line-height:1.55}
  .footer-col{gap:10px}
  .footer-ai{gap:2px}
  .footer-rights{border-top:1px solid #ffffff1a;padding-top:14px;display:flex;justify-content:space-between;gap:12px}
  .footer-rights span{display:inline}
  .footer-rights br{display:none}
  .reveal[data-animate-reveal]{opacity:0;transition:opacity .6s,transform .6s cubic-bezier(.2,.75,.2,1);transform:translateY(18px)}
  .reveal[data-animate-reveal].is-visible{opacity:1;transform:none}
}
@media (pointer:coarse){
  .reveal[data-animate-reveal]{opacity:0;transition:opacity .6s,transform .6s cubic-bezier(.2,.75,.2,1);transform:translateY(18px)}
  .reveal[data-animate-reveal].is-visible{opacity:1;transform:none}
  .hero-stripe{animation:none}
  .info-modal,.form-modal,.menu-overlay{-webkit-backdrop-filter:none}
  .license-seal:after{animation:none}
}
@media (prefers-reduced-motion:reduce){
  .hero-slide.is-active,.hero-glow,.hero-stripe,.fleet-kicker,.license-seal:after,.contact-phone span,.mobile-call:before,.hero-actions .button-primary:after,.service-ticker>div{animation:none!important}
  .reveal[data-animate-reveal]{opacity:1;transform:none}
}

/* ===================== v3 additions ===================== */
/* No horizontal wobble on touch devices: nothing can scroll sideways */
html,body{overflow-x:hidden;overflow-x:clip}
body{touch-action:pan-y pinch-zoom}
main{max-width:100%}

/* Service tags open the same detail popups as the cards */
.service-tags button{appearance:none;cursor:pointer;border:1px solid var(--line);background:var(--white);color:var(--gray-500);padding:11px 14px;font:700 11px/1.2 var(--body);display:inline-flex;align-items:center;gap:9px;transition:background .18s,color .18s,border-color .18s,transform .18s}
.service-tags button:after{content:"+";color:var(--orange);font-size:15px;line-height:1;font-weight:400;transition:transform .2s,color .18s}
.service-tags button:hover,.service-tags button:focus-visible{background:var(--ink);border-color:var(--ink);color:#fff;transform:translateY(-2px)}
.service-tags button:hover:after,.service-tags button:focus-visible:after{color:var(--orange);transform:rotate(90deg)}

/* Mobile menu: glow instead of a flat black panel, contact block lower, no language switch */
.menu-overlay{background:radial-gradient(70% 60% at 100% 100%,rgba(255,90,31,.28),transparent 70%),#000000b8}
.menu-panel{position:relative;padding:0;overflow:hidden}
.menu-scroll{position:relative;z-index:1;height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:35px 45px;display:flex;flex-direction:column}
.menu-glow{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.menu-glow i{position:absolute;display:block;border-radius:50%}
.menu-glow i:nth-child(1){right:-30%;top:-10%;width:90vmin;height:90vmin;background:radial-gradient(circle,rgba(255,90,31,.5) 0%,rgba(255,90,31,.16) 40%,transparent 66%);animation:menu-glow-a 9s ease-in-out infinite alternate}
.menu-glow i:nth-child(2){right:-20%;bottom:-25%;width:70vmin;height:70vmin;background:radial-gradient(circle,rgba(255,178,122,.4) 0%,rgba(255,150,90,.14) 42%,transparent 66%);animation:menu-glow-b 12s ease-in-out infinite alternate}
@keyframes menu-glow-a{0%{transform:translate(0,0) scale(1)}100%{transform:translate(-8%,10%) scale(1.08)}}
@keyframes menu-glow-b{0%{transform:translate(0,0)}100%{transform:translate(6%,-10%)}}
.menu-bottom{margin-top:auto;padding-top:64px;padding-bottom:12px}
@media (max-width:780px){
  .menu-scroll{padding:28px 22px}
  .menu-bottom{padding-top:56px}
}
/* the glow only animates while the menu is open — nothing runs behind the page while scrolling */
.menu-overlay:not(.open) .menu-glow i{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){.hero-glow i,.menu-glow i,.mobile-call:before{animation:none!important}}

/* ===================== v4 additions ===================== */
/* ---------- Hero: headline stays on top, lede + buttons sit at the bottom of the screen ---------- */
.hero{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;padding-top:clamp(128px,17vh,190px);padding-bottom:clamp(44px,7vh,72px)}
.hero-content{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;padding-top:0}
.hero-lede{margin-top:auto;padding-top:34px}
.hero-actions{margin-top:22px}

/* ---------- Service cards: a real centered plus (drawn, not a glyph) that never drifts ---------- */
.card-more{font-size:0;color:transparent;display:block}
.card-more:before,.card-more:after{content:"";position:absolute;left:50%;top:50%;background:var(--orange);border-radius:1px;transition:background .22s}
.card-more:before{width:12px;height:2px;transform:translate(-50%,-50%)}
.card-more:after{width:2px;height:12px;transform:translate(-50%,-50%)}
.service-card:hover .card-more,.service-card:focus-visible .card-more{transform:scale(1.1)}
.service-card:hover .card-more:before,.service-card:hover .card-more:after,.service-card:focus-visible .card-more:before,.service-card:focus-visible .card-more:after{background:#fff}
@media (hover:none){
  .service-card:hover{background:transparent;color:inherit;transform:none}
  .service-card:hover p{color:var(--gray-500)}
  .service-card:hover .card-more{background:transparent;border-color:var(--line);transform:none}
  .service-card:hover .card-more:before,.service-card:hover .card-more:after{background:var(--orange)}
  .service-card:active{background:var(--ink);color:var(--white)}
  .service-card:active p{color:#ffffff9e}
}

/* ---------- Footer: only the brand, the registration and the copyright (contacts live in the section above) ---------- */
.footer-grid{grid-template-columns:auto 1fr auto;align-items:center;gap:34px}
.footer-grid p:last-child{text-align:right}

/* ---------- Official / article pages: nothing gets clipped on a phone ---------- */
.official-hero h1,.official-section h2,.official-split h2,.official-resources h2,.official-facts dd,.official-split>section>a{overflow-wrap:anywhere}

/* ---------- Customer journey: snap carousel over an animated road ---------- */
.journey{background:var(--paper);padding-bottom:0;overflow:hidden}
.journey-heading{margin-bottom:34px}
.journey-stage{--card:min(82vw,360px);--gap:14px;--cw:80px;position:relative}
.journey-track{display:flex;gap:var(--gap);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:10px 0 40px;cursor:grab;outline:none}
.journey-track::-webkit-scrollbar{display:none}
.journey-track::before,.journey-track::after{content:"";flex:0 0 calc((100% - var(--card)) / 2 - var(--gap));min-width:0}
.journey-track:focus-visible{box-shadow:inset 0 0 0 3px var(--orange)}
.journey-step{flex:0 0 var(--card);scroll-snap-align:center;background:var(--white);border:1px solid var(--line);padding:26px 26px 30px;min-height:300px;display:flex;flex-direction:column;position:relative;opacity:.55;transform:scale(.94);transition:transform .5s cubic-bezier(.2,.75,.2,1),box-shadow .5s,opacity .5s,border-color .5s}
.journey-step.is-current{opacity:1;transform:scale(1);box-shadow:0 26px 60px #1010101f;border-color:transparent}
.journey-icon{width:64px;height:64px;color:var(--orange);margin-bottom:22px}
.journey-icon svg{width:100%;height:100%;overflow:visible}
.journey-num{position:absolute;top:24px;right:26px;color:var(--orange);font-family:var(--display);font-size:14px;font-weight:900}
.journey-step h3{font-family:var(--display);text-transform:uppercase;letter-spacing:.014em;font-weight:800;font-size:26px;line-height:1;margin:auto 0 12px}
.journey-step p{color:var(--gray-500);font-size:14px;line-height:1.55;margin:0}
.journey-road{position:relative;height:88px;background:#141416;overflow:hidden;box-shadow:inset 0 1px 0 #ffffff14}
.journey-road-line{position:absolute;left:0;right:0;top:50%;height:2px;margin-top:-1px;background:repeating-linear-gradient(90deg,#ffffff66 0 28px,transparent 28px 52px)}
.journey-road-fill{position:absolute;left:0;top:50%;width:100%;height:3px;margin-top:-1.5px;background:var(--orange);transform-origin:0 50%;transform:scaleX(0);will-change:transform}
.journey-mark{position:absolute;top:50%;left:calc(var(--cw) / 2 + (100% - var(--cw)) * var(--p));width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:#1e1e22;border:2px solid #ffffff80;transition:background .3s,border-color .3s,transform .3s}
.journey-mark.is-done{background:var(--orange);border-color:var(--orange)}
.journey-mark.is-current{transform:scale(1.5)}
.journey-car{position:absolute;left:0;top:50%;width:var(--cw);height:34px;margin-top:-32px;will-change:transform}
.journey-car-svg{width:100%;height:100%;display:block;overflow:visible}
.j-wheel{transform-box:fill-box;transform-origin:center}
.journey-car.is-moving .j-wheel{animation:j-spin .45s linear infinite}
@keyframes j-spin{to{transform:rotate(360deg)}}
.journey-controls{display:flex;align-items:center;justify-content:center;gap:18px;padding:20px 0 36px}
.journey-arrow{width:46px;height:46px;border:1px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer;font-size:18px;display:grid;place-items:center;transition:background .18s,color .18s,border-color .18s}
.journey-arrow:hover,.journey-arrow:focus-visible{background:var(--orange);border-color:var(--orange);color:#fff}
.journey-dots{display:flex;gap:9px}
.journey-dots button{width:10px;height:10px;border-radius:50%;background:var(--gray-300);border:0;cursor:pointer;padding:0;transition:transform .2s,background .2s}
.journey-dots button.is-current{background:var(--orange);transform:scale(1.4)}
@media (min-width:781px){
  .journey-stage{--card:380px;--gap:16px;--cw:96px}
  .journey-road{height:104px}
  .journey-car{height:40px;margin-top:-37px}
  .journey-step{min-height:330px}
}
@media (max-width:780px){
  .hero{padding-top:108px;padding-bottom:96px;min-height:640px;height:100svh}
  .hero-lede{padding-top:26px;font-size:15px;margin-top:auto}
  .hero-actions{margin-top:18px;gap:10px}
  .hero-actions .button{min-height:50px}
  .footer-grid{grid-template-columns:1fr;gap:14px}
  .footer-grid p:last-child{text-align:left}
  .official-hero h1{font-size:clamp(36px,11.5vw,58px)}
  .official-section h2,.official-split h2,.official-resources h2{font-size:clamp(27px,8.6vw,39px)}
  .official-facts dd{font-size:18px}
  .journey-heading{margin-bottom:22px}
  .journey-step{padding:22px 22px 26px;min-height:280px}
  .journey-step h3{font-size:24px}
}

/* icon motion — only the card in focus animates; everything is transform/opacity */
.journey-step .journey-icon *{animation-play-state:paused}
.journey-step.is-current .journey-icon *{animation-play-state:running}
.j-heart{transform-box:fill-box;transform-origin:center;animation:j-pop 1.8s ease-in-out infinite}
@keyframes j-pop{0%,100%{transform:scale(1)}25%{transform:scale(1.35)}45%{transform:scale(1.05)}60%{transform:scale(1.2)}}
.j-like{opacity:0;animation:j-rise 2.4s ease-out infinite}
.j-like-2{animation-delay:.7s}.j-like-3{animation-delay:1.3s}
@keyframes j-rise{0%{opacity:0;transform:translateY(8px)}20%{opacity:1}100%{opacity:0;transform:translateY(-16px)}}
.j-photo{transform-box:fill-box;transform-origin:0 100%}
.j-photo-1{animation:j-fan1 3s ease-in-out infinite alternate}
.j-photo-2{animation:j-fan2 3s ease-in-out infinite alternate}
@keyframes j-fan1{to{transform:rotate(-9deg)}}
@keyframes j-fan2{to{transform:rotate(-4deg)}}
.j-handset{transform-box:fill-box;transform-origin:center;animation:j-ring 1.6s ease-in-out infinite}
@keyframes j-ring{0%,50%,100%{transform:rotate(0)}8%{transform:rotate(-14deg)}16%{transform:rotate(12deg)}24%{transform:rotate(-10deg)}32%{transform:rotate(8deg)}40%{transform:rotate(-4deg)}}
.j-wave{opacity:.2;animation:j-wave 1.6s ease-in-out infinite}
.j-wave-2{animation-delay:.25s}
@keyframes j-wave{0%,100%{opacity:.2}40%{opacity:1}}
.j-check{stroke-dasharray:1;stroke-dashoffset:1;animation:j-draw 2.6s ease-in-out infinite}
@keyframes j-draw{0%{stroke-dashoffset:1;opacity:1}35%{stroke-dashoffset:0;opacity:1}80%{stroke-dashoffset:0;opacity:1}90%{opacity:0}100%{stroke-dashoffset:1;opacity:0}}
.j-arrive{animation:j-drive 3.2s cubic-bezier(.2,.7,.2,1) infinite}
@keyframes j-drive{0%{transform:translateX(-70px);opacity:0}12%{opacity:1}55%{transform:translateX(0)}88%{transform:translateX(0);opacity:1}100%{transform:translateX(0);opacity:0}}
.j-gear{transform-box:fill-box;transform-origin:center;animation:j-spin-slow 6s linear infinite}
@keyframes j-spin-slow{to{transform:rotate(360deg)}}
.j-wrench{transform-box:fill-box;transform-origin:85% 15%;animation:j-rock 1.8s ease-in-out infinite}
@keyframes j-rock{0%,100%{transform:rotate(0)}50%{transform:rotate(-14deg)}}
.j-needle{transform-box:fill-box;transform-origin:100% 100%;animation:j-sweep 3s ease-in-out infinite}
@keyframes j-sweep{0%,100%{transform:rotate(-30deg)}50%{transform:rotate(70deg)}}
.j-star{transform-box:fill-box;transform-origin:center;opacity:.22;animation:j-star 3.4s ease-out infinite}
@keyframes j-star{0%{opacity:.22;transform:scale(.7)}10%{opacity:1;transform:scale(1.3)}18%{transform:scale(1)}72%{opacity:1;transform:scale(1)}100%{opacity:.22;transform:scale(.7)}}
@media (prefers-reduced-motion:reduce){.journey-icon *,.j-wheel{animation:none!important}.journey-step{transition:none}}

/* ===================== v6 additions: the ONE WAY film ===================== */
/* Gallery: the banner tile is a living film — silent, plays only while on screen; a tap opens it with sound */
.gallery-video{background:#0d0d0f}
.gallery-video .tile-video{width:100%;height:100%;object-fit:cover;object-position:42% 40%;display:block;transition:transform .6s cubic-bezier(.2,.75,.2,1)}
.gallery-video:hover .tile-video{transform:scale(1.035)}
.gallery-video>span{opacity:1;transform:none;background:linear-gradient(#0000,#000000d6)}
.gallery-video>span i{width:34px;height:34px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:12px;padding-left:2px;transition:transform .2s}
.gallery-video:hover>span i{transform:scale(1.1)}
.lightbox-video{width:100%;max-height:78vh;aspect-ratio:16/9;background:#000;display:block}

/* Contact: the film runs dimmed behind the phone number — the sign points here */
.contact-film{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.contact-film video{width:100%;height:100%;object-fit:cover;object-position:50% 40%;opacity:.34;display:block}
.contact-film:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101010f2 0%,#101010c4 45%,#10101080 100%),linear-gradient(#101010e6,#10101000 26%,#10101000 74%,#101010e6)}
.contact>.shell{position:relative;z-index:2}
@media (max-width:780px){.contact-film:after{background:linear-gradient(#101010f2,#101010b3 30%,#101010b3 70%,#101010f2)}}

/* /video/ page */
.film-page{background:var(--ink);color:var(--white)}
.film-hero{padding:0 0 clamp(50px,7vw,84px)}
.film-frame{position:relative;width:100%;aspect-ratio:16/9;max-height:calc(100svh - 88px);background:#000;overflow:hidden}
.film-video{width:100%;height:100%;object-fit:cover;display:block;cursor:pointer}
.film-overlay{position:absolute;left:0;right:0;bottom:0;padding:clamp(18px,5vw,56px);background:linear-gradient(#0000,#000000c2);opacity:0;transform:translateY(14px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.75,.2,1);pointer-events:none}
.film-frame.is-peak .film-overlay{opacity:1;transform:none}
.film-overlay strong{display:block;font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(26px,6vw,84px);line-height:.95}
.film-overlay strong i{color:var(--orange);font-style:normal}
.film-overlay span{display:block;margin-top:10px;font-size:clamp(10px,1.4vw,15px);letter-spacing:.14em;text-transform:uppercase;color:#ffffffc7;font-weight:700}
.film-sound{position:absolute;top:18px;right:18px;z-index:3;display:inline-flex;align-items:center;gap:9px;height:42px;padding:0 14px;border:1px solid #ffffff66;background:#000000a6;color:#fff;font:800 10px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .18s,border-color .18s}
.film-sound svg{width:18px;height:18px}
.film-sound .w1,.film-sound .w2{opacity:.35;transition:opacity .2s}
.film-sound[aria-pressed="true"]{background:var(--orange);border-color:var(--orange)}
.film-sound[aria-pressed="true"] .w1,.film-sound[aria-pressed="true"] .w2{opacity:1}
.film-play{position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;background:var(--orange);color:#fff;border:0;cursor:pointer;z-index:3;display:grid;place-items:center;box-shadow:0 20px 50px #0009}
.film-play svg{width:34px;height:34px;margin-left:4px}
.film-copy{width:min(1240px,100% - 64px);margin:0 auto;padding-top:clamp(40px,6vw,70px)}
.film-copy h1{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.014em;font-size:clamp(54px,9vw,132px);line-height:.9;margin:0}
.film-copy h1 span{display:block}
.film-copy>p:not(.eyebrow){color:#ffffffad;max-width:720px;margin:30px 0 0;font-size:clamp(17px,2vw,23px);line-height:1.5}
.film-copy .official-actions{margin-top:38px}
.film-more{background:var(--paper);color:var(--ink);padding:clamp(60px,8vw,110px) 0}
.film-more-grid{width:min(1240px,100% - 64px);margin:0 auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(34px,5vw,80px);align-items:center}
.film-more h2{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.014em;font-size:clamp(38px,5vw,64px);line-height:.95;margin:0 0 20px}
.film-more h2 span{display:block}
.film-more p:not(.eyebrow){color:var(--gray-500);font-size:17px;line-height:1.65;margin:0 0 24px}
.film-more .social a{border-color:#10101033;color:var(--ink)}
.film-more .social a:hover{color:#fff;background:var(--ink);border-color:var(--ink)}
.film-still{margin:0}
.film-still img{width:100%;height:auto;aspect-ratio:2200/1235;object-fit:cover;display:block}
.film-still figcaption{margin-top:12px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--gray-500);font-weight:800}
@media (max-width:780px){
  .film-hero{padding-bottom:50px}
  .film-copy{width:calc(100% - 36px)}
  .film-copy h1{font-size:clamp(46px,14vw,76px)}
  .film-copy .official-actions .button{width:100%}
  .film-sound{top:10px;right:10px;height:36px;padding:0 11px}
  .film-play{width:66px;height:66px;margin:-33px 0 0 -33px}
  .film-more-grid{grid-template-columns:1fr;width:calc(100% - 36px)}
  .film-page .official-footer{padding-bottom:40px}
}
@media (prefers-reduced-motion:reduce){.film-overlay{transition:none}}

/* ---------- v8 ---------- */
/* Inspection block: amber instead of orange (only this block) */
.inspection{background:#ffbb2e}
/* Brand: "AUTO REPAIR SHOP" centered under "FIX SERVICE" (text-indent compensates the trailing letter-spacing) */
.brand-copy small{align-self:stretch;text-align:center;text-indent:.29em}

/* ===================== v7: services catalog ===================== */
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.catalog-hero{padding-top:clamp(44px,6vw,72px);padding-bottom:clamp(54px,7vw,90px);overflow:visible}
.catalog-crumbs{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;margin:0 0 30px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#ffffff80}
.catalog-crumbs a{color:#ffffffb8;border-bottom:1px solid #ffffff3d;padding-bottom:2px;transition:color .16s,border-color .16s}
.catalog-crumbs a:hover{color:#fff;border-color:var(--orange)}
.catalog-crumbs i{font-style:normal;color:#ffffff4d}
.catalog-crumbs span{color:#ffffffd6;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.catalog-page .official-hero h1{overflow-wrap:anywhere}
.catalog-index .official-hero h1 span{display:block}
.catalog-h1-cat{display:flex;align-items:center;gap:clamp(14px,2vw,26px);font-size:clamp(44px,7vw,108px)!important}
.catalog-h1-icon{flex:0 0 auto;width:clamp(48px,7vw,96px);height:clamp(48px,7vw,96px);color:var(--orange)}
.catalog-h1-icon svg{width:100%;height:100%}
.catalog-h1-svc{font-size:clamp(30px,4.6vw,66px)!important;letter-spacing:-.02em!important;line-height:.98!important;max-width:1000px;text-wrap:balance}
.svc-hero-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 14px;margin:26px 0 0!important;color:#fff!important;font-size:16px!important}
.svc-hero-price b{font-family:var(--display);font-weight:800;font-size:clamp(30px,4vw,48px);line-height:1;color:var(--orange);letter-spacing:.01em}
.svc-hero-price span{color:#ffffffb3;font-size:15px;letter-spacing:.04em}
.catalog-search{position:relative;max-width:640px}
.catalog-search label{display:block}
.catalog-search input{width:100%;height:58px;padding:0 18px 0 50px;border:1px solid #ffffff5c;background:#ffffff14;color:#fff;font:600 15px/1 var(--body);border-radius:0;outline:0;transition:border-color .16s,background .16s;-webkit-appearance:none;appearance:none}
.catalog-search input::placeholder{color:#ffffff8a}
.catalog-search input:focus{border-color:var(--orange);background:#ffffff1f}
.catalog-search input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
.catalog-search label:before{content:"";position:absolute;left:18px;top:19px;width:18px;height:18px;border:2px solid #ffffffa6;border-radius:50%;box-sizing:border-box;pointer-events:none}
.catalog-search label:after{content:"";position:absolute;left:33px;top:33px;width:9px;height:2px;background:#ffffffa6;transform:rotate(45deg);transform-origin:0 50%;pointer-events:none}
.catalog-search-hero{margin-top:34px}
.catalog-results{margin-top:6px;background:#fff;color:var(--ink);border:1px solid #10101029;box-shadow:0 22px 50px #0000004a;max-height:min(420px,60vh);overflow:auto;-webkit-overflow-scrolling:touch}
.catalog-search-hero .catalog-results{position:absolute;left:0;right:0;top:100%;z-index:5}
.catalog-results a{display:block;padding:12px 16px;border-bottom:1px solid #10101014;transition:background .14s}
.catalog-results a:hover,.catalog-results a:focus{background:var(--paper)}
.catalog-results a strong{display:block;font-family:var(--display);font-weight:800;font-size:17px;line-height:1.1;text-transform:uppercase;letter-spacing:.01em}
.catalog-results a small{display:block;margin-top:4px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500);font-weight:700}
.catalog-results-none,.catalog-results-more{margin:0;padding:14px 16px;font-size:13px;color:var(--gray-500)}
.catalog-body{width:min(1240px,100% - 64px);margin:0 auto;padding:clamp(44px,6vw,80px) 0 clamp(64px,8vw,110px);display:grid;grid-template-columns:280px minmax(0,1fr);gap:clamp(34px,5vw,72px);align-items:start}
.catalog-body-index{display:block}
.cat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.cat-tile{position:relative;display:flex;flex-direction:column;min-height:196px;padding:22px 22px 20px;background:#fff;border:1px solid #10101024;transition:transform .18s,border-color .18s,box-shadow .18s}
.cat-tile:hover{transform:translateY(-3px);border-color:var(--ink);box-shadow:0 18px 40px #0000001a}
.cat-tile-icon{width:44px;height:44px;color:var(--orange);margin-bottom:auto}
.cat-tile-icon svg{width:100%;height:100%}
.cat-tile-num{position:absolute;top:22px;right:22px;font-size:10px;letter-spacing:.16em;color:var(--gray-500);font-weight:850;font-family:var(--body)}
.cat-tile strong{display:block;margin-top:22px;font-family:var(--display);font-weight:800;font-size:23px;line-height:1.02;text-transform:uppercase;letter-spacing:.01em;padding-right:28px;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere}
.cat-tile small{display:block;margin-top:8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-500);font-weight:700}
.cat-tile i{position:absolute;right:20px;bottom:18px;color:var(--orange);font-style:normal;font-size:20px;transition:transform .18s}
.cat-tile:hover i{transform:translate(4px,-3px)}
.cat-aside{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.cat-aside-title{margin:0 0 16px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:850;color:var(--gray-500)}
.cat-aside .catalog-search{margin-bottom:18px}
.cat-aside .catalog-search input{background:#fff;color:var(--ink);border-color:#10101033;height:50px}
.cat-aside .catalog-search input::placeholder{color:var(--gray-500)}
.cat-aside .catalog-search input:focus{background:#fff;border-color:var(--ink)}
.cat-aside .catalog-search label:before{border-color:#101010a6;top:15px}
.cat-aside .catalog-search label:after{background:#101010a6;top:29px}
.cat-aside .catalog-results{box-shadow:0 14px 34px #0000001f}
.cat-nav{display:block;border-top:1px solid var(--line)}
.cat-nav a{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:12px 10px 12px 14px;border-bottom:1px solid var(--line);border-left:3px solid transparent;font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.01em;font-size:16px;line-height:1.05;transition:background .14s,border-color .14s}
.cat-nav a small{font-family:var(--body);font-size:10px;letter-spacing:.06em;color:var(--gray-500);font-weight:700;white-space:nowrap}
.cat-nav a:hover{background:#fff;border-left-color:#10101055}
.cat-nav a[aria-current]{background:var(--ink);color:#fff;border-left-color:var(--orange)}
.cat-nav a[aria-current] small{color:#ffffffa6}
.catalog-main{min-width:0}
.svc-list{border-top:1px solid var(--line)}
.svc-list a{display:grid;grid-template-columns:44px minmax(0,1fr) 26px;align-items:center;gap:14px;padding:17px 4px;border-bottom:1px solid var(--line);transition:background .14s}
.svc-list a:hover{background:#fff}
.svc-num{font-size:10px;letter-spacing:.16em;color:var(--orange);font-weight:850;font-family:var(--body)}
.svc-name{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.01em;font-size:21px;line-height:1.05;overflow-wrap:anywhere}
.svc-price{display:block;margin-top:6px;font-family:var(--body);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-500);font-weight:800}
.svc-list a i{font-style:normal;color:var(--orange);font-size:20px;transition:transform .18s;text-align:right}
.svc-list a:hover i{transform:translate(4px,-3px)}
.svc-detail{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(30px,4vw,56px);align-items:start}
.svc-copy h2{margin:0 0 18px;font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.014em;font-size:clamp(26px,3vw,38px);line-height:.98}
.svc-copy h2+ul,.svc-copy h2+div{margin-bottom:42px}
.svc-features{display:grid;gap:10px}
.svc-features li{position:relative;padding:14px 16px 14px 46px;background:#fff;border:1px solid #10101024;font-size:16px;line-height:1.45;font-weight:600}
.svc-features li:before{content:"";position:absolute;left:16px;top:18px;width:14px;height:8px;border-left:3px solid var(--orange);border-bottom:3px solid var(--orange);transform:rotate(-45deg)}
.svc-desc p{margin:0 0 18px;color:var(--gray-800);font-size:17px;line-height:1.72}
.svc-price-card{position:sticky;top:20px;background:var(--ink);color:#fff;padding:26px 26px 24px}
.svc-price-label{display:block;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#ffffff8a;font-weight:850}
.svc-price-big{display:block;margin:10px 0 18px;font-family:var(--display);font-weight:800;font-size:clamp(38px,4vw,50px);line-height:1;color:var(--orange);letter-spacing:.01em}
.svc-fact{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 14px;padding:12px 0;border-top:1px solid #ffffff24}
.svc-fact span{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#ffffff8a;font-weight:850;white-space:nowrap}
.svc-fact strong{min-width:0;margin-left:auto;overflow-wrap:anywhere;font-family:var(--display);font-weight:800;font-size:19px;text-align:right;line-height:1.05;text-transform:uppercase;letter-spacing:.01em}
.svc-fact a{border-bottom:1px solid #ffffff59;transition:border-color .16s}
.svc-fact a:hover{border-color:var(--orange)}
.svc-note{margin:14px 0 0;font-size:12px;line-height:1.5;color:#ffffffa6}
.svc-price-card .button{width:100%;margin-top:12px}
.svc-price-card .button-primary{margin-top:20px}
.svc-more{margin-top:clamp(50px,6vw,80px)}
.svc-more h2{margin:0 0 20px;font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.014em;font-size:clamp(26px,3vw,40px);line-height:.98}
.catalog-page .official-footer{background:var(--ink)}
@media (max-width:1080px){
  .cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .catalog-body{grid-template-columns:240px minmax(0,1fr)}
  .svc-detail{grid-template-columns:minmax(0,1fr) 280px}
}
@media (max-width:900px){
  .catalog-body{display:block;width:calc(100% - 36px)}
  .cat-aside{position:static;margin-bottom:26px;max-height:none;overflow:visible}
  .cat-aside-title{display:none}
  .cat-nav{display:flex;justify-content:flex-start;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;border:0;margin:0 -18px;padding:2px 18px 6px}
  .cat-nav::-webkit-scrollbar{display:none}
  .cat-nav a{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #10101033;border-left-width:1px;background:#fff;font-size:12px;letter-spacing:.06em;line-height:1;white-space:nowrap;scroll-snap-align:center}
  .cat-nav a small{font-size:10px}
  .cat-nav a[aria-current]{border-color:var(--ink);border-left-color:var(--ink)}
  .svc-detail{display:block}
  .svc-price-card{position:static;margin-bottom:34px}
  .svc-copy h2+ul,.svc-copy h2+div{margin-bottom:34px}
}
@media (max-width:780px){
  .catalog-hero{padding-top:34px;padding-bottom:46px}
  .catalog-crumbs{margin-bottom:22px}
  .catalog-crumbs span{max-width:60vw}
  .catalog-h1-cat{font-size:clamp(38px,11vw,54px)!important;gap:12px}
  .catalog-h1-icon{width:44px;height:44px}
  .catalog-h1-svc{font-size:clamp(28px,8vw,40px)!important}
  .svc-hero-price b{font-size:32px}
  .catalog-page .official-actions .button{width:100%}
  .catalog-search input{height:54px;font-size:16px}
  .catalog-search label:before{top:17px}
  .catalog-search label:after{top:31px}
  .cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .cat-tile{min-height:168px;padding:16px 16px 14px}
  .cat-tile-icon{width:36px;height:36px}
  .cat-tile-num{top:16px;right:16px}
  .cat-tile strong{font-size:18px;margin-top:16px;padding-right:0}
  .cat-tile i{right:14px;bottom:12px;font-size:17px}
  .svc-list a{grid-template-columns:30px minmax(0,1fr) 20px;gap:10px;padding:14px 2px}
  .svc-name{font-size:18px}
  .svc-features li{font-size:15px}
  .svc-desc p{font-size:16px}
  .svc-price-card{padding:22px 20px 20px}
  .catalog-page .official-footer{padding-bottom:98px}
}
@media (max-width:430px){
  .catalog-crumbs{font-size:9px}
  .cat-tile strong{font-size:16px}
  .cat-tile small{font-size:10px}
}
