/* ============================================================
   HYDRA — heavy machinery catalogue
   Scoped to body.d-hydra. 1rem = 10px.
   ============================================================ */
body.d-hydra{
  --hy-y:#facc15;--hy-yd:#ca8a04;--hy-k:#16181c;--hy-steel:#2a2e35;--hy-steel2:#353a42;--hy-bg:#eef0f2;--hy-soft:#454b55;--hy-mute:#5f6670;--hy-line:#d6dade;
  --bg-primary:var(--hy-bg);--bg-secondary:#e4e7ea;--bg-card:#fff;--bg-inset:#f1f3f5;
  --fg-primary:var(--hy-k);--fg-soft:var(--hy-soft);--fg-muted:var(--hy-mute);--border-color:var(--hy-line);--border-strong:#b9bfc6;
  background:var(--hy-bg);color:var(--hy-k);font-family:'Saira',system-ui,sans-serif
}
body.d-hydra h1,body.d-hydra h2,body.d-hydra h3{font-family:'Saira Condensed','Saira',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.005em;line-height:.98}
.hy-label{display:inline-flex;align-items:center;gap:.8rem;font-size:1.2rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--hy-yd);margin-bottom:1.2rem}
.hy-label::before{content:'';width:22px;height:4px;background:var(--hy-y)}

body.d-hydra .bx-nav{background:rgba(22,24,28,.94);backdrop-filter:blur(10px)}
body.d-hydra .bx-brand-mark{border-radius:2px;background:var(--hy-y);color:var(--hy-k)}
body.d-hydra .bx-brand-txt b{color:#fff;font-family:'Saira Condensed',sans-serif;text-transform:uppercase;font-size:1.9rem;letter-spacing:.02em}
body.d-hydra .bx-brand-txt small{color:#9aa1ab}
body.d-hydra .bx-nav-links a{color:#b8bec7;font-weight:600;font-size:1.2rem;letter-spacing:.08em;text-transform:uppercase}
body.d-hydra .bx-nav-links a:hover,body.d-hydra .bx-nav-links a.active{color:var(--hy-y)}
body.d-hydra .bx-nav-links a::after{background:var(--hy-y);height:3px}
body.d-hydra .bx-nav-cta{background:var(--hy-y);color:var(--hy-k);border-radius:2px;font-weight:700}
body.d-hydra .burger span{background:#fff}

/* hero */
.hy-hero{background:linear-gradient(135deg,var(--hy-k),var(--hy-steel) 70%);color:#e9ecef;padding:calc(var(--nav-h) + 6rem) 3rem 7rem;position:relative;overflow:hidden}
.hy-hero::after{content:'';position:absolute;left:0;right:0;bottom:0;height:12px;background:repeating-linear-gradient(-45deg,var(--hy-y) 0 18px,var(--hy-k) 18px 36px)}
.hy-hero-in{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:5rem;align-items:center}
.hy-kick{display:flex;align-items:center;gap:1.2rem;font-size:1.25rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--hy-y);margin-bottom:2.4rem}
.hy-stripe{width:44px;height:12px;background:repeating-linear-gradient(-45deg,var(--hy-y) 0 6px,transparent 6px 12px)}
.hy-hero h1{font-size:clamp(5.4rem,8.6vw,11rem);color:#fff}
.hy-tag{font-size:clamp(1.7rem,1.9vw,2.2rem);color:#d1d5db;margin-top:1.4rem;font-weight:500}
.hy-lede{font-size:1.6rem;line-height:1.65;color:#aab1bb;margin-top:1.8rem;max-width:54ch}
.hy-actions{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:3.2rem}
.hy-btn{display:inline-flex;align-items:center;gap:1rem;padding:1.6rem 2.8rem;border-radius:2px;font-size:1.4rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:transform .2s,background .2s,box-shadow .2s}
.hy-btn-main{background:var(--hy-y);color:var(--hy-k);box-shadow:0 6px 0 var(--hy-yd)}
.hy-btn-main:hover{transform:translateY(2px);box-shadow:0 4px 0 var(--hy-yd)}
.hy-btn-line{border:2px solid #5b626c;color:#fff}
.hy-btn-line:hover{border-color:var(--hy-y);color:var(--hy-y)}
.hy-facts{display:flex;flex-wrap:wrap;gap:0;margin-top:3.6rem;border-top:1px solid #454b55}
.hy-facts>div{padding:1.6rem 2.4rem 0 0;margin-right:2.4rem;display:flex;flex-direction:column-reverse}
.hy-facts dt{font-size:1.1rem;letter-spacing:.12em;text-transform:uppercase;color:#8d949e}
.hy-facts dd{font-family:'Saira Condensed',sans-serif;font-size:3.2rem;font-weight:700;color:#fff;line-height:1}

.hy-stage{position:relative;height:500px}
.hy-press{position:absolute;left:4%;top:4%;width:44%;height:88%;opacity:.95}
.hy-press span{position:absolute;display:block}
.hy-frame-top{left:0;right:0;top:0;height:14%;background:linear-gradient(180deg,#4b525c,#30353c);border-radius:4px}
.hy-col{top:10%;bottom:6%;width:12%;background:linear-gradient(90deg,#3b4048,#5c636d,#3b4048)}
.hy-col-l{left:4%}.hy-col-r{right:4%}
.hy-cyl{left:36%;width:28%;top:12%;height:26%;background:linear-gradient(90deg,#a16207,var(--hy-y),#a16207);border-radius:3px;z-index:1}
.hy-ram{left:26%;width:48%;top:100%;height:0;background:linear-gradient(90deg,#9aa1ab,#e5e7eb,#9aa1ab);animation:hy-stroke 4.2s cubic-bezier(.6,0,.3,1) infinite}
.hy-platen{left:14%;right:14%;top:38%;height:6%;background:#5c636d;border-radius:2px;z-index:2;animation:hy-platen 4.2s cubic-bezier(.6,0,.3,1) infinite}
.hy-bed{left:10%;right:10%;bottom:6%;height:10%;background:linear-gradient(180deg,#4b525c,#2a2e35);border-top:4px solid var(--hy-y)}
@keyframes hy-stroke{0%,15%{height:0}45%,60%{height:120%}90%,100%{height:0}}
@keyframes hy-platen{0%,15%{transform:translateY(0)}45%,60%{transform:translateY(560%)}90%,100%{transform:translateY(0)}}
.hy-shot{position:absolute;right:0;bottom:0;width:62%;aspect-ratio:1;background:#fff;border-radius:4px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.45);border-bottom:6px solid var(--hy-y)}
.hy-shot img{width:100%;height:100%;object-fit:contain;padding:1.6rem}
.hy-gauge{position:absolute;right:52%;bottom:8%;width:90px;height:90px;border-radius:50%;background:#fff;border:6px solid #3b4048;box-shadow:0 12px 24px rgba(0,0,0,.4);z-index:3}
.hy-gauge::before{content:'';position:absolute;inset:8px;border-radius:50%;background:conic-gradient(from 225deg,#22c55e 0 90deg,var(--hy-y) 90deg 180deg,#ef4444 180deg 270deg,transparent 270deg);-webkit-mask:radial-gradient(circle,transparent 58%,#000 60%);mask:radial-gradient(circle,transparent 58%,#000 60%)}
.hy-gauge i{position:absolute;left:50%;top:50%;width:3px;height:34%;background:var(--hy-k);transform-origin:50% 0;border-radius:2px;animation:hy-needle 4.2s cubic-bezier(.6,0,.3,1) infinite}
@keyframes hy-needle{0%,15%{transform:rotate(135deg)}45%,60%{transform:rotate(300deg)}90%,100%{transform:rotate(135deg)}}

/* sections */
.hy-sec{padding:9rem 3rem 0}
.hy-sec>*{max-width:var(--max-w);margin-left:auto;margin-right:auto}
.hy-head{margin-bottom:4rem}
.hy-head>p:not(.hy-label){font-size:1.6rem;color:var(--hy-soft);margin-top:1.2rem;max-width:60ch}
.hy-sec h2{font-size:clamp(3.6rem,5vw,6rem)}

.hy-cat{display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem}
.hy-prod{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--hy-line);border-radius:4px;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}
.hy-prod:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(22,24,28,.14);border-color:var(--hy-y)}
.hy-prod-img{aspect-ratio:1;background:#fff;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--hy-line)}
.hy-prod-img img{width:100%;height:100%;object-fit:contain;padding:1.6rem;transition:transform .5s var(--ease)}
.hy-prod:hover .hy-prod-img img{transform:scale(1.06)}
.hy-prod-img i{font-size:5rem;color:#9aa1ab}
.hy-prod-n{position:absolute;left:0;top:0;background:var(--hy-k);color:var(--hy-y);font-family:'Saira Condensed',sans-serif;font-weight:700;font-size:1.4rem;padding:.4rem 1rem}
.hy-prod b{font-family:'Saira Condensed',sans-serif;text-transform:uppercase;font-size:2rem;line-height:1.05;padding:1.8rem 1.8rem .4rem}
.hy-prod small{font-size:1.3rem;color:var(--hy-mute);padding:0 1.8rem;line-height:1.5}
.hy-prod-go{margin-top:auto;padding:1.4rem 1.8rem;font-size:1.2rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--hy-line);margin-top:1.6rem;transition:background .25s}
.hy-prod:hover .hy-prod-go{background:var(--hy-y)}

.hy-steel{background:var(--hy-steel);color:#e5e7eb;margin-top:9rem;padding-bottom:9rem}
.hy-steel .hy-label{color:var(--hy-y)}
.hy-steel h2{color:#fff}
.hy-about{display:grid;grid-template-columns:.9fr 1.1fr;gap:6rem;align-items:start}
.hy-about-copy p{font-size:1.65rem;line-height:1.75;color:#c3c8cf}
.hy-about-copy p+p{margin-top:1.4rem}
.hy-hl{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#454b55;border:1px solid #454b55;margin-top:6rem}
.hy-hl li{background:var(--hy-steel2);padding:2.6rem;display:flex;flex-direction:column;gap:.6rem}
.hy-hl i{font-size:2.2rem;color:var(--hy-y);margin-bottom:1rem}
.hy-hl b{font-family:'Saira Condensed',sans-serif;text-transform:uppercase;font-size:2rem;color:#fff;line-height:1.1}
.hy-hl span{font-size:1.3rem;color:#aab1bb}

.hy-svc{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.hy-svc-item{display:flex;gap:1.6rem;padding:2.6rem;background:#fff;border-left:4px solid var(--hy-y);border-radius:2px}
.hy-svc-item i{font-size:2.4rem;color:var(--hy-k);width:36px;flex-shrink:0}
.hy-svc-item h3{font-size:2.1rem}
.hy-svc-item p{font-size:1.4rem;color:var(--hy-soft);margin-top:.4rem;line-height:1.5}

.hy-gal{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.hy-gal-item{padding:0;aspect-ratio:4/3;overflow:hidden;cursor:zoom-in;border-radius:2px}
.hy-gal-item img{width:100%;height:100%;object-fit:cover}
.hy-rev{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.6rem}
.hy-rev figure{background:#fff;padding:2.6rem;border-top:4px solid var(--hy-y)}
.hy-rev blockquote{font-size:1.6rem;line-height:1.55}
.hy-rev figcaption{margin-top:1.4rem;font-weight:700}
body.d-hydra .hours-card{max-width:none}
body.d-hydra .hours-row{border-radius:2px}

.hy-contact{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;background:#fff;border-top:8px solid var(--hy-y);padding:5rem;box-shadow:0 20px 50px rgba(22,24,28,.08)}
.hy-contact-copy>p:not(.hy-label){font-size:1.6rem;color:var(--hy-soft);margin:1.6rem 0 3rem;line-height:1.6}
body.d-hydra .ci{border-radius:2px}
body.d-hydra .ci-ico{border-radius:2px;background:var(--hy-y);color:var(--hy-k)}
body.d-hydra .contact-form{border-radius:2px;background:var(--hy-bg)}
body.d-hydra .contact-form h3{font-family:'Saira Condensed',sans-serif;text-transform:uppercase;font-size:2.6rem;margin-bottom:2rem}
body.d-hydra .cf-field input,body.d-hydra .cf-field textarea{border-radius:2px;background:#fff}
body.d-hydra .btn-onbiz{background:var(--hy-k);border-radius:2px}
body.d-hydra .btn-onbiz:hover{background:#000;color:var(--hy-y)}
.hy-map{margin-top:3rem}
body.d-hydra .biz-map{border-radius:2px}
.hy-share{max-width:var(--max-w);margin:4rem auto 0;padding:0 3rem}
body.d-hydra .bx-foot{background:var(--hy-k);color:#d1d5db;border-top:6px solid var(--hy-y);margin-top:6rem}
body.d-hydra .bx-foot p,body.d-hydra .bx-foot li,body.d-hydra .bx-foot a{color:#aab1bb}
body.d-hydra .bx-foot-col h2{color:var(--hy-y)}
body.d-hydra .bx-foot .bx-brand-txt b{color:#fff}
body.d-hydra .bx-foot .btn{border-radius:2px}
body.d-hydra .bx-foot .btn-onbiz{background:var(--hy-y);color:var(--hy-k)}
body.d-hydra .bx-foot .btn-outline{border-color:#5b626c;color:#fff}

@media (max-width:1080px){.hy-cat{grid-template-columns:repeat(3,1fr)}.hy-hl{grid-template-columns:1fr 1fr}}
@media (max-width:980px){
  .hy-hero-in,.hy-about,.hy-contact{grid-template-columns:1fr}
  .hy-stage{height:420px;max-width:520px;width:100%;margin:0 auto}
  .hy-svc{grid-template-columns:1fr 1fr}
  .hy-contact{padding:3rem}
}
@media (max-width:640px){
  .hy-hero{padding:calc(var(--nav-h) + 3rem) 1.6rem 5rem}
  .hy-sec{padding:7rem 1.6rem 0}
  .hy-steel{padding-bottom:7rem}
  .hy-stage{height:320px}
  .hy-gauge{width:64px;height:64px}
  .hy-cat{grid-template-columns:1fr 1fr;gap:1rem}
  .hy-prod b{font-size:1.7rem;padding:1.4rem 1.2rem .4rem}
  .hy-prod small{display:none}
  .hy-prod-go{padding:1.2rem}
  .hy-svc,.hy-hl,.hy-gal{grid-template-columns:1fr}
  .hy-contact{padding:2rem}
  .hy-share{padding:0 1.6rem}
}
@media (prefers-reduced-motion:reduce){.hy-ram,.hy-platen,.hy-gauge i{animation:none}}
