@font-face{font-family:'Pretendard';font-weight:45 920;font-style:normal;font-display:swap;src:url('assets/fonts/Pretendard-subset.woff2') format('woff2-variations'),url('assets/fonts/Pretendard-subset.woff2') format('woff2')}
:root{
 --navy:#192d60;--navy-9:#0c1734;--navy-8:#111f45;--navy-7:#15275a;--orange:#ff6b00;--orange-2:#ff8a2b;
 --ink:#0f1a33;--sub:#56627a;--mute:#8b95a8;--line:#e3e7ef;--line-d:rgba(255,255,255,.14);--paper:#f5f7fb;
 --hh:80px;--cb:0px;--pad:clamp(20px,4.2vw,72px);
 --ease:cubic-bezier(.7,0,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html,body{height:100%;margin:0;overflow:hidden;overscroll-behavior:none}
body{font-family:'Pretendard',-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;color:var(--ink);background:var(--navy-9);line-height:1.6;word-break:keep-all;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"ss06"}
img,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin:0}
.skip{position:absolute;left:-999px;top:8px;background:var(--orange);color:#fff;padding:8px 14px;z-index:999}.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--orange-2);outline-offset:3px}
h1[tabindex="-1"]:focus,h2[tabindex="-1"]:focus{outline:none}

/* ---------- header ---------- */
.top{position:fixed;inset:0 0 auto;height:var(--hh);z-index:60;background:#fff;border-bottom:1px solid var(--line);transition:background .5s var(--ease),border-color .5s}
.top-in{height:100%;display:flex;align-items:center;gap:40px;padding:0 var(--pad)}
.logo{position:relative;display:block;width:112px;height:48px;flex:none}
.logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .4s}
.logo-w{opacity:0}
.nav{display:flex;gap:34px;margin-left:auto;font-size:15px;font-weight:600;letter-spacing:-.01em}
.nav a{position:relative;color:var(--sub);padding:6px 0;transition:color .2s}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--orange);transition:right .35s var(--ease)}
.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}
.nav a[aria-current=page]::after{right:0}
.top-act{display:flex;align-items:center;gap:22px;padding-left:28px;border-left:1px solid var(--line);height:34px}
.top-call{display:flex;flex-direction:column;line-height:1.05;color:var(--ink)}
.top-call small{font-size:11px;color:var(--mute);font-weight:600;letter-spacing:.02em}
.top-call b{font-size:20px;font-weight:800;letter-spacing:-.02em}
.top-quote{display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 20px;background:var(--navy);color:#fff;font-weight:700;font-size:14px;transition:background .2s}
.top-quote:hover{background:var(--orange)}
.top-quote i{font-style:normal}
body[data-page=home] .top{background:transparent;border-color:var(--line-d)}
body[data-page=home] .logo-w{opacity:1}body[data-page=home] .logo-n{opacity:0}
body[data-page=home] .nav a{color:rgba(255,255,255,.72)}body[data-page=home] .nav a:hover,body[data-page=home] .nav a[aria-current=page]{color:#fff}
body[data-page=home] .top-act{border-color:var(--line-d)}
body[data-page=home] .top-call{color:#fff}body[data-page=home] .top-call small{color:rgba(255,255,255,.6)}
body[data-page=home] .top-quote{background:var(--orange)}
body[data-page=home] .top-quote:hover{background:#fff;color:var(--navy)}

/* ---------- stage / track ---------- */
.stage{position:fixed;left:0;right:0;top:0;bottom:var(--cb);overflow:hidden}
.track{display:flex;height:100%;will-change:transform;transition:transform .9s var(--ease)}
.pg{position:relative;flex:0 0 100%;width:100%;height:100%;overflow:hidden;background:#fff;padding-top:var(--hh)}
.pg-in{height:100%;padding:clamp(28px,5.2vh,56px) var(--pad) 104px;display:flex;flex-direction:column}

/* reveal (stagger on page enter) */
.r{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .9s var(--ease)}
.pg.on .r{opacity:1;transform:none}
.pg.on .r:nth-of-type(1){transition-delay:.25s}
.pg.on .label{transition-delay:.2s}.pg.on h1,.pg.on h2{transition-delay:.3s}.pg.on .intro,.pg.on .hero-lead{transition-delay:.4s}
.pg.on .svc-row:nth-child(1),.pg.on .steps li:nth-child(1),.pg.on .why>div:nth-child(1),.pg.on .faq details:nth-child(1){transition-delay:.45s}
.pg.on .svc-row:nth-child(2),.pg.on .steps li:nth-child(2),.pg.on .why>div:nth-child(2),.pg.on .faq details:nth-child(2){transition-delay:.53s}
.pg.on .svc-row:nth-child(3),.pg.on .steps li:nth-child(3),.pg.on .why>div:nth-child(3),.pg.on .faq details:nth-child(3){transition-delay:.61s}
.pg.on .steps li:nth-child(4),.pg.on .faq details:nth-child(4){transition-delay:.69s}
.pg.on .faq details:nth-child(5){transition-delay:.77s}
.pg.on .hero-cta,.pg.on .ton,.pg.on .film{transition-delay:.5s}
.pg.on .quick,.pg.on .body-types{transition-delay:.62s}
.pg.on .fine,.pg.on .motto,.pg.on .faq-card,.pg.on .foot{transition-delay:.75s}
/* parallax-ish media */
.hero-bg img,.split-media img,.veh-bg img,.ct-bg img{transform:scale(1.1);transition:transform 1.8s var(--ease)}
.pg.on .hero-bg img,.pg.on .split-media img,.pg.on .veh-bg img,.pg.on .ct-bg img{transform:scale(1.02)}

/* ---------- type ---------- */
.label{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:700;letter-spacing:.22em;color:var(--sub);margin-bottom:22px}
.label b{color:var(--orange);font-weight:800;letter-spacing:.04em;font-size:13px}
.label span{width:36px;height:1px;background:currentColor;opacity:.5}
h2{font-size:clamp(30px,3.15vw,50px);line-height:1.18;letter-spacing:-.035em;font-weight:800;color:var(--ink)}
.intro{font-size:clamp(15px,1.12vw,17px);line-height:1.75;color:var(--sub);margin-top:20px;max-width:560px}
.fine{font-size:12px;color:var(--mute);margin-top:auto;padding-top:16px}
.dark{background:var(--navy-9);color:#fff}
.dark h2,.dark h3{color:#fff}.dark .label{color:rgba(255,255,255,.7)}.dark .intro{color:rgba(255,255,255,.72)}.dark .fine{color:rgba(255,255,255,.5)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;height:60px;padding:0 26px 0 28px;font:inherit;font-weight:700;font-size:16px;border:1px solid transparent;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.btn i{font-style:normal;font-size:18px;transition:transform .3s var(--ease)}
.btn:hover i{transform:translateX(5px)}
.btn-o{background:var(--orange);color:#fff}.btn-o:hover{background:#ff7d1f}
.btn-ghost{border-color:rgba(255,255,255,.45);color:#fff;background:rgba(255,255,255,.04);backdrop-filter:blur(6px)}
.btn-ghost:hover{background:#fff;color:var(--navy)}
.btn-block{width:100%}

/* ---------- 1 HERO ---------- */
.hero{background:var(--navy-9);color:#fff;display:flex;flex-direction:column}
.hero-bg{position:absolute;inset:0;overflow:hidden}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,18,42,.94) 0%,rgba(12,23,52,.82) 34%,rgba(12,23,52,.35) 66%,rgba(12,23,52,.15) 100%),linear-gradient(0deg,rgba(9,18,42,.85) 0%,rgba(9,18,42,0) 38%)}
.hero-in{position:relative;flex:1;display:flex;flex-direction:column;justify-content:center;padding:0 var(--pad);max-width:1180px}
.kicker{font-size:13px;font-weight:700;letter-spacing:.2em;color:var(--orange-2);margin-bottom:26px}
.hero h1{font-size:clamp(40px,5.1vw,84px);line-height:1.08;letter-spacing:-.045em;font-weight:800}
.hero h1 em{font-style:normal;color:var(--orange)}
.arrow{display:inline-block;width:.5em;height:.5em;margin-left:.2em;vertical-align:.06em;background:var(--orange);clip-path:polygon(0 0,100% 50%,0 100%,30% 50%)}
.hero-lead{font-size:clamp(16px,1.25vw,19px);line-height:1.75;color:rgba(255,255,255,.8);margin-top:28px}
.hero-cta{display:flex;gap:12px;margin-top:40px;flex-wrap:wrap}
.hero-cta .btn{min-width:250px}
.quick{position:relative;list-style:none;margin:0 var(--pad) 92px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-d);background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02));backdrop-filter:blur(10px)}
.quick li{padding:22px 26px 24px;border-right:1px solid var(--line-d);display:grid;gap:4px}
.quick li:last-child{border-right:0}
.quick span{font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--orange-2)}
.quick b{font-size:19px;font-weight:700;letter-spacing:-.02em}
.quick small{font-size:13px;color:rgba(255,255,255,.62)}
.q-call{background:var(--orange)}
.q-call span,.q-call small{color:rgba(255,255,255,.85)}
.q-call b{font-size:24px;font-weight:800}

/* ---------- SPLIT (services / why) ---------- */
.split{display:grid;grid-template-columns:5fr 7fr}
.split-r{grid-template-columns:7fr 5fr}
.split-media{position:relative;margin:0;overflow:hidden;background:var(--navy-9)}
.split-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.split-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,23,52,0) 50%,rgba(12,23,52,.75) 100%)}
.split-media figcaption{position:absolute;left:var(--pad);bottom:100px;z-index:1;color:#fff;font-size:clamp(22px,1.9vw,30px);font-weight:700;letter-spacing:-.03em;line-height:1.3;max-width:300px}
.split-body{display:flex;flex-direction:column;padding:clamp(28px,5.2vh,56px) var(--pad) 104px clamp(32px,4.4vw,80px);min-height:0}
.split-r .split-body{padding-left:var(--pad);padding-right:clamp(32px,4.4vw,80px)}
.svc{margin-top:clamp(18px,3vh,34px);border-top:1px solid var(--ink)}
.svc-row{display:grid;grid-template-columns:44px 84px 1fr;gap:22px;align-items:center;padding:clamp(12px,1.9vh,20px) 0;border-bottom:1px solid var(--line)}
.svc-n{font-size:13px;font-weight:800;color:var(--orange);align-self:start;padding-top:4px}
.svc-row img{width:84px;height:84px;object-fit:cover;background:var(--paper)}
.svc-row h3{font-size:19px;font-weight:700;letter-spacing:-.02em;margin-bottom:4px}
.svc-row p{font-size:14.5px;color:var(--sub);line-height:1.65}

/* ---------- 3 VEHICLES ---------- */
.veh-bg{position:absolute;inset:0;overflow:hidden}
.veh-bg img{width:100%;height:100%;object-fit:cover}
.veh-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,18,42,.9) 0%,rgba(9,18,42,.78) 45%,rgba(9,18,42,.96) 100%)}
.veh .pg-in{position:relative}
.head-row{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:end}
.head-row .intro{margin:0 0 6px}
.ton{display:grid;grid-template-columns:repeat(7,1fr);margin-top:clamp(24px,4.4vh,48px);border-top:1px solid rgba(255,255,255,.5);border-bottom:1px solid var(--line-d)}
.ton div{padding:clamp(16px,2.6vh,28px) 18px;border-right:1px solid var(--line-d);transition:background .3s}
.ton div:last-child{border-right:0}
.ton div:hover{background:rgba(255,107,0,.12)}
.ton b{display:block;font-size:clamp(30px,2.9vw,46px);font-weight:800;letter-spacing:-.04em;line-height:1}
.ton b small{font-size:.42em;font-weight:600;margin-left:3px;color:var(--orange-2);letter-spacing:0}
.ton span{display:block;margin-top:12px;font-size:13px;color:rgba(255,255,255,.66)}
.body-types{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:clamp(16px,3vh,32px)}
.body-types div{padding:4px 28px 0 0;margin-right:28px;border-right:1px solid var(--line-d)}
.body-types div:last-child{border-right:0}
.body-types h3{font-size:18px;font-weight:700;display:flex;align-items:center;gap:10px;margin-bottom:6px}
.body-types h3::before{content:"";width:8px;height:8px;background:var(--orange)}
.body-types p{font-size:14px;color:rgba(255,255,255,.66)}

/* ---------- 4 PROCESS ---------- */
.proc{background:var(--paper)}
.proc-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,4.4vw,80px);align-items:stretch}
.proc-text{display:flex;flex-direction:column;min-height:0}
.steps{list-style:none;margin:clamp(18px,3.4vh,36px) 0 0;padding:0;border-top:1px solid var(--ink)}
.steps li{display:grid;grid-template-columns:86px 1fr;column-gap:16px;padding:clamp(12px,2vh,20px) 0;border-bottom:1px solid #d9dfe9}
.steps span{grid-row:1/3;font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--orange);padding-top:5px}
.steps b{font-size:18px;font-weight:700;letter-spacing:-.02em}
.steps p{font-size:14px;color:var(--sub);margin-top:2px}
.film{position:relative;margin:0;background:var(--navy-9);display:flex;flex-direction:column;min-height:0;overflow:hidden}
.film video{flex:1;width:100%;min-height:0;object-fit:cover;background:#000}
.film figcaption{display:flex;justify-content:space-between;gap:16px;padding:16px 22px;color:rgba(255,255,255,.7);font-size:13px;border-top:1px solid var(--line-d)}
.film figcaption b{color:#fff;letter-spacing:.14em;font-size:11px;font-weight:800}

/* ---------- 5 WHY ---------- */
.why{margin-top:clamp(18px,3.4vh,36px);display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}
.why>div{padding:clamp(18px,3vh,28px) 24px 8px 0;margin-right:24px;border-right:1px solid var(--line)}
.why>div:last-child{border-right:0;margin-right:0}
.why span{font-size:44px;font-weight:800;color:var(--line);letter-spacing:-.04em;line-height:1;display:block;-webkit-text-stroke:1px #c9d1df;color:transparent}
.why h3{font-size:20px;font-weight:700;margin:14px 0 8px;letter-spacing:-.02em}
.why p{font-size:14.5px;color:var(--sub);line-height:1.7}
.motto{margin-top:auto;padding-top:20px;font-size:13px;font-weight:700;letter-spacing:.08em;color:var(--navy)}

/* ---------- 6 FAQ ---------- */
.faq-grid{display:grid;grid-template-columns:4fr 8fr;gap:clamp(32px,5vw,96px)}
.faq-side{display:flex;flex-direction:column}
.faq-card{margin-top:auto;background:var(--navy);color:#fff;padding:28px 28px 26px;display:grid;gap:6px}
.faq-card small{font-size:13px;color:rgba(255,255,255,.7)}
.faq-card a{display:flex;justify-content:space-between;align-items:center;font-size:32px;font-weight:800;letter-spacing:-.03em}
.faq-card a i{font-style:normal;color:var(--orange-2);font-size:24px}
.faq-card span{font-size:13px;color:rgba(255,255,255,.6)}
.faq{border-top:1px solid var(--ink);align-self:start}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:52px 1fr 24px;align-items:center;padding:clamp(16px,2.6vh,24px) 0;font-size:clamp(16px,1.3vw,19px);font-weight:700;letter-spacing:-.02em}
.faq summary::-webkit-details-marker{display:none}
.faq summary span{font-size:13px;font-weight:800;color:var(--orange)}
.faq summary::after{content:"";width:14px;height:14px;justify-self:end;background:linear-gradient(var(--ink),var(--ink)) center/14px 1.5px no-repeat,linear-gradient(var(--ink),var(--ink)) center/1.5px 14px no-repeat;transition:transform .3s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 40px 22px 52px;font-size:15px;color:var(--sub);line-height:1.75}

/* ---------- 7 CONTACT ---------- */
.contact{display:grid;grid-template-columns:5fr 7fr;background:var(--paper)}
.ct-side{position:relative;overflow:hidden;background:var(--navy-9);color:#fff}
.ct-bg{position:absolute;inset:0;overflow:hidden}
.ct-bg img{width:100%;height:100%;object-fit:cover;opacity:.35}
.ct-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,23,52,.85),rgba(9,18,42,.97))}
.ct-in{position:relative;height:100%;display:flex;flex-direction:column;padding:clamp(28px,5.2vh,56px) clamp(32px,4vw,64px) 104px var(--pad)}
.ct-in h2{color:#fff}.ct-in .label{color:rgba(255,255,255,.7)}.ct-in .intro{color:rgba(255,255,255,.72)}
.big-phone{display:block;margin-top:clamp(20px,4vh,40px);font-size:clamp(40px,3.6vw,58px);font-weight:800;letter-spacing:-.035em;line-height:1}
.big-phone small{display:block;font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--orange-2);margin-bottom:10px}
.mail{margin-top:14px;font-size:15px;color:rgba(255,255,255,.7);border-bottom:1px solid rgba(255,255,255,.3);align-self:flex-start;padding-bottom:2px}
.foot{margin-top:auto;padding-top:18px;border-top:1px solid var(--line-d);display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12.5px;color:rgba(255,255,255,.55)}
.foot b{color:#fff;font-weight:700}
.ct-form{display:flex;align-items:center;padding:clamp(24px,4vh,48px) var(--pad) 100px clamp(32px,4.4vw,80px);min-height:0}
.form{width:100%;max-width:720px;display:grid;gap:clamp(12px,2vh,20px)}
.form-head{display:flex;justify-content:space-between;align-items:end;padding-bottom:clamp(10px,1.8vh,18px);border-bottom:1px solid var(--ink)}
.form-head h3{font-size:clamp(22px,1.8vw,28px);font-weight:800;letter-spacing:-.03em}
.form-head span{font-size:12px;color:var(--mute)}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form label{display:grid;gap:8px;min-width:0}
.lb{font-size:13px;font-weight:700;color:var(--ink);letter-spacing:-.01em}
.lb em{font-style:normal;color:var(--orange);margin-left:2px}
.lb small{font-weight:500;color:var(--mute);margin-left:6px;font-size:12px}
.form input:not([type=checkbox]),.form textarea{display:block;width:100%;min-width:0;margin:0;font:inherit;font-size:16px;font-weight:500;color:var(--ink);background:#fff;border:1px solid #cdd4e1;border-radius:0;padding:14px 16px;line-height:1.4;-webkit-appearance:none;appearance:none;transition:border-color .2s,box-shadow .2s}
.form textarea{resize:none;height:clamp(64px,10vh,104px)}
.form input:not([type=checkbox]):hover,.form textarea:hover{border-color:#a9b4c8}
.form input:not([type=checkbox]):focus,.form textarea:focus{outline:none;border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}
.form input::placeholder,.form textarea::placeholder{color:#a0a9ba}
.form .invalid{border-color:#d0342c!important;box-shadow:inset 0 0 0 1px #d0342c!important}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.consent{grid-template-columns:20px 1fr!important;align-items:start;gap:10px!important}
.consent input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--navy)}
.consent span{font-size:13.5px;color:var(--sub)}
.form-note{font-size:12px;color:var(--mute)}
.status{font-size:14px;font-weight:700;color:var(--navy);min-height:0}
.status:empty{display:none}
.status.ok{color:#0f6b35;background:#eaf6ef;border-left:3px solid #1a9b52;padding:14px 16px}
.status.err{color:#b4231c}

/* ---------- pager ---------- */
.pager{position:fixed;left:var(--pad);right:var(--pad);bottom:28px;z-index:55;display:flex;align-items:center;gap:22px;pointer-events:none;color:var(--ink)}
.pager>*{pointer-events:auto}
.pg-count{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:700;letter-spacing:.06em;font-variant-numeric:tabular-nums}
.pg-count b{font-size:15px;font-weight:800;color:var(--orange)}
.pg-line{position:relative;width:120px;height:1px;background:currentColor;opacity:.35}
.pg-line i{position:absolute;left:0;top:-1px;height:3px;background:var(--orange);width:14.28%;transition:width .9s var(--ease)}
.pg-count .pg-line{opacity:1;background:rgba(127,140,165,.4)}
.pg-name{font-size:13px;font-weight:600;color:var(--sub)}
.dots{display:none}
.pg-arrows{margin-left:auto;display:flex}
.pg-btn{width:52px;height:52px;border:1px solid rgba(127,140,165,.45);background:rgba(255,255,255,.85);backdrop-filter:blur(6px);color:var(--ink);font-size:18px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.pg-btn+.pg-btn{border-left:0}
.pg-btn:hover:not(:disabled){background:var(--navy);color:#fff;border-color:var(--navy)}
.pg-btn:disabled{opacity:.35;cursor:default}
body[data-page=home] .pager,body[data-page=vehicles] .pager{color:#fff}
body[data-page=home] .pg-name,body[data-page=vehicles] .pg-name{color:rgba(255,255,255,.7)}
body[data-page=home] .pg-btn,body[data-page=vehicles] .pg-btn{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.35)}
body[data-page=home] .pg-btn:hover:not(:disabled),body[data-page=vehicles] .pg-btn:hover:not(:disabled){background:#fff;color:var(--navy)}
body[data-page=home] .quick{margin-bottom:96px}
/* split pages: pager sits over the dark image column on the left */
body[data-page=services] .pg-count,body[data-page=services] .pg-name,body[data-page=contact] .pg-count,body[data-page=contact] .pg-name{color:#fff}
body[data-page=services] .pg-name,body[data-page=contact] .pg-name{color:rgba(255,255,255,.7)}

.callbar{display:none}

/* ---------- laptop height ---------- */
@media(min-width:900px) and (max-height:830px){
 :root{--hh:72px}
 .pg-in,.split-body,.ct-in{padding-bottom:92px}
 .pager{bottom:20px}
 .pg-btn{width:46px;height:46px}
 h2{font-size:clamp(28px,2.8vw,40px)}
 .hero h1{font-size:clamp(40px,4.7vw,70px)}
 .hero-cta{margin-top:30px}.hero-lead{margin-top:20px}.kicker{margin-bottom:18px}
 .quick li{padding:16px 22px 18px}.quick b{font-size:17px}.q-call b{font-size:21px}
 body[data-page=home] .quick{margin-bottom:84px}
 .intro{margin-top:14px;font-size:15px}
 .label{margin-bottom:16px}
 .svc-row{grid-template-columns:40px 72px 1fr}.svc-row img{width:72px;height:72px}.svc-row p{font-size:14px}
 .steps b{font-size:17px}.steps p{font-size:13.5px}
 .why p{font-size:14px}
 .faq summary{font-size:16px}
 .form input:not([type=checkbox]){padding:12px 14px}
 .big-phone{font-size:44px}
}

/* ---------- tablet / mobile ---------- */
@media(max-width:899px){
 :root{--hh:60px;--cb:56px;--pad:20px}
 .nav,.top-act .top-quote{display:none}
 .top-in{gap:16px}
 .top-act{margin-left:auto;border:0;padding:0}
 .logo{width:92px;height:40px}
 .top-call b{font-size:18px}
 .pg{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
 .pg-in,.split-body,.ct-in{padding:22px var(--pad) 84px}
 h2{font-size:clamp(25px,6.8vw,32px)}
 .label{margin-bottom:12px;font-size:11px}
 .intro{font-size:14px;margin-top:10px;line-height:1.65}
 /* hero */
 .hero-in{padding:0 var(--pad)}
 .kicker{font-size:11px;letter-spacing:.14em;margin-bottom:14px}
 .hero h1{font-size:clamp(32px,9.4vw,44px)}
 .hero-lead{font-size:14.5px;margin-top:14px}
 .hero-lead br{display:none}
 .hero-cta{margin-top:22px;flex-direction:column;gap:8px}.hero-cta .btn{min-width:0;height:52px}
 .quick{grid-template-columns:1fr 1fr;margin:0 var(--pad) 72px}
 body[data-page=home] .quick{margin-bottom:72px}
 .quick li{padding:12px 14px;border-bottom:1px solid var(--line-d)}
 .quick li:nth-child(2){border-right:0}
 .quick b{font-size:14.5px}.quick small{display:none}.q-call b{font-size:17px}
 .hero-bg::after{background:linear-gradient(0deg,rgba(9,18,42,.96) 0%,rgba(9,18,42,.7) 55%,rgba(9,18,42,.45) 100%)}
 /* split */
 .split,.split-r{display:flex;flex-direction:column}
 .split-media{flex:0 0 22vh;min-height:130px}
 .split-r .split-media{order:-1}
 .split-media figcaption{display:none}
 .svc{margin-top:14px}
 .svc-row{grid-template-columns:28px 1fr;gap:12px;padding:12px 0}
 .svc-row img{display:none}
 .svc-row h3{font-size:16px}.svc-row p{font-size:13px;line-height:1.55}
 .fine{display:none}
 /* vehicles */
 .head-row{grid-template-columns:1fr;gap:0}
 .ton{grid-template-columns:repeat(4,1fr);margin-top:18px}
 .ton div{padding:12px 10px;border-bottom:1px solid var(--line-d)}
 .ton div:nth-child(4){border-right:0}
 .ton b{font-size:24px}.ton span{display:none}
 .body-types{grid-template-columns:1fr;gap:10px;margin-top:16px}
 .body-types div{border:0;margin:0;padding:0}
 .body-types h3{font-size:15px;margin-bottom:2px}.body-types p{font-size:13px}
 /* process */
 .proc-grid{grid-template-columns:1fr;gap:16px}
 .steps{margin-top:14px}
 .steps li{grid-template-columns:62px 1fr;padding:10px 0}
 .steps b{font-size:15.5px}.steps p{font-size:13px}
 .film{flex:none}.film video{aspect-ratio:16/9;flex:none}.film figcaption{display:none}
 /* why */
 .why{grid-template-columns:1fr;margin-top:14px}
 .why>div{border-right:0;margin:0;padding:12px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:40px 1fr;column-gap:8px}
 .why span{font-size:26px;grid-row:1/3}
 .why h3{font-size:16px;margin:0 0 2px}.why p{font-size:13px}
 .motto{display:none}
 /* faq */
 .faq-grid{grid-template-columns:1fr;gap:14px}
 .faq-side .intro,.faq-card{display:none}
 .faq summary{grid-template-columns:36px 1fr 20px;font-size:15px;padding:14px 0}
 .faq details p{padding:0 0 14px 36px;font-size:13.5px}
 /* contact */
 .contact{display:flex;flex-direction:column}
 .ct-in{padding:22px var(--pad) 20px}
 .ct-in .intro,.mail,.foot{display:none}
 .big-phone{font-size:30px;margin-top:12px}.big-phone small{display:none}
 .ct-form{padding:20px var(--pad) 28px;align-items:flex-start}
 .form .row{gap:10px}
 .form-head h3{font-size:18px}
 .form input:not([type=checkbox]),.form textarea{padding:12px 13px}
 .form textarea{height:72px}
 /* pager */
 .pager{left:12px;right:12px;bottom:calc(var(--cb) + env(safe-area-inset-bottom) + 10px);gap:10px}
 .pg-name,.pg-line{display:none}
 .pg-count{background:rgba(255,255,255,.92);color:var(--ink);padding:0 12px;height:38px;border:1px solid var(--line)}
 body[data-page] .pg-count{color:var(--ink)}
 .pg-btn{width:40px;height:40px;font-size:15px}
 body[data-page=contact] .pager{display:none}
 /* callbar */
 .callbar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:1.4fr 1fr;padding-bottom:env(safe-area-inset-bottom);background:var(--navy)}
 .callbar a{display:flex;align-items:center;justify-content:center;height:56px;font-weight:800;font-size:15px;color:#fff;letter-spacing:-.01em}
 .cb-call{background:var(--orange)}
 .stage{bottom:calc(var(--cb) + env(safe-area-inset-bottom))}
}
@media (prefers-reduced-motion:reduce){
 .track{transition:none}
 .r{opacity:1!important;transform:none!important;transition:none!important}
 .hero-bg img,.split-media img,.veh-bg img,.ct-bg img{transform:none!important;transition:none!important}
}
/* iteration 2: fill the viewport */
@media(min-width:900px){
 .svc{flex:1;display:flex;flex-direction:column;min-height:0}
 .svc-row{flex:1 1 0;min-height:0}
 .svc-row img{width:clamp(72px,9vh,112px);height:clamp(72px,9vh,112px)}
 .svc-row{grid-template-columns:44px auto 1fr}
 .steps{flex:1;display:flex;flex-direction:column}
 .steps li{flex:1 1 0;align-content:center}
 .why{flex:1}
 .why>div{display:flex;flex-direction:column}
 .why>div p{max-width:320px}
 .why>div::after{content:"";margin-top:auto;width:28px;height:2px;background:var(--orange);opacity:.9}
 .veh .ton{flex:1;max-height:300px}
 .ton div{display:flex;flex-direction:column;justify-content:flex-end}
 .faq-side .faq-card{margin-top:auto}
}
.pg-count #pgTot::before{content:"/ ";opacity:.5;margin-right:2px}
@media(min-width:900px){.pg-count #pgTot::before{content:none}}
@media(max-width:899px){
 .pg-in,.split-body,.ct-in{height:auto;min-height:100%}
 .split .split-body{min-height:0}
 .proc-grid{display:flex;flex-direction:column}
}
/* iteration 3 */
@media(min-width:900px){.veh .ton{max-height:none}.ton div{padding-bottom:clamp(18px,3vh,30px)}.ton b{font-size:clamp(34px,3.3vw,54px)}}
@media(max-width:899px){.ton span{display:block;font-size:11px;margin-top:6px;line-height:1.35}.ton div{padding:12px 8px}.veh .pg-in{justify-content:flex-start}}
.film{background:var(--navy-9);justify-content:center}
.film video{flex:none;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:var(--navy-9)}
@media (min-width:900px){.proc .film{align-self:center;height:auto;max-height:none}}
/* responsive QA */
:focus:not(:focus-visible){outline:none}
.pg:focus,.track:focus,main:focus,section:focus{outline:none}
.ton b small{font-size:max(.42em,11px)}
@media(max-width:899px){
 .faq-grid{align-content:start}
 .pg-in,.split-body{padding-bottom:100px}
 body[data-page=contact] .pg-in,body[data-page=contact] .ct-in{padding-bottom:28px}
}
@media(min-width:600px) and (max-width:899px) and (min-height:700px){
 .pg-in{justify-content:safe center}
 .faq-grid{align-content:safe center}
 .pg h2{font-size:clamp(34px,5.4vw,44px)}
 .faq-side .intro{display:block}
 .split-media{flex:1 1 30vh;min-height:220px}
 .split .split-body{flex:none}
 .faq-card{display:grid;margin-top:18px}
 .faq summary{font-size:17px;padding:18px 0}
 .faq details p{font-size:15px}
}
@media(max-width:899px){.split .split-body{flex:1 0 auto;min-height:auto}.split-media{flex-shrink:0}}
@media(min-width:600px) and (max-width:899px) and (min-height:700px){.split .split-body{flex:0 0 auto}}
@media(max-width:899px) and (max-height:500px) and (orientation:landscape){.split-media{display:none}.pg h2{font-size:24px}.pg-in,.split-body,.ct-in{padding-top:14px}}
@media(min-width:900px) and (orientation:portrait) and (min-height:1100px){.split-body,.pg-in{justify-content:safe center}.split-body>*,.pg-in>*{flex-grow:0!important}}
