
:root{
  --navy:#082a68; --navy2:#0c4fb3; --cyan:#64eaff; --blue:#168dff;
  --green:#75ed00; --gold:#d8ae49; --text:#eef5ff; --muted:#aec2de;
  --line:rgba(255,255,255,.12); --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#0a4eae;color:var(--text);font-family:"IBM Plex Sans",system-ui,sans-serif;line-height:1.55}
a{color:inherit}
.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}
.site-nav{position:fixed;z-index:99;top:0;left:0;right:0;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(1,10,29,.62),rgba(1,10,29,.08));transition:.3s}
.site-nav.scrolled{background:rgba(5,42,104,.92);backdrop-filter:blur(16px);box-shadow:0 12px 35px rgba(0,0,0,.24)}
.nav-wrap{height:70px;width:min(1380px,calc(100% - 48px));margin:auto;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:205px}
.brand img{width:47px;height:47px;object-fit:cover;border-radius:50%;filter:drop-shadow(0 0 14px rgba(68,221,255,.26))}
.brand-copy{display:flex;flex-direction:column;line-height:1}
.brand-copy strong{font-size:20px;letter-spacing:.12em}
.brand-copy small{font-size:8px;letter-spacing:.23em;color:#c4d6ed;margin-top:5px}
.desktop-nav{margin-left:auto;display:flex;gap:27px;align-items:center}
.desktop-nav a{text-decoration:none;font-size:13px;color:#e4edf9;position:relative}
.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:linear-gradient(90deg,var(--cyan),var(--green));transition:.2s}
.desktop-nav a:hover:after{right:0}
.nav-cta{padding:10px 16px;border:1px solid rgba(102,224,255,.62);text-decoration:none;font-size:12px;font-weight:700}
.nav-toggle,.mobile-nav{display:none}

.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;background:#0a4fae}
.hero-bg{position:absolute;inset:0;background:url('assets/argus-hero-16x9.png') center/cover no-repeat;transform:scale(1.01)}
.hero-overlay{position:absolute;inset:0;background:
linear-gradient(90deg,rgba(6,45,111,.84),rgba(7,68,150,.55) 34%,rgba(12,99,198,.10) 62%,rgba(7,46,112,.18)),
linear-gradient(0deg,rgba(6,40,95,.42),transparent 48%)}
.hero-content{position:relative;z-index:3;padding-top:120px;padding-bottom:70px}
.eyebrow{margin:0 0 18px;font-size:12px;font-weight:700;letter-spacing:.23em;color:#65ddff}
.hero h1{margin:0;font-family:"Newsreader",serif;font-size:clamp(64px,7.2vw,112px);line-height:.86;letter-spacing:-.05em}
.hero h1 span{color:#5edcff}
.hero-sub{font-size:clamp(18px,1.7vw,25px);line-height:1.42;margin:30px 0 20px}
.brand-line{display:flex;gap:12px;align-items:center;font-size:13px;letter-spacing:.15em;margin:24px 0 30px}
.brand-line strong:nth-of-type(2){color:#47e4c1}.brand-line strong:nth-of-type(3){color:#8ce900}.brand-line i{font-style:normal;color:var(--gold)}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:18px;padding:14px 20px;text-decoration:none;font-size:14px;font-weight:700}
.btn-primary{background:linear-gradient(135deg,#0978ff,#0ab5db);box-shadow:0 12px 30px rgba(0,106,255,.28)}
.btn-ghost{border:1px solid rgba(255,255,255,.48);background:rgba(2,17,45,.28)}

.lens-section{position:relative;overflow:hidden;padding:120px 0 110px;background:
radial-gradient(circle at 50% 46%,rgba(104,235,255,.34),transparent 34%),
radial-gradient(circle at 20% 15%,rgba(255,194,94,.20),transparent 23%),
linear-gradient(180deg,#0c63c9 0%,#0a56b7 46%,#08489d 100%)}
.lens-section:before{
  content:"";position:absolute;inset:-120px -80px auto;height:310px;opacity:.35;
  background:
    linear-gradient(25deg,transparent 49.6%,rgba(167,240,255,.22) 50%,transparent 50.4%) 0 0/150px 80px,
    linear-gradient(-25deg,transparent 49.6%,rgba(167,240,255,.14) 50%,transparent 50.4%) 0 0/180px 95px;
  mask-image:linear-gradient(to bottom,#000,transparent);
}
.lens-head{text-align:center;max-width:920px;margin:0 auto 60px;position:relative;z-index:2}
.lens-head h2{font-family:"Newsreader",serif;font-size:clamp(48px,5.8vw,82px);line-height:.96;letter-spacing:-.035em;margin:0 0 20px}
.lens-head h2 span{color:#5edcff}
.lens-head p{font-size:19px;color:#eef7ff;max-width:760px;margin:auto}
.lens-stage{position:relative;max-width:1080px;height:650px;margin:auto}
.lens-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:360px;height:360px;border-radius:50%;
display:flex;align-items:center;justify-content:center;
background:radial-gradient(circle,rgba(97,230,255,.38),rgba(18,103,213,.16) 52%,transparent 72%);
box-shadow:0 0 110px rgba(94,231,255,.38)}
.lens-core:before,.lens-core:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(83,218,255,.30)}
.lens-core:before{inset:18px;box-shadow:0 0 45px rgba(75,211,255,.18) inset}
.lens-core:after{inset:-34px;border-color:rgba(74,215,255,.12)}
.lens-core img{width:280px;max-height:310px;object-fit:contain;filter:drop-shadow(0 0 24px rgba(0,202,255,.45))}
.orbit{position:absolute;inset:50%;width:0;height:0}
.connector{position:absolute;left:50%;top:50%;width:1px;height:260px;background:linear-gradient(to top,rgba(73,214,255,.6),transparent);transform-origin:bottom}
.node{position:absolute;width:220px;padding:20px 18px;text-align:center;border:1px solid rgba(86,213,255,.20);background:linear-gradient(160deg,rgba(21,120,225,.82),rgba(7,70,158,.88));backdrop-filter:blur(10px);box-shadow:0 16px 34px rgba(2,44,107,.22);transition:.25s}
.node:hover{transform:translateY(-6px);border-color:rgba(89,224,255,.75);box-shadow:0 0 35px rgba(0,180,255,.18),0 20px 40px rgba(0,0,0,.28)}
.node .icon{width:52px;height:52px;border-radius:50%;margin:0 auto 12px;display:grid;place-items:center;font-size:22px;background:rgba(96,229,255,.18);border:1px solid rgba(82,211,255,.22)}
.node h3{margin:0 0 7px;font-size:13px;letter-spacing:.12em}
.node p{margin:0;color:#edf7ff;font-size:13px;line-height:1.45}
.n1{left:6%;top:9%}.n2{right:6%;top:9%}.n3{left:0;bottom:9%}.n4{right:0;bottom:9%}.n5{left:50%;bottom:0;transform:translateX(-50%)}
.n5:hover{transform:translateX(-50%) translateY(-6px)}
.lens-tagline{text-align:center;margin-top:26px;font-size:13px;letter-spacing:.18em;color:#eff8ff}
.lens-tagline strong{color:#60ddff}
.lens-action{text-align:center;margin-top:28px}

.closing{position:relative;padding:120px 0;text-align:center;background:
radial-gradient(circle at 50% 10%,rgba(255,190,83,.22),transparent 30%),
linear-gradient(180deg,#0a54b5,#083f91);overflow:hidden}
.closing:before{content:"";position:absolute;width:620px;height:620px;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(93,229,255,.34),transparent 68%)}
.closing .wrap{position:relative;z-index:2}
.closing h2{font-family:"Newsreader",serif;font-size:clamp(58px,7vw,96px);line-height:.93;letter-spacing:-.045em;margin:0 0 22px}
.closing h2 span{color:#5edcff}
.closing p{font-size:20px;color:#f0f7ff;margin:0 auto 32px;max-width:720px}
footer{padding:28px 0;background:#07377d;border-top:1px solid rgba(255,255,255,.08)}
.footer-row{display:flex;justify-content:space-between;color:#cfe3ff;font-size:11px;letter-spacing:.08em}

@media(max-width:980px){
 .desktop-nav,.nav-cta{display:none}.nav-toggle{display:flex;margin-left:auto;width:42px;height:42px;background:none;border:0;flex-direction:column;justify-content:center;gap:5px}
 .nav-toggle span{display:block;width:23px;height:2px;background:#fff}
 .mobile-nav.open{display:flex;flex-direction:column;padding:10px 24px 22px;background:#0a4fae}.mobile-nav a{padding:13px 0;text-decoration:none;border-bottom:1px solid var(--line)}
 .lens-stage{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:18px}.lens-core{position:relative;left:auto;top:auto;transform:none;grid-column:1/-1;margin:0 auto 20px}
 .node{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto;transform:none!important}.n5{grid-column:1/-1}
}
@media(max-width:620px){
 .wrap{width:min(var(--max),calc(100% - 30px))}.brand-copy small{display:none}.hero{min-height:840px;align-items:flex-end}.hero h1{font-size:58px}
 .hero-bg{background-position:60% center}.hero-overlay{background:linear-gradient(0deg,rgba(5,52,121,.92),rgba(4,64,143,.72) 52%,rgba(7,89,180,.18))}
 .hero-content{padding-bottom:72px}.actions{flex-direction:column}.btn{justify-content:center}.lens-section,.closing{padding:85px 0}
 .lens-stage{grid-template-columns:1fr}.lens-core{width:270px;height:270px}.lens-core img{width:220px}.n5{grid-column:auto}.footer-row{flex-direction:column;gap:10px}
}

/* V6 optimistic color lift */
.lens-section:after{content:"";position:absolute;left:-8%;right:-8%;bottom:-150px;height:360px;background:radial-gradient(ellipse at 50% 0%,rgba(255,192,92,.24),transparent 58%);pointer-events:none}
.node{border-color:rgba(174,240,255,.34)}
.node:hover{border-color:rgba(255,255,255,.78);box-shadow:0 0 42px rgba(111,235,255,.28),0 18px 38px rgba(2,44,107,.24)}
.lens-core:before{border-color:rgba(204,250,255,.52);box-shadow:0 0 55px rgba(109,234,255,.28) inset}
.lens-core:after{border-color:rgba(203,248,255,.26)}
.closing .btn-primary,.lens-action .btn-primary{background:linear-gradient(135deg,#17a4ff,#22c8dc 60%,#66d72f)}


/* ===== Solutions page ===== */
.solutions-hero{
  position:relative;
  min-height:62vh;
  display:flex;
  align-items:end;
  overflow:hidden;
  background:#0b55ac;
}
.solutions-hero .hero-bg{
  position:absolute; inset:0;
  background:url('assets/argus-hero-16x9.png') center 36%/cover no-repeat;
  transform:scale(1.015);
}
.solutions-hero .hero-overlay{
  position:absolute; inset:0;
  background:
    linear-gradient(90deg,rgba(2,52,125,.80),rgba(7,100,187,.42) 48%,rgba(12,112,198,.18)),
    linear-gradient(0deg,rgba(3,52,124,.74),rgba(5,76,160,.04) 58%);
}
.solutions-hero-content{
  position:relative; z-index:3;
  padding-top:150px; padding-bottom:66px;
}
.solutions-hero h1{
  font-family:"Newsreader",serif;
  font-size:clamp(54px,6.1vw,92px);
  line-height:.94; letter-spacing:-.045em;
  margin:0 0 22px; max-width:980px;
}
.solutions-hero h1 span{color:#66e7ff}
.solutions-hero .hero-sub{
  max-width:850px;
  margin:0;
  font-size:20px;
  color:#eaf6ff;
}

.capabilities{
  position:relative;
  overflow:hidden;
  padding:90px 0 100px;
  background:
    radial-gradient(circle at 18% 8%,rgba(255,199,89,.18),transparent 22%),
    radial-gradient(circle at 82% 15%,rgba(69,229,255,.24),transparent 26%),
    linear-gradient(135deg,#0a79da 0%,#137ed3 35%,#0f6ec5 72%,#0a5db2 100%);
}
.capabilities:before{
  content:""; position:absolute; inset:0; opacity:.22;
  background-image:
    linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(to bottom,#000,transparent 80%);
}
.capabilities .wrap{position:relative;z-index:2}
.section-kicker{
  display:flex;align-items:center;gap:12px;
  color:#ffe29b;font-size:12px;font-weight:700;letter-spacing:.22em;margin-bottom:16px
}
.section-kicker:before{content:"";width:22px;height:1px;background:#ffd163}
.capabilities-head{
  max-width:1050px;
  margin-bottom:38px;
}
.capabilities-head h2{
  font-family:"Newsreader",serif;
  font-size:clamp(44px,4.8vw,70px);
  line-height:.98; letter-spacing:-.035em;
  margin:0 0 20px;
}
.capabilities-head p{
  margin:0;
  max-width:930px;
  color:#e3f2ff;
  font-size:18px;
}

.capability-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border:1px solid rgba(255,255,255,.26);
  background:rgba(255,255,255,.10);
  box-shadow:0 24px 70px rgba(0,45,105,.26);
  backdrop-filter:blur(16px);
}
.capability{
  min-height:315px;
  padding:30px 28px 26px;
  border-right:1px solid rgba(255,255,255,.17);
  border-bottom:1px solid rgba(255,255,255,.17);
  background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.035));
  transition:.25s ease;
}
.capability:nth-child(3n){border-right:0}
.capability:nth-child(n+4){border-bottom:0}
.capability:hover{
  transform:translateY(-7px);
  background:linear-gradient(145deg,rgba(255,255,255,.23),rgba(255,255,255,.075));
  box-shadow:0 18px 42px rgba(0,55,125,.25);
  position:relative; z-index:4;
}
.cap-icon{
  width:52px;height:52px;border-radius:15px;
  display:grid;place-items:center;
  margin-bottom:22px;
  font-size:25px;
  color:#fff;
  border:1px solid rgba(255,255,255,.32);
  background:linear-gradient(145deg,rgba(70,224,255,.34),rgba(10,100,255,.24));
  box-shadow:inset 0 0 18px rgba(255,255,255,.08),0 8px 20px rgba(0,58,135,.18);
}
.capability h3{
  font-family:"Newsreader",serif;
  font-size:27px; line-height:1.05;
  margin:0 0 12px;
}
.capability > p{
  margin:0 0 20px;
  color:#edf7ff;
  font-size:15px;
  line-height:1.55;
}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags span{
  font-family:"IBM Plex Mono",monospace;
  font-size:11px;
  color:#f2f8ff;
  border:1px solid rgba(255,255,255,.26);
  background:rgba(3,55,125,.20);
  padding:7px 9px;
}

.solutions-bridge{
  padding:95px 0;
  background:
    radial-gradient(circle at 50% 0%,rgba(69,224,255,.22),transparent 34%),
    linear-gradient(180deg,#075bb4,#084b9b);
}
.bridge-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:70px;
  align-items:center;
}
.bridge-grid h2{
  font-family:"Newsreader",serif;
  font-size:clamp(44px,5vw,70px);
  line-height:.98;
  margin:0;
}
.bridge-grid p{font-size:18px;color:#e3efff}
.bridge-callout{
  margin-top:24px;
  padding:22px 24px;
  border-left:3px solid #72f00b;
  background:rgba(255,255,255,.08);
  font-family:"Newsreader",serif;
  font-size:24px;
  font-style:italic;
}
.solution-cta{
  padding:100px 0;
  text-align:center;
  background:
    radial-gradient(circle at 50% 25%,rgba(255,194,75,.18),transparent 25%),
    linear-gradient(135deg,#0d7ad5,#0b65bd);
}
.solution-cta h2{
  font-family:"Newsreader",serif;
  font-size:clamp(52px,6vw,84px);
  line-height:.95;margin:0 0 18px;
}
.solution-cta h2 span{color:#8df20c}
.solution-cta p{font-size:19px;color:#e6f3ff;max-width:720px;margin:0 auto 30px}

@media(max-width:900px){
  .capability-grid{grid-template-columns:1fr 1fr}
  .capability:nth-child(3n){border-right:1px solid rgba(255,255,255,.17)}
  .capability:nth-child(2n){border-right:0}
  .capability:nth-child(n+4){border-bottom:1px solid rgba(255,255,255,.17)}
  .capability:nth-child(n+5){border-bottom:0}
  .bridge-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .solutions-hero{min-height:720px}
  .solutions-hero-content{padding-top:135px;padding-bottom:60px}
  .solutions-hero h1{font-size:56px}
  .capabilities{padding:72px 0}
  .capability-grid{grid-template-columns:1fr}
  .capability{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.17)!important}
  .capability:last-child{border-bottom:0!important}
}


/* ==========================================================
   V7 SOLUTIONS PAGE — SEAMLESS CINEMATIC TRANSITIONS
   ========================================================== */

/* The first two screens now visually belong to the same scene. */
.solutions-hero{
  min-height:78vh;
  align-items:center;
  isolation:isolate;
  overflow:visible;
  background:#0c67bd;
}
.solutions-hero .hero-bg{
  background-position:center 42%;
}
.solutions-hero .hero-overlay{
  background:
    linear-gradient(90deg,
      rgba(2,45,112,.83) 0%,
      rgba(5,72,151,.63) 35%,
      rgba(8,96,177,.24) 67%,
      rgba(4,61,137,.26) 100%),
    linear-gradient(0deg,
      rgba(10,96,183,.82) 0%,
      rgba(5,64,146,.14) 40%,
      rgba(3,45,111,.10) 100%);
}

/* Soft continuation into the next section instead of a hard horizontal cut. */
.solutions-hero:after{
  content:"";
  position:absolute;
  z-index:4;
  left:0;right:0;bottom:-1px;
  height:165px;
  pointer-events:none;
  background:linear-gradient(
    to bottom,
    rgba(13,111,199,0) 0%,
    rgba(14,124,211,.30) 30%,
    rgba(16,137,220,.72) 67%,
    rgba(20,145,222,1) 100%
  );
}

.solutions-hero-content{
  padding-top:135px;
  padding-bottom:120px;
  width:min(1240px,calc(100% - 48px));
}
.solutions-hero-content .eyebrow{
  margin-bottom:14px;
}
.solutions-hero h1{
  max-width:820px;
  font-size:clamp(58px,5.8vw,88px);
  line-height:.93;
  text-wrap:balance;
}
.solutions-hero .hero-sub{
  max-width:720px;
  font-size:19px;
  line-height:1.5;
  text-shadow:0 2px 14px rgba(0,25,70,.35);
}

/* Bright section, but still keeps the mountain/network world alive underneath. */
.capabilities{
  margin-top:-2px;
  padding-top:105px;
  background:
    linear-gradient(
      180deg,
      rgba(20,145,222,.98) 0%,
      rgba(17,136,215,.94) 18%,
      rgba(12,115,201,.94) 54%,
      rgba(8,91,177,.98) 100%
    );
  isolation:isolate;
}
.capabilities:after{
  content:"";
  position:absolute;
  z-index:-2;
  inset:0;
  background:
    linear-gradient(180deg,
      rgba(13,132,218,.88) 0%,
      rgba(7,91,175,.92) 100%),
    url('assets/argus-hero-16x9.png') center 72%/cover no-repeat;
  opacity:.54;
}
.capabilities:before{
  z-index:-1;
  opacity:.18;
}

/* Give the "What we do" introduction more breathing room and stop it
   from looking as if it begins in the middle of another screen. */
.capabilities-head{
  max-width:1040px;
  margin-bottom:48px;
}
.capabilities-head h2{
  max-width:930px;
  font-size:clamp(44px,4.35vw,66px);
  line-height:.98;
  text-wrap:balance;
}
.capabilities-head p{
  max-width:1000px;
  line-height:1.65;
}

/* Glass cards become clearer and happier on the brighter background. */
.capability-grid{
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(5,72,153,.16);
  box-shadow:
    0 32px 80px rgba(0,42,103,.25),
    inset 0 1px rgba(255,255,255,.20);
}
.capability{
  background:
    linear-gradient(145deg,
      rgba(255,255,255,.18),
      rgba(255,255,255,.07));
}
.capability:hover{
  background:
    linear-gradient(145deg,
      rgba(255,255,255,.28),
      rgba(255,255,255,.12));
}

/* Second transition: blue capabilities into connected-thinking section. */
.solutions-bridge{
  position:relative;
  margin-top:-1px;
  padding-top:125px;
  background:
    radial-gradient(circle at 18% 0%,rgba(69,225,255,.22),transparent 28%),
    radial-gradient(circle at 82% 0%,rgba(139,242,12,.12),transparent 24%),
    linear-gradient(180deg,#085bb0 0%,#064a9b 100%);
}
.solutions-bridge:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:90px;
  background:linear-gradient(to bottom,rgba(8,91,177,.98),rgba(8,91,177,0));
  pointer-events:none;
}

/* Active nav underline for this page */
.desktop-nav a.active{
  color:#fff;
}
.desktop-nav a.active:after{
  right:0;
}

@media(max-width:900px){
  .solutions-hero{min-height:76vh}
  .solutions-hero h1{max-width:700px}
}
@media(max-width:620px){
  .solutions-hero{
    min-height:790px;
    align-items:flex-end;
  }
  .solutions-hero .hero-bg{
    background-position:60% center;
  }
  .solutions-hero:after{
    height:120px;
  }
  .solutions-hero-content{
    width:min(100% - 30px,1240px);
    padding-top:120px;
    padding-bottom:115px;
  }
  .solutions-hero h1{
    font-size:54px;
    max-width:100%;
  }
  .capabilities{
    padding-top:80px;
  }
  .capability-grid{
    border-radius:18px;
  }
}


/* ==========================================================
   WHO WE HELP — V8
   ========================================================== */

.who-hero{
  position:relative;
  min-height:82vh;
  display:flex;
  align-items:center;
  overflow:visible;
  isolation:isolate;
  background:#0d6bc4;
}
.who-hero .hero-bg{
  position:absolute; inset:0;
  background:url('assets/argus-hero-16x9.png') center 43%/cover no-repeat;
  transform:scale(1.01);
}
.who-hero .hero-overlay{
  position:absolute; inset:0;
  background:
    linear-gradient(90deg,rgba(2,43,105,.82) 0%,rgba(4,63,136,.62) 37%,rgba(8,91,168,.22) 70%,rgba(7,76,151,.20) 100%),
    linear-gradient(0deg,rgba(12,101,187,.72) 0%,rgba(5,63,143,.08) 45%,rgba(2,40,104,.10) 100%);
}
.who-hero:after{
  content:""; position:absolute; z-index:4;
  left:0;right:0;bottom:-1px;height:150px;
  background:linear-gradient(to bottom,rgba(18,133,213,0),rgba(22,145,222,.52) 52%,rgba(27,153,226,1));
  pointer-events:none;
}
.who-hero-content{
  position:relative;z-index:3;
  width:min(1240px,calc(100% - 48px));
  margin:auto;
  padding-top:145px;
  padding-bottom:125px;
}
.who-hero h1{
  font-family:"Newsreader",serif;
  font-size:clamp(58px,6vw,92px);
  line-height:.93;
  letter-spacing:-.045em;
  margin:0 0 24px;
  max-width:880px;
}
.who-hero h1 span{color:#67e6ff}
.who-hero .hero-sub{
  max-width:760px;
  font-size:20px;
  line-height:1.55;
  color:#eef8ff;
  margin:0;
}

.roots{
  position:relative;
  padding:105px 0 95px;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 5%,rgba(255,199,89,.18),transparent 23%),
    radial-gradient(circle at 80% 10%,rgba(92,231,255,.23),transparent 28%),
    linear-gradient(135deg,#1a99e4 0%,#168bd9 42%,#0d72c8 100%);
}
.roots:before{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(21,148,224,.72),rgba(8,92,181,.90)),
    url('assets/argus-hero-16x9.png') center 70%/cover no-repeat;
  opacity:.56;
}
.roots .wrap{position:relative;z-index:2}
.roots-grid{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:78px;
  align-items:start;
}
.roots h2{
  font-family:"Newsreader",serif;
  font-size:clamp(50px,5.4vw,78px);
  line-height:.96;
  letter-spacing:-.04em;
  margin:0;
}
.roots h2 span{color:#fff7cf}
.roots-copy p{
  font-size:19px;
  line-height:1.7;
  color:#f0f8ff;
  margin-top:0;
}
.healthcare-ribbon{
  margin-top:30px;
  padding:22px 24px;
  border-left:4px solid #7ef00d;
  background:rgba(0,62,145,.22);
  backdrop-filter:blur(12px);
  box-shadow:0 18px 40px rgba(0,50,110,.18);
}
.healthcare-ribbon strong{
  display:block;
  color:#fff9c6;
  font-family:"Newsreader",serif;
  font-size:25px;
  margin-bottom:6px;
}
.healthcare-ribbon span{color:#e7f4ff}

.audiences{
  position:relative;
  padding:95px 0 105px;
  background:
    radial-gradient(circle at 15% 0%,rgba(90,230,255,.22),transparent 25%),
    linear-gradient(180deg,#0d72c8 0%,#0a62b8 48%,#0752a2 100%);
}
.audiences-head{
  max-width:940px;
  margin-bottom:46px;
}
.audiences-head h2{
  font-family:"Newsreader",serif;
  font-size:clamp(46px,5vw,70px);
  line-height:.98;
  margin:0 0 18px;
}
.audiences-head p{
  font-size:18px;
  color:#e5f3ff;
  max-width:890px;
}

.audience-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}
.audience-card{
  position:relative;
  min-height:300px;
  padding:30px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:22px;
  overflow:hidden;
  background:
    linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.065));
  box-shadow:0 24px 60px rgba(0,41,101,.18);
  transition:.25s ease;
}
.audience-card:hover{
  transform:translateY(-7px);
  background:linear-gradient(145deg,rgba(255,255,255,.27),rgba(255,255,255,.10));
  box-shadow:0 32px 70px rgba(0,41,101,.28);
}
.audience-card .num{
  font-family:"IBM Plex Mono",monospace;
  font-size:11px;
  letter-spacing:.18em;
  color:#fff2a6;
}
.audience-card h3{
  font-family:"Newsreader",serif;
  font-size:34px;
  line-height:1.05;
  margin:35px 0 14px;
}
.audience-card p{
  color:#eef7ff;
  margin:0 0 20px;
  line-height:1.6;
}
.audience-card.healthcare{
  border-color:rgba(126,240,13,.42);
  background:
    radial-gradient(circle at 90% 10%,rgba(126,240,13,.17),transparent 28%),
    linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,.08));
}
.tag-row{display:flex;flex-wrap:wrap;gap:8px}
.tag-row span{
  font-family:"IBM Plex Mono",monospace;
  font-size:11px;
  padding:7px 9px;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(1,52,124,.20);
}

.healthcare-deepdive{
  padding:105px 0;
  background:
    radial-gradient(circle at 80% 0%,rgba(126,240,13,.12),transparent 24%),
    radial-gradient(circle at 20% 0%,rgba(80,226,255,.20),transparent 28%),
    linear-gradient(180deg,#0752a2,#06458d);
}
.deep-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:76px;
  align-items:start;
}
.deep-grid h2{
  font-family:"Newsreader",serif;
  font-size:clamp(46px,5vw,72px);
  line-height:.98;
  margin:0;
}
.deep-copy p{
  font-size:18px;
  color:#e2efff;
}
.deep-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:28px;
}
.deep-list div{
  padding:15px 16px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.055);
  font-size:14px;
}

.fit-section{
  padding:95px 0;
  text-align:center;
  background:
    radial-gradient(circle at 50% 20%,rgba(255,197,81,.15),transparent 24%),
    linear-gradient(135deg,#1187d7,#0b6ec1);
}
.fit-section h2{
  font-family:"Newsreader",serif;
  font-size:clamp(50px,6vw,82px);
  line-height:.96;
  margin:0 0 18px;
}
.fit-section h2 span{color:#91f116}
.fit-section p{
  max-width:760px;
  margin:0 auto 30px;
  font-size:19px;
  color:#eaf6ff;
}

@media(max-width:900px){
  .roots-grid,.deep-grid{grid-template-columns:1fr}
  .audience-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .who-hero{min-height:790px;align-items:flex-end}
  .who-hero .hero-bg{background-position:60% center}
  .who-hero-content{width:min(100% - 30px,1240px);padding-top:125px;padding-bottom:115px}
  .who-hero h1{font-size:54px}
  .roots,.audiences,.healthcare-deepdive,.fit-section{padding:78px 0}
  .deep-list{grid-template-columns:1fr}
}


/* ==========================================================
   V9 — CLEAN SECTION TRANSITIONS
   Fixes visible horizontal seams and browser-side overflow.
   ========================================================== */

html,body{overflow-x:hidden}

/* ---------- Shared cinematic page ending ---------- */
.solutions-hero,
.who-hero{
  overflow:hidden;
}

/* Remove the old "flat blue band" transition. */
.solutions-hero:after,
.who-hero:after{
  display:none !important;
}

/* Add a soft curved fade at the bottom of both hero scenes. */
.solutions-hero:before,
.who-hero:before{
  content:"";
  position:absolute;
  z-index:4;
  left:-6%;
  right:-6%;
  bottom:-62px;
  height:170px;
  border-radius:50% 50% 0 0 / 40% 40% 0 0;
  background:linear-gradient(
    180deg,
    rgba(19,140,218,0) 0%,
    rgba(19,140,218,.38) 33%,
    rgba(21,146,222,.85) 68%,
    rgba(22,150,225,1) 100%
  );
  filter:blur(.1px);
  pointer-events:none;
}

/* ==========================================================
   SOLUTIONS: turn section 2 into an overlapping glass panel.
   ========================================================== */

.solutions-hero{
  min-height:82vh;
}
.solutions-hero-content{
  padding-bottom:145px;
}

.capabilities{
  margin-top:0;
  padding-top:0;
  background:
    radial-gradient(circle at 16% 6%,rgba(255,200,93,.17),transparent 22%),
    radial-gradient(circle at 84% 5%,rgba(88,230,255,.22),transparent 25%),
    linear-gradient(180deg,#1696df 0%,#1083d2 43%,#0a69bd 100%);
}

/* Stop repeating the hero photo in the next screen. It was creating
   the visible "second picture" seam. */
.capabilities:after{
  display:none !important;
}

.capabilities > .wrap{
  transform:translateY(-62px);
  margin-bottom:-62px;
}

.capabilities-head{
  max-width:none;
  margin:0 0 28px;
  padding:34px 38px 32px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:24px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.19),rgba(255,255,255,.08));
  backdrop-filter:blur(18px);
  box-shadow:0 28px 65px rgba(0,53,119,.22);
}
.capabilities-head h2{
  max-width:980px;
  margin-bottom:18px;
}
.capabilities-head p{
  max-width:1030px;
}

/* Add generous air before the capability cards. */
.capability-grid{
  margin-top:28px;
}

/* ==========================================================
   WHO WE HELP: distinct "Roots" panel floating out of hero.
   ========================================================== */

.who-hero{
  min-height:86vh;
}
.who-hero-content{
  padding-bottom:155px;
}

.roots{
  padding:0 0 92px;
  background:
    radial-gradient(circle at 18% 5%,rgba(255,207,111,.16),transparent 24%),
    radial-gradient(circle at 82% 9%,rgba(90,230,255,.22),transparent 26%),
    linear-gradient(180deg,#1697df 0%,#1083d3 52%,#0d73c7 100%);
}

/* Remove repeated photograph below the hero. */
.roots:before{
  display:none !important;
}

.roots > .wrap{
  transform:translateY(-70px);
  margin-bottom:-70px;
}

.roots-grid{
  gap:64px;
  padding:42px 44px;
  border:1px solid rgba(255,255,255,.36);
  border-radius:28px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.20),rgba(255,255,255,.085));
  backdrop-filter:blur(18px);
  box-shadow:
    0 32px 75px rgba(0,48,112,.23),
    inset 0 1px rgba(255,255,255,.18);
}

.roots h2{
  font-size:clamp(48px,5vw,74px);
}
.roots-copy p{
  color:#f5fbff;
}
.healthcare-ribbon{
  background:rgba(4,75,158,.25);
  border-left-color:#8bf214;
}

/* Follow-up section begins naturally; no picture seam. */
.audiences{
  padding-top:98px;
  background:
    radial-gradient(circle at 13% 0%,rgba(90,232,255,.18),transparent 24%),
    radial-gradient(circle at 88% 0%,rgba(142,241,22,.10),transparent 22%),
    linear-gradient(180deg,#0d73c7 0%,#0b66b9 50%,#0755a6 100%);
}

/* Smooth lower transitions too */
.healthcare-deepdive{
  position:relative;
}
.healthcare-deepdive:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:72px;
  background:linear-gradient(to bottom,rgba(7,85,166,.92),rgba(7,85,166,0));
  pointer-events:none;
}

/* Active underline */
.desktop-nav a.active{color:#fff}
.desktop-nav a.active:after{right:0}

@media(max-width:900px){
  .capabilities > .wrap,
  .roots > .wrap{
    transform:translateY(-44px);
    margin-bottom:-44px;
  }
  .roots-grid{
    padding:34px;
  }
}
@media(max-width:620px){
  .solutions-hero,
  .who-hero{
    min-height:820px;
  }
  .solutions-hero:before,
  .who-hero:before{
    bottom:-48px;
    height:125px;
  }
  .solutions-hero-content,
  .who-hero-content{
    padding-bottom:130px;
  }
  .capabilities-head,
  .roots-grid{
    border-radius:20px;
    padding:26px 22px;
  }
}


/* ==========================================================
   HOW WE WORK — V10
   ========================================================== */

.work-hero{
  position:relative;
  min-height:84vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  background:#0d6bc4;
}
.work-hero .hero-bg{
  position:absolute; inset:0;
  background:url('assets/argus-hero-16x9.png') center 43%/cover no-repeat;
  transform:scale(1.01);
}
.work-hero .hero-overlay{
  position:absolute; inset:0;
  background:
    linear-gradient(90deg,rgba(2,41,103,.82) 0%,rgba(4,62,136,.62) 36%,rgba(8,92,170,.22) 68%,rgba(7,73,145,.20) 100%),
    linear-gradient(0deg,rgba(13,103,191,.72) 0%,rgba(5,62,142,.08) 45%,rgba(2,38,101,.10) 100%);
}
.work-hero:before{
  content:"";
  position:absolute;
  z-index:4;
  left:-6%;right:-6%;bottom:-62px;height:170px;
  border-radius:50% 50% 0 0 / 40% 40% 0 0;
  background:linear-gradient(180deg,rgba(20,143,219,0),rgba(22,149,224,.42) 36%,rgba(24,153,226,.88) 72%,rgba(25,155,227,1));
}
.work-hero-content{
  position:relative;z-index:3;
  width:min(1240px,calc(100% - 48px));
  margin:auto;
  padding-top:145px;
  padding-bottom:150px;
}
.work-hero h1{
  font-family:"Newsreader",serif;
  font-size:clamp(56px,6vw,90px);
  line-height:.95;
  letter-spacing:-.045em;
  margin:0 0 24px;
  max-width:950px;
}
.work-hero h1 span{color:#67e6ff}
.work-hero .hero-sub{
  max-width:760px;
  font-size:20px;
  line-height:1.55;
  margin:0;
  color:#eef8ff;
}

/* Process section */
.process{
  position:relative;
  padding:0 0 100px;
  background:
    radial-gradient(circle at 18% 5%,rgba(255,201,92,.16),transparent 24%),
    radial-gradient(circle at 82% 8%,rgba(86,231,255,.22),transparent 27%),
    linear-gradient(180deg,#1999e2 0%,#1285d4 45%,#0a68bd 100%);
}
.process > .wrap{
  transform:translateY(-72px);
  margin-bottom:-72px;
}
.process-shell{
  position:relative;
  border-radius:28px;
  padding:44px 44px 46px;
  border:1px solid rgba(255,255,255,.36);
  background:linear-gradient(145deg,rgba(255,255,255,.20),rgba(255,255,255,.085));
  backdrop-filter:blur(18px);
  box-shadow:0 32px 75px rgba(0,48,112,.23), inset 0 1px rgba(255,255,255,.18);
}
.process-head{
  max-width:930px;
  margin-bottom:48px;
}
.process-head h2{
  font-family:"Newsreader",serif;
  font-size:clamp(48px,5vw,74px);
  line-height:.98;
  letter-spacing:-.035em;
  margin:0 0 18px;
}
.process-head h2 span{color:#fff5b3}
.process-head p{
  font-size:18px;
  color:#eff8ff;
  max-width:850px;
  margin:0;
}

/* horizontal process line */
.process-flow{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:34px;
}
.process-flow:before{
  content:"";
  position:absolute;
  top:25px;
  left:9%;
  right:9%;
  height:2px;
  background:linear-gradient(90deg,#ffe071,#5fe9ff,#62e8ff,#8cf20d);
  opacity:.75;
}
.step{
  position:relative;
  z-index:2;
  padding-top:0;
}
.step-badge{
  width:52px;height:52px;border-radius:50%;
  display:grid;place-items:center;
  margin-bottom:22px;
  font-family:"IBM Plex Mono",monospace;
  font-size:13px;font-weight:700;
  color:#fff;
  border:1px solid rgba(255,255,255,.4);
  background:linear-gradient(145deg,rgba(0,92,196,.80),rgba(5,66,150,.82));
  box-shadow:0 0 0 7px rgba(255,255,255,.07),0 10px 25px rgba(0,47,112,.22);
}
.step:nth-child(4) .step-badge{
  background:linear-gradient(145deg,#65c900,#3f9f00);
}
.step .label{
  font-family:"IBM Plex Mono",monospace;
  color:#fff2a5;
  font-size:11px;
  letter-spacing:.14em;
  margin-bottom:11px;
}
.step:nth-child(4) .label{color:#b7ff72}
.step h3{
  font-family:"Newsreader",serif;
  font-size:29px;
  line-height:1.06;
  margin:0 0 12px;
}
.step p{
  margin:0;
  color:#edf7ff;
  font-size:15px;
  line-height:1.58;
}

/* Operating principles */
.principles{
  padding:100px 0;
  background:
    radial-gradient(circle at 15% 0%,rgba(83,229,255,.19),transparent 24%),
    linear-gradient(180deg,#0a68bd,#0756a8);
}
.principles-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:70px;
  align-items:start;
}
.principles h2{
  font-family:"Newsreader",serif;
  font-size:clamp(48px,5vw,72px);
  line-height:.98;
  margin:0;
}
.principles-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.principle{
  padding:22px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:rgba(255,255,255,.065);
}
.principle strong{
  display:block;
  margin-bottom:8px;
  font-family:"Newsreader",serif;
  font-size:24px;
}
.principle span{color:#dfeeff}

/* Delivery philosophy */
.delivery{
  padding:100px 0;
  background:
    radial-gradient(circle at 82% 0%,rgba(141,241,20,.12),transparent 22%),
    radial-gradient(circle at 20% 0%,rgba(93,229,255,.17),transparent 26%),
    linear-gradient(180deg,#0756a8,#064993);
}
.delivery-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center;
}
.delivery h2{
  font-family:"Newsreader",serif;
  font-size:clamp(48px,5vw,72px);
  line-height:.98;
  margin:0;
}
.delivery-copy p{
  font-size:18px;
  color:#e3f0ff;
}
.delivery-callout{
  margin-top:28px;
  padding:24px 26px;
  border-left:4px solid #8bf214;
  background:rgba(255,255,255,.065);
  font-family:"Newsreader",serif;
  font-size:26px;
  font-style:italic;
}

.work-cta{
  padding:100px 0;
  text-align:center;
  background:
    radial-gradient(circle at 50% 20%,rgba(255,199,81,.15),transparent 24%),
    linear-gradient(135deg,#1188d8,#0b6fc2);
}
.work-cta h2{
  font-family:"Newsreader",serif;
  font-size:clamp(52px,6vw,84px);
  line-height:.95;
  margin:0 0 18px;
}
.work-cta h2 span{color:#92f215}
.work-cta p{
  max-width:760px;
  margin:0 auto 30px;
  font-size:19px;
  color:#eaf6ff;
}

@media(max-width:950px){
  .process-flow{grid-template-columns:1fr 1fr}
  .process-flow:before{display:none}
  .principles-grid,.delivery-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .work-hero{min-height:810px;align-items:flex-end}
  .work-hero .hero-bg{background-position:60% center}
  .work-hero-content{
    width:min(100% - 30px,1240px);
    padding-top:125px;
    padding-bottom:132px;
  }
  .work-hero h1{font-size:54px}
  .process-shell{padding:28px 22px;border-radius:20px}
  .process-flow,.principles-list{grid-template-columns:1fr}
  .process,.principles,.delivery,.work-cta{padding-bottom:78px}
}


/* ==========================================================
   V11 — FIX SOLUTIONS + WHO WE HELP SECTION OVERLAP
   Keeps How We Work unchanged.
   ========================================================== */

/* --- WHO WE HELP: stop the next section from overlapping the hero --- */
.who-hero{
  min-height:88vh;
  overflow:hidden;
}
.who-hero-content{
  padding-bottom:120px;
}
.who-hero:before{
  display:none !important;
}

.roots{
  padding:84px 0 96px !important;
  margin-top:0 !important;
  background:
    radial-gradient(circle at 18% 5%,rgba(255,207,111,.14),transparent 24%),
    radial-gradient(circle at 82% 9%,rgba(90,230,255,.18),transparent 26%),
    linear-gradient(180deg,#1799e2 0%,#1086d7 52%,#0d73c7 100%) !important;
}
.roots > .wrap{
  transform:none !important;
  margin-bottom:0 !important;
}
.roots-grid{
  padding:42px 44px;
  border-radius:28px;
  background:linear-gradient(145deg,rgba(255,255,255,.19),rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.34);
  backdrop-filter:blur(18px);
  box-shadow:0 28px 68px rgba(0,48,112,.20);
}
.roots h2,
.roots-copy,
.roots-copy p{
  position:relative;
  z-index:2;
}

/* --- SOLUTIONS: same correction, no overlap into hero --- */
.solutions-hero{
  min-height:84vh;
  overflow:hidden;
}
.solutions-hero-content{
  padding-bottom:120px;
}
.solutions-hero:before{
  display:none !important;
}

.capabilities{
  padding:84px 0 100px !important;
  margin-top:0 !important;
  background:
    radial-gradient(circle at 16% 6%,rgba(255,200,93,.14),transparent 22%),
    radial-gradient(circle at 84% 5%,rgba(88,230,255,.18),transparent 25%),
    linear-gradient(180deg,#1799e2 0%,#1086d7 45%,#0a69bd 100%) !important;
}
.capabilities > .wrap{
  transform:none !important;
  margin-bottom:0 !important;
}
.capabilities-head{
  margin:0 0 34px !important;
  padding:38px 42px 34px;
  border-radius:28px;
  background:linear-gradient(145deg,rgba(255,255,255,.19),rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.34);
  backdrop-filter:blur(18px);
  box-shadow:0 28px 68px rgba(0,48,112,.20);
}

/* make section boundaries intentionally clean instead of "fake overlap" */
.who-hero,
.solutions-hero{
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.10);
}

/* prevent text clipping from inherited transforms/stacking */
.roots,
.roots-grid,
.roots-grid > *,
.capabilities,
.capabilities-head,
.capability-grid{
  overflow:visible;
}

/* slight spacing cleanup */
.audiences{padding-top:88px !important}
.solutions-bridge{padding-top:100px !important}

@media(max-width:900px){
  .roots > .wrap,
  .capabilities > .wrap{
    transform:none !important;
    margin-bottom:0 !important;
  }
}
@media(max-width:620px){
  .roots,
  .capabilities{
    padding-top:62px !important;
  }
  .roots-grid,
  .capabilities-head{
    padding:28px 22px;
    border-radius:20px;
  }
}


/* ==========================================================
   V12 — TIGHTER HERO-TO-CONTENT TRANSITIONS
   Solutions + Who We Help only. How We Work stays unchanged.
   ========================================================== */

/* SOLUTIONS: remove the oversized empty blue band */
.capabilities{
  padding-top:34px !important;
}
.capabilities > .wrap{
  transform:none !important;
  margin-bottom:0 !important;
}
.capabilities-head{
  margin-top:0 !important;
}

/* WHO WE HELP: same visual rhythm */
.roots{
  padding-top:34px !important;
}
.roots > .wrap{
  transform:none !important;
  margin-bottom:0 !important;
}

/* A short, intentional transition instead of a large blank zone */
.solutions-hero,
.who-hero{
  position:relative;
}
.solutions-hero:after,
.who-hero:after{
  content:"" !important;
  display:block !important;
  position:absolute;
  z-index:4;
  left:0;
  right:0;
  bottom:0;
  height:42px;
  pointer-events:none;
  background:linear-gradient(
    to bottom,
    rgba(23,153,226,0) 0%,
    rgba(23,153,226,.42) 45%,
    rgba(23,153,226,.92) 100%
  );
}

/* keep the next panels comfortably clear of the boundary */
.capabilities-head,
.roots-grid{
  position:relative;
  z-index:5;
}

/* desktop spacing tuned to the screenshot proportions */
@media(min-width:901px){
  .capabilities{
    padding-top:30px !important;
  }
  .roots{
    padding-top:30px !important;
  }
}

/* mobile gets a touch more room */
@media(max-width:620px){
  .capabilities,
  .roots{
    padding-top:24px !important;
  }
  .solutions-hero:after,
  .who-hero:after{
    height:32px;
  }
}


/* ==========================================================
   V13 — FINAL TIGHT GAP ADJUSTMENT
   Pulls content panels upward without overlapping/clipping.
   Applies ONLY to Solutions + Who We Help.
   ========================================================== */

@media(min-width:901px){

  /* Solutions */
  .capabilities{
    padding-top:16px !important;
  }
  .capabilities > .wrap{
    transform:translateY(-72px) !important;
    margin-bottom:-72px !important;
  }

  /* Who We Help */
  .roots{
    padding-top:16px !important;
  }
  .roots > .wrap{
    transform:translateY(-72px) !important;
    margin-bottom:-72px !important;
  }

  /* Keep panels visibly below the hero boundary */
  .capabilities-head,
  .roots-grid{
    position:relative;
    z-index:6;
  }
}

/* Mid-size screens: smaller lift */
@media(min-width:621px) and (max-width:900px){
  .capabilities > .wrap,
  .roots > .wrap{
    transform:translateY(-44px) !important;
    margin-bottom:-44px !important;
  }
  .capabilities,
  .roots{
    padding-top:18px !important;
  }
}

/* Phones: no risky overlap */
@media(max-width:620px){
  .capabilities > .wrap,
  .roots > .wrap{
    transform:none !important;
    margin-bottom:0 !important;
  }
  .capabilities,
  .roots{
    padding-top:22px !important;
  }
}


/* ==========================================================
   ARGUS ADVANTAGE — POLISHED PAGE
   Added on top of the complete working V13 stylesheet.
   ========================================================== */
.advantage-page{background:#061a3b;color:#fff}
.advantage-canvas{position:relative;min-height:100vh;overflow:hidden;background:#0a2c61}
.advantage-bg{
 position:absolute;inset:0;
 background:url('assets/argus-hero-16x9.png') center center/cover no-repeat fixed;
 filter:saturate(1.06) contrast(1.02);
}
.advantage-shade{
 position:absolute;inset:0;
 background:
  linear-gradient(90deg,rgba(3,18,48,.80) 0%,rgba(4,24,59,.62) 44%,rgba(4,22,52,.42) 72%,rgba(3,15,39,.62) 100%),
  linear-gradient(180deg,rgba(4,20,48,.74) 0%,rgba(7,34,74,.30) 40%,rgba(4,19,46,.74) 100%);
}
.advantage-content{position:relative;z-index:2;padding:116px 0 42px}
.adv-wrap{width:min(1140px,calc(100% - 48px));margin:0 auto}
.adv-heading{max-width:850px;margin-bottom:28px}
.adv-kicker{
 display:flex;align-items:center;gap:12px;margin:0 0 10px;
 color:#ffd452;font:500 11px/1.2 'IBM Plex Mono',monospace;
 letter-spacing:.16em;text-transform:uppercase
}
.adv-kicker span{display:inline-block;width:22px;height:1px;background:#ffd452}
.adv-heading h1{
 margin:0;color:#fff;font:600 clamp(34px,4vw,54px)/1.02 'Newsreader',serif;
 text-shadow:0 2px 18px rgba(0,0,0,.22)
}
.adv-intro{
 margin:13px 0 0;max-width:780px;color:#d4e2f8;
 font:400 15px/1.65 'IBM Plex Sans',sans-serif
}
.adv-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}
.adv-card{
 position:relative;min-height:132px;padding:21px 24px 20px 64px;
 border:1px solid rgba(141,194,255,.20);border-radius:10px;
 background:linear-gradient(135deg,rgba(7,35,80,.66),rgba(8,51,100,.34));
 box-shadow:0 12px 35px rgba(0,13,40,.17);
 backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)
}
.adv-card:hover{border-color:rgba(112,178,255,.42);background:linear-gradient(135deg,rgba(7,39,88,.74),rgba(8,58,112,.43))}
.adv-num{
 position:absolute;left:20px;top:21px;width:29px;height:29px;border-radius:50%;
 display:grid;place-items:center;border:1px solid rgba(94,155,255,.65);
 color:#86b5ff;background:rgba(31,93,193,.18);
 font:600 10px 'IBM Plex Mono',monospace
}
.adv-card h2{margin:0 0 8px;color:#fff;font:600 18px/1.2 'Newsreader',serif}
.adv-card p{margin:0;color:#c4d5ee;font:400 13.5px/1.55 'IBM Plex Sans',sans-serif}
.adv-wide{grid-column:1/-1;min-height:auto;max-width:none}
.adv-cta-panel{
 margin:22px auto 0;padding:27px 30px 28px;
 border:1px solid rgba(145,196,255,.24);border-radius:12px;
 background:linear-gradient(110deg,rgba(5,30,72,.82),rgba(8,52,100,.58));
 box-shadow:0 16px 44px rgba(0,13,40,.24);
 backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)
}
.adv-cta-panel h2{margin:0 0 12px;color:#fff;font:600 clamp(29px,3vw,40px)/1.05 'Newsreader',serif}
.adv-cta-panel p{margin:7px 0;color:#c7d8f0;font:400 14px/1.55 'IBM Plex Sans',sans-serif}
.adv-cta-panel p.lead{color:#f0f5ff;font-weight:500}
.adv-button{
 display:inline-flex;align-items:center;gap:15px;margin-top:15px;padding:13px 20px;
 background:#3974f3;color:#fff;text-decoration:none;border-radius:2px;
 font:600 13px 'IBM Plex Sans',sans-serif;box-shadow:0 9px 24px rgba(18,69,180,.28)
}
.adv-button:hover{background:#4b82f7}.adv-button b{font-size:16px}
.adv-signoff{
 display:flex;align-items:center;justify-content:center;gap:15px;flex-wrap:wrap;
 padding:20px 0 0;color:#ffd452;font:500 10px 'IBM Plex Mono',monospace;
 letter-spacing:.13em;text-transform:uppercase;text-shadow:0 1px 8px rgba(0,0,0,.4)
}
.adv-signoff i{width:20px;height:1px;background:rgba(255,212,82,.75)}
.adv-signoff strong{font-weight:500;color:#f8f4df}
@media(max-width:760px){
 .advantage-bg{background-attachment:scroll;background-position:52% center}
 .advantage-content{padding-top:98px}
 .adv-wrap{width:min(100% - 28px,1140px)}
 .adv-grid{grid-template-columns:1fr}
 .adv-wide{grid-column:auto}
 .adv-card{padding-left:60px}
 .adv-cta-panel{padding:23px 21px}
 .adv-signoff{line-height:1.6}
}


/* ==========================================================
   V16 — CENTERED DESKTOP NAV + BRIGHTER ARGUS ADVANTAGE
   Keeps one brand mark on the left and CTA on the right.
   ========================================================== */

/* Center the primary navigation on desktop while preserving
   the existing brand and CTA as the two anchors. */
@media(min-width:1050px){
  .site-nav .nav-wrap{
    position:relative !important;
  }
  .site-nav .desktop-nav{
    position:absolute !important;
    left:50% !important;
    top:50% !important;
    transform:translate(-50%,-50%) !important;
    margin:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    white-space:nowrap !important;
  }
  .site-nav .nav-cta{
    margin-left:auto !important;
  }
}

/* Brighter Advantage image treatment — closer to the rest
   of the Argus site's cobalt / azure / sunrise atmosphere. */
.advantage-bg{
  filter:saturate(1.15) brightness(1.13) contrast(1.01) !important;
}
.advantage-shade{
  background:
    linear-gradient(90deg,
      rgba(3,27,67,.53) 0%,
      rgba(5,42,91,.34) 42%,
      rgba(8,49,91,.20) 72%,
      rgba(3,25,58,.34) 100%),
    linear-gradient(180deg,
      rgba(5,31,70,.43) 0%,
      rgba(11,74,139,.10) 42%,
      rgba(4,28,64,.40) 100%) !important;
}

/* Slightly lighter glass so the page feels brighter without
   sacrificing text readability. */
.adv-card{
  background:linear-gradient(135deg,
    rgba(9,49,104,.57),
    rgba(21,84,145,.29)) !important;
  border-color:rgba(143,205,255,.29) !important;
}
.adv-card:hover{
  background:linear-gradient(135deg,
    rgba(10,58,120,.65),
    rgba(24,96,162,.38)) !important;
}
.adv-cta-panel{
  background:linear-gradient(110deg,
    rgba(7,45,99,.70),
    rgba(15,86,151,.45)) !important;
  border-color:rgba(153,211,255,.31) !important;
}


/* ==========================================================
   V17 — OUR STORY
   Spacious, editorial, and brighter than the Advantage page.
   ========================================================== */
.story-page{background:#0a3976;color:#fff}
.story-canvas{position:relative;min-height:100vh;overflow:hidden;background:#0c4b92}
.story-bg{
 position:absolute;inset:0;
 background:url('assets/argus-hero-16x9.png') center top/cover no-repeat fixed;
 filter:saturate(1.12) brightness(1.13) contrast(1.01);
}
.story-shade{
 position:absolute;inset:0;
 background:
  linear-gradient(90deg,rgba(4,34,77,.34) 0%,rgba(6,55,108,.18) 48%,rgba(6,44,87,.29) 100%),
  linear-gradient(180deg,rgba(4,27,64,.38) 0%,rgba(12,87,154,.08) 38%,rgba(5,33,73,.42) 100%);
}
.story-content{position:relative;z-index:2;padding:110px 0 42px}
.story-wrap{width:min(1180px,calc(100% - 48px));margin:0 auto}
.story-hero-grid{
 display:grid;grid-template-columns:.9fr 1.15fr;gap:70px;align-items:start;
 min-height:500px;padding:12px 0 42px
}
.story-kicker{
 display:flex;align-items:center;gap:12px;margin:0 0 17px;
 color:#ffd452;font:500 11px/1.2 'IBM Plex Mono',monospace;
 letter-spacing:.16em;text-transform:uppercase
}
.story-kicker span{display:inline-block;width:22px;height:1px;background:#ffd452}
.story-title-block h1{
 margin:0;color:#fff;font:600 clamp(43px,4.8vw,67px)/1.05 'Newsreader',serif;
 text-shadow:0 2px 18px rgba(0,0,0,.20)
}
.story-opening{
 padding:8px 0 0;color:#e1ebfa;font:400 17px/1.62 'IBM Plex Sans',sans-serif
}
.story-opening p{margin:0 0 18px}
.story-mission{
 margin-top:30px;padding:25px 29px 26px;border-left:3px solid #e6c33f;
 background:linear-gradient(110deg,rgba(12,48,108,.82),rgba(25,83,145,.63));
 box-shadow:0 15px 38px rgba(2,22,56,.18);
 backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)
}
.story-mission p{
 margin:0;color:#fff;font:600 italic clamp(21px,2vw,28px)/1.45 'Newsreader',serif
}
.story-section{
 margin:20px 0 0;padding:39px 42px 42px;
 border:1px solid rgba(168,212,255,.24);border-radius:12px;
 background:linear-gradient(120deg,rgba(9,51,110,.66),rgba(19,91,157,.34));
 box-shadow:0 16px 44px rgba(1,20,49,.18);
 backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)
}
.story-section-label{
 display:flex;align-items:center;gap:12px;margin-bottom:20px;
 color:#ffd452;font:500 11px 'IBM Plex Mono',monospace;
 letter-spacing:.15em;text-transform:uppercase
}
.story-section-label span{width:22px;height:1px;background:#ffd452}
.story-two-col,.story-perspective-grid{
 display:grid;grid-template-columns:.95fr 1.05fr;gap:58px;align-items:start
}
.story-two-col h2,.story-perspective h2{
 margin:0;color:#fff;font:600 clamp(30px,3vw,43px)/1.08 'Newsreader',serif
}
.story-two-col p,.story-perspective p{
 margin:0 0 15px;color:#d9e6f7;font:400 15px/1.7 'IBM Plex Sans',sans-serif
}
.story-principle{
 margin-top:28px;padding-top:22px;border-top:1px solid rgba(188,221,255,.17);
 display:grid;grid-template-columns:repeat(4,1fr);gap:12px
}
.story-principle span{
 color:#fff;font:600 11px/1.45 'IBM Plex Sans',sans-serif;letter-spacing:.06em
}
.story-perspective{margin-top:18px}
.story-closing{
 margin:18px 0 0;padding:35px 40px;
 display:flex;align-items:center;justify-content:space-between;gap:24px;
 border:1px solid rgba(158,213,255,.27);border-radius:12px;
 background:linear-gradient(105deg,rgba(8,55,117,.72),rgba(20,99,166,.43));
 backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)
}
.story-closing h2{
 margin:0;color:#fff;font:600 clamp(34px,3.5vw,49px)/1.02 'Newsreader',serif
}
.story-button{
 flex:0 0 auto;display:inline-flex;align-items:center;gap:15px;
 padding:14px 21px;background:#3974f3;color:#fff;text-decoration:none;
 font:600 13px 'IBM Plex Sans',sans-serif;box-shadow:0 9px 24px rgba(18,69,180,.26)
}
.story-button:hover{background:#4b82f7}.story-button b{font-size:16px}
.story-signoff{
 display:flex;align-items:center;justify-content:center;gap:15px;
 padding:21px 0 0;color:#ffd452;
 font:500 10px 'IBM Plex Mono',monospace;letter-spacing:.13em;text-transform:uppercase
}
.story-signoff i{width:22px;height:1px;background:rgba(255,212,82,.78)}
.story-signoff strong{font-weight:500;color:#f8f4df}
@media(max-width:900px){
 .story-bg{background-attachment:scroll;background-position:center top}
 .story-content{padding-top:94px}
 .story-hero-grid{grid-template-columns:1fr;gap:28px;min-height:auto}
 .story-two-col,.story-perspective-grid{grid-template-columns:1fr;gap:24px}
 .story-principle{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
 .story-wrap{width:min(100% - 28px,1180px)}
 .story-title-block h1{font-size:42px}
 .story-section{padding:28px 22px}
 .story-closing{padding:28px 22px;align-items:flex-start;flex-direction:column}
 .story-principle{grid-template-columns:1fr}
}


/* ==========================================================
   V18 — ARGUS VIBRANT BRAND PASS
   Homepage is the visual benchmark:
   brighter cobalt + cyan + sunrise + crisp glass.
   Layout/content are intentionally unchanged.
   ========================================================== */

/* ---- SOLUTIONS ---- */
.solutions-hero{
  filter:saturate(1.13) brightness(1.08) contrast(1.01);
}
.solutions-hero:before{
  background:
    linear-gradient(90deg,rgba(5,46,105,.34),rgba(7,76,147,.12) 56%,rgba(4,42,91,.18)) !important;
}
.capabilities{
  background:linear-gradient(180deg,#24a9e6 0%,#168ed5 46%,#0870c1 100%) !important;
}
.capabilities-head,
.capability-card{
  border-color:rgba(190,232,255,.34) !important;
}
.capabilities-head{
  background:linear-gradient(120deg,rgba(20,105,177,.52),rgba(33,164,219,.36)) !important;
}
.capability-card{
  background:linear-gradient(135deg,rgba(10,87,166,.56),rgba(18,143,207,.34)) !important;
  box-shadow:0 14px 36px rgba(0,48,111,.16) !important;
}

/* ---- WHO WE HELP ---- */
.who-hero{
  filter:saturate(1.13) brightness(1.08) contrast(1.01);
}
.who-hero:before{
  background:
    linear-gradient(90deg,rgba(4,45,104,.33),rgba(9,77,146,.11) 58%,rgba(4,41,88,.18)) !important;
}
.roots{
  background:linear-gradient(180deg,#24a9e6 0%,#168fd6 48%,#0872c3 100%) !important;
}
.roots-grid,
.industry-card{
  border-color:rgba(190,232,255,.34) !important;
}
.roots-grid{
  background:linear-gradient(120deg,rgba(17,103,177,.50),rgba(32,163,219,.34)) !important;
}
.industry-card{
  background:linear-gradient(135deg,rgba(9,88,168,.55),rgba(18,145,209,.33)) !important;
}

/* ---- HOW WE WORK ----
   Keep its approved structure untouched; only lift saturation/light. */
.how-hero{
  filter:saturate(1.10) brightness(1.06) contrast(1.01);
}

/* ---- ARGUS ADVANTAGE ---- */
.advantage-bg{
  filter:saturate(1.23) brightness(1.22) contrast(1.02) !important;
}
.advantage-shade{
  background:
    linear-gradient(90deg,
      rgba(4,39,91,.35) 0%,
      rgba(7,75,143,.16) 43%,
      rgba(9,82,143,.07) 72%,
      rgba(3,37,82,.20) 100%),
    linear-gradient(180deg,
      rgba(5,38,85,.28) 0%,
      rgba(14,102,176,.04) 43%,
      rgba(5,38,82,.27) 100%) !important;
}
.adv-card{
  background:linear-gradient(135deg,
    rgba(8,72,149,.50),
    rgba(20,137,201,.27)) !important;
  border-color:rgba(165,222,255,.38) !important;
  box-shadow:0 13px 35px rgba(0,45,108,.14) !important;
}
.adv-card:hover{
  background:linear-gradient(135deg,
    rgba(8,86,171,.59),
    rgba(24,157,220,.35)) !important;
}
.adv-cta-panel{
  background:linear-gradient(110deg,
    rgba(7,67,142,.60),
    rgba(18,137,201,.36)) !important;
  border-color:rgba(170,226,255,.40) !important;
}

/* ---- OUR STORY ---- */
.story-bg{
  filter:saturate(1.22) brightness(1.20) contrast(1.01) !important;
}
.story-shade{
  background:
    linear-gradient(90deg,rgba(4,44,99,.24) 0%,rgba(7,83,150,.07) 50%,rgba(4,48,96,.16) 100%),
    linear-gradient(180deg,rgba(5,39,86,.24) 0%,rgba(15,110,181,.02) 42%,rgba(4,39,82,.25) 100%) !important;
}
.story-mission{
  background:linear-gradient(110deg,rgba(9,72,150,.65),rgba(25,137,199,.42)) !important;
  border-left-color:#ffd452 !important;
}
.story-section{
  background:linear-gradient(120deg,rgba(7,72,151,.55),rgba(22,144,207,.30)) !important;
  border-color:rgba(173,226,255,.36) !important;
}
.story-closing{
  background:linear-gradient(105deg,rgba(7,76,158,.61),rgba(21,151,213,.35)) !important;
  border-color:rgba(174,229,255,.38) !important;
}

/* ---- SHARED GLASS / BRAND ACCENTS ---- */
.adv-kicker,.story-kicker,.story-section-label{
  text-shadow:0 1px 10px rgba(0,0,0,.28);
}
.adv-button,.story-button{
  background:linear-gradient(90deg,#167ff2,#16b8e8) !important;
}
.adv-button:hover,.story-button:hover{
  filter:brightness(1.08);
}

/* Maintain readability on smaller screens while retaining vibrancy. */
@media(max-width:760px){
  .advantage-shade{
    background:linear-gradient(180deg,rgba(4,43,96,.40),rgba(5,55,105,.22),rgba(3,35,78,.38)) !important;
  }
  .story-shade{
    background:linear-gradient(180deg,rgba(4,44,97,.36),rgba(7,74,132,.15),rgba(4,38,82,.34)) !important;
  }
}


/* ==========================================================
   V19 — ORIGINAL CINEMATIC COLOR MASTER
   Uses the preferred original Argus image itself as the color
   source: crisp mountains, city lights, sunrise gold, rich blue.
   The goal is to preserve the photograph instead of tinting it.
   ========================================================== */

/* Preserve the original artwork's own color grading. */
.advantage-bg,
.story-bg{
  filter:saturate(1.02) brightness(1.02) contrast(1.02) !important;
}

/* Very light readability veil only. */
.advantage-shade{
  background:
    linear-gradient(90deg,
      rgba(3,25,62,.24) 0%,
      rgba(5,48,96,.08) 45%,
      rgba(3,34,73,.05) 72%,
      rgba(2,24,55,.14) 100%),
    linear-gradient(180deg,
      rgba(3,24,57,.18) 0%,
      rgba(7,65,119,.02) 45%,
      rgba(3,24,57,.17) 100%) !important;
}
.story-shade{
  background:
    linear-gradient(90deg,
      rgba(3,28,67,.20) 0%,
      rgba(6,59,111,.05) 50%,
      rgba(3,31,69,.10) 100%),
    linear-gradient(180deg,
      rgba(3,27,63,.17) 0%,
      rgba(8,72,128,.01) 45%,
      rgba(3,27,63,.16) 100%) !important;
}

/* Cleaner, clearer glass: retain image detail beneath panels. */
.adv-card{
  background:linear-gradient(135deg,
    rgba(5,48,108,.46),
    rgba(10,86,151,.20)) !important;
  border-color:rgba(180,225,255,.36) !important;
  backdrop-filter:blur(5px) !important;
  -webkit-backdrop-filter:blur(5px) !important;
}
.adv-cta-panel{
  background:linear-gradient(110deg,
    rgba(5,49,110,.54),
    rgba(12,93,157,.27)) !important;
  border-color:rgba(184,229,255,.38) !important;
  backdrop-filter:blur(6px) !important;
  -webkit-backdrop-filter:blur(6px) !important;
}
.story-mission{
  background:linear-gradient(110deg,
    rgba(5,52,116,.58),
    rgba(12,98,162,.30)) !important;
}
.story-section{
  background:linear-gradient(120deg,
    rgba(5,53,117,.50),
    rgba(12,104,169,.25)) !important;
  border-color:rgba(184,229,255,.34) !important;
  backdrop-filter:blur(6px) !important;
  -webkit-backdrop-filter:blur(6px) !important;
}
.story-closing{
  background:linear-gradient(105deg,
    rgba(5,55,121,.54),
    rgba(13,112,177,.28)) !important;
  border-color:rgba(184,229,255,.36) !important;
}

/* For the hero-based pages, reduce extra tinting so the newly
   selected source image remains crisp and cinematic. */
.solutions-hero,
.who-hero,
.how-hero{
  filter:saturate(1.02) brightness(1.02) contrast(1.02) !important;
}
.solutions-hero:before,
.who-hero:before{
  background:linear-gradient(90deg,
    rgba(4,37,86,.25),
    rgba(6,65,122,.06) 58%,
    rgba(3,32,70,.10)) !important;
}


/* ==========================================================
   V20 — TRUE ORIGINAL IMAGE
   The original artwork is the master. No site-wide blue wash.
   On wide desktop screens we deliberately show MORE of the image
   instead of forcing background-size:cover to zoom/crop it.
   ========================================================== */

/* ---------- HOMEPAGE ---------- */
.hero{
  background:#082d63 !important;
  min-height:100vh;
}

/* Show a wider field of view than "cover".
   90vw makes the person/city/mountains feel closer to the original
   proportions instead of enlarged by the browser crop. */
.hero .hero-bg{
  inset:-2% -5% !important;
  transform:none !important;
  background-image:url('assets/argus-hero-16x9.png') !important;
  background-repeat:no-repeat !important;
  background-position:center 48% !important;
  background-size:90vw auto !important;
  background-color:#082d63 !important;
  filter:none !important;
}

/* Only protect the copy area. The center, sunrise, city and right side
   stay almost completely untouched. */
.hero .hero-overlay{
  background:
    linear-gradient(90deg,
      rgba(3,24,58,.67) 0%,
      rgba(3,28,64,.45) 18%,
      rgba(3,31,67,.18) 34%,
      rgba(3,31,67,.035) 51%,
      rgba(3,31,67,0) 68%) !important;
}

/* Keep hero copy strong without needing to mute the photograph. */
.hero .hero-content{
  text-shadow:0 2px 14px rgba(0,20,48,.36);
}
.hero .hero-sub{
  text-shadow:0 2px 9px rgba(0,20,48,.55);
}

/* ---------- SOLUTIONS ---------- */
.solutions-hero{
  background:#08366f !important;
  filter:none !important;
}
.solutions-hero .hero-bg{
  inset:-2% -5% !important;
  transform:none !important;
  background-image:url('assets/argus-hero-16x9.png') !important;
  background-repeat:no-repeat !important;
  background-position:center 47% !important;
  background-size:90vw auto !important;
  background-color:#08366f !important;
  filter:none !important;
}
.solutions-hero .hero-overlay{
  background:
    linear-gradient(90deg,
      rgba(3,27,62,.60) 0%,
      rgba(3,32,69,.39) 20%,
      rgba(3,37,76,.13) 39%,
      rgba(3,37,76,.025) 57%,
      rgba(3,37,76,0) 72%),
    linear-gradient(0deg,
      rgba(4,43,86,.18) 0%,
      rgba(4,43,86,0) 34%) !important;
}
.solutions-hero:before{
  background:none !important;
}
.solutions-hero:after{
  height:22px !important;
  background:linear-gradient(to bottom,rgba(23,153,226,0),rgba(23,153,226,.62)) !important;
}

/* Make the blue continuation below the hero vivid but not milky. */
.capabilities{
  background:linear-gradient(180deg,#1299dc 0%,#087fc9 45%,#0668b3 100%) !important;
}
.capabilities-head{
  background:linear-gradient(120deg,rgba(5,80,154,.55),rgba(13,141,201,.28)) !important;
}
.capability-card{
  background:linear-gradient(135deg,rgba(4,68,145,.53),rgba(9,126,191,.28)) !important;
}

/* ---------- DESKTOP WIDE SCREEN CORRECTION ----------
   On very wide monitors, "cover" normally makes the image look huge.
   Here we size it by viewport width instead, showing a little more scene. */
@media(min-width:1200px) and (min-aspect-ratio:16/9){
  .hero .hero-bg,
  .solutions-hero .hero-bg{
    background-size:88vw auto !important;
    background-position:center 48% !important;
  }
}

/* On ordinary laptop ratios, use nearly full width so no side edges show. */
@media(min-width:901px) and (max-aspect-ratio:16/9){
  .hero .hero-bg,
  .solutions-hero .hero-bg{
    background-size:100vw auto !important;
  }
}

/* Mobile/tablet: cover is more reliable, but remove the old heavy wash. */
@media(max-width:900px){
  .hero .hero-bg,
  .solutions-hero .hero-bg{
    inset:0 !important;
    background-size:cover !important;
    background-position:57% center !important;
  }
  .hero .hero-overlay,
  .solutions-hero .hero-overlay{
    background:linear-gradient(0deg,
      rgba(3,34,77,.72) 0%,
      rgba(3,42,91,.34) 46%,
      rgba(3,42,91,.08) 74%) !important;
  }
}


/* ==========================================================
   V21 — FULL BLEED + POWER COLOR
   Fixes V20 side/bottom bars.
   The original image fills the full browser width.
   No global color wash; only a subtle local text-protection veil.
   ========================================================== */

/* HOMEPAGE: fill the entire viewport edge-to-edge. */
.hero{
  min-height:100vh !important;
  width:100% !important;
  overflow:hidden !important;
  background:#082d63 !important;
}
.hero .hero-bg{
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  transform:none !important;
  background-image:url('assets/argus-hero-16x9.png') !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:100% auto !important;
  background-color:#082d63 !important;
  filter:none !important;
}

/* On extra-tall viewports, fill height instead so there is never
   a bottom band. */
@media (max-aspect-ratio:25/16){
  .hero .hero-bg{
    background-size:cover !important;
  }
}

/* Almost no global tint. Darken only the left copy zone. */
.hero .hero-overlay{
  background:
    linear-gradient(90deg,
      rgba(2,18,47,.48) 0%,
      rgba(2,23,54,.30) 18%,
      rgba(2,27,60,.12) 31%,
      rgba(2,27,60,.025) 43%,
      rgba(2,27,60,0) 57%) !important;
}

/* Powerful copy without washing out the image. */
.hero h1{
  text-shadow:
    0 3px 16px rgba(0,20,48,.42),
    0 1px 2px rgba(0,0,0,.22) !important;
}
.hero .hero-sub,
.hero .eyebrow,
.hero .proof{
  text-shadow:0 2px 10px rgba(0,18,44,.58) !important;
}

/* SOLUTIONS: same true-image treatment. */
.solutions-hero{
  width:100% !important;
  overflow:hidden !important;
  background:#08366f !important;
  filter:none !important;
}
.solutions-hero .hero-bg{
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  transform:none !important;
  background-image:url('assets/argus-hero-16x9.png') !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:100% auto !important;
  background-color:#08366f !important;
  filter:none !important;
}
@media (max-aspect-ratio:25/16){
  .solutions-hero .hero-bg{
    background-size:cover !important;
  }
}
.solutions-hero .hero-overlay{
  background:
    linear-gradient(90deg,
      rgba(2,20,50,.45) 0%,
      rgba(2,26,59,.27) 19%,
      rgba(2,31,67,.10) 33%,
      rgba(2,31,67,.02) 46%,
      rgba(2,31,67,0) 60%) !important;
}
.solutions-hero:before{
  background:none !important;
}
.solutions-hero h1,
.solutions-hero .hero-sub,
.solutions-hero .eyebrow{
  text-shadow:0 2px 12px rgba(0,18,44,.50) !important;
}

/* Keep the transition vivid, not washed-out. */
.solutions-hero:after{
  height:18px !important;
  background:linear-gradient(to bottom,
    rgba(7,108,184,0),
    rgba(7,118,193,.78)) !important;
}
.capabilities{
  background:
    linear-gradient(180deg,#0d8fd3 0%,#087cc5 44%,#0566b3 100%) !important;
}
.capabilities-head{
  background:linear-gradient(120deg,
    rgba(5,72,149,.58),
    rgba(10,124,187,.30)) !important;
}
.capability-card{
  background:linear-gradient(135deg,
    rgba(4,60,135,.57),
    rgba(8,109,177,.29)) !important;
  border-color:rgba(178,224,255,.34) !important;
}

/* Wide-screen: keep the complete horizontal composition.
   No 88/90vw sizing, so there are no dark side rails. */
@media(min-width:901px){
  .hero .hero-bg,
  .solutions-hero .hero-bg{
    background-size:100% auto !important;
  }
}

/* Phone/tablet fallback. */
@media(max-width:900px){
  .hero .hero-bg,
  .solutions-hero .hero-bg{
    background-size:cover !important;
    background-position:57% center !important;
  }
  .hero .hero-overlay,
  .solutions-hero .hero-overlay{
    background:linear-gradient(0deg,
      rgba(2,27,66,.65) 0%,
      rgba(2,37,82,.24) 48%,
      rgba(2,37,82,.04) 76%) !important;
  }
}


/* ==========================================================
   V22 — SITEWIDE POWER PASS
   1) Entire Argus brand block is clearly clickable.
   2) V21 true-color / full-bleed treatment is carried across
      Who We Help, How We Work, Argus Advantage, and Our Story.
   ========================================================== */

/* ---------- CLICKABLE BRAND / HOME ---------- */
.site-nav .brand{
  cursor:pointer !important;
  transition:transform .18s ease, filter .18s ease, opacity .18s ease !important;
  border-radius:8px;
}
.site-nav .brand:hover{
  transform:translateY(-1px) scale(1.015);
  filter:brightness(1.16) drop-shadow(0 0 10px rgba(73,205,255,.32));
}
.site-nav .brand:focus-visible{
  outline:2px solid rgba(81,210,255,.90);
  outline-offset:5px;
}

/* ---------- WHO WE HELP ---------- */
.who-hero{
  width:100% !important;
  overflow:hidden !important;
  background:#08366f !important;
  filter:none !important;
}
.who-hero .hero-bg{
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  transform:none !important;
  background-image:url('assets/argus-hero-16x9.png') !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:100% auto !important;
  background-color:#08366f !important;
  filter:none !important;
}
.who-hero .hero-overlay{
  background:
    linear-gradient(90deg,
      rgba(2,20,50,.44) 0%,
      rgba(2,27,61,.25) 19%,
      rgba(2,32,68,.09) 34%,
      rgba(2,32,68,.02) 48%,
      rgba(2,32,68,0) 61%) !important;
}
.who-hero:before{background:none !important;}
.who-hero h1,
.who-hero .hero-sub,
.who-hero .eyebrow{
  text-shadow:0 2px 12px rgba(0,18,44,.50) !important;
}
.roots{
  background:linear-gradient(180deg,#0d8fd3 0%,#087cc5 44%,#0566b3 100%) !important;
}
.roots-grid{
  background:linear-gradient(120deg,rgba(5,72,149,.58),rgba(10,124,187,.30)) !important;
}
.industry-card{
  background:linear-gradient(135deg,rgba(4,60,135,.57),rgba(8,109,177,.29)) !important;
  border-color:rgba(178,224,255,.34) !important;
}

/* ---------- HOW WE WORK ---------- */
.how-hero{
  width:100% !important;
  overflow:hidden !important;
  background:#08366f !important;
  filter:none !important;
}
.how-hero .hero-bg{
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  transform:none !important;
  background-image:url('assets/argus-hero-16x9.png') !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:100% auto !important;
  background-color:#08366f !important;
  filter:none !important;
}
.how-hero .hero-overlay{
  background:
    linear-gradient(90deg,
      rgba(2,20,50,.43) 0%,
      rgba(2,27,61,.24) 19%,
      rgba(2,32,68,.08) 34%,
      rgba(2,32,68,.015) 48%,
      rgba(2,32,68,0) 61%) !important;
}
.how-hero h1,
.how-hero .hero-sub,
.how-hero .eyebrow{
  text-shadow:0 2px 12px rgba(0,18,44,.50) !important;
}

/* ---------- ARGUS ADVANTAGE ---------- */
.advantage-bg{
  background-image:url('assets/argus-hero-16x9.png') !important;
  background-position:center center !important;
  background-size:cover !important;
  filter:none !important;
}
.advantage-shade{
  background:
    linear-gradient(90deg,
      rgba(2,20,50,.40) 0%,
      rgba(2,27,61,.20) 20%,
      rgba(2,32,68,.06) 38%,
      rgba(2,32,68,.015) 55%,
      rgba(2,32,68,.04) 100%),
    linear-gradient(180deg,
      rgba(2,20,50,.18) 0%,
      rgba(2,20,50,.015) 45%,
      rgba(2,20,50,.19) 100%) !important;
}
.adv-card{
  background:linear-gradient(135deg,rgba(4,55,126,.51),rgba(7,103,171,.24)) !important;
  border-color:rgba(182,226,255,.35) !important;
  backdrop-filter:blur(5px) !important;
  -webkit-backdrop-filter:blur(5px) !important;
}
.adv-cta-panel{
  background:linear-gradient(110deg,rgba(4,55,126,.56),rgba(10,110,177,.27)) !important;
  border-color:rgba(184,229,255,.38) !important;
}

/* ---------- OUR STORY ---------- */
.story-bg{
  background-image:url('assets/argus-hero-16x9.png') !important;
  background-position:center center !important;
  background-size:cover !important;
  filter:none !important;
}
.story-shade{
  background:
    linear-gradient(90deg,
      rgba(2,20,50,.36) 0%,
      rgba(2,27,61,.16) 22%,
      rgba(2,32,68,.04) 42%,
      rgba(2,32,68,.01) 60%,
      rgba(2,32,68,.03) 100%),
    linear-gradient(180deg,
      rgba(2,20,50,.16) 0%,
      rgba(2,20,50,.01) 45%,
      rgba(2,20,50,.17) 100%) !important;
}
.story-mission{
  background:linear-gradient(110deg,rgba(4,58,130,.56),rgba(10,112,178,.27)) !important;
}
.story-section{
  background:linear-gradient(120deg,rgba(4,58,130,.50),rgba(9,115,181,.24)) !important;
  border-color:rgba(184,229,255,.34) !important;
}
.story-closing{
  background:linear-gradient(105deg,rgba(4,60,134,.54),rgba(10,119,187,.27)) !important;
  border-color:rgba(184,229,255,.36) !important;
}

/* ---------- WIDE DESKTOP / RESPONSIVE ---------- */
@media(min-width:901px){
  .who-hero .hero-bg,
  .how-hero .hero-bg{
    background-size:100% auto !important;
  }
}
@media(max-aspect-ratio:25/16){
  .who-hero .hero-bg,
  .how-hero .hero-bg{
    background-size:cover !important;
  }
}
@media(max-width:900px){
  .who-hero .hero-bg,
  .how-hero .hero-bg{
    background-size:cover !important;
    background-position:57% center !important;
  }
  .who-hero .hero-overlay,
  .how-hero .hero-overlay{
    background:linear-gradient(0deg,
      rgba(2,27,66,.64) 0%,
      rgba(2,37,82,.24) 48%,
      rgba(2,37,82,.04) 76%) !important;
  }
}


/* ==========================================================
   V23 — HOW WE WORK: TRUE COLOR + LOWER PROCESS PANEL
   Correct selector is .work-hero (not .how-hero).
   ========================================================== */

/* Let the original cinematic artwork show through. */
.work-hero{
  background:#08366f !important;
  filter:none !important;
  min-height:88vh !important;
}
.work-hero .hero-bg{
  inset:0 !important;
  transform:none !important;
  background-image:url('assets/argus-hero-16x9.png') !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:100% auto !important;
  filter:none !important;
}

/* Remove the heavy blue wash from V10.
   Only protect the left-side message. */
.work-hero .hero-overlay{
  background:
    linear-gradient(90deg,
      rgba(2,20,50,.46) 0%,
      rgba(2,27,61,.28) 18%,
      rgba(2,32,68,.10) 32%,
      rgba(2,32,68,.025) 45%,
      rgba(2,32,68,0) 60%) !important;
}

/* Much smaller transition veil so the gold sunrise and city stay visible. */
.work-hero:before{
  left:0 !important;
  right:0 !important;
  bottom:-18px !important;
  height:58px !important;
  border-radius:0 !important;
  background:linear-gradient(
    180deg,
    rgba(12,132,205,0) 0%,
    rgba(12,137,210,.18) 48%,
    rgba(13,143,214,.72) 100%
  ) !important;
}

.work-hero h1,
.work-hero .hero-sub,
.work-hero .eyebrow{
  text-shadow:0 2px 12px rgba(0,18,44,.52) !important;
}

/* Keep more of the original scene visible before the glass panel.
   V10 pulled this panel upward by 72px. V23 only overlaps by 18px. */
.process > .wrap{
  transform:translateY(-18px) !important;
  margin-bottom:-18px !important;
}

/* Stronger, cleaner blue rather than the pale/cyan wash. */
.process{
  padding-top:22px !important;
  background:
    radial-gradient(circle at 18% 5%,rgba(255,201,92,.12),transparent 24%),
    radial-gradient(circle at 82% 8%,rgba(86,231,255,.14),transparent 27%),
    linear-gradient(180deg,#0b8bd0 0%,#087bc4 44%,#0565b1 100%) !important;
}
.process-shell{
  border-color:rgba(190,230,255,.38) !important;
  background:linear-gradient(
    145deg,
    rgba(7,76,151,.52),
    rgba(15,132,195,.28)
  ) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  box-shadow:0 24px 58px rgba(0,39,96,.20), inset 0 1px rgba(255,255,255,.15) !important;
}

/* Wide desktop = full width without the old zoom. */
@media(min-width:901px){
  .work-hero .hero-bg{
    background-size:100% auto !important;
  }
}

/* If the viewport is taller than the artwork ratio, cover prevents gaps. */
@media(max-aspect-ratio:25/16){
  .work-hero .hero-bg{
    background-size:cover !important;
  }
}

@media(max-width:900px){
  .work-hero .hero-bg{
    background-size:cover !important;
    background-position:57% center !important;
  }
  .work-hero .hero-overlay{
    background:linear-gradient(
      0deg,
      rgba(2,27,66,.64) 0%,
      rgba(2,37,82,.24) 48%,
      rgba(2,37,82,.04) 76%
    ) !important;
  }
  .process > .wrap{
    transform:translateY(-10px) !important;
    margin-bottom:-10px !important;
  }
}


/* ==========================================================
   V24 — SITEWIDE SPACING + TRANSITION AUDIT
   One consistent rhythm:
   HERO IMAGE -> SOFT COLOR FADE -> BREATHING SPACE -> GLASS PANEL
   No panel is pulled upward into the photograph on desktop.
   ========================================================== */

:root{
  --argus-transition-space:46px;
  --argus-transition-space-mobile:28px;
}

/* ----------------------------------------------------------
   SOLUTIONS
   ---------------------------------------------------------- */
.solutions-hero:after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:4 !important;
  left:0 !important;
  right:0 !important;
  bottom:-1px !important;
  height:92px !important;
  pointer-events:none !important;
  background:linear-gradient(
    to bottom,
    rgba(13,143,211,0) 0%,
    rgba(13,143,211,.10) 27%,
    rgba(13,143,211,.38) 61%,
    rgba(13,143,211,.76) 83%,
    #0d8fd3 100%
  ) !important;
}
.capabilities{
  padding-top:var(--argus-transition-space) !important;
  margin-top:0 !important;
}
.capabilities > .wrap{
  transform:none !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}
.capabilities-head{
  margin-top:0 !important;
}

/* ----------------------------------------------------------
   WHO WE HELP
   ---------------------------------------------------------- */
.who-hero:after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:4 !important;
  left:0 !important;
  right:0 !important;
  bottom:-1px !important;
  height:92px !important;
  pointer-events:none !important;
  background:linear-gradient(
    to bottom,
    rgba(13,143,211,0) 0%,
    rgba(13,143,211,.10) 27%,
    rgba(13,143,211,.38) 61%,
    rgba(13,143,211,.76) 83%,
    #0d8fd3 100%
  ) !important;
}
.roots{
  padding-top:var(--argus-transition-space) !important;
  margin-top:0 !important;
}
.roots > .wrap{
  transform:none !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}
.roots-grid{
  margin-top:0 !important;
}

/* ----------------------------------------------------------
   HOW WE WORK
   Same spacing rhythm as Solutions + Who We Help.
   ---------------------------------------------------------- */
.work-hero:before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:4 !important;
  left:0 !important;
  right:0 !important;
  bottom:-1px !important;
  height:92px !important;
  border-radius:0 !important;
  pointer-events:none !important;
  background:linear-gradient(
    to bottom,
    rgba(11,139,208,0) 0%,
    rgba(11,139,208,.10) 27%,
    rgba(11,139,208,.38) 61%,
    rgba(11,139,208,.76) 83%,
    #0b8bd0 100%
  ) !important;
}
.process{
  padding-top:var(--argus-transition-space) !important;
}
.process > .wrap{
  transform:none !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}
.process-shell{
  margin-top:0 !important;
}

/* ----------------------------------------------------------
   ARGUS ADVANTAGE
   This page uses one continuous cinematic background rather than
   a hero/blue-section split. Normalize internal vertical rhythm.
   ---------------------------------------------------------- */
.advantage-content{
  padding-top:112px !important;
  padding-bottom:52px !important;
}
.adv-heading{
  margin-bottom:30px !important;
}
.adv-grid{
  margin-top:26px !important;
}
.adv-cta-panel{
  margin-top:28px !important;
}

/* ----------------------------------------------------------
   OUR STORY
   Continuous-background page: normalize section spacing and keep
   cards from visually crowding one another.
   ---------------------------------------------------------- */
.story-content{
  padding-top:112px !important;
  padding-bottom:52px !important;
}
.story-hero-grid{
  padding-bottom:52px !important;
}
.story-section{
  margin-top:26px !important;
}
.story-perspective{
  margin-top:22px !important;
}
.story-closing{
  margin-top:24px !important;
}

/* ----------------------------------------------------------
   HOMEPAGE
   Keep approved composition, only ensure edge-to-edge hero.
   ---------------------------------------------------------- */
.hero{
  margin:0 !important;
}

/* ----------------------------------------------------------
   RESPONSIVE RHYTHM
   ---------------------------------------------------------- */
@media(max-width:900px){
  .solutions-hero:after,
  .who-hero:after,
  .work-hero:before{
    height:62px !important;
  }

  .capabilities,
  .roots,
  .process{
    padding-top:var(--argus-transition-space-mobile) !important;
  }

  .capabilities > .wrap,
  .roots > .wrap,
  .process > .wrap{
    transform:none !important;
    margin-bottom:0 !important;
  }

  .advantage-content,
  .story-content{
    padding-top:96px !important;
  }
}

@media(max-width:620px){
  .capabilities,
  .roots,
  .process{
    padding-top:24px !important;
  }
}


/* ==========================================================
   V25 — SOLUTIONS VISUAL-RHYTHM MATCH
   The Solutions transition read visually deeper than Who We Help
   even with similar numeric spacing. Tighten only this transition
   so the glass panel lands at the same perceived distance.
   ========================================================== */

.solutions-hero:after{
  height:78px !important;
  background:linear-gradient(
    to bottom,
    rgba(13,143,211,0) 0%,
    rgba(13,143,211,.10) 30%,
    rgba(13,143,211,.36) 62%,
    rgba(13,143,211,.72) 84%,
    #0d8fd3 100%
  ) !important;
}

.capabilities{
  padding-top:28px !important;
}

.capabilities > .wrap{
  transform:none !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}

@media(max-width:900px){
  .capabilities{
    padding-top:24px !important;
  }
}


/* ==========================================================
   V28 — BEAUTY FIRST
   Preserve the full cinematic hero on Solutions / Who We Help /
   How We Work. Only a short soft fade at the bottom, then a
   nearby glass panel. No deep overlap and no large blue shelf.
   ========================================================== */

:root{
  --argus-soft-fade: 46px;
  --argus-panel-gap: 18px;
}

/* ---------------- SOLUTIONS ---------------- */
.solutions-hero:after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:4 !important;
  left:0 !important;
  right:0 !important;
  bottom:-1px !important;
  height:var(--argus-soft-fade) !important;
  pointer-events:none !important;
  background:linear-gradient(
    to bottom,
    rgba(13,143,211,0) 0%,
    rgba(13,143,211,.08) 34%,
    rgba(13,143,211,.28) 66%,
    rgba(13,143,211,.62) 88%,
    #0d8fd3 100%
  ) !important;
}

.capabilities{
  margin-top:0 !important;
  padding-top:var(--argus-panel-gap) !important;
  background:linear-gradient(
    180deg,
    #0d8fd3 0%,
    #087cc5 48%,
    #0566b3 100%
  ) !important;
}
.capabilities > .wrap{
  transform:none !important;
  margin:0 auto !important;
}
.capabilities-head{
  margin-top:0 !important;
  background:linear-gradient(
    145deg,
    rgba(5,66,140,.60),
    rgba(12,126,190,.32)
  ) !important;
  backdrop-filter:blur(9px) !important;
  -webkit-backdrop-filter:blur(9px) !important;
}

/* ---------------- WHO WE HELP ---------------- */
.who-hero:after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:4 !important;
  left:0 !important;
  right:0 !important;
  bottom:-1px !important;
  height:var(--argus-soft-fade) !important;
  pointer-events:none !important;
  background:linear-gradient(
    to bottom,
    rgba(13,143,211,0) 0%,
    rgba(13,143,211,.08) 34%,
    rgba(13,143,211,.28) 66%,
    rgba(13,143,211,.62) 88%,
    #0d8fd3 100%
  ) !important;
}

.roots{
  margin-top:0 !important;
  padding-top:var(--argus-panel-gap) !important;
  background:linear-gradient(
    180deg,
    #0d8fd3 0%,
    #087cc5 48%,
    #0566b3 100%
  ) !important;
}
.roots > .wrap{
  transform:none !important;
  margin:0 auto !important;
}
.roots-grid{
  margin-top:0 !important;
  background:linear-gradient(
    145deg,
    rgba(5,66,140,.60),
    rgba(12,126,190,.32)
  ) !important;
  backdrop-filter:blur(9px) !important;
  -webkit-backdrop-filter:blur(9px) !important;
}

/* ---------------- HOW WE WORK ---------------- */
.work-hero:before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:4 !important;
  left:0 !important;
  right:0 !important;
  bottom:-1px !important;
  height:var(--argus-soft-fade) !important;
  border-radius:0 !important;
  pointer-events:none !important;
  background:linear-gradient(
    to bottom,
    rgba(11,139,208,0) 0%,
    rgba(11,139,208,.08) 34%,
    rgba(11,139,208,.28) 66%,
    rgba(11,139,208,.62) 88%,
    #0b8bd0 100%
  ) !important;
}

.process{
  margin-top:0 !important;
  padding-top:var(--argus-panel-gap) !important;
  background:linear-gradient(
    180deg,
    #0b8bd0 0%,
    #087bc4 48%,
    #0565b1 100%
  ) !important;
}
.process > .wrap{
  transform:none !important;
  margin:0 auto !important;
}
.process-shell{
  margin-top:0 !important;
  background:linear-gradient(
    145deg,
    rgba(5,66,140,.60),
    rgba(12,126,190,.32)
  ) !important;
  backdrop-filter:blur(9px) !important;
  -webkit-backdrop-filter:blur(9px) !important;
}

/* Keep the approved hero photographs completely untouched. */
.solutions-hero .hero-bg,
.who-hero .hero-bg,
.work-hero .hero-bg{
  filter:none !important;
}

/* Mobile: still compact, but no overlap. */
@media(max-width:900px){
  :root{
    --argus-soft-fade: 34px;
    --argus-panel-gap: 14px;
  }
  .capabilities > .wrap,
  .roots > .wrap,
  .process > .wrap{
    transform:none !important;
    margin-bottom:0 !important;
  }
}


/* ==========================================================
   V29 — HOMEPAGE MASTER HERO
   Internal pages now follow the index page:
   full-screen cinematic image + direct section change.
   No experimental transition bands or overlap effects.
   ========================================================== */

.master-hero{
  position:relative;
  min-height:100vh;
  width:100%;
  overflow:hidden;
  background:#082d63;
}
.master-hero-bg{
  position:absolute;
  inset:0;
  background:url('assets/argus-hero-16x9.png') center center/cover no-repeat;
  filter:none !important;
}
.master-hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,
      rgba(2,18,47,.50) 0%,
      rgba(2,23,54,.31) 18%,
      rgba(2,27,60,.13) 31%,
      rgba(2,27,60,.03) 43%,
      rgba(2,27,60,0) 58%);
}
.master-hero-content{
  position:relative;
  z-index:2;
  min-height:100vh;
  display:flex;
  align-items:center;
  padding-top:82px;
  padding-bottom:58px;
}
.master-hero-copy{
  max-width:760px;
}
.master-eyebrow{
  margin:0 0 14px;
  color:#67d8ff;
  font:700 12px/1.2 "IBM Plex Mono",monospace;
  letter-spacing:.19em;
  text-transform:uppercase;
  text-shadow:0 2px 10px rgba(0,18,44,.55);
}
.master-hero h1{
  margin:0;
  color:#fff;
  font:600 clamp(62px,7vw,106px)/.94 "Newsreader",serif;
  letter-spacing:-.035em;
  text-shadow:0 3px 16px rgba(0,20,48,.42),0 1px 2px rgba(0,0,0,.22);
}
.master-hero h1 span{
  color:#57d7f6;
}
.master-sub{
  margin:28px 0 0;
  max-width:760px;
  color:#fff;
  font:400 20px/1.55 "IBM Plex Sans",sans-serif;
  text-shadow:0 2px 10px rgba(0,18,44,.60);
}

/* Clean reset of all earlier transition experiments. */
.solutions-hero,
.who-hero,
.work-hero,
.solutions-hero:after,
.who-hero:after,
.work-hero:before{
  display:none !important;
}

.capabilities,
.roots,
.process{
  margin-top:0 !important;
  padding-top:58px !important;
}

.capabilities > .wrap,
.roots > .wrap,
.process > .wrap{
  transform:none !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}

/* Direct, confident section change like the homepage. */
.capabilities{
  background:linear-gradient(180deg,#0c86ca 0%,#0876bd 48%,#0564af 100%) !important;
}
.roots{
  background:linear-gradient(180deg,#0c86ca 0%,#0876bd 48%,#0564af 100%) !important;
}
.process{
  background:linear-gradient(180deg,#0b83c8 0%,#0874ba 48%,#0562ac 100%) !important;
}

/* Retain existing glass-panel styling but remove any forced overlap. */
.capabilities-head,
.roots-grid,
.process-shell{
  margin-top:0 !important;
}

@media(max-width:900px){
  .master-hero{
    min-height:auto;
  }
  .master-hero-content{
    min-height:760px;
    padding-top:110px;
    padding-bottom:70px;
  }
  .master-hero-bg{
    background-position:57% center;
  }
  .master-hero-overlay{
    background:linear-gradient(
      0deg,
      rgba(2,27,66,.65) 0%,
      rgba(2,37,82,.24) 48%,
      rgba(2,37,82,.04) 76%);
  }
  .master-hero h1{
    font-size:clamp(48px,11vw,78px);
  }
  .master-sub{
    font-size:18px;
  }
}


/* ===== V30 HOMEPAGE ONLY ===== */
.v30-hero-copy{max-width:690px;margin-bottom:14px!important}
.v30-hero-punch{max-width:760px;font-size:clamp(18px,1.5vw,22px);line-height:1.45;margin:0 0 18px;color:#fff}
.v30-proof{max-width:720px;font-size:16px;line-height:1.55;color:#eaf5ff;margin:-8px 0 28px}
.v30-solve,.v30-industries,.v30-why{position:relative;padding:110px 0;background:#0750ad;color:#fff}
.v30-solve{background:linear-gradient(180deg,#0750ad,#06479c)}
.v30-industries{background:linear-gradient(180deg,#06479c,#073f8d)}
.v30-why{text-align:center;background:radial-gradient(circle at 50% 50%,#1175d4 0,#0750ad 42%,#063d89 100%)}
.v30-section-head{text-align:center;max-width:900px;margin:0 auto 52px}
.v30-section-head h2,.v30-why h2{font-family:"Newsreader",serif;font-size:clamp(46px,5.5vw,78px);line-height:.96;letter-spacing:-.035em;margin:0}
.v30-section-head h2 span,.v30-why h2 span{color:#5edcff}
.v30-three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.v30-three article,.v30-grid article{border:1px solid rgba(174,240,255,.28);background:rgba(7,74,157,.58);padding:30px;min-height:190px;box-shadow:0 16px 34px rgba(2,44,107,.16)}
.v30-three article>span{display:block;color:#5edcff;font-weight:700;letter-spacing:.14em;margin-bottom:28px}
.v30-three h3,.v30-grid h3{font-size:14px;letter-spacing:.13em;margin:0 0 12px}
.v30-three p,.v30-grid p{font-size:16px;line-height:1.55;color:#eef7ff;margin:0}
.v30-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:950px;margin:auto}
.v30-grid article{min-height:140px}
.v30-grid a{color:#5edcff;font-weight:700;text-decoration:none}
.v30-why .wrap{max-width:980px}
.v30-why h2{margin:0 auto 34px}
.v30-process{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;font-size:15px;letter-spacing:.16em;margin:0 0 28px}
.v30-process strong:nth-of-type(2){color:#5edcff}.v30-process strong:nth-of-type(3){color:#47e4c1}.v30-process strong:nth-of-type(4){color:#8ce900}
.v30-process i{font-style:normal;color:#f5c64d}
.v30-why p:last-child{max-width:760px;margin:0 auto;font-size:19px;line-height:1.6;color:#eef7ff}
@media(max-width:760px){
 .v30-solve,.v30-industries,.v30-why{padding:78px 0}
 .v30-three,.v30-grid{grid-template-columns:1fr}
 .v30-three article,.v30-grid article{min-height:0}
 .v30-process{gap:10px;font-size:12px}
 .v30-proof{font-size:15px}
}

/* V30 CLEAN HOMEPAGE LOWER SECTION */
.v30-clean-three article{min-height:145px;text-align:left}
.v30-clean-three h3{font-size:18px;color:#fff;margin-bottom:12px}
.v30-clean-three p{font-size:17px}
.v30-clean-closing{padding-top:110px;padding-bottom:110px}

/* V30 FINAL HOMEPAGE: hero only */
@media (min-width: 900px){
  .hero .hero-content{
    transform: translateX(-30px);
  }
}

/* V30 OPTION B — ONE SWEEPING HEADLINE */
.v30-sweep-title{
  width:min(1120px,82vw);
  height:250px;
  margin:-20px 0 -6px;
  overflow:visible;
}
.v30-sweep-title svg{display:block;width:100%;height:100%;overflow:visible}
.v30-sweep-title .sweep-text{
  fill:#ffffff;
  font-family:"Newsreader",Georgia,serif;
  font-weight:700;
  letter-spacing:-2px;
}
@media(max-width:900px){
  .v30-sweep-title{width:100%;height:auto;margin:0 0 8px}
  .v30-sweep-title .sweep-text{font-size:76px}
}

/* OPTION B REVISION — centered sweep + lower copy shifted left */
@media (min-width: 900px){
  /* Cancel the previous global hero-content left shift so the headline can center cleanly. */
  .hero .hero-content{
    transform:none !important;
  }

  /* Center the sweeping headline across the hero. */
  .v30-sweep-title{
    width:min(1180px,76vw) !important;
    margin:-20px auto -6px !important;
    position:relative;
    left:50%;
    transform:translateX(-50%);
  }

  /* Move only the content beneath the headline farther left. */
  .v30-lower-copy{
    transform:translateX(-42px);
  }
}
@media (max-width:899px){
  .v30-lower-copy{transform:none}
}

/* TRUE VISUAL CENTERING — text itself centered on the sweep */
@media (min-width:900px){
  .v30-sweep-title{
    width:min(1180px,76vw) !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    margin:-20px 0 -6px !important;
  }
}

/* OPTION B REFINEMENT — softer headline + lower block farther left */
@media (min-width:900px){
  /* Warm ivory/cool pearl instead of stark white; keeps contrast on the blue sky. */
  .v30-sweep-title text{
    fill:#E8EEF2 !important;
    text-shadow:
      0 2px 5px rgba(0,20,45,.42),
      0 0 18px rgba(61,201,255,.10);
  }

  /* Move the complete lower content block farther toward the left edge. */
  .v30-lower-copy{
    transform:translateX(-105px) !important;
  }
}

/* OPTION B — ARGUS CYAN HEADLINE + ADDITIONAL 80PX LEFT SHIFT */
@media (min-width:900px){
  .v30-sweep-title text{
    /* luminous Argus cyan: stronger identity than white/pearl */
    fill:#58D6F5 !important;
    text-shadow:
      0 2px 6px rgba(0,18,42,.58),
      0 0 20px rgba(38,190,235,.18);
  }

  /* Previous shift was 105px; add another 80px = 185px total. */
  .v30-lower-copy{
    transform:translateX(-185px) !important;
  }
}

/* OPTION B — SUNLIGHT GOLD HEADLINE; POSITION UNCHANGED */
@media (min-width:900px){
  .v30-sweep-title text{
    fill:#FFD88A !important;
    text-shadow:
      0 2px 6px rgba(0,20,45,.55),
      0 0 18px rgba(255,205,112,.20);
  }
  .v30-lower-copy{
    transform:translateX(-185px) !important;
  }
}

/* Stronger sunrise gold headline */
@media (min-width:900px){
  .v30-sweep-title text{
    fill:#F4B942 !important;
    text-shadow:
      0 2px 3px rgba(7,20,35,.88),
      0 4px 10px rgba(7,20,35,.52) !important;
  }
  .v30-lower-copy{
    transform:translateX(-185px) !important;
  }
}

/* Move hero content toward the lower-left corner — screenshot refinement */
@media (min-width:900px){
  .v30-lower-copy{
    transform:translate(-265px, 105px) !important;
  }
}

/* Raise approved bottom-left hero content approximately 1/2 inch (~48 CSS px) */
@media (min-width:900px){
  .v30-lower-copy{
    transform:translate(-265px, 57px) !important;
  }
}

/* Headline test A — Pure White + Deep Navy definition */
@media (min-width:900px){
  .v30-sweep-title text{
    fill:#FFFFFF !important;
    text-shadow:
      0 2px 2px rgba(3,20,48,.95),
      0 4px 8px rgba(3,20,48,.72),
      0 0 2px rgba(3,20,48,.85) !important;
  }
}

/* V30 simplified header preview — homepage only */
@media (min-width:900px){
  .site-header nav,
  header nav,
  .nav-links{
    gap:38px !important;
  }
  .site-header nav a,
  header nav a,
  .nav-links a{
    letter-spacing:.02em;
  }
}

/* Match homepage navigation to approved pure-white headline */
@media (min-width:900px){
  .site-header nav a,
  header nav a,
  .nav-links a{
    color:#FFFFFF !important;
    opacity:1 !important;
  }
}

/* =========================================================
   V30 SOLUTIONS — ONE SCREEN / CLEAN PRESENTATION
   ========================================================= */
.solutions-onepage{height:100vh;min-height:720px;background:#071b32;color:#fff;overflow:hidden}
.solutions-onepage-shell{height:100%;position:relative;padding-top:92px;box-sizing:border-box}
.solutions-onepage-bg{
  position:absolute;inset:0;
  background:
    radial-gradient(circle at 84% 12%,rgba(40,177,224,.20),transparent 31%),
    radial-gradient(circle at 15% 85%,rgba(20,106,156,.22),transparent 35%),
    linear-gradient(125deg,#06172a 0%,#0a2945 56%,#0a3450 100%);
}
.solutions-onepage-bg:after{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(to bottom,transparent,black 30%,black 80%,transparent);
}
.solutions-onepage-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,14,28,.30),transparent 65%)}
.solutions-onepage-inner{
  position:relative;z-index:2;height:100%;display:flex;flex-direction:column;
  padding-top:32px;padding-bottom:22px;box-sizing:border-box;
}
.solutions-onepage-intro{max-width:940px}
.solutions-onepage-kicker{
  margin:0 0 8px;color:#66d7f2;font:600 12px/1 "IBM Plex Mono",monospace;
  letter-spacing:.18em;
}
.solutions-onepage-intro h1{
  margin:0;color:#fff;font:600 clamp(38px,3.25vw,58px)/.98 "Newsreader",Georgia,serif;
  letter-spacing:-.025em;
}
.solutions-onepage-intro h1 span{color:#8bdff3}
.solutions-onepage-intro>p:last-child{
  margin:13px 0 0;max-width:900px;color:rgba(255,255,255,.77);
  font-size:15px;line-height:1.5;
}
.solutions-onepage-intro>p strong{color:#fff;font-weight:500}

.solutions-onepage-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  margin-top:24px;background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.15);
  border-radius:10px;overflow:hidden;
}
.solutions-onepage-grid article{
  min-height:128px;padding:18px 21px;background:rgba(6,25,45,.78);
  transition:background .2s ease;
}
.solutions-onepage-grid article:hover{background:rgba(11,49,77,.94)}
.solution-num{
  display:block;margin-bottom:7px;color:#64d6f0;
  font:500 10px/1 "IBM Plex Mono",monospace;letter-spacing:.12em;
}
.solutions-onepage-grid h2{
  margin:0 0 6px;color:#fff;font-size:18px;line-height:1.16;font-weight:600;
}
.solutions-onepage-grid p{
  margin:0;color:rgba(255,255,255,.68);font-size:13px;line-height:1.42;
}

.solutions-onepage-bottom{
  margin-top:auto;padding-top:18px;display:flex;align-items:center;justify-content:space-between;
  gap:30px;border-top:1px solid rgba(255,255,255,.16);
}
.solutions-connection{display:flex;align-items:center;gap:18px;max-width:720px}
.solutions-connection>span{
  flex:0 0 auto;color:#64d6f0;font:600 10px/1 "IBM Plex Mono",monospace;letter-spacing:.14em;
}
.solutions-connection p{margin:0;color:rgba(255,255,255,.70);font-size:13px;line-height:1.4}
.solutions-connection strong{color:#fff;font-weight:600}
.solutions-onepage-cta{
  flex:0 0 auto;text-decoration:none;color:rgba(255,255,255,.75);font-size:13px;
  border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:11px 16px;
  transition:.2s ease;
}
.solutions-onepage-cta strong{color:#fff;font-weight:600}
.solutions-onepage-cta b{color:#64d6f0;margin-left:8px}
.solutions-onepage-cta:hover{border-color:#64d6f0;background:rgba(100,214,240,.08)}

@media (min-width:900px){
  .solutions-onepage .site-nav a,
  body:has(.solutions-onepage) .site-nav a,
  body:has(.solutions-onepage) .desktop-nav a{color:#fff !important;opacity:1 !important}
}
@media (max-width:900px){
  .solutions-onepage{height:auto;min-height:100vh;overflow:visible}
  .solutions-onepage-shell{padding-top:82px}
  .solutions-onepage-inner{padding-top:28px;padding-bottom:32px}
  .solutions-onepage-grid{grid-template-columns:1fr;margin-top:22px}
  .solutions-onepage-grid article{min-height:0}
  .solutions-onepage-bottom{margin-top:22px;align-items:flex-start;flex-direction:column}
}
@media (min-width:901px) and (max-height:800px){
  .solutions-onepage-shell{padding-top:78px}
  .solutions-onepage-inner{padding-top:18px;padding-bottom:14px}
  .solutions-onepage-intro h1{font-size:40px}
  .solutions-onepage-intro>p:last-child{margin-top:8px;font-size:13px}
  .solutions-onepage-grid{margin-top:14px}
  .solutions-onepage-grid article{min-height:100px;padding:12px 17px}
  .solutions-onepage-grid h2{font-size:16px}
  .solutions-onepage-grid p{font-size:12px}
  .solutions-onepage-bottom{padding-top:10px}
}

/* V30: WHO WE HELP — compact one-screen layout */
.who-onepage{min-height:100svh;color:#fff;background:#071b32}
.who-onepage-shell{min-height:100svh;box-sizing:border-box;padding:116px 0 25px;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 83% 5%,rgba(37,174,219,.18),transparent 40%),radial-gradient(ellipse at 4% 95%,rgba(25,104,153,.2),transparent 42%),linear-gradient(125deg,#06172a,#092b46 68%,#0a344c)}
.who-onepage-shell:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.35;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:54px 54px}
.who-onepage-inner{display:flex;flex-direction:column;gap:24px;min-height:calc(100svh - 141px);box-sizing:border-box}
.who-intro{max-width:970px}
.who-kicker{color:#67d7f2;font:600 12px/1.2 "IBM Plex Mono",monospace;letter-spacing:.16em;margin:0 0 10px}
.who-intro h1{font:600 clamp(38px,3.25vw,58px)/.99 "Newsreader",Georgia,serif;letter-spacing:-.025em;margin:0;color:#fff}
.who-intro h1 span{color:#91dff1}
.who-intro>p:last-child{margin:13px 0 0;color:rgba(255,255,255,.76);font-size:15px;line-height:1.5}
.who-intro strong{color:#fff;font-weight:500}
.who-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.who-grid article{grid-column:span 2;min-height:140px;padding:19px 21px;box-sizing:border-box;border:1px solid rgba(255,255,255,.17);border-radius:10px;background:rgba(4,22,41,.66)}
.who-grid article:nth-child(4){grid-column:2/span 2}
.who-grid article:nth-child(5){grid-column:4/span 2}
.who-number{display:block;color:#67d7f2;font:500 11px/1 "IBM Plex Mono",monospace;margin-bottom:10px}
.who-grid h2{color:#fff;font:600 18px/1.17 "IBM Plex Sans",sans-serif;margin:0 0 9px}
.who-grid p{color:rgba(255,255,255,.72);font-size:13px;line-height:1.48;margin:0}
.who-bottom{margin-top:auto;padding-top:17px;border-top:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:space-between;gap:24px}
.who-bottom p{margin:0;font-size:13px;line-height:1.55;color:rgba(255,255,255,.7)}
.who-bottom p span{display:block;color:#67d7f2;font:600 10px/1.5 "IBM Plex Mono",monospace;letter-spacing:.12em}
.who-bottom p strong{color:#fff;font-weight:600}
.who-bottom a{flex:0 0 auto;border:1px solid rgba(255,255,255,.27);padding:12px 19px;border-radius:999px;text-decoration:none;color:#fff;font-size:13px}
.who-bottom a b{color:#67d7f2;margin-left:8px}
.who-bottom a:hover{border-color:#67d7f2;background:rgba(103,215,242,.08)}
@media(min-width:901px){body:has(.who-onepage) .desktop-nav a{color:#fff!important;opacity:1!important}}
@media(min-width:901px) and (max-height:850px){.who-onepage-shell{padding-top:95px;padding-bottom:15px}.who-onepage-inner{gap:15px;min-height:calc(100svh - 110px)}.who-intro h1{font-size:43px}.who-intro>p:last-child{font-size:13px;margin-top:8px}.who-grid{gap:9px}.who-grid article{min-height:109px;padding:13px 17px}.who-number{margin-bottom:6px}.who-grid h2{font-size:16px;margin-bottom:5px}.who-grid p{font-size:12px}.who-bottom{padding-top:10px}}
@media(max-width:900px){.who-onepage-shell{padding-top:105px}.who-onepage-inner{min-height:0;gap:23px}.who-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.who-grid article,.who-grid article:nth-child(4),.who-grid article:nth-child(5){grid-column:auto;min-height:0}.who-bottom{margin-top:0;align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.who-grid{grid-template-columns:1fr}.who-intro h1{font-size:40px}.who-onepage-shell{padding-top:100px;padding-bottom:35px}}

/* =========================================================
   WHO WE HELP — VISIBILITY + SUBTLE CONSULTING MOTION
   ========================================================= */

/* Make the two strategic statements materially easier to scan */
.who-onepage-intro > p:last-child,
.who-we-help-onepage-intro > p:last-child,
.who-intro > p:last-child{
  font-size:clamp(17px,1.18vw,21px) !important;
  line-height:1.48 !important;
  max-width:1040px !important;
  color:rgba(255,255,255,.88) !important;
}
.who-onepage-intro > p:last-child strong,
.who-we-help-onepage-intro > p:last-child strong,
.who-intro > p:last-child strong{
  color:#fff !important;
  font-weight:650 !important;
}

/* Bottom ONE APPROACH message — larger, clearer, but still secondary to page title */
.who-onepage-bottom,
.who-we-help-onepage-bottom,
.who-bottom{
  position:relative;
  z-index:4;
}
.who-onepage-bottom p,
.who-we-help-onepage-bottom p,
.who-bottom p{
  font-size:16px !important;
  line-height:1.45 !important;
}
.who-onepage-bottom strong,
.who-we-help-onepage-bottom strong,
.who-bottom strong{
  font-size:19px !important;
  color:#fff !important;
}
.who-onepage-bottom a,
.who-we-help-onepage-bottom a,
.who-bottom a{
  font-size:15px !important;
}

/* Elegant animated background: connected thinking / systems / movement.
   No stock imagery; motion stays behind the content. */
.consulting-motion-bg{
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
  z-index:0;
}
.consulting-motion-bg:before{
  content:"";
  position:absolute;
  width:46vw;height:46vw;
  min-width:520px;min-height:520px;
  right:-10vw;top:-19vw;
  border:1px solid rgba(102,215,242,.16);
  border-radius:50%;
  box-shadow:
    0 0 0 90px rgba(102,215,242,.025),
    0 0 0 180px rgba(102,215,242,.018);
  animation:argusOrbit 18s ease-in-out infinite alternate;
}
.consulting-motion-bg:after{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(115deg,transparent 0 54%,rgba(94,211,239,.045) 54.15%,transparent 54.3%),
    linear-gradient(25deg,transparent 0 68%,rgba(255,255,255,.035) 68.12%,transparent 68.25%);
  animation:argusShift 16s ease-in-out infinite alternate;
}
.motion-orb{
  position:absolute;border-radius:50%;filter:blur(2px);
  background:radial-gradient(circle,rgba(101,218,243,.24),rgba(41,137,187,.08) 42%,transparent 72%);
}
.orb-a{width:420px;height:420px;right:4%;top:22%;animation:argusFloatA 14s ease-in-out infinite}
.orb-b{width:330px;height:330px;left:-5%;bottom:-12%;animation:argusFloatB 17s ease-in-out infinite}
.motion-line{
  position:absolute;height:1px;
  background:linear-gradient(90deg,transparent,rgba(100,214,240,.24),rgba(255,255,255,.10),transparent);
  transform-origin:left center;
}
.line-a{width:54vw;right:-9vw;top:31%;transform:rotate(-17deg);animation:argusPulse 8s ease-in-out infinite}
.line-b{width:46vw;right:3vw;top:58%;transform:rotate(11deg);animation:argusPulse 10s 1.5s ease-in-out infinite}
.line-c{width:38vw;left:-5vw;top:73%;transform:rotate(-8deg);animation:argusPulse 9s 3s ease-in-out infinite}

@keyframes argusOrbit{
  from{transform:translate3d(0,0,0) scale(.96)}
  to{transform:translate3d(-34px,38px,0) scale(1.05)}
}
@keyframes argusShift{
  from{transform:translateX(-1.5%);opacity:.65}
  to{transform:translateX(1.5%);opacity:1}
}
@keyframes argusFloatA{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(-34px,24px,0)}
}
@keyframes argusFloatB{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(28px,-24px,0)}
}
@keyframes argusPulse{
  0%,100%{opacity:.25;transform-origin:center}
  50%{opacity:.9}
}

/* Ensure page content stays above the animated layer */
.who-onepage-inner,
.who-we-help-onepage-inner,
.who-onepage-shell > .wrap,
.who-we-help-onepage-shell > .wrap{
  position:relative;
  z-index:2;
}

@media (prefers-reduced-motion:reduce){
  .consulting-motion-bg *,
  .consulting-motion-bg:before,
  .consulting-motion-bg:after{animation:none !important}
}

/* WHO WE HELP — LIGHTER ARGUS BLUE + CIRCLES FROM LEFT */
.who-onepage,
.who-onepage-shell,
.who-we-help-onepage,
.who-we-help-onepage-shell{
  background:
    radial-gradient(circle at 12% 22%,rgba(56,167,216,.30),transparent 32%),
    radial-gradient(circle at 84% 16%,rgba(76,194,229,.24),transparent 30%),
    linear-gradient(125deg,#0c3151 0%,#115173 52%,#176785 100%) !important;
}

/* Lift any dark overlay without losing white-text contrast */
.who-onepage-overlay,
.who-we-help-onepage-overlay{
  background:linear-gradient(90deg,rgba(5,29,50,.16),rgba(5,38,60,.05)) !important;
}

/* Additional connected circles entering from lower-left */
.left-ring{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(137,226,246,.22);
  box-shadow:0 0 28px rgba(75,194,226,.035);
  transform-origin:center;
}
.ring-left-a{
  width:520px;height:520px;left:-315px;bottom:-195px;
  animation:leftRingDrift 17s ease-in-out infinite alternate;
}
.ring-left-b{
  width:370px;height:370px;left:-205px;bottom:-105px;
  border-color:rgba(255,255,255,.13);
  animation:leftRingDriftB 20s ease-in-out infinite alternate;
}
.ring-left-c{
  width:220px;height:220px;left:-95px;bottom:-18px;
  border-color:rgba(115,221,245,.25);
  animation:leftRingDrift 14s 1.5s ease-in-out infinite alternate-reverse;
}

@keyframes leftRingDrift{
  from{transform:translate3d(0,0,0) scale(.98);opacity:.65}
  to{transform:translate3d(38px,-24px,0) scale(1.04);opacity:1}
}
@keyframes leftRingDriftB{
  from{transform:translate3d(0,0,0);opacity:.5}
  to{transform:translate3d(24px,-38px,0);opacity:.9}
}

/* Slightly brighten cards/surfaces to suit the lighter background */
.who-onepage-grid article,
.who-we-help-onepage-grid article,
.who-grid article{
  background:rgba(8,42,67,.62) !important;
  border-color:rgba(255,255,255,.16) !important;
}

@media (prefers-reduced-motion:reduce){
  .left-ring{animation:none !important}
}

/* =========================================================
   V30 — WHO WE HELP CARD LEGIBILITY
   ========================================================= */
.who-onepage-grid h2,
.who-we-help-onepage-grid h2,
.who-grid h2{
  font-size:clamp(20px,1.38vw,24px) !important;
  line-height:1.15 !important;
  margin-bottom:9px !important;
}
.who-onepage-grid p,
.who-we-help-onepage-grid p,
.who-grid p{
  font-size:clamp(14px,.98vw,17px) !important;
  line-height:1.48 !important;
  color:rgba(255,255,255,.82) !important;
}
.who-onepage-grid article,
.who-we-help-onepage-grid article,
.who-grid article{
  padding:21px 23px !important;
}

/* =========================================================
   V30 — SOLUTIONS MATCHES WHO WE HELP DYNAMIC BACKGROUND
   ========================================================= */
.solutions-onepage-shell{
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(circle at 12% 22%,rgba(56,167,216,.30),transparent 32%),
    radial-gradient(circle at 84% 16%,rgba(76,194,229,.24),transparent 30%),
    linear-gradient(125deg,#0c3151 0%,#115173 52%,#176785 100%) !important;
}
.solutions-onepage-bg{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  background:transparent !important;
  overflow:hidden !important;
}
.solutions-onepage-bg:before{
  content:"";
  position:absolute;
  width:46vw;height:46vw;
  min-width:520px;min-height:520px;
  right:-10vw;top:-19vw;
  border:1px solid rgba(102,215,242,.16);
  border-radius:50%;
  box-shadow:
    0 0 0 90px rgba(102,215,242,.025),
    0 0 0 180px rgba(102,215,242,.018);
  animation:argusOrbit 18s ease-in-out infinite alternate;
}
.solutions-onepage-bg:after{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(115deg,transparent 0 54%,rgba(94,211,239,.045) 54.15%,transparent 54.3%),
    linear-gradient(25deg,transparent 0 68%,rgba(255,255,255,.035) 68.12%,transparent 68.25%);
  animation:argusShift 16s ease-in-out infinite alternate;
}
.solutions-onepage-overlay{
  z-index:1 !important;
  background:linear-gradient(90deg,rgba(5,29,50,.16),rgba(5,38,60,.05)) !important;
}
.solutions-onepage-inner{z-index:3 !important}

/* Left-side circle family on Solutions, matching Who We Help */
.solutions-onepage-shell:before,
.solutions-onepage-shell:after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  z-index:1;
}
.solutions-onepage-shell:before{
  width:520px;height:520px;left:-315px;bottom:-195px;
  border:1px solid rgba(137,226,246,.22);
  box-shadow:
    0 0 0 74px rgba(255,255,255,.025),
    0 0 0 148px rgba(115,221,245,.025);
  animation:leftRingDrift 17s ease-in-out infinite alternate;
}
.solutions-onepage-shell:after{
  width:220px;height:220px;left:-95px;bottom:-18px;
  border:1px solid rgba(115,221,245,.25);
  animation:leftRingDrift 14s 1.5s ease-in-out infinite alternate-reverse;
}

/* Cards tuned to sit on the lighter shared background */
.solutions-onepage-grid article{
  background:rgba(8,42,67,.62) !important;
}
.solutions-onepage-grid article:hover{
  background:rgba(10,55,82,.78) !important;
}

@media (prefers-reduced-motion:reduce){
  .solutions-onepage-bg:before,
  .solutions-onepage-bg:after,
  .solutions-onepage-shell:before,
  .solutions-onepage-shell:after{animation:none !important}
}

/* =========================================================
   V30 — AIRIER CONSULTING DIRECTION
   Larger Solutions cards + lighter, more dimensional background
   ========================================================= */

/* Brighter shared interior-page atmosphere */
.solutions-onepage-shell,
.who-onepage,
.who-onepage-shell,
.who-we-help-onepage,
.who-we-help-onepage-shell{
  background:
    radial-gradient(circle at 9% 14%,rgba(157,226,243,.32),transparent 27%),
    radial-gradient(circle at 78% 8%,rgba(103,206,235,.28),transparent 30%),
    radial-gradient(circle at 52% 88%,rgba(65,166,204,.20),transparent 38%),
    linear-gradient(128deg,#164c6c 0%,#1d6684 48%,#27809a 100%) !important;
}

/* Fine luminous network texture — adds depth without looking busy */
.solutions-onepage-shell,
.who-onepage-shell,
.who-we-help-onepage-shell{
  overflow:hidden;
}
.solutions-onepage-shell .solutions-onepage-bg{
  background:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px) !important;
  background-size:64px 64px !important;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.30),#000 34%,#000 82%,rgba(0,0,0,.20));
}

/* Glassier cards give the page the "something" it was missing */
.solutions-onepage-grid{
  gap:10px !important;
  background:transparent !important;
  border:0 !important;
  overflow:visible !important;
}
.solutions-onepage-grid article{
  min-height:154px !important;
  padding:24px 26px !important;
  background:linear-gradient(145deg,rgba(8,50,76,.62),rgba(9,67,91,.46)) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  border-radius:12px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter:blur(4px);
}
.solutions-onepage-grid article:hover{
  background:linear-gradient(145deg,rgba(10,63,91,.72),rgba(13,82,106,.56)) !important;
  border-color:rgba(133,226,246,.42) !important;
}
.solutions-onepage-grid h2{
  font-size:clamp(20px,1.35vw,24px) !important;
  line-height:1.15 !important;
  margin-bottom:9px !important;
}
.solutions-onepage-grid p{
  font-size:clamp(14px,.95vw,16.5px) !important;
  line-height:1.48 !important;
  color:rgba(255,255,255,.84) !important;
}
.solutions-onepage-grid .solution-num{
  font-size:11px !important;
  margin-bottom:10px !important;
  color:#a4e9f7 !important;
}

/* Slightly brighter text accents on both interior pages */
.solutions-onepage-kicker,
.who-onepage-kicker,
.who-we-help-onepage-kicker,
.solution-num{
  color:#a8ecf8 !important;
}

/* Keep it on one screen on common desktop/laptop sizes */
@media (min-width:901px) and (max-height:900px){
  .solutions-onepage-grid article{
    min-height:132px !important;
    padding:18px 22px !important;
  }
  .solutions-onepage-grid{gap:8px !important;margin-top:18px !important}
  .solutions-onepage-grid h2{font-size:19px !important}
  .solutions-onepage-grid p{font-size:13.5px !important}
}
@media (min-width:901px) and (min-height:901px){
  .solutions-onepage-grid article{min-height:160px !important}
}

/* =========================================================
   V30 — SOLUTIONS STRATEGIC COPY: MATCH WHO WE HELP PRESENCE
   ========================================================= */

/* Opening statement */
.solutions-onepage-intro > p:last-child{
  font-size:clamp(17px,1.18vw,21px) !important;
  line-height:1.48 !important;
  max-width:1040px !important;
  color:rgba(255,255,255,.90) !important;
}
.solutions-onepage-intro > p:last-child strong{
  color:#fff !important;
  font-weight:650 !important;
}

/* CONNECTED THINKING bottom statement */
.solutions-onepage-bottom{
  gap:34px !important;
}
.solutions-connection{
  max-width:790px !important;
  gap:20px !important;
}
.solutions-connection > span{
  font-size:11px !important;
  color:#a8ecf8 !important;
}
.solutions-connection p{
  font-size:16px !important;
  line-height:1.45 !important;
  color:rgba(255,255,255,.82) !important;
}
.solutions-connection p strong{
  font-size:19px !important;
  color:#fff !important;
  font-weight:650 !important;
}

/* CTA */
.solutions-onepage-cta{
  font-size:15px !important;
  line-height:1.3 !important;
  padding:13px 18px !important;
}
.solutions-onepage-cta strong{
  font-weight:650 !important;
}

/* Preserve one-screen behavior on shorter laptops */
@media (min-width:901px) and (max-height:800px){
  .solutions-onepage-intro > p:last-child{font-size:15px !important;line-height:1.38 !important}
  .solutions-connection p{font-size:13.5px !important}
  .solutions-connection p strong{font-size:16px !important}
  .solutions-onepage-cta{font-size:13px !important;padding:10px 14px !important}
}

/* =========================================================
   V30 OUR STORY — ONE PAGE / SHARED ARGUS INTERIOR LANGUAGE
   ========================================================= */
.story-onepage{height:100vh;min-height:720px;background:#164c6c;color:#fff;overflow:hidden}
.story-onepage-shell{
  height:100%;position:relative;overflow:hidden;padding-top:92px;box-sizing:border-box;
  background:
    radial-gradient(circle at 9% 14%,rgba(157,226,243,.32),transparent 27%),
    radial-gradient(circle at 78% 8%,rgba(103,206,235,.28),transparent 30%),
    radial-gradient(circle at 52% 88%,rgba(65,166,204,.20),transparent 38%),
    linear-gradient(128deg,#164c6c 0%,#1d6684 48%,#27809a 100%);
}
.story-onepage-inner{
  position:relative;z-index:3;height:100%;display:flex;flex-direction:column;
  padding-top:36px;padding-bottom:26px;box-sizing:border-box;
}
.story-onepage-intro{max-width:1000px}
.story-onepage-kicker{
  margin:0 0 9px;color:#a8ecf8;font:600 12px/1 "IBM Plex Mono",monospace;letter-spacing:.18em;
}
.story-onepage-intro h1{
  margin:0;color:#fff;font:600 clamp(40px,3.5vw,62px)/.98 "Newsreader",Georgia,serif;
  letter-spacing:-.025em;
}
.story-onepage-intro h1 span{color:#a8ecf8}
.story-onepage-intro>p:last-child{
  margin:15px 0 0;max-width:980px;color:rgba(255,255,255,.90);
  font-size:clamp(17px,1.18vw,21px);line-height:1.48;
}
.story-onepage-intro strong{color:#fff;font-weight:650}

.story-onepage-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px;
}
.story-onepage-grid article{
  min-height:190px;padding:27px 28px;
  background:linear-gradient(145deg,rgba(8,50,76,.62),rgba(9,67,91,.46));
  border:1px solid rgba(255,255,255,.20);border-radius:12px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(4px);
}
.story-num{
  display:block;margin-bottom:12px;color:#a8ecf8;
  font:600 11px/1 "IBM Plex Mono",monospace;letter-spacing:.12em;
}
.story-onepage-grid h2{margin:0 0 10px;font-size:23px;line-height:1.15;color:#fff}
.story-onepage-grid p{margin:0;color:rgba(255,255,255,.84);font-size:16px;line-height:1.5}

.story-onepage-bottom{
  margin-top:auto;padding-top:20px;border-top:1px solid rgba(255,255,255,.20);
  display:flex;justify-content:space-between;align-items:center;gap:34px;
}
.story-principle{display:flex;align-items:center;gap:22px;max-width:830px}
.story-principle>span{
  flex:0 0 auto;color:#a8ecf8;font:600 11px/1 "IBM Plex Mono",monospace;letter-spacing:.14em;
}
.story-principle p{margin:0;color:rgba(255,255,255,.82);font-size:16px;line-height:1.45}
.story-principle strong{font-size:19px;color:#fff;font-weight:650}
.story-onepage-cta{
  flex:0 0 auto;color:#fff;text-decoration:none;font-size:15px;padding:13px 18px;
  border:1px solid rgba(255,255,255,.28);border-radius:999px;
  background:rgba(8,50,76,.20);
}
.story-onepage-cta strong{color:#a8ecf8;margin-left:7px}

/* Shared dynamic visual vocabulary */
.story-motion-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.story-motion-bg:after{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.22),#000 35%,#000 82%,rgba(0,0,0,.12));
}
.story-ring,.story-orbit{position:absolute;border-radius:50%;border:1px solid rgba(154,231,247,.22)}
.story-ring-a{width:540px;height:540px;left:-330px;bottom:-205px;animation:storyFloat 17s ease-in-out infinite alternate}
.story-ring-b{width:380px;height:380px;left:-205px;bottom:-105px;border-color:rgba(255,255,255,.13);animation:storyFloatB 20s ease-in-out infinite alternate}
.story-ring-c{width:225px;height:225px;left:-95px;bottom:-15px;animation:storyFloat 14s 1s ease-in-out infinite alternate-reverse}
.story-orbit-a{
  width:650px;height:650px;right:-210px;top:-340px;
  box-shadow:0 0 0 95px rgba(166,235,248,.025),0 0 0 190px rgba(255,255,255,.018);
  animation:storyOrbit 19s ease-in-out infinite alternate;
}
.story-line{
  position:absolute;height:1px;
  background:linear-gradient(90deg,transparent,rgba(170,236,248,.28),rgba(255,255,255,.09),transparent);
}
.story-line-a{width:55vw;right:-8vw;top:40%;transform:rotate(-16deg);animation:storyPulse 9s ease-in-out infinite}
.story-line-b{width:42vw;right:2vw;top:67%;transform:rotate(10deg);animation:storyPulse 11s 2s ease-in-out infinite}
@keyframes storyFloat{from{transform:translate(0,0);opacity:.62}to{transform:translate(38px,-25px);opacity:1}}
@keyframes storyFloatB{from{transform:translate(0,0);opacity:.45}to{transform:translate(25px,-40px);opacity:.9}}
@keyframes storyOrbit{from{transform:translate(0,0) scale(.97)}to{transform:translate(-35px,38px) scale(1.04)}}
@keyframes storyPulse{0%,100%{opacity:.25}50%{opacity:.9}}

@media(max-width:900px){
  .story-onepage{height:auto;min-height:100vh;overflow:visible}
  .story-onepage-shell{padding-top:82px}
  .story-onepage-inner{padding-top:28px;padding-bottom:32px}
  .story-onepage-grid{grid-template-columns:1fr;margin-top:24px}
  .story-onepage-grid article{min-height:0}
  .story-onepage-bottom{margin-top:24px;align-items:flex-start;flex-direction:column}
  .story-principle{align-items:flex-start;flex-direction:column;gap:8px}
}
@media(min-width:901px) and (max-height:820px){
  .story-onepage-shell{padding-top:78px}
  .story-onepage-inner{padding-top:18px;padding-bottom:14px}
  .story-onepage-intro h1{font-size:42px}
  .story-onepage-intro>p:last-child{font-size:15px;margin-top:9px}
  .story-onepage-grid{margin-top:17px}
  .story-onepage-grid article{min-height:145px;padding:18px 21px}
  .story-onepage-grid h2{font-size:19px}
  .story-onepage-grid p{font-size:13.5px}
  .story-onepage-bottom{padding-top:11px}
  .story-principle p{font-size:13.5px}
  .story-principle strong{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
  .story-motion-bg *{animation:none !important}
}

/* V30 OUR STORY — TRUE ONE-SCREEN FIX */
.story-page{overflow:hidden !important}
.story-page .site-nav{position:fixed !important;top:0;left:0;right:0;z-index:50}
.story-onepage{height:100vh !important;min-height:0 !important;overflow:hidden !important}
.story-onepage-shell{height:100vh !important;min-height:0 !important;padding-top:86px !important}
.story-onepage-inner{height:calc(100vh - 86px) !important;padding-top:24px !important;padding-bottom:18px !important}
.story-onepage-intro h1{font-size:clamp(38px,3.15vw,56px) !important}
.story-onepage-intro>p:last-child{margin-top:11px !important}
.story-onepage-grid{margin-top:22px !important}
.story-onepage-grid article{min-height:164px !important;padding:22px 24px !important}
.story-onepage-bottom{padding-top:14px !important}

@media (min-width:901px) and (max-height:850px){
  .story-onepage-shell{padding-top:74px !important}
  .story-onepage-inner{height:calc(100vh - 74px) !important;padding-top:15px !important;padding-bottom:12px !important}
  .story-onepage-intro h1{font-size:38px !important}
  .story-onepage-intro>p:last-child{font-size:14px !important;margin-top:7px !important}
  .story-onepage-grid{margin-top:13px !important;gap:9px !important}
  .story-onepage-grid article{min-height:132px !important;padding:16px 18px !important}
  .story-onepage-grid h2{font-size:18px !important;margin-bottom:6px !important}
  .story-onepage-grid p{font-size:13px !important;line-height:1.4 !important}
  .story-onepage-bottom{padding-top:9px !important}
  .story-principle p{font-size:13px !important}
  .story-principle strong{font-size:16px !important}
  .story-onepage-cta{font-size:13px !important;padding:9px 13px !important}
}
@media(max-width:900px){
  .story-page{overflow:auto !important}
  .story-page .site-nav{position:fixed !important}
  .story-onepage{height:auto !important;min-height:100vh !important;overflow:visible !important}
  .story-onepage-shell{height:auto !important;min-height:100vh !important;padding-top:82px !important}
  .story-onepage-inner{height:auto !important;padding-top:28px !important;padding-bottom:32px !important}
}

/* V30 OUR STORY — richer approved copy, one-screen fit */
.story-onepage-grid article{min-height:188px !important;padding:22px 24px !important}
.story-onepage-grid h2{font-size:21px !important}
.story-onepage-grid p{font-size:14.5px !important;line-height:1.46 !important}
.story-onepage-cta strong{color:#fff !important}
@media(min-width:901px) and (max-height:850px){
  .story-onepage-grid article{min-height:142px !important;padding:14px 17px !important}
  .story-onepage-grid h2{font-size:17px !important}
  .story-onepage-grid p{font-size:12.2px !important;line-height:1.34 !important}
}

/* V30 OUR STORY — one-line headline + larger card copy */
@media (min-width:901px){
  .story-onepage-intro{
    max-width:none !important;
    width:100% !important;
  }
  .story-onepage-intro h1{
    white-space:nowrap !important;
    font-size:clamp(36px,3.05vw,54px) !important;
    letter-spacing:-.03em !important;
  }

  .story-onepage-grid article{
    min-height:196px !important;
    padding:24px 25px !important;
  }
  .story-onepage-grid h2{
    font-size:23px !important;
    line-height:1.14 !important;
    margin-bottom:10px !important;
  }
  .story-onepage-grid p{
    font-size:16px !important;
    line-height:1.45 !important;
  }
}

/* Shorter desktop/laptop screens: still larger than prior version,
   but compact enough to preserve the one-screen layout. */
@media (min-width:901px) and (max-height:850px){
  .story-onepage-intro h1{
    font-size:36px !important;
  }
  .story-onepage-grid article{
    min-height:150px !important;
    padding:15px 18px !important;
  }
  .story-onepage-grid h2{
    font-size:19px !important;
    margin-bottom:7px !important;
  }
  .story-onepage-grid p{
    font-size:13.5px !important;
    line-height:1.38 !important;
  }
}

/* V30 OUR STORY — center intro over the three-card composition */
@media (min-width:901px){
  .story-onepage-intro{
    width:100% !important;
    max-width:none !important;
    text-align:center !important;
  }
  .story-onepage-intro h1{
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }
  .story-onepage-intro > p:last-child{
    max-width:1000px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }
  .story-onepage-kicker{
    text-align:center !important;
  }
}

/* =========================================================
   V30 — THREE-PAGE ALIGNMENT PASS
   Solutions + Who We Help + Our Story
   ========================================================= */

@media (min-width:901px){

  /* 1. SOLUTIONS — one-line title and intro centered over card grid */
  .solutions-onepage-intro{
    width:100% !important;
    max-width:none !important;
    text-align:center !important;
  }
  .solutions-onepage-kicker{
    text-align:center !important;
  }
  .solutions-onepage-intro h1{
    white-space:nowrap !important;
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    font-size:clamp(35px,3vw,54px) !important;
  }
  .solutions-onepage-intro h1 br{
    display:none !important;
  }
  .solutions-onepage-intro > p:last-child{
    max-width:1050px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  /* 2. WHO WE HELP — one-line title and intro centered over card grid */
  .who-onepage-intro,
  .who-we-help-onepage-intro,
  .who-intro{
    width:100% !important;
    max-width:none !important;
    text-align:center !important;
  }
  .who-onepage-kicker,
  .who-we-help-onepage-kicker{
    text-align:center !important;
  }
  .who-onepage-intro h1,
  .who-we-help-onepage-intro h1,
  .who-intro h1{
    white-space:nowrap !important;
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    font-size:clamp(36px,3.1vw,56px) !important;
  }
  .who-onepage-intro h1 br,
  .who-we-help-onepage-intro h1 br,
  .who-intro h1 br{
    display:none !important;
  }
  .who-onepage-intro > p:last-child,
  .who-we-help-onepage-intro > p:last-child,
  .who-intro > p:last-child{
    max-width:1050px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  /* 3. OUR STORY — center the complete title/card composition on page */
  .story-onepage-inner{
    width:min(1180px,calc(100% - 64px)) !important;
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .story-onepage-intro{
    width:100% !important;
    max-width:none !important;
    text-align:center !important;
  }
  .story-onepage-grid{
    width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* Preserve one-screen behavior on shorter desktop displays */
@media (min-width:901px) and (max-height:850px){
  .solutions-onepage-intro h1{font-size:35px !important}
  .who-onepage-intro h1,
  .who-we-help-onepage-intro h1,
  .who-intro h1{font-size:36px !important}
}

/* V30 — polished one-line title spacing */
@media (min-width:901px){
  .solutions-onepage-intro h1 .title-final-phrase{
    font-style:normal !important;
    white-space:nowrap !important;
    margin-left:.16em !important;
  }
  .solutions-onepage-intro h1 span{
    margin-left:.14em !important;
  }

  .who-onepage-intro h1 .title-second-phrase,
  .who-we-help-onepage-intro h1 .title-second-phrase,
  .who-intro h1 .title-second-phrase{
    display:inline-block !important;
    margin-left:.22em !important;
    white-space:nowrap !important;
  }
}

/* WHO WE HELP — actual title markup fix, not a hidden line break */
@media (min-width:901px){
  .who-onepage-intro h1 .who-title-second,
  .who-we-help-onepage-intro h1 .who-title-second,
  .who-intro h1 .who-title-second{
    display:inline !important;
    margin-left:.18em !important;
    white-space:nowrap !important;
  }
}

/* =========================================================
   OUR STORY — USE THE PAGE
   Based on marked screenshot: expand the central composition
   outward and vertically while keeping the page balanced.
   ========================================================= */
@media (min-width:1100px) and (min-height:760px){
  .story-onepage-inner{
    width:min(1360px,calc(100% - 100px)) !important;
    max-width:1360px !important;
    padding-top:10px !important;
    padding-bottom:20px !important;
  }

  /* Move title group upward and give it more presence */
  .story-onepage-intro h1{
    font-size:clamp(44px,3.35vw,60px) !important;
  }
  .story-onepage-intro > p:last-child{
    font-size:18px !important;
    margin-top:12px !important;
  }

  /* Stretch all three cards outward and downward */
  .story-onepage-grid{
    width:100% !important;
    gap:14px !important;
    margin-top:25px !important;
  }
  .story-onepage-grid article{
    min-height:230px !important;
    padding:28px 30px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
  }
  .story-onepage-grid h2{
    font-size:25px !important;
    line-height:1.14 !important;
    margin-bottom:12px !important;
  }
  .story-onepage-grid p{
    font-size:17px !important;
    line-height:1.5 !important;
  }
  .story-num{
    font-size:12px !important;
    margin-bottom:14px !important;
  }

  /* Push the closing principle lower to use the empty lower area */
  .story-onepage-bottom{
    margin-top:auto !important;
    padding-top:20px !important;
    padding-bottom:4px !important;
  }
  .story-principle p{
    font-size:17px !important;
  }
  .story-principle strong{
    font-size:20px !important;
  }
  .story-onepage-cta{
    font-size:15px !important;
    padding:13px 20px !important;
  }
}

/* On very wide screens, let the cards breathe even more */
@media (min-width:1500px) and (min-height:850px){
  .story-onepage-inner{
    width:min(1420px,calc(100% - 120px)) !important;
    max-width:1420px !important;
  }
  .story-onepage-grid article{
    min-height:242px !important;
    padding:30px 32px !important;
  }
  .story-onepage-grid p{font-size:17.5px !important}
}

/* =========================================================
   V30 — USER-PROVIDED NETWORK DEMO AS SHARED BACKGROUND
   Same moving teal network + amber pointer reveal from demo.
   ========================================================= */
.argus-demo-net{
  position:fixed;
  inset:62px 0 0;
  width:100%;
  height:calc(100% - 62px);
  display:block;
  z-index:1;
  pointer-events:none;
}

/* Demo palette/background: #0E1C27 / #132A38 with teal lines and amber reveal */
body:has(.argus-demo-net) .solutions-onepage-shell,
body:has(.argus-demo-net) .who-onepage-shell,
body:has(.argus-demo-net) .who-we-help-onepage-shell,
body:has(.argus-demo-net) .story-onepage-shell{
  background:radial-gradient(120% 90% at 70% 30%,#132A38,#0E1C27) !important;
}

/* Remove prior decorative circles/grids so the supplied demo is the background. */
body:has(.argus-demo-net) .solutions-onepage-bg,
body:has(.argus-demo-net) .solutions-onepage-overlay,
body:has(.argus-demo-net) .story-motion-bg{
  opacity:0 !important;
}

/* Keep all page content above the network. */
body:has(.argus-demo-net) header.site-nav,
body:has(.argus-demo-net) .site-header,
body:has(.argus-demo-net) nav,
body:has(.argus-demo-net) .solutions-onepage-inner,
body:has(.argus-demo-net) .who-onepage-inner,
body:has(.argus-demo-net) .who-we-help-onepage-inner,
body:has(.argus-demo-net) .story-onepage-inner{
  position:relative;
  z-index:5;
}

/* Cards remain readable while the network is visible in the open canvas. */
body:has(.argus-demo-net) .solutions-onepage-grid article,
body:has(.argus-demo-net) .who-onepage-grid article,
body:has(.argus-demo-net) .who-we-help-onepage-grid article,
body:has(.argus-demo-net) .who-grid article,
body:has(.argus-demo-net) .story-onepage-grid article{
  background:rgba(14,28,39,.80) !important;
  border-color:rgba(207,227,230,.18) !important;
  backdrop-filter:blur(5px);
}

@media(max-width:900px){
  .argus-demo-net{position:absolute;inset:70px 0 0;height:calc(100% - 70px)}
}

/* =========================================================
   V30 — TRUE ONE-SCREEN FIT
   Fixes bottom section clipping on Solutions + Who We Help.
   Keeps network background and approved visual language.
   ========================================================= */
@media (min-width:901px){

  /* SOLUTIONS */
  .solutions-onepage{
    height:calc(100vh - 62px) !important;
    min-height:0 !important;
    overflow:hidden !important;
  }
  .solutions-onepage-shell{
    height:100% !important;
    min-height:0 !important;
    padding-top:0 !important;
  }
  .solutions-onepage-inner{
    height:100% !important;
    min-height:0 !important;
    padding-top:30px !important;
    padding-bottom:14px !important;
    display:flex !important;
    flex-direction:column !important;
  }
  .solutions-onepage-intro h1{
    margin-top:0 !important;
    margin-bottom:8px !important;
  }
  .solutions-onepage-intro > p:last-child{
    margin-top:8px !important;
    margin-bottom:0 !important;
  }
  .solutions-onepage-grid{
    margin-top:20px !important;
    gap:10px !important;
  }
  .solutions-onepage-grid article{
    min-height:132px !important;
    padding:18px 22px !important;
  }
  .solutions-onepage-grid h2{
    font-size:20px !important;
    margin-bottom:7px !important;
  }
  .solutions-onepage-grid p{
    font-size:14px !important;
    line-height:1.4 !important;
  }
  .solutions-onepage-bottom{
    margin-top:auto !important;
    padding-top:11px !important;
    padding-bottom:0 !important;
  }

  /* WHO WE HELP — cover the naming variants used during V30 iterations */
  .who-onepage,
  .who-we-help-onepage{
    height:calc(100vh - 62px) !important;
    min-height:0 !important;
    overflow:hidden !important;
  }
  .who-onepage-shell,
  .who-we-help-onepage-shell{
    height:100% !important;
    min-height:0 !important;
    padding-top:0 !important;
  }
  .who-onepage-inner,
  .who-we-help-onepage-inner{
    height:100% !important;
    min-height:0 !important;
    padding-top:30px !important;
    padding-bottom:14px !important;
    display:flex !important;
    flex-direction:column !important;
  }
  .who-onepage-intro h1,
  .who-we-help-onepage-intro h1{
    margin-top:0 !important;
    margin-bottom:8px !important;
  }
  .who-onepage-intro > p:last-child,
  .who-we-help-onepage-intro > p:last-child{
    margin-top:8px !important;
    margin-bottom:0 !important;
  }
  .who-onepage-grid,
  .who-we-help-onepage-grid,
  .who-grid{
    margin-top:20px !important;
    gap:10px !important;
  }
  .who-onepage-grid article,
  .who-we-help-onepage-grid article,
  .who-grid article{
    min-height:128px !important;
    padding:18px 21px !important;
  }
  .who-onepage-grid h2,
  .who-we-help-onepage-grid h2,
  .who-grid h2{
    font-size:20px !important;
    margin-bottom:7px !important;
  }
  .who-onepage-grid p,
  .who-we-help-onepage-grid p,
  .who-grid p{
    font-size:14px !important;
    line-height:1.4 !important;
  }
  .who-onepage-bottom,
  .who-we-help-onepage-bottom,
  .who-bottom{
    margin-top:auto !important;
    padding-top:11px !important;
    padding-bottom:0 !important;
  }
}

/* Screenshot-like 1080p browser heights: use the room, but guarantee bottom visibility. */
@media (min-width:901px) and (max-height:900px){
  .solutions-onepage-inner,
  .who-onepage-inner,
  .who-we-help-onepage-inner{
    padding-top:22px !important;
    padding-bottom:10px !important;
  }
  .solutions-onepage-grid,
  .who-onepage-grid,
  .who-we-help-onepage-grid,
  .who-grid{
    margin-top:14px !important;
  }
  .solutions-onepage-grid article,
  .who-onepage-grid article,
  .who-we-help-onepage-grid article,
  .who-grid article{
    min-height:116px !important;
    padding:14px 18px !important;
  }
  .solutions-onepage-grid h2,
  .who-onepage-grid h2,
  .who-we-help-onepage-grid h2,
  .who-grid h2{
    font-size:18px !important;
  }
  .solutions-onepage-grid p,
  .who-onepage-grid p,
  .who-we-help-onepage-grid p,
  .who-grid p{
    font-size:13px !important;
    line-height:1.35 !important;
  }
  .solutions-onepage-bottom,
  .who-onepage-bottom,
  .who-we-help-onepage-bottom,
  .who-bottom{
    padding-top:8px !important;
  }
}

/* =========================================================
   V30 — LIGHTER / CONNECTED / VERTICALLY CENTERED PASS
   ========================================================= */

/* Lighter Argus blue while preserving white-text contrast */
body:has(.argus-demo-net) .solutions-onepage-shell,
body:has(.argus-demo-net) .who-onepage-shell,
body:has(.argus-demo-net) .who-we-help-onepage-shell,
body:has(.argus-demo-net) .story-onepage-shell{
  background:
    radial-gradient(105% 82% at 72% 22%,rgba(60,150,181,.38),transparent 55%),
    linear-gradient(128deg,#17445d 0%,#1d5c75 48%,#24758c 100%) !important;
}

/* Network is now intentionally more visible/connected */
.argus-demo-net{
  opacity:.92 !important;
}

/* Vertically center the full content composition on all three pages */
@media (min-width:901px){
  .solutions-onepage-inner,
  .who-onepage-inner,
  .who-we-help-onepage-inner,
  .story-onepage-inner{
    justify-content:center !important;
    padding-top:10px !important;
    padding-bottom:10px !important;
  }

  /* Stop bottom blocks from being pushed to the floor; keep them in composition */
  .solutions-onepage-bottom,
  .who-onepage-bottom,
  .who-we-help-onepage-bottom,
  .who-bottom,
  .story-onepage-bottom{
    margin-top:18px !important;
  }

  /* Keep balanced spacing around cards */
  .solutions-onepage-grid,
  .who-onepage-grid,
  .who-we-help-onepage-grid,
  .who-grid,
  .story-onepage-grid{
    margin-top:20px !important;
  }
}

/* On shorter desktop windows, compact the gaps but still center as one unit */
@media (min-width:901px) and (max-height:900px){
  .solutions-onepage-inner,
  .who-onepage-inner,
  .who-we-help-onepage-inner,
  .story-onepage-inner{
    justify-content:center !important;
    padding-top:6px !important;
    padding-bottom:6px !important;
  }
  .solutions-onepage-grid,
  .who-onepage-grid,
  .who-we-help-onepage-grid,
  .who-grid,
  .story-onepage-grid{
    margin-top:12px !important;
  }
  .solutions-onepage-bottom,
  .who-onepage-bottom,
  .who-we-help-onepage-bottom,
  .who-bottom,
  .story-onepage-bottom{
    margin-top:11px !important;
  }
}

/* Slightly lighter glass cards to harmonize with brighter canvas */
body:has(.argus-demo-net) .solutions-onepage-grid article,
body:has(.argus-demo-net) .who-onepage-grid article,
body:has(.argus-demo-net) .who-we-help-onepage-grid article,
body:has(.argus-demo-net) .who-grid article,
body:has(.argus-demo-net) .story-onepage-grid article{
  background:rgba(11,43,60,.73) !important;
  border-color:rgba(207,239,243,.22) !important;
}

/* =========================================================
   V30 — UNIFIED ARGUS BLUE
   Header is the anchor color; page background is its lighter cousin.
   Force identical header/background treatment on all three pages.
   ========================================================= */

/* Same header/nav blue on Solutions, Who We Help, Our Story */
body:has(.argus-demo-net) .site-header,
body:has(.argus-demo-net) header.site-header,
body:has(.argus-demo-net) .site-nav{
  background:linear-gradient(90deg,#173c79 0%,#214f9a 50%,#173c79 100%) !important;
  border-bottom:1px solid rgba(121,211,235,.24) !important;
}

/* Page canvas: same blue family as header, deliberately a little lighter */
body:has(.argus-demo-net) .solutions-onepage-shell,
body:has(.argus-demo-net) .who-onepage-shell,
body:has(.argus-demo-net) .who-we-help-onepage-shell,
body:has(.argus-demo-net) .story-onepage-shell{
  background:
    radial-gradient(100% 78% at 72% 20%,rgba(73,160,209,.25),transparent 58%),
    linear-gradient(128deg,#285b91 0%,#2e6fa2 50%,#367fa9 100%) !important;
}

/* Cards: navy-blue glass instead of near-black, so they belong to the new palette */
body:has(.argus-demo-net) .solutions-onepage-grid article,
body:has(.argus-demo-net) .who-onepage-grid article,
body:has(.argus-demo-net) .who-we-help-onepage-grid article,
body:has(.argus-demo-net) .who-grid article,
body:has(.argus-demo-net) .story-onepage-grid article{
  background:linear-gradient(145deg,rgba(19,57,91,.76),rgba(20,72,104,.68)) !important;
  border-color:rgba(190,232,244,.25) !important;
}

/* Keep network readable on the brighter blue */
.argus-demo-net{
  opacity:.88 !important;
}

/* =========================================================
   V30 — CLEAN INTRO BACKGROUNDS
   Match Solutions + Our Story to the clean Who We Help treatment.
   Removes the dark rectangular bands behind the title/intro only.
   ========================================================= */

/* SOLUTIONS: remove inherited dark title panel */
.solutions-onepage-intro,
.solutions-onepage-intro::before,
.solutions-onepage-intro::after{
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  border:none !important;
  backdrop-filter:none !important;
}

/* OUR STORY: remove inherited dark title panel */
.story-onepage-intro,
.story-onepage-intro::before,
.story-onepage-intro::after{
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  border:none !important;
  backdrop-filter:none !important;
}

/* Ensure no older hero/section overlay is painting a rectangle behind intros */
.solutions-onepage-inner > header,
.story-onepage-inner > header{
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
}

/* Keep the network visible cleanly behind the title area */
.solutions-onepage-intro,
.story-onepage-intro{
  position:relative !important;
  z-index:6 !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

/* =========================================================
   FINAL FIX — header selector was painting intro <header> blocks blue.
   Only the actual site navigation header gets the blue bar.
   ========================================================= */

/* Neutralize the overly broad prior rule on content headers */
body:has(.argus-demo-net) header.solutions-onepage-intro,
body:has(.argus-demo-net) header.story-onepage-intro,
body:has(.argus-demo-net) header.who-onepage-intro,
body:has(.argus-demo-net) header.who-we-help-onepage-intro{
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Apply header blue ONLY to the real website header/nav */
body:has(.argus-demo-net) > header.site-header,
body:has(.argus-demo-net) .site-header,
body:has(.argus-demo-net) .site-nav{
  background:linear-gradient(90deg,#173c79 0%,#214f9a 50%,#173c79 100%) !important;
  border-bottom:1px solid rgba(121,211,235,.24) !important;
}

/* V30 — Minimal contact page; shares the animated network and blue visual system. */
body.argus-contact-page{min-height:100vh;background:radial-gradient(100% 78% at 72% 20%,rgba(73,160,209,.25),transparent 58%),linear-gradient(128deg,#285b91 0%,#2e6fa2 50%,#367fa9 100%) !important}
.argus-contact-page .contact-onepage{position:relative;z-index:3;min-height:calc(100svh - 72px);display:grid;place-items:center;padding:50px 24px 64px;background:transparent!important}
.argus-contact-page .contact-onepage-inner{width:min(100%,1020px);margin:auto;text-align:center;background:transparent;border:0;box-shadow:none}
.argus-contact-page .contact-eyebrow{color:#a8f1ee;font:700 13px/1.5 "IBM Plex Mono",monospace;letter-spacing:.22em;margin:0 0 24px}
.argus-contact-page .contact-onepage h1{font-family:"IBM Plex Sans",sans-serif;font-weight:700;font-size:clamp(35px,5vw,66px);letter-spacing:-.045em;line-height:1.13;color:#fff;text-shadow:0 3px 20px rgba(10,29,55,.3);margin:0 auto 24px}
.argus-contact-page .contact-subtitle{font-size:clamp(18px,2vw,24px);line-height:1.55;color:#e4f2fb;margin:0 auto 40px}
.argus-contact-page .contact-email-button{display:inline-flex;align-items:center;justify-content:center;gap:15px;max-width:100%;padding:19px 26px;background:#fff;color:#173c79;text-decoration:none;border-radius:999px;font:700 clamp(14px,1.65vw,19px)/1.3 "IBM Plex Sans",sans-serif;box-shadow:0 14px 36px rgba(7,30,62,.22);transition:transform .2s ease,box-shadow .2s ease,background .2s ease;overflow-wrap:anywhere}
.argus-contact-page .contact-email-button:hover,.argus-contact-page .contact-email-button:focus-visible{transform:translateY(-3px);background:#e9f9ff;box-shadow:0 18px 42px rgba(7,30,62,.33)}
.argus-contact-page .contact-envelope{font-size:23px;line-height:1}
.argus-contact-page .contact-arrow{font-size:21px}
.argus-contact-page .contact-note{color:#d3e8f5;font-size:15px;letter-spacing:.02em;margin:25px 0 0}
@media(max-width:650px){.argus-contact-page .contact-onepage{padding:52px 20px 64px}.argus-contact-page .contact-desktop-break{display:none}.argus-contact-page .contact-email-button{gap:9px;padding:16px 17px}.argus-contact-page .contact-subtitle br{display:none}}
