:root{
  --bg:#F8F7F4;
  --bg2:#EEECEA;
  --bg3:#E3E0DA;
  --dark:#1E1B16;
  --coal:#2A2620;
  --card:#FFFFFF;
  --gold:#F5B500;
  --gold2:#FFC72C;
  --gdim:rgba(245,181,0,.09);
  --gbdr:rgba(245,181,0,.30);
  --text:#28251F;
  --muted:#6C6762;
  --faint:#9E9A93;
  --bdr:rgba(40,37,31,.10);
  --bdr2:rgba(40,37,31,.05);
  --sh:0 2px 20px rgba(40,37,31,.07);
  --shL:0 10px 44px rgba(40,37,31,.11);
  --fd:'Barlow Condensed','Arial Narrow',sans-serif;
  --fb:'Barlow',system-ui,sans-serif;
  --fm:'Share Tech Mono','Courier New',monospace;
  --nav:86px;
  --r:5px;
  --rl:12px;
  --ease:cubic-bezier(.4,0,.2,1);
  --t:.26s;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--text);font-family:var(--fb);line-height:1.6;overflow-x:hidden;}
img,video{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{cursor:pointer;border:none;background:none;font-family:inherit;}
::-webkit-scrollbar{width:3px;}
::-webkit-scrollbar-track{background:var(--bg2);}
::-webkit-scrollbar-thumb{background:var(--gold);border-radius:2px;}

h1,h2,h3,h4{font-family:var(--fd);text-transform:uppercase;letter-spacing:-.01em;line-height:.93;font-weight:900;}

/* Topo background — paper texture from contour image */
.topo-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;}
.topo-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply;opacity:.15;}
.topo-bg.dk img{filter:invert(1);mix-blend-mode:screen;opacity:.10;}
.has-topo{position:relative;}
.has-topo > *:not(.topo-bg){position:relative;z-index:1;}

.tag{font-family:var(--fm);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);display:inline-flex;align-items:center;gap:10px;}
.tag::before{content:'';display:block;width:24px;height:2px;background:var(--gold);}
.tag.dk{color:var(--gold);}

.container{max-width:1180px;margin:0 auto;padding:0 40px;}
.section{padding:110px 0;}
.sec-alt{background:var(--bg2);}

.sh{margin-bottom:64px;}
.st{font-size:clamp(44px,5.2vw,72px);margin-top:16px;}
.st .a{color:var(--gold);}
.ss{font-size:17px;color:var(--muted);line-height:1.7;margin-top:18px;max-width:560px;}

.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--fd);font-weight:900;text-transform:uppercase;letter-spacing:.10em;font-size:15px;padding:14px 30px;border-radius:var(--r);transition:all var(--t) var(--ease);}
.bg{background:var(--gold);color:var(--dark);}
.bg:hover{background:var(--gold2);transform:translateY(-2px);box-shadow:0 8px 28px rgba(245,181,0,.30);}
.bw{border:2px solid rgba(255,255,255,.30);color:#fff;}
.bw:hover{border-color:var(--gold);color:var(--gold);}
.bd{border:2px solid rgba(40,37,31,.18);color:var(--text);}
.bd:hover{border-color:var(--dark);background:var(--dark);color:#fff;}
.wa{background:#25D366;color:#0e2a17;}
.wa:hover{background:#1ebd5b;transform:translateY(-2px);}

.rv{opacity:0;transform:translateY(22px);transition:opacity .65s var(--ease),transform .65s var(--ease);}
.rv.on{opacity:1;transform:none;}
.d1{transition-delay:.07s;}.d2{transition-delay:.15s;}.d3{transition-delay:.23s;}.d4{transition-delay:.31s;}

/* ===== NAV ===== */
.nav{position:fixed;top:0;left:0;right:0;z-index:200;height:var(--nav);display:flex;align-items:center;background:rgba(248,247,244,.93);backdrop-filter:blur(20px);border-bottom:1px solid var(--bdr2);transition:all var(--t) var(--ease);}
.nav.dk{background:rgba(30,27,22,.92);border-bottom-color:rgba(255,255,255,.06);}
.nav.sc{box-shadow:var(--sh);}
.nav-in{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1180px;margin:0 auto;padding:0 40px;gap:28px;}
.nav-logo img{height:54px;width:auto;object-fit:contain;display:block;}
.nl{display:flex;align-items:center;gap:4px;list-style:none;}
.nl > li > a{font-family:var(--fm);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:8px 14px;border-radius:var(--r);display:block;transition:color var(--t);}
.nl > li > a:hover{color:var(--text);}
.nav.dk .nl > li > a{color:rgba(255,255,255,.52);}
.nav.dk .nl > li > a:hover{color:#fff;}
.nc{background:var(--gold);color:var(--dark);font-family:var(--fd);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.10em;padding:10px 22px;border-radius:var(--r);transition:all var(--t);white-space:nowrap;}
.nc:hover{background:var(--gold2);transform:translateY(-1px);}
.nb{display:none;flex-direction:column;gap:5px;padding:8px;background:none;}
.nb span{display:block;width:22px;height:2px;background:var(--text);border-radius:1px;}
.nav.dk .nb span{background:#fff;}
.mob{display:none;position:fixed;inset:0;z-index:199;background:var(--dark);flex-direction:column;align-items:center;justify-content:center;gap:28px;}
.mob.op{display:flex;}
.mob a{font-family:var(--fd);font-size:32px;font-weight:900;text-transform:uppercase;color:rgba(255,255,255,.48);transition:color var(--t);}
.mob a:hover{color:var(--gold);}
.mc{position:absolute;top:24px;right:32px;font-family:var(--fm);font-size:11px;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.12em;cursor:pointer;}

/* ===== HERO ===== */
.hero{position:relative;width:100%;min-height:100vh;display:flex;align-items:center;overflow:hidden;background:var(--dark);}
.hero-vid{position:absolute;inset:0;z-index:0;background:linear-gradient(140deg,#1E1B16 0%,#2C2418 55%,#1A1612 100%);}
.hero-vid .placeholder{
  position:absolute;inset:0;
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.025) 0 22px, transparent 22px 44px),
    linear-gradient(120deg,#1E1B16 0%,#2C2418 55%,#1A1612 100%);
}
.hero-vid .placeholder-label{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  font-family:var(--fm);font-size:11px;letter-spacing:.20em;color:rgba(255,255,255,.18);
  text-transform:uppercase;text-align:center;line-height:2;
}
.hero-ov{position:absolute;inset:0;background:linear-gradient(108deg,rgba(30,27,22,.92) 0%,rgba(30,27,22,.62) 55%,rgba(30,27,22,.22) 100%);z-index:1;}
.hero-topo{position:absolute;inset:0;z-index:2;pointer-events:none;}
.hero-topo img{width:100%;height:100%;object-fit:cover;filter:invert(1);mix-blend-mode:screen;opacity:.13;}
.hero-c{position:relative;z-index:3;padding:calc(var(--nav) + 60px) 0 80px;}
.hey{display:flex;align-items:center;gap:12px;margin-bottom:26px;flex-wrap:wrap;}
.hey-line{width:32px;height:2px;background:var(--gold);}
.hey-txt{font-family:var(--fm);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55);}
.hh{font-size:clamp(56px,8.4vw,108px);color:#fff;margin-bottom:28px;max-width:920px;}
.hh .g{color:var(--gold);}
.hp{font-size:18px;color:rgba(255,255,255,.62);max-width:560px;line-height:1.7;margin-bottom:42px;}
.hb{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.scr{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:4;display:flex;flex-direction:column;align-items:center;gap:6px;}
.scr span{font-family:var(--fm);font-size:9px;letter-spacing:.22em;color:rgba(255,255,255,.32);text-transform:uppercase;}
.scr-l{width:1px;height:38px;background:linear-gradient(to bottom,rgba(255,255,255,.32),transparent);animation:p 2.2s ease infinite;}
@keyframes p{0%,100%{opacity:.3}50%{opacity:1}}

/* ===== STATS strip (coal accent band) ===== */
.sstrip{background:var(--coal);position:relative;overflow:hidden;}
.ssin{display:flex;position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:0 40px;}
.si{flex:1;padding:32px 24px;border-right:1px solid rgba(255,255,255,.07);}
.si:last-child{border-right:none;}
.sv{font-family:var(--fd);font-size:50px;font-weight:900;color:#fff;line-height:1;}
.sv .u{font-size:28px;color:var(--gold);}
.sl{font-family:var(--fm);font-size:10px;color:rgba(255,255,255,.36);letter-spacing:.12em;text-transform:uppercase;margin-top:8px;}

/* ===== CARDS — services ===== */
.sg{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;}
.sg.svc-field{grid-template-columns:repeat(4,1fr);}
.sc2{background:var(--card);border:1px solid var(--bdr);padding:38px 32px;position:relative;overflow:hidden;transition:all var(--t) var(--ease);}
.sc2::before{content:'';position:absolute;bottom:0;left:0;right:100%;height:3px;background:var(--gold);transition:right .38s var(--ease);}
.sc2::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(245,181,0,.03),transparent);opacity:0;transition:opacity var(--t);}
.sc2:hover{transform:translateY(-3px);box-shadow:var(--shL);}
.sc2:hover::before{right:0;}
.sc2:hover::after{opacity:1;}
.sn{font-family:var(--fm);font-size:10px;color:var(--gold);letter-spacing:.14em;margin-bottom:18px;}
.sico{width:56px;height:56px;background:var(--gdim);border:1px solid var(--gbdr);border-radius:var(--r);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.sti{font-size:22px;margin-bottom:11px;line-height:1.05;}
.sd{font-size:14px;color:var(--muted);line-height:1.65;margin-bottom:20px;}
.stgs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px;}
.stg{font-family:var(--fm);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);background:var(--bg2);border:1px solid var(--bdr);border-radius:3px;padding:4px 8px;}
.sar{display:inline-flex;align-items:center;gap:8px;font-family:var(--fm);font-size:11px;letter-spacing:.10em;text-transform:uppercase;color:var(--gold);}
.sar svg{transition:transform var(--t);}
.sc2:hover .sar svg{transform:translateX(5px);}

/* Sub-section tabs for services */
.svctabs{display:flex;gap:6px;background:var(--card);padding:6px;border-radius:var(--rl);border:1px solid var(--bdr);width:max-content;margin:0 0 44px;box-shadow:var(--sh);}
.svctabs button{padding:11px 26px;border-radius:8px;font-family:var(--fd);font-weight:900;font-size:14px;letter-spacing:.10em;text-transform:uppercase;color:var(--muted);transition:all var(--t);}
.svctabs button.active{background:var(--dark);color:#fff;}

.svc-panel{display:none;}
.svc-panel.on{display:block;animation:fade .35s var(--ease);}
@keyframes fade{from{opacity:0;transform:translateY(8px);} to{opacity:1;transform:none;}}

/* ===== Equipment grid ===== */
.eq{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;}
.eqc{background:var(--card);border:1px solid var(--bdr);padding:34px 28px;position:relative;transition:all var(--t);overflow:hidden;}
.eqc::after{content:'';position:absolute;left:0;top:0;bottom:100%;width:3px;background:var(--gold);transition:bottom .32s var(--ease);}
.eqc:hover{background:var(--bg);}
.eqc:hover::after{bottom:0;}
.eqn{font-family:var(--fm);font-size:10px;color:var(--gold);letter-spacing:.14em;margin-bottom:18px;}
.eqi{width:56px;height:56px;background:var(--gdim);border:1px solid var(--gbdr);border-radius:var(--r);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.eqc h3{font-family:var(--fd);font-size:22px;font-weight:900;text-transform:uppercase;margin-bottom:10px;line-height:1.05;}
.eqc p{font-size:14px;color:var(--muted);line-height:1.65;margin-bottom:18px;}
.eqsp{font-family:var(--fm);font-size:10px;color:var(--faint);letter-spacing:.10em;text-transform:uppercase;border-top:1px solid var(--bdr);padding-top:14px;}
.eqsp span{color:var(--text);}

/* ===== Software strip ===== */
.swstrip{background:var(--bg);padding:50px 0;border-top:1px solid var(--bdr);border-bottom:1px solid var(--bdr);}
.swin{display:flex;align-items:center;gap:36px;flex-wrap:wrap;justify-content:space-between;max-width:1180px;margin:0 auto;padding:0 40px;}
.swlbl{display:flex;align-items:center;gap:14px;}
.swlbl .dot{width:8px;height:8px;border-radius:99px;background:var(--gold);}
.swlbl span{font-family:var(--fm);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);}
.swlist{display:flex;gap:12px;flex-wrap:wrap;}
.swchip{font-family:var(--fd);font-weight:600;font-size:15px;letter-spacing:.05em;text-transform:uppercase;padding:10px 20px;border:1px solid var(--bdr);border-radius:var(--r);color:var(--text);background:var(--card);}

/* ===== PROCESS ===== */
.pg{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;position:relative;}
.prc{background:var(--card);border:1px solid var(--bdr);padding:38px 28px;position:relative;z-index:1;transition:all var(--t);}
.prc:hover{background:var(--bg);border-color:var(--gbdr);}
.pn{width:44px;height:44px;background:var(--gdim);border:1px solid var(--gbdr);border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-family:var(--fm);font-size:13px;color:var(--gold);font-weight:700;margin-bottom:24px;}
.pt{font-size:20px;margin-bottom:12px;line-height:1.05;}
.pdesc{font-size:14px;color:var(--muted);line-height:1.65;}

/* ===== RESULTS / why us — coal section ===== */
.rb{background:var(--coal);position:relative;overflow:hidden;padding:110px 0;}
.ri{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;position:relative;z-index:1;}
.rl h2{color:#fff;font-size:clamp(44px,5vw,66px);}
.rl h2 span{color:var(--gold);}
.rl p{font-size:16px;color:rgba(255,255,255,.55);line-height:1.75;margin-top:20px;max-width:540px;}
.cks{display:flex;flex-direction:column;gap:14px;margin-top:32px;}
.ck{display:flex;align-items:center;gap:12px;}
.ckd{width:7px;height:7px;border-radius:50%;background:var(--gold);flex-shrink:0;}
.ckt{font-size:15px;color:rgba(255,255,255,.62);}
.sbs{display:grid;grid-template-columns:1fr 1fr;gap:3px;}
.sb2{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);padding:32px 28px;position:relative;transition:background var(--t);}
.sb2::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold);}
.sb2:hover{background:rgba(255,255,255,.08);}
.sbv{font-family:var(--fd);font-size:56px;font-weight:900;line-height:1;color:#fff;}
.sbv .u{font-size:30px;color:var(--gold);}
.sbl{font-family:var(--fm);font-size:10px;letter-spacing:.12em;color:rgba(255,255,255,.36);text-transform:uppercase;margin-top:10px;line-height:1.5;}

/* ===== Coverage — 3 region cards ===== */
.cvgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;}
.cvcard{background:var(--card);border:1px solid var(--bdr);padding:38px 32px 36px;position:relative;overflow:hidden;transition:all var(--t) var(--ease);}
.cvcard::before{content:'';position:absolute;bottom:0;left:0;right:100%;height:3px;background:var(--gold);transition:right .38s var(--ease);}
.cvcard:hover{transform:translateY(-3px);box-shadow:var(--shL);}
.cvcard:hover::before{right:0;}
.cvn{font-family:var(--fm);font-size:10px;color:var(--gold);letter-spacing:.14em;margin-bottom:16px;}
.cvi{width:56px;height:56px;background:var(--gdim);border:1px solid var(--gbdr);border-radius:var(--r);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.cvcard h3{font-family:var(--fd);font-size:24px;font-weight:900;text-transform:uppercase;margin-bottom:12px;line-height:1.05;letter-spacing:.01em;}
.cvcard .cvsub{font-size:14px;color:var(--muted);line-height:1.65;margin-bottom:20px;}
.cvcards-list{display:flex;flex-wrap:wrap;gap:6px;}
.cvcards-list span{font-family:var(--fm);font-size:10px;letter-spacing:.10em;text-transform:uppercase;color:var(--text);background:var(--bg2);border:1px solid var(--bdr);border-radius:3px;padding:5px 9px;}
.cvband{background:var(--card);border:1px solid var(--bdr);border-radius:var(--rl);padding:28px 36px;display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:32px;box-shadow:var(--sh);flex-wrap:wrap;}
.cvband-l{display:flex;align-items:center;gap:20px;}
.cvband-l .cvband-ic{width:48px;height:48px;background:var(--gdim);border:1px solid var(--gbdr);border-radius:var(--r);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.cvband-l strong{font-family:var(--fd);font-size:22px;font-weight:900;text-transform:uppercase;letter-spacing:.02em;display:block;line-height:1.1;}
.cvband-l span{font-size:14px;color:var(--muted);}
@media(max-width:1024px){.cvgrid{grid-template-columns:1fr;}}

/* ===== CONTACT ===== */
.ci{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;}
.cfm{background:var(--card);border:1px solid var(--bdr);border-radius:var(--rl);padding:42px 38px;box-shadow:var(--sh);}
.cfh{font-family:var(--fd);font-size:22px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--gold);margin-bottom:28px;}
.fg{margin-bottom:18px;}
.fr{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.fl{font-family:var(--fm);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);display:block;margin-bottom:7px;}
.fi,.fs,.ft{width:100%;background:var(--bg);border:1px solid var(--bdr);border-radius:var(--r);color:var(--text);font-family:var(--fb);font-size:15px;padding:13px 16px;outline:none;transition:border-color var(--t);-webkit-appearance:none;}
.fi:focus,.fs:focus,.ft:focus{border-color:var(--gold);}
.fi::placeholder,.ft::placeholder{color:var(--faint);}
.fs option{background:#fff;}
.ft{resize:vertical;min-height:110px;font-family:var(--fb);}
.fsub{width:100%;background:var(--gold);color:var(--dark);font-family:var(--fd);font-size:16px;font-weight:900;text-transform:uppercase;letter-spacing:.10em;padding:16px;border-radius:var(--r);margin-top:6px;transition:all var(--t);border:none;cursor:pointer;}
.fsub:hover{background:var(--gold2);transform:translateY(-2px);}

.cds{display:flex;flex-direction:column;gap:16px;margin-top:36px;}
.cd{display:flex;gap:16px;align-items:center;background:var(--card);border:1px solid var(--bdr);border-radius:var(--r);padding:18px 22px;transition:all var(--t);}
.cd:hover{border-color:var(--gold);transform:translateX(4px);box-shadow:var(--sh);}
.cdic{width:44px;height:44px;background:var(--gdim);border:1px solid var(--gbdr);border-radius:var(--r);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--gold);}
.cdl{font-family:var(--fm);font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--faint);margin-bottom:3px;}
.cdv{font-family:var(--fd);font-weight:700;font-size:18px;color:var(--text);text-transform:uppercase;letter-spacing:.02em;}
.cd .cdv.gold{color:var(--gold);}
.cd .sub{font-size:13px;color:var(--muted);margin-top:1px;}
.cd .arr{margin-left:auto;color:var(--faint);transition:all var(--t);}
.cd:hover .arr{color:var(--gold);transform:translateX(4px);}

/* ===== FOOTER ===== */
footer{background:var(--dark);position:relative;overflow:hidden;}
.fm{padding:72px 0 48px;position:relative;z-index:1;}
.fg2{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:60px;}
.flogo img{height:42px;width:auto;filter:brightness(0) invert(1);}
.fbd{font-size:14px;color:rgba(255,255,255,.42);line-height:1.7;margin-top:18px;max-width:320px;}
.fct{font-family:var(--fm);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:18px;}
.fls{list-style:none;display:flex;flex-direction:column;gap:10px;}
.fls a{font-size:14px;color:rgba(255,255,255,.42);transition:color var(--t);}
.fls a:hover{color:#fff;}
.fb{border-top:1px solid rgba(255,255,255,.07);padding:24px 0;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1;}
.fb-in{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:1180px;margin:0 auto;padding:0 40px;flex-wrap:wrap;gap:14px;}
.fc{font-family:var(--fm);font-size:10px;color:rgba(255,255,255,.24);letter-spacing:.08em;}
.fsc{display:flex;gap:10px;}
.fsc a{width:36px;height:36px;border:1px solid rgba(255,255,255,.12);border-radius:var(--r);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.45);transition:all var(--t);}
.fsc a:hover{border-color:var(--gold);color:var(--gold);}

/* ===== WhatsApp FAB ===== */
.fab{position:fixed;bottom:24px;right:24px;z-index:100;background:#25D366;color:#fff;border-radius:99px;display:flex;align-items:center;gap:10px;padding:12px 22px 12px 16px;box-shadow:0 6px 24px rgba(37,211,102,.42);transition:all var(--t);font-family:var(--fd);font-weight:900;text-transform:uppercase;letter-spacing:.10em;font-size:14px;}
.fab:hover{transform:translateY(-2px);box-shadow:0 12px 36px rgba(37,211,102,.55);background:#1ebd5b;}
.fab svg{flex-shrink:0;}
@media(max-width:480px){.fab span{display:none;}.fab{padding:14px;}}

/* ===== Responsive ===== */
@media(max-width:1200px){.sg{grid-template-columns:repeat(2,1fr);}.sg.svc-field{grid-template-columns:repeat(2,1fr);}.eq{grid-template-columns:repeat(2,1fr);}}
@media(max-width:1024px){.pg{grid-template-columns:repeat(2,1fr);}.ri{grid-template-columns:1fr;gap:48px;}.ci{grid-template-columns:1fr;gap:48px;}.fg2{grid-template-columns:1fr 1fr;gap:40px;}}
@media(max-width:768px){.container{padding:0 20px;}.section{padding:64px 0;}.nl,.nc{display:none;}.nb{display:flex;}.ssin{flex-direction:column;padding:0 20px;}.si{border-right:none;border-bottom:1px solid rgba(255,255,255,.07);padding:22px 0;}.si:last-child{border-bottom:none;}.sg, .sg.svc-field, .eq, .pg{grid-template-columns:1fr;}.sbs{grid-template-columns:1fr 1fr;}.fg2{grid-template-columns:1fr;}.fb-in{flex-direction:column;text-align:center;}.fr{grid-template-columns:1fr;}.cfm{padding:28px 22px;}.svctabs{width:100%;}.svctabs button{flex:1;padding:11px 12px;font-size:12px;letter-spacing:.06em;}.swin{padding:0 20px;gap:18px;}.sh{margin-bottom:42px;}.st{font-size:38px;}.hh{font-size:44px;line-height:1;}.hp{font-size:16px;}.sv{font-size:38px;}.sbv{font-size:42px;}.nav-logo img{height:44px;}.nav-in{padding:0 20px;gap:14px;}.scr{display:none;}.cvgrid{grid-template-columns:1fr;}.cvband{flex-direction:column;align-items:flex-start;text-align:left;padding:24px;}}
.discl{font-family:var(--fb);font-size:12px;color:rgba(255,255,255,.34);line-height:1.6;max-width:760px;margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);}
.fmsg{margin-top:14px;font-size:14px;font-family:var(--fm);letter-spacing:.02em;}
.fmsg.ok{color:#2E7D32;}.fmsg.err{color:#b3402a;}
@media(max-width:480px){.hb{flex-direction:column;align-items:stretch;}.hb .btn{justify-content:center;}.sbs{grid-template-columns:1fr;}.hh{font-size:42px;}.st{font-size:32px;}.hero{min-height:auto;padding-bottom:60px;}.hero-c{padding-top:calc(var(--nav) + 36px);padding-bottom:24px;}.swchip{padding:8px 14px;font-size:13px;}.cd{padding:14px 16px;gap:12px;}.cdic{width:40px;height:40px;}.cdv{font-size:15px;}.nav-logo img{height:40px;}.ssin{padding:0 16px;}.container{padding:0 16px;}.cfh{font-size:18px;}.sti{font-size:20px;}.eqc h3, .cvcard h3{font-size:20px;}}

/* ===== Multi-page additions ===== */
.nav-r{display:flex;align-items:center;gap:16px;}
.ltg{display:flex;align-items:center;gap:6px;font-family:var(--fm);font-size:11px;letter-spacing:.10em;}
.lt{color:var(--muted);padding:4px 4px;transition:color var(--t);}
.lt.on{color:var(--gold);font-weight:700;}
.lt:hover{color:var(--text);}
.lt-sep{color:var(--faint);}
@media(max-width:980px){.nl li:nth-child(2),.nl li:nth-child(3){display:none;}}
.bc{font-family:var(--fm);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-bottom:18px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.bc a{color:var(--muted);} .bc a:hover{color:var(--gold);} .bc em{color:var(--text);font-style:normal;} .bc span{opacity:.5;}

/* hero video */
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;}

/* service hero */
.svchero{position:relative;min-height:60vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--dark);padding-top:var(--nav);}
.svchero-img{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center;background-color:#2A2620;}
.svchero-ov{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(30,27,22,.55) 0%,rgba(30,27,22,.30) 40%,rgba(30,27,22,.88) 100%);}
.svchero-c{position:relative;z-index:2;padding-bottom:60px;padding-top:40px;}
.svchero .bc{color:rgba(255,255,255,.5);} .svchero .bc a{color:rgba(255,255,255,.65);} .svchero .bc em{color:#fff;}
.bc-cat{font-family:var(--fm);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:14px;}
.svchero-h{font-family:var(--fd);font-weight:900;text-transform:uppercase;color:#fff;font-size:clamp(40px,6vw,80px);line-height:.95;margin-bottom:18px;}
.svchero-p{font-size:18px;color:rgba(255,255,255,.72);max-width:560px;line-height:1.6;margin-bottom:30px;}

/* service body */
.svc-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:64px;align-items:start;}
.svc-intro{font-size:19px;line-height:1.75;color:var(--text);margin-top:18px;}
.svc-side{display:flex;flex-direction:column;gap:3px;}
.svc-box{background:var(--card);border:1px solid var(--bdr);padding:30px 28px;}
.svc-box-h{font-family:var(--fd);font-size:18px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:var(--gold);margin-bottom:18px;}
.ck-list{list-style:none;display:flex;flex-direction:column;gap:12px;}
.ck-list li{display:flex;align-items:flex-start;gap:11px;font-size:15px;color:var(--text);line-height:1.5;}
.ck-list .dk{width:7px;height:7px;border-radius:50%;background:var(--gold);flex-shrink:0;margin-top:7px;}
@media(max-width:900px){.svc-layout{grid-template-columns:1fr;gap:36px;}}
.svc-body-p{font-size:16px;line-height:1.8;color:var(--muted);margin-top:18px;}
.result-callout{margin-top:30px;border-left:3px solid var(--gold);background:var(--bg2);padding:20px 24px;border-radius:0 var(--r) var(--r) 0;}
.rc-label{font-family:var(--fm);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:8px;}
.result-callout p{font-size:16px;line-height:1.6;color:var(--text);font-weight:500;}
.svc-prose{display:grid;grid-template-columns:1fr 1fr;gap:60px;}
.svc-prose .sp-col p{font-size:16px;line-height:1.8;color:var(--muted);margin-top:16px;}
@media(max-width:900px){.svc-prose{grid-template-columns:1fr;gap:34px;}}

/* service cards w/ images (home + overview) */
.svc-grid{grid-template-columns:repeat(3,1fr);}
.svc-link{display:block;padding:0;}
.svc-card-img{height:172px;background-size:cover;background-position:center;background-color:#E3E0DA;border-bottom:1px solid var(--bdr);}
.svc-card-body{padding:24px 26px 28px;}
.svc-group-h{font-family:var(--fd);font-weight:900;text-transform:uppercase;letter-spacing:.02em;font-size:24px;color:var(--text);margin-bottom:22px;}
.svc-over-top{padding-top:calc(var(--nav) + 70px);}
@media(max-width:1024px){.svc-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:680px){.svc-grid{grid-template-columns:1fr;}}

/* equipment cards w/ images */
.eqc{padding:0;}
.eq-img{height:158px;background-size:cover;background-position:center;background-color:#E3E0DA;border-bottom:1px solid var(--bdr);}
.eq-body{padding:28px 26px 30px;}

/* industries */
.indg{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;}
.indc{position:relative;overflow:hidden;border:1px solid var(--bdr);background:var(--card);transition:all var(--t) var(--ease);}
.indc:hover{transform:translateY(-3px);box-shadow:var(--shL);}
.ind-img{height:200px;background-size:cover;background-position:center;background-color:#E3E0DA;}
.ind-body{padding:26px 28px 30px;}
.indc h3{font-family:var(--fd);font-size:24px;font-weight:900;text-transform:uppercase;margin-bottom:10px;}
.indc p{font-size:14px;color:var(--muted);line-height:1.65;}
@media(max-width:768px){.indg{grid-template-columns:1fr;}}

/* deliverables gallery */
.delg{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;}
.delc{position:relative;overflow:hidden;border:1px solid var(--bdr);aspect-ratio:4/3;background:#E3E0DA;background-size:cover;background-position:center;display:flex;align-items:flex-end;}
.del-lbl{width:100%;padding:16px 18px;background:linear-gradient(to top,rgba(30,27,22,.85),transparent);color:#fff;font-family:var(--fd);font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:16px;}
.del-note{font-family:var(--fm);font-size:11px;color:var(--faint);letter-spacing:.06em;margin-top:14px;}
@media(max-width:768px){.delg{grid-template-columns:1fr 1fr;}}
@media(max-width:480px){.delg{grid-template-columns:1fr;}}

/* footer logo is a real white asset — drop the invert filter */
.flogo img{filter:none;height:44px;}
/* topo controls */
.topo-bg.faint img{opacity:.05;}
.swstrip{background:var(--bg3);}

/* disclaimer + form msg */
.discl{font-family:var(--fb);font-size:12px;color:rgba(255,255,255,.34);line-height:1.6;max-width:760px;margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);}
.fmsg{margin-top:14px;font-size:14px;font-family:var(--fm);letter-spacing:.02em;}
.fmsg.ok{color:#2E7D32;} .fmsg.err{color:#b3402a;}
