/* KAPOW layer: condensed display type, scale, contrast, chunky buttons, motion */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&display=swap');
:root{--disp:'Barlow Condensed','Arial Narrow',Impact,sans-serif}

/* 1. Display type: heavy condensed caps, tight leading */
.hero-copy h1,.history-story h2,.equipment-home-head h2,.capabilities h2,.field-heading h2,.contact-close h2,
.equipment-hero h1,.svc-hero h1,.svc h2,.equipment-contact h2,.svc-specs h2{
  font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:-.005em;line-height:.9}
.hero-copy h1{font-size:clamp(66px,9vw,148px);margin-bottom:30px;max-width:none}
.history-story h2{font-size:clamp(64px,10vw,150px);line-height:.86;letter-spacing:-.01em;word-spacing:0;margin-bottom:56px}
.equipment-home-head h2{font-size:clamp(46px,6vw,92px)}
.capabilities h2{font-size:clamp(46px,6.4vw,104px);max-width:1100px}
.field-heading h2{font-size:clamp(44px,5.6vw,88px);max-width:1000px}
.equipment-hero h1,.svc-hero h1{font-size:clamp(64px,8vw,128px);line-height:.88;letter-spacing:0}
.svc h2{font-size:clamp(52px,6vw,96px)}
.svc-intro p{font-weight:600}
.hero .hero-copy{width:min(1100px,92vw)}
.hero-copy p{font-size:clamp(18px,1.5vw,22px);max-width:620px;color:#e3e6e8}
.hero-copy{padding-top:92px}
.hero{height:clamp(700px,56vw,800px)}

/* 2. Hero photo: bigger, harder light, slow push-in */
.photo{inset:0 0 0 28%;filter:contrast(1.12) saturate(1.12);animation:push 22s ease-out both}
.fade{background:linear-gradient(90deg,#0b0d0e 0%,#0b0d0e 24%,rgba(11,13,14,.9) 38%,rgba(11,13,14,.5) 55%,rgba(11,13,14,.1) 75%,rgba(11,13,14,0) 100%)}
@keyframes push{from{transform:scale(1.0)}to{transform:scale(1.08)}}
.rig-art{opacity:.14}

/* 3. Chunky square buttons */
.primary,.equipment-button,.contact-button,.equipment-contact-button,.svc-link,.band-cta,nav .quote{
  font-family:var(--disp)!important;font-weight:700!important;font-size:20px!important;letter-spacing:.06em;text-transform:uppercase;border-radius:0}
.primary{padding:20px 40px;background:#fff;color:#0b0d0e;transition:background .2s,color .2s}
.primary:hover{background:#0b0d0e;color:#fff;outline:2px solid #fff;outline-offset:-2px}
.equipment-button,.contact-button{padding:22px 44px!important;transition:background .2s,color .2s}
.equipment-button:hover{background:#fff;color:#101315;outline:2px solid #101315;outline-offset:-2px}
nav .quote{padding:13px 22px;font-size:17px!important}

/* 4. Big factual numerals on the equipment band */
.series{display:flex;align-items:flex-end;gap:clamp(18px,4vw,64px);margin:0 0 54px;border:0}
.series b{font-family:var(--disp);font-weight:800;font-size:clamp(76px,13vw,230px);line-height:.8;color:#101315;letter-spacing:-.01em}
.series span{font-size:clamp(17px,1.5vw,22px);line-height:1.4;color:#3d4346;max-width:200px;margin-left:auto;padding-bottom:6px}
.equipment-tiles a{transition:background .2s,color .2s,transform .25s}
.equipment-tiles a strong{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:30px;letter-spacing:.01em}
.equipment-tiles a:hover{background:#101315;color:#fff;transform:translateY(-6px)}
.equipment-tiles a:hover img{filter:invert(1)}

/* 5. Contrast: black services band and black closing callout */
.capabilities{max-width:none;background:#0b0d0e;color:#fff;padding:120px max(34px,calc((100vw - 1240px)/2)) 120px}
.capabilities h2{color:#fff}
.capability-lead{color:#c3c8cb;max-width:1000px}.capability-lead strong{color:#fff}
.capabilities .equipment-button{background:#fff;color:#101315}
.capabilities .equipment-button:hover{background:#0b0d0e;color:#fff;outline-color:#fff}
.field-presence{padding-top:110px}
.contact-close{background:#0b0d0e;color:#fff;box-shadow:0 0 0 100vmax #0b0d0e;clip-path:inset(0 -100vmax);margin-top:90px;padding:110px 0}
.contact-close h2{font-size:clamp(52px,7vw,112px);color:#fff;margin:0 0 20px}
.contact-close p{color:#c3c8cb;font-size:clamp(17px,1.5vw,21px);max-width:620px}
.contact-button{background:#fff;color:#0b0d0e}
.contact-phone{color:#fff!important;font-family:var(--disp);font-weight:700;font-size:34px!important;letter-spacing:.02em}
.site-footer{margin-top:0}

/* 6. Motion */
.rv{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.photo{animation:none}}

/* services inner page */
.svc-b,.svc-hero{}
.svc-head{border-top-width:3px!important}
.svc-list li{font-family:var(--disp);font-size:26px!important;font-weight:700!important;text-transform:uppercase;letter-spacing:.01em}
.svc-photo img{filter:contrast(1.1)}

@media(max-width:800px){
  .hero{height:auto;min-height:760px;padding-bottom:60px}
  .hero-copy{padding:56px 22px 0}
  .hero-copy h1{font-size:clamp(60px,18vw,92px)}
  .photo{inset:auto 0 0 0;height:300px;background-position:center}
  .hero .fade{background:linear-gradient(180deg,#0b0d0e 0%,#0b0d0e 55%,rgba(11,13,14,.6) 78%,rgba(11,13,14,.1) 100%)}
  .history-story h2{font-size:clamp(60px,19vw,96px)}
  .capabilities{padding:72px 22px}
  .series b{font-size:clamp(56px,19vw,96px)}.series span{max-width:none;font-size:15px}
  .series{flex-wrap:wrap;gap:12px 14px}.series span{flex-basis:100%;margin:6px 0 0}
  .contact-close{padding:72px 0;margin-top:60px}
  .contact-phone{font-size:28px!important}
  .equipment-hero h1,.svc-hero h1{font-size:clamp(60px,17vw,86px)}
  .svc h2{font-size:clamp(48px,14vw,72px)}
  .svc-list li{font-size:22px!important}
}
.hero-copy h1{font-size:clamp(66px,7.4vw,124px);max-width:64vw}
.photo{inset:0 0 0 40%}
.series b{font-size:clamp(60px,9.5vw,170px)}
.series span{min-width:0;max-width:170px}
@media(max-width:800px){.hero-copy h1{max-width:none;font-size:clamp(58px,17vw,92px)}.photo{inset:auto 0 0 0}.series b{font-size:clamp(56px,19vw,96px)}.series span{max-width:none}}
@media(min-width:801px){.hero-copy h1{font-size:clamp(62px,6.9vw,116px);max-width:58vw}}
.spec-rigs b{font-family:var(--disp)!important;font-weight:800!important;font-size:clamp(84px,12vw,200px)!important;line-height:.82!important;letter-spacing:-.01em!important}
.svc-specs h2{font-size:clamp(46px,6vw,96px);margin-bottom:40px}
.svc-cards span{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.01em;font-size:clamp(30px,2.8vw,42px);line-height:.95}
.svc-hero .equipment-hero-inner{padding-top:84px!important;padding-bottom:110px!important}
.svc-hero h1{max-width:900px}
@media(max-width:800px){.spec-rigs b{font-size:clamp(64px,19vw,100px)!important}.svc-cards span{font-size:28px}.svc-hero .equipment-hero-inner{padding:54px 22px 80px!important}}
.equipment-hero.svc-hero{height:auto!important;min-height:0!important}
.svc-hero .equipment-hero-copy p{font-size:clamp(18px,1.5vw,22px)}

/* ROUND 2: scale back, add refined blue accent */
:root{--ac:#2547C9;--ac-d:#1B369E;--ac-l:#6F8CF2}
.hero-copy h1{font-size:clamp(50px,5.2vw,82px)!important;line-height:.98;max-width:none!important}
.history-story h2{font-size:clamp(46px,6vw,88px)!important;line-height:.92}
.equipment-home-head h2{font-size:clamp(36px,4vw,58px)!important}
.capabilities h2{font-size:clamp(38px,4.6vw,66px)!important}
.field-heading h2{font-size:clamp(36px,4.2vw,60px)!important}
.equipment-hero h1,.svc-hero h1{font-size:clamp(50px,5.4vw,84px)!important}
.svc h2,.svc-specs h2{font-size:clamp(38px,4.4vw,64px)!important}
.contact-close h2{font-size:clamp(40px,5vw,72px)!important}
.series b{font-size:clamp(60px,8.5vw,140px)!important}
.spec-rigs b{font-size:clamp(64px,9vw,150px)!important}
.contact-phone{font-size:28px!important}
.primary,.equipment-button,.contact-button,.equipment-contact-button,.svc-link,.band-cta{font-size:17px!important}
.primary{padding:17px 34px}
.equipment-button,.contact-button{padding:18px 36px!important}
/* blue accents */
nav .quote,.primary,.equipment-button,.contact-button,.equipment-contact-button{background:var(--ac)!important;color:#fff!important}
nav .quote:hover,.primary:hover,.equipment-button:hover,.contact-button:hover,.equipment-contact-button:hover{background:#fff!important;color:var(--ac)!important;outline:2px solid var(--ac)!important;outline-offset:-2px}
.capabilities .equipment-button:hover,.contact-close .contact-button:hover{background:#fff!important;color:var(--ac)!important}
.series b,.spec-rigs b{color:var(--ac-l)!important}
.contact-phone:hover,.site-footer a:hover,.contact-direct a:hover{color:var(--ac-l)!important}
.equipment-tiles a:hover strong{color:var(--ac)}
.svc-cards a:hover span,.svc-list li:hover{color:var(--ac)}
@media(max-width:800px){.hero-copy h1{font-size:clamp(44px,12vw,58px)!important}.history-story h2{font-size:clamp(42px,12vw,60px)!important}.series b{font-size:clamp(52px,16vw,80px)!important}.spec-rigs b{font-size:clamp(56px,16vw,84px)!important}.equipment-hero h1,.svc-hero h1{font-size:clamp(42px,12vw,58px)!important}.svc h2,.svc-specs h2{font-size:clamp(34px,10vw,48px)!important}.contact-close h2{font-size:clamp(36px,10vw,50px)!important}}
:root{--ac:#A31E24;--ac-d:#7A1519;--ac-l:#E0645C}

/* map: no visible tile edge */
.history-story .band-map{box-shadow:none!important;border:0!important;background:#0b0e10 url(assets/map-texture.jpg) center/cover!important;
 -webkit-mask-image:radial-gradient(ellipse 58% 58% at 50% 50%,#000 70%,transparent 100%);mask-image:radial-gradient(ellipse 58% 58% at 50% 50%,#000 70%,transparent 100%)}
.svc-photo{background:#0a0c0d;line-height:0}
.svc-photo img{display:block;width:100%;height:auto;aspect-ratio:2000/614;max-height:440px;object-fit:cover;object-position:50% 38%}
@media(max-width:800px){.svc-photo img{aspect-ratio:4/3;max-height:none;object-position:62% 60%}}
.svc-photo{overflow:hidden}
.svc-photo img{transform:scaleX(-1)}
@media(max-width:800px){.svc-photo img{object-position:38% 60%}}
