/* workshop floor: asphalt black, safety yellow, stencil signage */
:root{--bg:#0d0d0d;--bg2:#161616;--tx:#f2f2ee;--mu:#9a9a92;--y:#ffd400;--line:rgba(255,255,255,.14);
--sign:'Bebas Neue',Impact,sans-serif;--body:'Space Grotesk',system-ui,sans-serif;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tx);font:400 17px/1.6 var(--body)}
a{color:inherit}
.nav{position:fixed;z-index:30;top:44px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:14px max(16px,4vw)}
.logo{display:flex;align-items:center;gap:10px;font:400 30px var(--sign);letter-spacing:.04em;text-decoration:none}
.mark{display:grid;place-items:center;width:34px;height:34px;background:var(--y);color:#111;font:400 26px var(--sign);transform:skewX(-10deg)}
.nav-links{display:flex;gap:24px;align-items:center;font-weight:500}.nav-links a{text-decoration:none}
.pill{background:var(--y);color:#111;padding:9px 18px;font-weight:700}
.nav-toggle{display:none;background:none;border:0;width:42px;height:42px;padding:10px;cursor:pointer}.nav-toggle span{display:block;height:2px;background:#fff;margin:6px 0}
@media(max-width:760px){.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:100%;left:16px;right:16px;flex-direction:column;background:var(--bg2);padding:22px;border:1px solid var(--line)}.nav-links.open{display:flex}}
.sticky{position:sticky;top:0;height:100vh;overflow:hidden}
.door{height:230vh;position:relative}
.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.55) contrast(1.1);transform:scale(calc(1.15 - var(--p,0)*.15))}
.inside{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:0 max(16px,5vw) 10vh;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent 60%)}
.kick{font:500 13px var(--body);letter-spacing:.24em;text-transform:uppercase;color:var(--y);margin:0 0 10px}
h1{font:400 clamp(70px,12vw,190px)/.85 var(--sign);margin:0 0 20px;letter-spacing:.01em}
h1 span{color:var(--y)}
.lead{max-width:48ch;color:#d6d6cf;margin:0 0 26px}
.btn{display:inline-block;align-self:flex-start;background:var(--y);color:#111;text-decoration:none;font-weight:700;padding:16px 28px;transition:transform .2s}
.btn:hover,.btn:focus-visible{transform:translateY(-3px)}
.shutter{position:absolute;inset:0;transform:translateY(calc(var(--p,0)*-115%));background:#2b2b2b;box-shadow:0 30px 60px rgba(0,0,0,.6);display:grid;place-items:center}
.slats{position:absolute;inset:0;background:repeating-linear-gradient(180deg,#3a3a3a 0 34px,#262626 34px 38px,#1e1e1e 38px 40px)}
.shut-t{position:relative;font:400 clamp(60px,12vw,180px)/.9 var(--sign);text-align:center;margin:0;color:var(--y);text-shadow:0 2px 0 #000;letter-spacing:.04em}
.handle{position:absolute;bottom:22px;left:50%;width:140px;height:14px;margin-left:-70px;background:#111;border:2px solid #555;border-radius:4px}
.hazard{background:repeating-linear-gradient(-45deg,var(--y) 0 22px,#111 22px 44px);padding:8px 0;overflow:hidden}
.hz{display:flex;width:max-content;animation:mq 26s linear infinite}
.hz span{background:#111;color:var(--y);font:400 26px var(--sign);letter-spacing:.06em;padding:4px 20px;white-space:nowrap;margin-right:30px}
@keyframes mq{to{transform:translateX(-50%)}}
.gauge-sec{height:220vh;position:relative}
.gauge-sec .sticky{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;padding:100px max(16px,5vw) 40px}
.gauge-copy h2{font:400 clamp(60px,8vw,130px)/.86 var(--sign);margin:0 0 18px}
.gauge-copy p{color:var(--mu);max-width:42ch}
.gauge svg{width:100%;max-width:520px;display:block;margin:auto;overflow:visible}
.arc{stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--p,0)*100)}
.needle{transform-origin:150px 160px;transform:rotate(calc(-90deg + var(--p,0)*180deg))}
.ticks line{stroke:#666;stroke-width:2}
.read{text-align:center;margin:10px 0 0}.read b{display:block;font:400 clamp(60px,8vw,110px)/1 var(--sign);color:var(--y);font-variant-numeric:tabular-nums}.read span{color:var(--mu)}
@media(max-width:820px){.gauge-sec .sticky{grid-template-columns:1fr;gap:10px;align-content:center}.gauge-copy h2{font-size:56px}}
.uslugi{max-width:1200px;margin:0 auto;padding:clamp(70px,10vw,130px) max(16px,4vw)}
.uslugi h2,.termin h2{font:400 clamp(60px,9vw,140px)/.85 var(--sign);margin:0 0 30px}
.list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.list li{position:relative;display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:16px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);transition:padding .4s}
.no{font:400 28px var(--sign);color:var(--y)}.nm{font:500 clamp(20px,2.6vw,34px)/1.2 var(--body)}.pr{font:400 30px var(--sign);white-space:nowrap}
.list img{position:absolute;right:160px;top:50%;width:240px;height:auto;aspect-ratio:16/9;object-fit:cover;transform:translateY(-50%) scale(.6) rotate(-4deg);opacity:0;pointer-events:none;transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .3s;z-index:2}
.list li:hover img{opacity:1;transform:translateY(-50%) scale(1) rotate(-4deg)}
.list li:hover{padding-left:12px}
@media(max-width:700px){.list li{grid-template-columns:40px minmax(0,1fr);}.pr{grid-column:2;font-size:24px}.list img{display:none}}
.warsztat{position:relative;min-height:80vh;display:flex;align-items:flex-end;overflow:hidden}
.warsztat video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.45)}
.nums{position:relative;list-style:none;margin:0;padding:0 max(16px,5vw) 8vh;display:flex;gap:clamp(20px,6vw,90px);flex-wrap:wrap}
.nums b{display:block;font:400 clamp(70px,9vw,130px)/1 var(--sign);color:var(--y)}.nums span{color:#ddd}
.termin{text-align:center;padding:clamp(70px,10vw,130px) max(16px,4vw)}
.termin p{color:var(--mu)}.tel{font:400 clamp(50px,7vw,90px)/1 var(--sign);color:var(--tx)!important;margin:10px 0 20px}
.termin .btn{align-self:center}
.foot{text-align:center;padding:30px 16px;border-top:1px solid var(--line);color:var(--mu)}
a:focus-visible{outline:2px solid var(--y);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.hz{animation:none}}
