/* -----------------------------------------------
   DESIGN SYSTEM
   Primary: Deep Navy #03101F
   Accent:  Electric Cyan #00D4FF
   Green:   Emerald #00E5A0
   Surface: #061828
   Text:    90% / 70% / 40% white
   Fonts:   Sora (display) + DM Sans (body)
----------------------------------------------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
:root{
	 /* Color tokens */
  --bg:        #03101F;
  --bg2:       #061828;
  --bg3:       #091F33;
  --bg4:       #0C2540;
  --cyan:      #00D4FF;
  --cyan-dim:  rgba(0,212,255,.12);
  --cyan-glow: rgba(0,212,255,.22);
  --green:     #00E5A0;
  --amber:     #FFB020;
  --red:       #FF4F4F;

  --w100: #FFFFFF;
  --w90:  rgba(255,255,255,.90);
  --w70:  rgba(255,255,255,.70);
  --w80:  rgba(255,255,255,.70);
  --w50:  rgba(255,255,255,.50);
  --w60:  rgba(255,255,255,.60);
  --w30:  rgba(255,255,255,.30);
  --w12:  rgba(255,255,255,.12);
  --w06:  rgba(255,255,255,.06);
  --w03:  rgba(255,255,255,.03);

  --border:   rgba(0,212,255,.14);
  --border2:  rgba(255,255,255,.08);

  --grad:      linear-gradient(135deg,#00D4FF 0%,#00E5A0 100%);
  --grad-hero: linear-gradient(135deg,#03101F 0%,#061828 60%,#091F33 100%);
  --grad-soft: radial-gradient(ellipse 80% 60% at 70% 50%, rgba(0,212,255,.07) 0%, transparent 65%);

  /* Spacing */
  --sp-xs:  .5rem;
  --sp-sm:  1rem;
  --sp-md:  1.5rem;
  --sp-lg:  2.5rem;
  --sp-xl:  4rem;
  --sp-2xl: 6rem;

  /* Radius */
  --r:    12px;
  --r-lg: 20px;
  --r-xl: 28px;

  /* Shadows */
  --sh-sm: 0 2px 12px rgba(0,0,0,.25);
  --sh-md: 0 8px 32px rgba(0,0,0,.35);
  --sh-lg: 0 24px 64px rgba(0,0,0,.5);
  
  --bg:#03101F;--bg2:#061828;--bg3:#091F33;--bg4:#0C2540;
  --cyan:#00D4FF;--cyan-dim:rgba(0,212,255,.12);--cyan-glow:rgba(0,212,255,.22);
  --green:#00E5A0;--amber:#FFB020;--purple:#A855F7;--red:#FF4F4F;
  --w100:#FFFFFF;--w90:rgba(255,255,255,.90);--w70:rgba(255,255,255,.70);
  --w50:rgba(255,255,255,.50);--w40:rgba(255,255,255,.40);--w30:rgba(255,255,255,.30);
  --w12:rgba(255,255,255,.12);--w06:rgba(255,255,255,.06);--w03:rgba(255,255,255,.03);
  --border:rgba(0,212,255,.14);--border2:rgba(255,255,255,.08);
  --grad:linear-gradient(135deg,#00D4FF 0%,#00E5A0 100%);
  --sp-lg:2.5rem;--sp-xl:4rem;--sp-2xl:6rem;
  --r:12px;--r-lg:20px;--r-xl:28px;
  --sh-sm:0 2px 12px rgba(0,0,0,.25);--sh-md:0 8px 32px rgba(0,0,0,.35);--sh-lg:0 24px 64px rgba(0,0,0,.5);
}
::-webkit-scrollbar{width:4px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--cyan-dim);border-radius:2px}

/* -- UTILS -- */
.wrap{max-width:1200px;margin:0 auto;padding:0 5%}
.sec{position:relative;z-index:1}
.pad{padding:var(--sp-2xl) 0}

.eyebrow{
  display:inline-flex;align-items:center;gap:.5rem;
  font-size:.7rem;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--cyan);margin-bottom:.85rem;
}
.eyebrow-bar{width:20px;height:1.5px;background:var(--cyan);border-radius:2px;flex-shrink:0}

.sec-h{
  font-size:clamp(1.9rem,3vw,2.7rem);font-weight:800;
  color:var(--w100);margin-bottom:.85rem;
}
.sec-sub{font-size:.95rem;color:var(--w70);line-height:1.78;max-width:520px}

/* gradient text */
.gt{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

body{background:var(--bg);color:var(--w90);font-family:'DM Sans',sans-serif;line-height:1.6;overflow-x:hidden}
h1,h2,h3,h4,h5{font-family:'Sora',sans-serif;line-height:1.1;letter-spacing:-.035em}
::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--cyan-dim);border-radius:2px}
.wrap{max-width:1200px;margin:0 auto;padding:0 5%}
.sec{position:relative;z-index:1}
.pad{padding:var(--sp-2xl) 0}
.gt{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cyan);margin-bottom:.85rem}
.eyebrow-bar{width:20px;height:1.5px;background:var(--cyan);border-radius:2px;flex-shrink:0}
.sec-h{font-size:clamp(1.9rem,3vw,2.7rem);font-weight:800;color:var(--w100);margin-bottom:.85rem}

/* Grid BG — from index.html */
.hero-grid-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(rgba(0,212,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.03) 1px,transparent 1px);background-size:52px 52px;mask-image:radial-gradient(ellipse 70% 70% at 60% 40%,black 10%,transparent 75%)}

/* Animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.4}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes growbar{from{width:0}}
@keyframes shimmer{0%{background-position:-200% center}100%{background-position:200% center}}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.on{opacity:1;transform:none}
.d1{transition-delay:.06s}.d2{transition-delay:.12s}.d3{transition-delay:.18s}.d4{transition-delay:.24s}.d5{transition-delay:.30s}

/* ----------------------------
   NAV — Responsive (index.html)
---------------------------- */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:rgba(3,16,31,.9);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);transition:background .3s}
.logo{display:flex;align-items:center;gap:.65rem;text-decoration:none;flex-shrink:0}
.logo-mark{width:36px;height:36px;border-radius:8px;background:var(--grad);display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:900;font-size:1rem;color:var(--bg)}
.logo-text{font-family:'Sora',sans-serif;font-weight:700;font-size:1rem;color:var(--w100)}
.nav-links{display:flex;align-items:center;list-style:none;gap:0}
.nav-links>li{position:relative}
.nav-links>li>a{display:flex;align-items:center;gap:.3rem;color:var(--w70);text-decoration:none;font-size:.84rem;font-weight:500;transition:color .2s;padding:.4rem .9rem;position:relative;white-space:nowrap}
.nav-links>li>a:hover,.nav-links>li>a.active{color:var(--cyan)}
.nav-links>li>a::after{content:'';position:absolute;bottom:0;left:.9rem;right:.9rem;height:1.5px;background:var(--cyan);transform:scaleX(0);transition:transform .25s;transform-origin:left}
.nav-links>li>a:hover::after,.nav-links>li>a.active::after{transform:scaleX(1)}
.caret{font-size:.6rem;transition:transform .25s;display:inline-block}
.nav-has-dropdown:hover>a .caret{transform:rotate(180deg)}
.nav-dropdown{display:none;position:absolute;top:calc(100% + 0px);left:0;background:rgba(6,24,40,.97);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--r-lg);padding:.5rem;min-width:230px;box-shadow:var(--sh-lg);z-index:2000;animation:fadeUp .2s ease both}
.nav-has-dropdown:hover .nav-dropdown{display:block}
.nav-dropdown a{display:flex;align-items:center;gap:.65rem;padding:.6rem .85rem;border-radius:var(--r);font-size:.82rem;font-weight:600;color:var(--w70);text-decoration:none;transition:all .2s;white-space:nowrap}
.nav-dropdown a:hover,.nav-dropdown a.dd-active{background:var(--cyan-dim);color:var(--cyan)}
.nav-dropdown a::after{display:none!important}
.dd-ico{width:28px;height:28px;border-radius:7px;background:var(--bg3);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;font-size:.8rem;flex-shrink:0}
.nav-dropdown a:hover .dd-ico,.nav-dropdown a.dd-active .dd-ico{background:var(--cyan-dim);border-color:var(--border)}
.dd-sep{height:1px;background:var(--border2);margin:.35rem .5rem}
.btn-nav{background:var(--grad)!important;color:var(--bg)!important;font-weight:700!important;font-size:.82rem!important;padding:.48rem 1.25rem;border-radius:50px;margin-left:.5rem}
.btn-nav::after{display:none!important}
/* Hamburger */
.nav-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;background:none;border:none;cursor:pointer;padding:5px;flex-shrink:0}
.nav-hamburger span{display:block;height:2px;border-radius:2px;background:var(--w90);transition:all .3s}
.nav-hamburger span:nth-child(1){width:22px}
.nav-hamburger span:nth-child(2){width:16px}
.nav-hamburger span:nth-child(3){width:19px}
.nav-hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px);width:20px}
.nav-hamburger.open span:nth-child(2){opacity:0;transform:translateX(-6px)}
.nav-hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px);width:20px}
/* Mobile drawer */
.nav-mobile{display:none;position:fixed;top:68px;left:0;right:0;bottom:0;background:rgba(3,16,31,.98);backdrop-filter:blur(24px);border-top:1px solid var(--border);z-index:999;overflow-y:auto;padding:1.25rem 5% 2rem;flex-direction:column;gap:.35rem}
.nav-mobile.open{display:flex}
.nm-link{display:flex;align-items:center;gap:.65rem;padding:.85rem 1rem;border-radius:var(--r);font-size:.9rem;font-weight:600;color:var(--w70);text-decoration:none;transition:all .2s;border:1px solid transparent}
.nm-link:hover,.nm-link.active{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}
.nm-ico{font-size:1.05rem;width:24px;text-align:center;flex-shrink:0}
.nm-section-label{font-size:.68rem;font-weight:800;color:var(--w30);letter-spacing:.14em;text-transform:uppercase;padding:.75rem 1rem .35rem;margin-top:.5rem}
.nm-sep{height:1px;background:var(--border2);margin:.5rem 0}
.nm-cta{background:var(--grad);color:var(--bg)!important;font-weight:700;border-radius:50px;justify-content:center;margin-top:.5rem;box-shadow:0 8px 24px var(--cyan-glow)}


/* -- BUTTONS -- */
.btn-primary{
  display:inline-flex;align-items:center;gap:.4rem;
  background:var(--grad);color:var(--bg);
  font-family:'DM Sans',sans-serif;
  font-weight:700;font-size:.9rem;
  padding:.82rem 1.9rem;border-radius:50px;
  text-decoration:none;border:none;cursor:pointer;
  box-shadow:0 8px 28px var(--cyan-glow);
  transition:transform .25s,box-shadow .25s;
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 40px var(--cyan-glow)}

.btn-ghost{
  display:inline-flex;align-items:center;gap:.4rem;
  background:transparent;color:var(--w90);
  font-weight:600;font-size:.88rem;
  padding:.78rem 1.7rem;border-radius:50px;
  border:1px solid var(--w12);text-decoration:none;
  transition:all .25s;
}
.btn-ghost:hover{border-color:var(--cyan);color:var(--cyan);background:var(--cyan-dim)}

.btn-sm{
  display:inline-flex;align-items:center;gap:.3rem;
  font-size:.78rem;font-weight:700;color:var(--cyan);
  text-decoration:none;transition:gap .2s;
  background:none;border:none;cursor:pointer;padding:0;
}
.btn-sm:hover{gap:.55rem}

/* -----------------------------------------------
   SECTION 1 — HERO
   Layout: 55/45 split — text left, video right
   CRO Fix: Specific headline, outcome-led sub,
   dual CTA with proof elements
----------------------------------------------- */
.hero{
  min-height:100vh;
  display:grid;
  grid-template-columns:55fr 45fr;
  align-items:center;
  gap:var(--sp-2xl);
  padding:90px 5% 60px;
  position:relative;overflow:hidden;
  max-width:1200px;margin:0 auto;
}

/* Subtle grid overlay */
.hero-grid-bg{
  position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(0,212,255,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,212,255,.03) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:radial-gradient(ellipse 70% 70% at 60% 40%,black 10%,transparent 75%);
}

.hero-glow-r{
  position:absolute;width:600px;height:600px;
  background:radial-gradient(circle,rgba(0,212,255,.09) 0%,transparent 65%);
  top:-120px;right:-120px;pointer-events:none;z-index:0;
}
.hero-glow-l{
  position:absolute;width:350px;height:350px;
  background:radial-gradient(circle,rgba(0,229,160,.05) 0%,transparent 65%);
  bottom:-60px;left:-60px;pointer-events:none;z-index:0;
}

/* LEFT */
.hero-left{position:relative;z-index:2}

.hero-trust-bar{
  display:inline-flex;align-items:center;gap:.55rem;
  background:rgba(0,212,255,.08);
  border:1px solid var(--border);
  border-radius:50px;padding:.32rem 1rem;
  margin-bottom:1.75rem;
  animation:fadeUp .7s ease both;
}
.trust-dot{
  width:6px;height:6px;border-radius:50%;background:var(--cyan);
  box-shadow:0 0 8px var(--cyan);
  animation:blink 2s infinite;
}
.trust-text{font-size:.72rem;font-weight:700;color:var(--cyan);letter-spacing:.06em;text-transform:uppercase}

.hero h1{
  font-size:clamp(2.3rem,4vw,3.4rem);font-weight:900;
  color:var(--w100);margin-bottom:1.25rem;
  animation:fadeUp .7s .07s ease both;
}

.hero-sub{
  font-size:1rem;color:var(--w70);line-height:1.8;
  max-width:500px;margin-bottom:2rem;
  animation:fadeUp .7s .14s ease both;
}

.hero-cta-row{
  display:flex;align-items:center;gap:1rem;flex-wrap:wrap;
  margin-bottom:2.75rem;
  animation:fadeUp .7s .21s ease both;
}

/* proof strip */
.hero-proof{
  display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;
  animation:fadeUp .7s .28s ease both;
  padding-top:1.5rem;
  border-top:1px solid var(--w06);
}
.proof-item{display:flex;align-items:center;gap:.45rem;font-size:.78rem;color:var(--w50)}
.proof-item span{color:var(--w70);font-weight:600}
.proof-sep{width:1px;height:16px;background:var(--w12)}

/* RIGHT */
.hero-right{position:relative;z-index:2;animation:fadeUp .7s .08s ease both}

/* Service pills wrapper */
.svc-pills-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.7rem}
.svc-pills-row.bottom{margin-top:.7rem;margin-bottom:0}

.svc-pill{
  display:inline-flex;align-items:center;gap:.3rem;
  font-size:.7rem;font-weight:600;
  padding:.28rem .8rem;border-radius:50px;
  background:var(--w06);border:1px solid var(--w12);
  color:var(--w60,rgba(255,255,255,.6));
  transition:all .22s;cursor:default;
  white-space:nowrap;
}
.svc-pill:hover,.svc-pill.lit{
  background:var(--cyan-dim);border-color:var(--border);color:var(--cyan);
}

/* Video container */
.video-wrap{
  border-radius:var(--r-xl);overflow:hidden;
  border:1px solid var(--border);
  box-shadow:0 0 0 1px var(--border),var(--sh-lg);
  background:var(--bg3);
  aspect-ratio:16/10;position:relative;
}

/* Chrome bar */
.chrome-bar{
  position:absolute;top:0;left:0;right:0;height:34px;
  background:rgba(3,16,31,.95);
  border-bottom:1px solid var(--w06);
  display:flex;align-items:center;padding:0 12px;gap:6px;z-index:3;
}
.ch-dot{width:9px;height:9px;border-radius:50%}
.ch-dot:nth-child(1){background:#FF5F57}
.ch-dot:nth-child(2){background:#FEBC2E}
.ch-dot:nth-child(3){background:#28C840}
.ch-url{
  margin-left:8px;flex:1;height:20px;
  background:var(--w06);border-radius:4px;
  display:flex;align-items:center;padding:0 8px;
  font-size:.65rem;color:var(--w30);
}

/* Video area */
.video-area{
  position:absolute;top:34px;left:0;right:0;bottom:0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--bg2) 0%,var(--bg3) 100%);
  gap:1rem;
}
.play-btn{
  width:60px;height:60px;border-radius:50%;
  background:var(--grad);
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;cursor:pointer;
  box-shadow:0 0 40px var(--cyan-glow);
  transition:transform .2s,box-shadow .2s;
  border:none;
}
.play-btn:hover{transform:scale(1.1);box-shadow:0 0 56px rgba(0,212,255,.4)}
.video-label{font-size:.8rem;color:var(--w50);font-weight:500}

/* Floating badge */
.float-badge{
  position:absolute;bottom:-16px;left:20px;
  background:var(--bg2);border:1px solid var(--border);
  border-radius:var(--r);padding:.6rem 1rem;
  display:flex;align-items:center;gap:.55rem;
  box-shadow:var(--sh-md);z-index:4;
}
.fb-icon{font-size:1rem}
.fb-text strong{display:block;font-size:.8rem;color:var(--w100);font-weight:700}
.fb-text span{font-size:.7rem;color:var(--w50)}



/* -----------------------------------------------
   SECTION 2 — INDUSTRIES WE SERVE
   CRO Logic:
   - Placed immediately after hero = instant
     relevance signal to every visitor segment
   - Image-led cards = faster cognitive match
     than text-only
   - Outcome headlines, not feature lists
   - Hover reveals use-cases = progressive disclosure
   - Individual CTAs = segmented conversion paths
----------------------------------------------- */
.industries-sec{background:var(--bg2)}

.ind-header{
  display:flex;justify-content:space-between;align-items:flex-end;
  margin-bottom:var(--sp-lg);flex-wrap:wrap;gap:1rem;
}

/* 4-column grid desktop ? 2 tablet ? 1 mobile */
.ind-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
  background:var(--border2);
  border-radius:var(--r-xl);
  overflow:hidden;
}

.ind-card{
  background:var(--bg2);
  display:flex;flex-direction:column;
  position:relative;overflow:hidden;
  cursor:pointer;
  transition:background .3s;
}
.ind-card:hover{background:var(--bg3)}

/* Accent top bar — colour-coded per industry */
.ind-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;z-index:3;
  opacity:0;transition:opacity .3s;
}
.ind-card:hover::before{opacity:1}
.ic-health::before  {background:linear-gradient(90deg,#00E5A0,#00D4FF)}
.ic-retail::before  {background:linear-gradient(90deg,#FFB020,#FF6B35)}
.ic-ent::before     {background:linear-gradient(90deg,#00D4FF,#6366F1)}
.ic-pub::before     {background:linear-gradient(90deg,#A855F7,#00D4FF)}

/* Image */
.ind-img-wrap{
  position:relative;overflow:hidden;
  aspect-ratio:4/3;flex-shrink:0;
}
.ind-img{
  width:100%;height:100%;object-fit:cover;display:block;
  filter:brightness(.65) saturate(.75);
  transition:filter .45s,transform .45s;
}
.ind-card:hover .ind-img{
  filter:brightness(.85) saturate(1.1);
  transform:scale(1.06);
}

/* Industry label chip over image */
.ind-chip{
  position:absolute;bottom:10px;left:12px;z-index:2;
  display:inline-flex;align-items:center;gap:.35rem;
  background:rgba(3,16,31,.82);
  backdrop-filter:blur(8px);
  border:1px solid var(--w12);
  border-radius:50px;padding:.25rem .7rem;
  font-size:.68rem;font-weight:700;color:var(--w90);
}

/* Gradient overlay on image bottom */
.ind-img-wrap::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(6,24,40,.95) 100%);
  z-index:1;
}

/* Card body */
.ind-body{padding:1.25rem 1.3rem 1.5rem;flex:1;display:flex;flex-direction:column}

.ind-icon{
  width:38px;height:38px;border-radius:9px;
  display:flex;align-items:center;justify-content:center;
  font-size:1rem;margin-bottom:.9rem;flex-shrink:0;
}
.ih{background:rgba(0,229,160,.1);border:1px solid rgba(0,229,160,.22)}
.ir{background:rgba(255,176,32,.1);border:1px solid rgba(255,176,32,.22)}
.ie{background:rgba(0,212,255,.1);border:1px solid rgba(0,212,255,.22)}
.ip{background:rgba(168,85,247,.1);border:1px solid rgba(168,85,247,.22)}

.ind-headline{
  font-size:.95rem;font-weight:700;
  color:var(--w100);margin-bottom:.4rem;
  line-height:1.25;
}
.ind-desc{font-size:.78rem;color:var(--w70);line-height:1.7;margin-bottom:.9rem;flex:1}

/* Use-cases — hidden by default, revealed on hover */
.ind-usecases{
  list-style:none;
  display:flex;flex-direction:column;gap:.35rem;
  margin-bottom:1rem;
  max-height:0;overflow:hidden;
  transition:max-height .35s ease,opacity .35s ease;
  opacity:0;
}
.ind-card:hover .ind-usecases{max-height:120px;opacity:1}
.ind-usecases li{
  display:flex;align-items:flex-start;gap:.4rem;
  font-size:.73rem;color:var(--w60,rgba(255,255,255,.62));line-height:1.5;
}
.ind-usecases li::before{
  content:'?';color:var(--cyan);flex-shrink:0;font-size:.65rem;margin-top:.1rem;
}

/* Tags */
.ind-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.9rem}
.ind-tag{
  font-size:.63rem;font-weight:600;
  padding:.2rem .6rem;border-radius:50px;
  background:var(--w06);color:var(--w50);border:1px solid var(--w12);
}

.ind-cta{
  display:inline-flex;align-items:center;gap:.3rem;
  font-size:.77rem;font-weight:700;color:var(--cyan);
  text-decoration:none;transition:gap .2s;margin-top:auto;
}
.ind-cta:hover{gap:.55rem}

/* -----------------------------------------------
   SECTION 3 — AREA OF EXPERTISE (Quick links)
   CRO Fix: Visual icon grid replaces plain list
----------------------------------------------- */
.expertise-sec{background:var(--bg)}

.exp-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:1.2rem;
  margin-top:var(--sp-lg);
}
.exp-card{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r);padding:1.5rem 1.2rem;
  text-align:center;
  text-decoration:none;
  transition:all .28s;
  display:flex;flex-direction:column;align-items:center;gap:.6rem;
}
.exp-card:hover{
  border-color:var(--border);
  background:var(--bg3);
  transform:translateY(-3px);
  box-shadow:0 12px 36px rgba(0,0,0,.3);
}
.exp-icon{
  width:44px;height:44px;border-radius:12px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:1.15rem;
  transition:transform .25s;
}
.exp-card:hover .exp-icon{transform:scale(1.1)}
.exp-label{font-size:.8rem;font-weight:700;color:var(--w90);line-height:1.3;text-align:center}

/* -----------------------------------------------
   SECTION 4 — SERVICES (expanded)
----------------------------------------------- */
.services-sec{background:var(--bg2)}

.svc-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1.2rem;margin-top:var(--sp-lg);
}
.svc-card{
  background:var(--bg3);border:1px solid var(--border2);
  border-radius:var(--r);padding:1.75rem;
  position:relative;overflow:hidden;
  transition:all .28s;
}
.svc-card::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:var(--grad);transform:scaleX(0);
  transition:transform .3s;transform-origin:left;
}
.svc-card:hover{border-color:var(--border);transform:translateY(-3px);box-shadow:var(--sh-md)}
.svc-card:hover::after{transform:scaleX(1)}
.svc-icon{
  width:40px;height:40px;border-radius:10px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:1.1rem;margin-bottom:1rem;
}
.svc-card h4{font-size:.92rem;font-weight:700;color:var(--w100);margin-bottom:.45rem}
.svc-card p{font-size:.79rem;color:var(--w70);line-height:1.68}
.svc-card a{
  display:inline-flex;align-items:center;gap:.3rem;
  font-size:.76rem;font-weight:700;color:var(--cyan);
  text-decoration:none;margin-top:1rem;transition:gap .2s;
}
.svc-card a:hover{gap:.5rem}

/* -----------------------------------------------
   SECTION 5 — WHY COGENERATE
----------------------------------------------- */
.why-sec{background:var(--bg)}
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}

.why-items{display:flex;flex-direction:column;gap:1rem}
.why-item{
  display:flex;gap:.85rem;
  padding:1.1rem 1.25rem;
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r);transition:border-color .2s;
}
.why-item:hover{border-color:var(--border)}
.wi-ico{
  width:34px;height:34px;border-radius:8px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:.9rem;flex-shrink:0;
}
.wi-h{font-size:.87rem;font-weight:700;color:var(--w100);margin-bottom:.2rem}
.wi-p{font-size:.77rem;color:var(--w70);line-height:1.6}

.metrics-card{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:var(--r-lg);padding:2rem;position:relative;overflow:hidden;
}
.metrics-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.m-big{
  font-family:'Sora',sans-serif;font-size:3rem;font-weight:900;
  line-height:1;margin-bottom:.2rem;
}
.m-lbl{font-size:.78rem;color:var(--w50);margin-bottom:1.75rem}
.m-bars{display:flex;flex-direction:column;gap:.65rem}
.m-row{display:flex;align-items:center;gap:.65rem}
.m-name{font-size:.72rem;color:var(--w70);width:72px;flex-shrink:0}
.m-track{flex:1;height:5px;background:var(--w06);border-radius:3px;overflow:hidden}
.m-fill{height:100%;border-radius:3px;background:var(--grad);animation:growbar 1.3s ease both}
@keyframes growbar{from{width:0}}
.m-val{font-size:.72rem;font-weight:700;color:var(--cyan);width:28px;text-align:right}

/* -----------------------------------------------
   SECTION 6 — CLIENTS
----------------------------------------------- */
.clients-sec{background:var(--bg2)}
.clients-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1px;background:var(--border2);
  border-radius:var(--r-lg);overflow:hidden;
  margin-top:var(--sp-lg);
}
.c-cell{
  background:var(--bg2);padding:1.75rem 1.25rem;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s;
}
.c-cell:hover{background:var(--bg3)}
.c-cell img{
  max-width:88px;max-height:38px;object-fit:contain;
  filter:grayscale(1) brightness(1.6);opacity:.45;transition:all .3s;
}
.c-cell:hover img{filter:grayscale(0) brightness(1.1);opacity:1}
.c-cell span{font-size:.72rem;font-weight:600;color:var(--w40);text-align:center;line-height:1.4}

/* -----------------------------------------------
   SECTION 7 — TESTIMONIALS
----------------------------------------------- */
.testi-sec{background:var(--bg)}
.testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:var(--sp-lg)}
.testi-card{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r);padding:1.75rem;transition:border-color .2s;
}
.testi-card:hover{border-color:var(--border)}
.tq{font-size:2.2rem;line-height:1;color:var(--cyan);opacity:.25;margin-bottom:.4rem;font-family:'Sora',sans-serif}
.tt{font-size:.83rem;color:var(--w70);line-height:1.8;font-style:italic;margin-bottom:1.3rem}
.ta{display:flex;align-items:center;gap:.65rem}
.ta-av{
  width:36px;height:36px;border-radius:50%;
  background:var(--grad);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  font-family:'Sora',sans-serif;font-weight:700;font-size:.78rem;color:var(--bg);
}
.ta-n{font-size:.82rem;font-weight:700;color:var(--w100)}
.ta-r{font-size:.7rem;color:var(--w40)}

/* -----------------------------------------------
   SECTION 9 — CTA BANNER
----------------------------------------------- */
.cta-sec{background:var(--bg);padding:var(--sp-2xl) 0}
.cta-box{
  background:var(--bg3);border:1px solid var(--border);
  border-radius:var(--r-xl);padding:5rem 4rem;
  text-align:center;position:relative;overflow:hidden;
}
.cta-box::before{
  content:'';position:absolute;
  width:500px;height:500px;
  background:radial-gradient(circle,rgba(0,212,255,.1) 0%,transparent 65%);
  top:-150px;right:-100px;pointer-events:none;
}
.cta-box::after{
  content:'';position:absolute;
  width:320px;height:320px;
  background:radial-gradient(circle,rgba(0,229,160,.07) 0%,transparent 65%);
  bottom:-100px;left:-70px;pointer-events:none;
}
.cta-box h2{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:800;color:var(--w100);margin-bottom:.9rem;position:relative;z-index:1}
.cta-box p{font-size:.93rem;color:var(--w70);line-height:1.78;max-width:460px;margin:0 auto 2.2rem;position:relative;z-index:1}
.cta-btns{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;position:relative;z-index:1}


/* BUTTONS */
.btn-primary{display:inline-flex;align-items:center;gap:.4rem;background:var(--grad);color:var(--bg);font-family:'DM Sans',sans-serif;font-weight:700;font-size:.9rem;padding:.82rem 1.9rem;border-radius:50px;text-decoration:none;border:none;cursor:pointer;box-shadow:0 8px 28px var(--cyan-glow);transition:transform .25s,box-shadow .25s}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 40px var(--cyan-glow)}
.btn-ghost{display:inline-flex;align-items:center;gap:.4rem;background:transparent;color:var(--w90);font-weight:600;font-size:.88rem;padding:.78rem 1.7rem;border-radius:50px;border:1px solid var(--w12);text-decoration:none;transition:all .25s}
.btn-ghost:hover{border-color:var(--cyan);color:var(--cyan);background:var(--cyan-dim)}

/* Page show/hide */
.page-section{display:none}
.page-section.active{display:block}



/* ----------------------------
   HERO SECTION — No image,
   All text CENTER-aligned,
   Gradient glow bg from index.html
---------------------------- */
.page-hero{
  position:relative;
  padding:120px 5% 80px;
  text-align:center;
  overflow:hidden;
}
/* radial glows from index.html hero */
.ph-glow-r{position:absolute;width:600px;height:600px;background:radial-gradient(circle,var(--glow-a,rgba(0,212,255,.09)),transparent 65%);top:-120px;right:-100px;pointer-events:none;z-index:0}
.ph-glow-l{position:absolute;width:400px;height:400px;background:radial-gradient(circle,var(--glow-b,rgba(0,229,160,.06)),transparent 65%);bottom:-80px;left:-80px;pointer-events:none;z-index:0}
/* subtle grid overlay matching index.html */
.ph-grid{position:absolute;inset:0;pointer-events:none;z-index:1;background-image:linear-gradient(rgba(0,212,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.025) 1px,transparent 1px);background-size:52px 52px;mask-image:radial-gradient(ellipse 60% 60% at 50% 50%,black 10%,transparent 70%)}
.ph-inner{position:relative;z-index:2;max-width:720px;margin:0 auto}
.ph-inner .breadcrumb{justify-content:center}
.breadcrumb{display:flex;align-items:center;gap:.45rem;font-size:.74rem;color:var(--w30);flex-wrap:wrap;margin-bottom:1.1rem; justify-content:center;}
.breadcrumb a{color:var(--w50);text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--cyan)}
.breadcrumb .bc-cur{color:var(--cyan)}
.trust-bar{display:inline-flex;align-items:center;gap:.55rem;background:rgba(0,212,255,.08);border:1px solid var(--border);border-radius:50px;padding:.32rem 1rem;margin-bottom:1.5rem}
.trust-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:blink 2s infinite}
.trust-text{font-size:.72rem;font-weight:700;color:var(--cyan);letter-spacing:.06em;text-transform:uppercase}
.ph-cat{display:inline-flex;align-items:center;gap:.4rem;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.25rem .85rem;border-radius:50px;border:1px solid;margin-bottom:1.1rem}
.ph-title{font-size:clamp(2.1rem,4.5vw,3.4rem);font-weight:900;color:var(--w100);line-height:1.15;margin-bottom:1rem}
.ph-sub{font-size:.97rem;color:var(--w70);line-height:1.82;margin:0 auto 2rem;max-width:580px}
.ph-cta-row{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap}
/* Bottom divider strip matching index.html stats-strip */
.hero-bottom-strip{
  border-top:1px solid var(--border2);
  padding-top:1.5rem;margin-top:2rem;
  display:flex;justify-content:center;align-items:center;gap:2rem;flex-wrap:wrap;
}
.hbs-item{display:flex;align-items:center;gap:.45rem;font-size:.78rem;color:var(--w50)}
.hbs-item span{color:var(--w70);font-weight:600}
.hbs-sep{width:1px;height:14px;background:var(--border2)}

/* ----------------------------
   SHARED CONTENT BLOCKS
---------------------------- */
/* Card — matches svc-card from index.html */
.content-card{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-xl);overflow:hidden;margin-bottom:2rem;position:relative}
.content-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.card-body{padding:2.5rem}

/* Section block */
.section-block{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r);padding:1.75rem 2rem;margin-bottom:1rem;position:relative;overflow:hidden;transition:border-color .25s}
.section-block::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transition:transform .35s;transform-origin:left}
.section-block:hover{border-color:var(--border)}
.section-block:hover::before{transform:scaleX(1)}
.sb-title{display:flex;align-items:center;gap:.7rem;font-family:'Sora',sans-serif;font-size:.96rem;font-weight:700;color:var(--w100);margin-bottom:.65rem}
.sb-ico{width:34px;height:34px;border-radius:9px;background:var(--cyan-dim);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}
.sb-text{font-size:.88rem;color:var(--w70);line-height:1.82}
.sb-text p{margin-bottom:.85rem}
.sb-text p:last-child{margin-bottom:0}
.sb-text a{color:var(--cyan);text-decoration:none;border-bottom:1px solid rgba(0,212,255,.28);transition:border-color .2s}
.sb-text a:hover{border-color:var(--cyan)}
.sb-list{list-style:none;padding:0;margin-top:.75rem;display:flex;flex-direction:column;gap:.45rem}
.sb-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:.84rem;color:rgba(255,255,255,.72);line-height:1.65}
.sb-list li::before{content:'';display:block;width:7px;height:7px;border-radius:50%;background:var(--grad);flex-shrink:0;margin-top:.45em}
.sb-list li strong{color:var(--w100)}

/* Callout */
.callout{display:flex;gap:.85rem;align-items:flex-start;background:rgba(0,212,255,.06);border:1px solid var(--border);border-left:3px solid var(--cyan);border-radius:0 var(--r) var(--r) 0;padding:1.1rem 1.4rem;margin:1.5rem 0}
.callout-ico{font-size:1.2rem;flex-shrink:0;margin-top:.05rem}
.callout-txt{font-size:.88rem;color:var(--w90);line-height:1.75;font-weight:500}
.callout-txt strong{color:var(--w100)}

/* Last updated bar */
.last-updated{display:inline-flex;align-items:center;gap:.5rem;background:rgba(0,229,160,.07);border:1px solid rgba(0,229,160,.2);border-radius:50px;padding:.28rem .9rem;font-size:.72rem;font-weight:600;color:var(--green);margin-bottom:1.75rem}

/* --------------------
   CLIENT / PARTNER GRIDS
-------------------- */
/* Industry tabs (clients) */
.tab-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:2rem}
.tab-btn{background:var(--w06);border:1px solid var(--w12);border-radius:50px;padding:.3rem .9rem;font-size:.75rem;font-weight:600;color:var(--w60);cursor:pointer;transition:all .22s;white-space:nowrap}
.tab-btn:hover,.tab-btn.active{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}

/* Clients grid — same pattern as ind-grid from index.html */
.clients-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border2);border-radius:var(--r-lg);overflow:hidden;margin-bottom:2rem}
.client-cell{background:var(--bg2);padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;text-align:center;transition:background .25s;cursor:default}
.client-cell:hover{background:var(--bg3)}
.cc-logo-area{width:64px;height:64px;border-radius:var(--r);background:var(--bg3);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;font-size:1.8rem;flex-shrink:0;transition:border-color .25s}
.client-cell:hover .cc-logo-area{border-color:var(--border)}
.cc-name{font-family:'Sora',sans-serif;font-size:.85rem;font-weight:700;color:var(--w100);line-height:1.3}
.cc-type{font-size:.7rem;color:var(--w40);font-weight:500}
/* Sector label badge */
.sector-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.63rem;font-weight:700;padding:.16rem .55rem;border-radius:50px;text-transform:uppercase;letter-spacing:.07em}
.sb-health{background:rgba(0,229,160,.1);border:1px solid rgba(0,229,160,.22);color:var(--green)}
.sb-edu{background:rgba(0,212,255,.1);border:1px solid rgba(0,212,255,.22);color:var(--cyan)}
.sb-gov{background:rgba(168,85,247,.1);border:1px solid rgba(168,85,247,.22);color:var(--purple)}
.sb-ent{background:rgba(255,176,32,.1);border:1px solid rgba(255,176,32,.22);color:var(--amber)}
.sb-ret{background:rgba(244,114,182,.1);border:1px solid rgba(244,114,182,.22);color:#F472B6}

/* Stats row — same stats-strip from index.html */
.stats-strip{background:var(--bg2);border-top:1px solid var(--border2);border-bottom:1px solid var(--border2)}
.stats-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
.stat-cell{padding:2.2rem 1.5rem;text-align:center;border-right:1px solid var(--border2);transition:background .2s}
.stat-cell:last-child{border-right:none}
.stat-cell:hover{background:var(--bg3)}
.stat-num{font-family:'Sora',sans-serif;font-size:2.2rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.3rem}
.stat-lbl{font-size:.76rem;color:var(--w50);font-weight:500}

/* Partners grid — same as services grid pattern */
.partners-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2rem}
.partner-card{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-lg);padding:2rem 1.75rem;transition:all .28s;position:relative;overflow:hidden;text-align:center}
.partner-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transition:transform .3s;transform-origin:left}
.partner-card:hover{border-color:var(--border);transform:translateY(-3px);box-shadow:var(--sh-md)}
.partner-card:hover::after{transform:scaleX(1)}
.pc-logo-wrap{width:64px;height:64px;border-radius:16px;background:var(--bg3);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin:0 auto 1rem;transition:transform .25s}
.partner-card:hover .pc-logo-wrap{transform:scale(1.1)}
.pc-type-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.62rem;font-weight:800;padding:.2rem .7rem;border-radius:50px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.75rem}
.pc-name{font-family:'Sora',sans-serif;font-size:1rem;font-weight:700;color:var(--w100);margin-bottom:.4rem}
.pc-desc{font-size:.8rem;color:var(--w70);line-height:1.7}

/* Tier banner */
.tier-banner{
  background:linear-gradient(135deg,rgba(0,212,255,.08),rgba(0,229,160,.05));
  border:1px solid var(--border);border-radius:var(--r-lg);padding:2rem 2.5rem;
  display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;
  margin-bottom:2rem;position:relative;overflow:hidden;
}
.tier-banner::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.tier-ico{font-size:2.5rem;flex-shrink:0}
.tier-text h3{font-family:'Sora',sans-serif;font-size:1.05rem;font-weight:800;color:var(--w100);margin-bottom:.3rem}
.tier-text p{font-size:.84rem;color:var(--w70);line-height:1.65;max-width:520px}
.tier-badge{margin-left:auto;display:inline-flex;align-items:center;gap:.4rem;background:var(--grad);color:var(--bg);font-weight:800;font-size:.76rem;padding:.4rem 1.1rem;border-radius:50px;white-space:nowrap;flex-shrink:0}

/* CTA box — from index.html */
.cta-sec{background:var(--bg);padding:var(--sp-2xl) 0}
.cta-box{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r-xl);padding:5rem 4rem;text-align:center;position:relative;overflow:hidden}
.cta-box::before{content:'';position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(0,212,255,.1),transparent 65%);top:-150px;right:-100px;pointer-events:none}
.cta-box::after{content:'';position:absolute;width:320px;height:320px;background:radial-gradient(circle,rgba(0,229,160,.07),transparent 65%);bottom:-100px;left:-70px;pointer-events:none}
.cta-box h2{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:800;color:var(--w100);margin-bottom:.9rem;position:relative;z-index:1}
.cta-box p{font-size:.93rem;color:var(--w70);line-height:1.78;max-width:460px;margin:0 auto 2.2rem;position:relative;z-index:1}
.cta-btns{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;position:relative;z-index:1}



/* Grid BG */
.grid-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(rgba(0,212,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.03) 1px,transparent 1px);background-size:52px 52px;mask-image:radial-gradient(ellipse 80% 60% at 50% 20%,black,transparent 75%)}

/* Animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.4}}
@keyframes growbar{from{width:0}}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.on{opacity:1;transform:none}
.d1{transition-delay:.06s}.d2{transition-delay:.12s}.d3{transition-delay:.18s}.d4{transition-delay:.24s}

/* --------------------------------
   NAV — Responsive with dropdowns
-------------------------------- */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:rgba(3,16,31,.92);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);transition:background .3s}
.logo{display:flex;align-items:center;gap:.65rem;text-decoration:none;flex-shrink:0}
.logo-mark{width:36px;height:36px;border-radius:8px;background:var(--grad);display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:900;font-size:1rem;color:var(--bg)}
.logo-text{font-family:'Sora',sans-serif;font-weight:700;font-size:1rem;color:var(--w100)}

/* Desktop links */
.nav-links{display:flex;align-items:center;list-style:none;gap:0}
.nav-links>li{position:relative}
.nav-links>li>a{display:flex;align-items:center;gap:.3rem;color:var(--w70);text-decoration:none;font-size:.84rem;font-weight:500;transition:color .2s;padding:.4rem .9rem;position:relative;white-space:nowrap}
.nav-links>li>a:hover,.nav-links>li>a.active{color:var(--cyan)}
.nav-links>li>a::after{content:'';position:absolute;bottom:0;left:.9rem;right:.9rem;height:1.5px;background:var(--cyan);transform:scaleX(0);transition:transform .25s;transform-origin:left}
.nav-links>li>a:hover::after,.nav-links>li>a.active::after{transform:scaleX(1)}

/* Caret */
.caret{font-size:.6rem;transition:transform .25s;display:inline-block}
.nav-has-dropdown:hover>a .caret{transform:rotate(180deg)}

/* Dropdown */
.nav-dropdown{display:none;position:absolute;top:calc(100% + 0px);left:0;background:rgba(6,24,40,.97);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--r-lg);padding:.5rem;min-width:240px;box-shadow:var(--sh-lg);z-index:2000;animation:fadeUp .2s ease both}
.nav-has-dropdown:hover .nav-dropdown{display:block}
.nav-dropdown a{display:flex;align-items:center;gap:.65rem;padding:.62rem .85rem;border-radius:var(--r);font-size:.82rem;font-weight:600;color:var(--w70);text-decoration:none;transition:all .2s;white-space:nowrap}
.nav-dropdown a:hover,.nav-dropdown a.dd-active{background:var(--cyan-dim);color:var(--cyan)}
.nav-dropdown a::after{display:none!important}
.dd-ico{width:28px;height:28px;border-radius:7px;background:var(--bg3);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;font-size:.8rem;flex-shrink:0;transition:background .2s}
.nav-dropdown a:hover .dd-ico,.nav-dropdown a.dd-active .dd-ico{background:var(--cyan-dim);border-color:var(--border)}
.dd-sep{height:1px;background:var(--border2);margin:.35rem .5rem}

/* CTA nav btn */
.btn-nav{background:var(--grad)!important;color:var(--bg)!important;font-weight:700!important;font-size:.82rem!important;padding:.48rem 1.25rem;border-radius:50px;margin-left:.5rem}
.btn-nav::after{display:none!important}

/* Hamburger */
.nav-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;background:none;border:none;cursor:pointer;padding:5px;flex-shrink:0}
.nav-hamburger span{display:block;height:2px;border-radius:2px;background:var(--w90);transition:all .3s}
.nav-hamburger span:nth-child(1){width:22px}
.nav-hamburger span:nth-child(2){width:16px}
.nav-hamburger span:nth-child(3){width:19px}
.nav-hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px);width:20px}
.nav-hamburger.open span:nth-child(2){opacity:0;transform:translateX(-6px)}
.nav-hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px);width:20px}

/* Mobile drawer */
.nav-mobile{display:none;position:fixed;top:68px;left:0;right:0;bottom:0;background:rgba(3,16,31,.98);backdrop-filter:blur(24px);border-top:1px solid var(--border);z-index:999;overflow-y:auto;padding:1.25rem 5% 2rem;flex-direction:column;gap:.35rem}
.nav-mobile.open{display:flex}
.nm-link{display:flex;align-items:center;gap:.65rem;padding:.85rem 1rem;border-radius:var(--r);font-size:.9rem;font-weight:600;color:var(--w70);text-decoration:none;transition:all .2s;border:1px solid transparent}
.nm-link:hover,.nm-link.active{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}
.nm-ico{font-size:1.05rem;width:24px;text-align:center;flex-shrink:0}
.nm-section-label{font-size:.68rem;font-weight:800;color:var(--w30);letter-spacing:.14em;text-transform:uppercase;padding:.75rem 1rem .35rem;margin-top:.5rem}
.nm-sep{height:1px;background:var(--border2);margin:.5rem 0}
.nm-cta{background:var(--grad);color:var(--bg)!important;font-weight:700;border-radius:50px;justify-content:center;margin-top:.5rem;box-shadow:0 8px 24px var(--cyan-glow)}

/* BUTTONS */
.btn-primary{display:inline-flex;align-items:center;gap:.4rem;background:var(--grad);color:var(--bg);font-family:'DM Sans',sans-serif;font-weight:700;font-size:.9rem;padding:.82rem 1.9rem;border-radius:50px;text-decoration:none;border:none;cursor:pointer;box-shadow:0 8px 28px var(--cyan-glow);transition:transform .25s,box-shadow .25s}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 40px var(--cyan-glow)}
.btn-ghost{display:inline-flex;align-items:center;gap:.4rem;background:transparent;color:var(--w90);font-weight:600;font-size:.88rem;padding:.78rem 1.7rem;border-radius:50px;border:1px solid var(--w12);text-decoration:none;transition:all .25s}
.btn-ghost:hover{border-color:var(--cyan);color:var(--cyan);background:var(--cyan-dim)}

/* trust-bar */
.trust-bar{display:inline-flex;align-items:center;gap:.55rem;background:rgba(0,212,255,.08);border:1px solid var(--border);border-radius:50px;padding:.32rem 1rem;margin-bottom:1.5rem}
.trust-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:blink 2s infinite}
.trust-text{font-size:.72rem;font-weight:700;color:var(--cyan);letter-spacing:.06em;text-transform:uppercase}

/* breadcrumb */
.breadcrumb{display:flex;align-items:center;gap:.45rem;font-size:.74rem;color:var(--w30);flex-wrap:wrap;margin-bottom:1.1rem}
.breadcrumb a{color:var(--w50);text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--cyan)}
.breadcrumb .bc-cur{color:var(--cyan)}


/* -----------------------------------------------
   FOOTER
----------------------------------------------- */
footer{
  background:var(--bg2);border-top:1px solid var(--border);
  padding:4.5rem 5% 2rem;
}
.footer-inner{max-width:1200px;margin:0 auto}
.footer-top{
  display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;
  gap:3rem;padding-bottom:2.5rem;
  border-bottom:1px solid var(--border2);
}
.footer-brand .logo{margin-bottom:.9rem}
.footer-desc{font-size:.82rem;color:var(--w70);line-height:1.75;max-width:260px;margin-bottom:1.2rem}
.f-contact{font-size:.79rem;color:var(--w70);display:flex;align-items:flex-start;gap:.4rem;margin-bottom:.45rem}
.f-contact a{color:var(--cyan);text-decoration:none}
.footer-col h5{
  font-size:.75rem;font-weight:700;color:var(--w100);
  letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem;
}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.5rem}
.footer-col ul a{font-size:.8rem;color:var(--w70);text-decoration:none;transition:color .2s}
.footer-col ul a:hover{color:var(--cyan)}
.footer-bottom{
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:1rem;margin-top:1.5rem;
}
.f-copy{font-size:.72rem;color:var(--w30)}
.f-cert{
  display:inline-flex;align-items:center;gap:.35rem;
  font-size:.68rem;font-weight:700;color:var(--cyan);
  background:var(--cyan-dim);border:1px solid var(--border);
  padding:.26rem .72rem;border-radius:50px;
}

/* -----------------------------------------------
   ANIMATIONS
----------------------------------------------- */
@keyframes fadeUp{
  from{opacity:0;transform:translateY(20px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes growbar{from{width:0}}
@keyframes blink{
  0%,100%{box-shadow:0 0 6px var(--cyan)}
  50%{box-shadow:0 0 14px var(--cyan),0 0 24px rgba(0,212,255,.3)}
}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .65s ease,transform .65s ease}
.reveal.on{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}

/* --------------------------------
   PAGE SWITCHER (sub-nav strip)
-------------------------------- */
.page-switcher{background:var(--bg2);border-bottom:1px solid var(--border2);padding:.75rem 5%;display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap;overflow-x:auto;position:sticky;top:68px;z-index:99; justify-content: center;}
.page-switcher::-webkit-scrollbar{display:none}
.ps-btn{background:var(--w06);border:1px solid var(--w12);border-radius:50px;padding:.3rem .9rem;font-size:.75rem;font-weight:600;color:var(--w60);cursor:pointer;transition:all .22s;white-space:nowrap;flex-shrink:0}
.ps-btn:hover,.ps-btn.active{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}

/* PAGE show/hide */
.page-section{display:none}
.page-section.active{display:block}

/* --------------------------------
   HERO — Text-only, no image
   Uses index.html hero gradient bg
-------------------------------- */
.ind-hero{
  position:relative;
  padding:120px 5% 70px;
  min-height:auto;
  overflow:hidden;
}
/* Gradient glow shapes matching index.html hero */
.ih-glow-r{position:absolute;width:600px;height:600px;background:radial-gradient(circle,var(--glow-color,rgba(0,212,255,.1)),transparent 65%);top:-150px;right:-120px;pointer-events:none;z-index:0}
.ih-glow-l{position:absolute;width:350px;height:350px;background:radial-gradient(circle,rgba(0,229,160,.06),transparent 65%);bottom:-80px;left:-60px;pointer-events:none;z-index:0}
/* The horizontal rule at bottom of hero same as index.html */
.ih-inner{position:relative;z-index:2;max-width:800px;animation:fadeUp .7s ease both; margin: 0 auto;    text-align: center;}
.ind-cat-pill{display:inline-flex;align-items:center;gap:.4rem;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.25rem .85rem;border-radius:50px;border:1px solid;margin-bottom:1rem}
.ind-hero h1{font-size:clamp(2rem,4vw,3.2rem);font-weight:900;color:var(--w100);line-height:1.15;margin-bottom:1.1rem}
.ind-hero-sub{font-size:.98rem;color:var(--w70);line-height:1.82;max-width:640px;margin:0 auto 2rem}
.hero-cta-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:2rem; justify-content: center;}
.hero-proof{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap;padding-top:1.5rem;border-top:1px solid var(--w06); justify-content: center;}
.proof-item{display:flex;align-items:center;gap:.45rem;font-size:.78rem;color:var(--w50)}
.proof-item span{color:var(--w70);font-weight:600}
.proof-sep{width:1px;height:14px;background:var(--w12);flex-shrink:0}

/* Hero accent grid lines — from index.html hero */
.ih-grid{position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(rgba(0,212,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.025) 1px,transparent 1px);background-size:52px 52px;mask-image:radial-gradient(ellipse 80% 80% at 70% 50%,black 10%,transparent 70%)}

/* --------------------------------
   INDUSTRY LAYOUT — 2 col
-------------------------------- */
.ind-layout{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start;padding:3.5rem 0 5rem}

/* -- LEFT CONTENT -- */
.ind-content{}

/* Stats bar — from index.html stats-strip */
.inline-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border2);border-radius:var(--r-lg);overflow:hidden;margin-bottom:2rem}
.is-cell{background:var(--bg2);padding:1.6rem 1rem;text-align:center;transition:background .2s}
.is-cell:hover{background:var(--bg3)}
.is-num{font-family:'Sora',sans-serif;font-size:1.85rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.25rem}
.is-lbl{font-size:.71rem;color:var(--w50)}

/* Overview block */
.overview-block{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r-xl);padding:2.5rem;margin-bottom:2rem;
  position:relative;overflow:hidden;
}
.overview-block::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}

/* Feature cards — same ind-card feel but without images */
.feature-card{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r);padding:1.6rem 1.75rem;margin-bottom:1rem;
  position:relative;overflow:hidden;transition:border-color .25s;
}
.feature-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transition:transform .35s;transform-origin:left}
.feature-card:hover{border-color:var(--border)}
.feature-card:hover::before{transform:scaleX(1)}
.fc-title{display:flex;align-items:center;gap:.7rem;font-family:'Sora',sans-serif;font-size:.96rem;font-weight:700;color:var(--w100);margin-bottom:.6rem}
.fc-ico{width:36px;height:36px;border-radius:9px;background:var(--cyan-dim);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0}
.fc-text{font-size:.86rem;color:var(--w70);line-height:1.78}
/* bullet list */
.fc-list{list-style:none;padding:0;margin-top:.75rem;display:flex;flex-direction:column;gap:.45rem}
.fc-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:.82rem;color:rgba(255,255,255,.72);line-height:1.6}
.fc-list li::before{content:'';display:block;width:7px;height:7px;border-radius:50%;background:var(--grad);flex-shrink:0;margin-top:.44em}
.fc-list li strong{color:var(--w100)}

/* 3-col mini card grid */
.card-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.1rem}
.mini-card{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);padding:1.1rem;transition:all .25s;text-align:center}
.mini-card:hover{border-color:var(--border);transform:translateY(-2px);box-shadow:var(--sh-sm)}
.mc-ico{font-size:1.4rem;margin-bottom:.5rem}
.mc-title{font-size:.82rem;font-weight:700;color:var(--w100);margin-bottom:.2rem}
.mc-desc{font-size:.73rem;color:var(--w50);line-height:1.5}

/* Callout block */
.callout{display:flex;gap:.85rem;align-items:flex-start;background:rgba(0,212,255,.06);border:1px solid var(--border);border-left:3px solid var(--cyan);border-radius:0 var(--r) var(--r) 0;padding:1.1rem 1.4rem;margin:1.5rem 0}
.callout-ico{font-size:1.2rem;flex-shrink:0;margin-top:.05rem}
.callout-txt{font-size:.88rem;color:var(--w90);line-height:1.75;font-weight:500}
.callout-txt strong{color:var(--w100)}

/* Tags */
.tag-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.85rem}
.ind-tag{font-size:.7rem;font-weight:600;padding:.22rem .7rem;border-radius:50px;background:var(--w06);color:var(--w60);border:1px solid var(--w12)}

/* Inline CTA — same cta-box from index.html */
.inline-cta{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r-lg);padding:2.25rem;text-align:center;position:relative;overflow:hidden;margin-top:2rem}
.inline-cta::before{content:'';position:absolute;width:360px;height:360px;background:radial-gradient(circle,rgba(0,212,255,.1),transparent 65%);top:-100px;right:-80px;pointer-events:none}
.inline-cta::after{content:'';position:absolute;width:240px;height:240px;background:radial-gradient(circle,rgba(0,229,160,.07),transparent 65%);bottom:-70px;left:-50px;pointer-events:none}
.inline-cta h3{font-family:'Sora',sans-serif;font-size:1.15rem;font-weight:800;color:var(--w100);margin-bottom:.55rem;position:relative;z-index:1}
.inline-cta p{font-size:.87rem;color:var(--w70);line-height:1.72;max-width:440px;margin:0 auto 1.4rem;position:relative;z-index:1}
.inline-cta-btns{display:flex;justify-content:center;gap:.85rem;flex-wrap:wrap;position:relative;z-index:1}

/* -- SIDEBAR -- */
.sidebar{position:sticky;top:120px;display:flex;flex-direction:column;gap:1.5rem}
.sb-card{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-lg);overflow:hidden}
.sb-head{padding:.95rem 1.25rem;background:var(--bg3);border-bottom:1px solid var(--border2);font-family:'Sora',sans-serif;font-size:.82rem;font-weight:700;color:var(--w90);display:flex;align-items:center;gap:.5rem}
.sb-body{padding:1.1rem 1.25rem}

/* Industries nav */
.ind-nav{display:flex;flex-direction:column;gap:.4rem}
.ind-nav-link{display:flex;align-items:center;justify-content:space-between;padding:.62rem .85rem;background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);text-decoration:none;transition:all .22s}
.ind-nav-link:hover,.ind-nav-link.active{background:var(--cyan-dim);border-color:var(--border)}
.inl-left{display:flex;align-items:center;gap:.55rem;font-size:.8rem;font-weight:600;color:var(--w80)}
.ind-nav-link.active .inl-left{color:var(--cyan)}
.inl-ico{font-size:.9rem}
.inl-arr{font-size:.75rem;color:var(--w30)}
.ind-nav-link.active .inl-arr{color:var(--cyan)}

/* Contact card */
.contact-card{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);padding:1.2rem;position:relative;overflow:hidden}
.contact-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.cc-top{display:flex;align-items:center;gap:.55rem;margin-bottom:.65rem}
.cc-lm{width:30px;height:30px;border-radius:7px;background:var(--grad);display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:900;font-size:.85rem;color:var(--bg)}
.cc-brand{font-family:'Sora',sans-serif;font-weight:700;font-size:.9rem;color:var(--w100)}
.cc-cert{display:inline-flex;align-items:center;gap:.35rem;font-size:.65rem;font-weight:700;color:var(--cyan);background:var(--cyan-dim);border:1px solid var(--border);padding:.18rem .6rem;border-radius:50px;margin-bottom:.65rem}
.cc-desc{font-size:.77rem;color:var(--w60);line-height:1.65;margin-bottom:.85rem}
.cc-row{display:flex;align-items:flex-start;gap:.5rem;font-size:.74rem;color:var(--w50);margin-bottom:.4rem}
.cc-row a{color:var(--w70);text-decoration:none;transition:color .2s}.cc-row a:hover{color:var(--cyan)}

/* tags cloud */
.tags-cloud{display:flex;flex-wrap:wrap;gap:.42rem}
.tag-cl{font-size:.7rem;font-weight:600;color:var(--w60);background:var(--bg3);border:1px solid var(--border2);border-radius:50px;padding:.22rem .7rem;cursor:pointer;text-decoration:none;transition:all .22s}
.tag-cl:hover{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}

/* Newsletter */
.nl-desc{font-size:.78rem;color:var(--w60);line-height:1.6;margin-bottom:.7rem}
.nl-in{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);padding:.65rem .9rem;color:var(--w90);font-family:'DM Sans',sans-serif;font-size:.82rem;outline:none;transition:border-color .25s;width:100%;margin-bottom:.6rem}
.nl-in:focus{border-color:var(--cyan)}.nl-in::placeholder{color:var(--w30)}
.nl-btn{background:var(--grad);color:var(--bg);font-family:'DM Sans',sans-serif;font-weight:700;font-size:.82rem;padding:.65rem 1.25rem;border-radius:var(--r);border:none;cursor:pointer;width:100%;transition:opacity .2s}.nl-btn:hover{opacity:.9}
.nl-ok{display:none;font-size:.75rem;color:var(--green);text-align:center;font-weight:600;padding:.4rem}.nl-ok.show{display:block}

/* --- CTA SECTION --- */
.cta-sec{background:var(--bg);padding:5rem 0}
.cta-box{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r-xl);padding:5rem 4rem;text-align:center;position:relative;overflow:hidden}
.cta-box::before{content:'';position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(0,212,255,.1),transparent 65%);top:-150px;right:-100px;pointer-events:none}
.cta-box::after{content:'';position:absolute;width:320px;height:320px;background:radial-gradient(circle,rgba(0,229,160,.07),transparent 65%);bottom:-100px;left:-70px;pointer-events:none}
.cta-box h2{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:800;color:var(--w100);margin-bottom:.9rem;position:relative;z-index:1}
.cta-box p{font-size:.93rem;color:var(--w70);line-height:1.78;max-width:460px;margin:0 auto 2.2rem;position:relative;z-index:1}
.cta-btns{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;position:relative;z-index:1}


/* -------------------------------
   PAGE HERO BANNER
------------------------------- */
.page-hero{position:relative;min-height:400px;display:flex;align-items:flex-end;overflow:hidden;padding-top:68px}
.ph-bg{position:absolute;inset:0}
.ph-bg img{width:100%;height:100%;object-fit:cover;display:block}
.ph-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(3,16,31,.35) 0%,rgba(3,16,31,.6) 45%,rgba(3,16,31,.97) 100%)}
.ph-glow{position:absolute;width:700px;height:500px;background:radial-gradient(ellipse,rgba(0,212,255,.1),transparent 60%);top:0;left:50%;transform:translateX(-50%);pointer-events:none;animation:shimmer 4s ease-in-out infinite}
.ph-content{position:relative;z-index:2;width:100%;padding:2.5rem 5% 3rem}
.ph-inner{max-width:760px}
.breadcrumb{display:flex;align-items:center;gap:.4rem;font-size:.73rem;color:var(--w30);margin-bottom:1rem;flex-wrap:wrap}
.breadcrumb a{color:var(--w50);text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--cyan)}
.breadcrumb .bc-cur{color:var(--cyan)}
.hero-trust-bar{display:inline-flex;align-items:center;gap:.55rem;background:rgba(0,212,255,.08);border:1px solid var(--border);border-radius:50px;padding:.32rem 1rem;margin-bottom:1.25rem}
.trust-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:blink 2s infinite}
.trust-text{font-size:.72rem;font-weight:700;color:var(--cyan);letter-spacing:.06em;text-transform:uppercase}
.ph-cat-pill{display:inline-flex;align-items:center;gap:.35rem;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.25rem .8rem;border-radius:50px;background:rgba(0,212,255,.15);border:1px solid rgba(0,212,255,.3);color:var(--cyan);margin-bottom:1rem}
.ph-title{font-size:clamp(1.8rem,3.5vw,2.9rem);font-weight:900;color:var(--w100);line-height:1.15;margin-bottom:1rem;max-width:700px}
.ph-desc{font-size:.96rem;color:var(--w70);line-height:1.82;max-width:640px;margin-bottom:1.75rem}
.ph-cta-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}
/* stat pills in hero */
.hero-proof{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;padding-top:1.25rem;border-top:1px solid var(--w06)}
.proof-item{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--w50)}
.proof-item span{color:var(--w70);font-weight:600}
.proof-sep{width:1px;height:14px;background:var(--w12)}
/* -------------------------------
   SERVICE PAGE LAYOUT
------------------------------- */
.svc-layout{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start;padding:3.5rem 0 5rem}

/* LEFT CONTENT */
.svc-content{}

/* Overview card — uses svc-card style from index.html */
.overview-card{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r-xl);overflow:hidden;margin-bottom:2rem;
}
.ov-img{width:100%;height:320px;overflow:hidden;position:relative}
.ov-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.overview-card:hover .ov-img img{transform:scale(1.03)}
.ov-img-grad{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 55%,var(--bg2));pointer-events:none}
.ov-body{padding:2rem 2.5rem 2.5rem}

/* Feature blocks  */
.feature-block{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r);padding:1.6rem 1.75rem;
  margin-bottom:1rem;transition:border-color .2s;
  position:relative;overflow:hidden;
}
.feature-block::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transition:transform .3s;transform-origin:left}
.feature-block:hover{border-color:var(--border)}
.feature-block:hover::before{transform:scaleX(1)}
.fb-title{display:flex;align-items:center;gap:.7rem;font-family:'Sora',sans-serif;font-size:.95rem;font-weight:700;color:var(--w100);margin-bottom:.65rem}
.fb-ico{width:36px;height:36px;border-radius:9px;background:var(--cyan-dim);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0}
.fb-text{font-size:.86rem;color:var(--w70);line-height:1.78}
/* ul bullets inside feature blocks */
.fb-list{list-style:none;padding:0;margin-top:.75rem;display:flex;flex-direction:column;gap:.45rem}
.fb-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:.82rem;color:rgba(255,255,255,.72);line-height:1.6}
.fb-list li::before{content:'';display:block;width:7px;height:7px;border-radius:50%;background:var(--grad);flex-shrink:0;margin-top:.45em}
.fb-list li strong{color:var(--w100)}

/* Phase/step cards — same why-item from index.html */
.step-list{display:flex;flex-direction:column;gap:1rem;margin-top:1.25rem}
.step-item{display:flex;gap:1rem;align-items:flex-start;padding:1.1rem 1.25rem;background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);transition:border-color .2s}
.step-item:hover{border-color:var(--border)}
.step-n{font-family:'Sora',sans-serif;font-size:.72rem;font-weight:900;width:30px;height:30px;border-radius:50%;background:var(--cyan-dim);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--cyan);flex-shrink:0}
.step-h{font-size:.88rem;font-weight:700;color:var(--w100);margin-bottom:.2rem}
.step-p{font-size:.79rem;color:var(--w70);line-height:1.65}

/* 3-col grid (strategies, edu solutions etc.) */
.card-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.25rem}
.mini-card{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);padding:1.2rem;transition:all .25s;text-align:center}
.mini-card:hover{border-color:var(--border);transform:translateY(-2px);box-shadow:var(--sh-sm)}
.mc-ico{font-size:1.4rem;margin-bottom:.55rem}
.mc-title{font-size:.82rem;font-weight:700;color:var(--w100);margin-bottom:.25rem;line-height:1.3}
.mc-desc{font-size:.73rem;color:var(--w50);line-height:1.5}

/* Stats bar inside content — from index.html */
.inline-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border2);border-radius:var(--r-lg);overflow:hidden;margin-bottom:2rem}
.is-cell{background:var(--bg2);padding:1.5rem 1rem;text-align:center;transition:background .2s}
.is-cell:hover{background:var(--bg3)}
.is-num{font-family:'Sora',sans-serif;font-size:1.9rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.25rem}
.is-lbl{font-size:.71rem;color:var(--w50)}

/* Callout */
.callout{display:flex;gap:.85rem;align-items:flex-start;background:rgba(0,212,255,.06);border:1px solid var(--border);border-left:3px solid var(--cyan);border-radius:0 var(--r) var(--r) 0;padding:1.1rem 1.4rem;margin:1.5rem 0}
.callout-ico{font-size:1.2rem;flex-shrink:0;margin-top:.05rem}
.callout-txt{font-size:.88rem;color:var(--w90);line-height:1.75;font-weight:500}
.callout-txt strong{color:var(--w100)}

/* Image secondary (inside content) */
.content-img{width:100%;border-radius:var(--r-lg);overflow:hidden;margin:1.5rem 0;border:1px solid var(--border2)}
.content-img img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .4s}
.content-img:hover img{transform:scale(1.03)}

/* CTA within content */
.inline-cta{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r-lg);padding:2.25rem;text-align:center;position:relative;overflow:hidden;margin-top:2rem}
.inline-cta::before{content:'';position:absolute;width:340px;height:340px;background:radial-gradient(circle,rgba(0,212,255,.1),transparent 65%);top:-100px;right:-80px;pointer-events:none}
.inline-cta::after{content:'';position:absolute;width:240px;height:240px;background:radial-gradient(circle,rgba(0,229,160,.07),transparent 65%);bottom:-70px;left:-50px;pointer-events:none}
.inline-cta h3{font-size:1.15rem;font-weight:800;color:var(--w100);margin-bottom:.55rem;position:relative;z-index:1}
.inline-cta p{font-size:.87rem;color:var(--w70);line-height:1.72;max-width:440px;margin:0 auto 1.4rem;position:relative;z-index:1}
.inline-cta-btns{display:flex;justify-content:center;gap:.85rem;flex-wrap:wrap;position:relative;z-index:1}

/* -------------------------------
   SIDEBAR — index.html why-item style
------------------------------- */
.sidebar{position:sticky;top:88px;display:flex;flex-direction:column;gap:1.5rem}
.sb-card{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-lg);overflow:hidden}
.sb-head{padding:.95rem 1.25rem;background:var(--bg3);border-bottom:1px solid var(--border2);font-family:'Sora',sans-serif;font-size:.82rem;font-weight:700;color:var(--w90);display:flex;align-items:center;gap:.5rem}
.sb-body{padding:1.1rem 1.25rem}

/* Services nav */
.svc-nav{display:flex;flex-direction:column;gap:.4rem}
.svc-nav-link{display:flex;align-items:center;justify-content:space-between;padding:.62rem .85rem;background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);text-decoration:none;transition:all .22s}
.svc-nav-link:hover,.svc-nav-link.active{background:var(--cyan-dim);border-color:var(--border)}
.snl-left{display:flex;align-items:center;gap:.55rem;font-size:.8rem;font-weight:600;color:var(--w80)}
.svc-nav-link.active .snl-left{color:var(--cyan)}
.snl-ico{font-size:.9rem}.snl-arr{font-size:.75rem;color:var(--w30)}
.svc-nav-link.active .snl-arr{color:var(--cyan)}

/* Contact card — uses float-badge style */
.contact-card{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);padding:1.2rem;position:relative;overflow:hidden}
.contact-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.cc-top{display:flex;align-items:center;gap:.55rem;margin-bottom:.65rem}
.cc-lm{width:30px;height:30px;border-radius:7px;background:var(--grad);display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:900;font-size:.85rem;color:var(--bg)}
.cc-brand{font-family:'Sora',sans-serif;font-weight:700;font-size:.9rem;color:var(--w100)}
.cc-cert{display:inline-flex;align-items:center;gap:.35rem;font-size:.65rem;font-weight:700;color:var(--cyan);background:var(--cyan-dim);border:1px solid var(--border);padding:.18rem .6rem;border-radius:50px;margin-bottom:.65rem}
.cc-desc{font-size:.77rem;color:var(--w60);line-height:1.65;margin-bottom:.85rem}
.cc-row{display:flex;align-items:flex-start;gap:.5rem;font-size:.74rem;color:var(--w50);margin-bottom:.4rem}
.cc-row a{color:var(--w70);text-decoration:none;transition:color .2s}.cc-row a:hover{color:var(--cyan)}

/* Tags */
.tags-cloud{display:flex;flex-wrap:wrap;gap:.42rem}
.tag-cl{font-size:.7rem;font-weight:600;color:var(--w60);background:var(--bg3);border:1px solid var(--border2);border-radius:50px;padding:.22rem .7rem;cursor:pointer;text-decoration:none;transition:all .22s}
.tag-cl:hover{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}

/* Newsletter */
.nl-desc{font-size:.78rem;color:var(--w60);line-height:1.6;margin-bottom:.7rem}
.nl-in{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);padding:.65rem .9rem;color:var(--w90);font-family:'DM Sans',sans-serif;font-size:.82rem;outline:none;transition:border-color .25s;width:100%;margin-bottom:.6rem}
.nl-in:focus{border-color:var(--cyan)}.nl-in::placeholder{color:var(--w30)}
.nl-btn{background:var(--grad);color:var(--bg);font-family:'DM Sans',sans-serif;font-weight:700;font-size:.82rem;padding:.65rem 1.25rem;border-radius:var(--r);border:none;cursor:pointer;width:100%;transition:opacity .2s}.nl-btn:hover{opacity:.9}
.nl-ok{display:none;font-size:.75rem;color:var(--green);text-align:center;font-weight:600;padding:.4rem}.nl-ok.show{display:block}

/* --------------------------------
   HERO — ABOUT US
-------------------------------- */
.about-hero{
  min-height:72vh;
  display:flex;align-items:center;justify-content:center;
  text-align:center;
  padding:120px 5% 80px;
  position:relative;overflow:hidden;
}
.about-hero-glow{
  position:absolute;
  width:700px;height:700px;
  background:radial-gradient(circle,rgba(0,212,255,.08) 0%,transparent 60%);
  top:-100px;left:50%;transform:translateX(-50%);
  pointer-events:none;
}
.about-hero-glow2{
  position:absolute;
  width:400px;height:400px;
  background:radial-gradient(circle,rgba(0,229,160,.06) 0%,transparent 65%);
  bottom:-80px;right:10%;pointer-events:none;
}
.about-hero-content{position:relative;z-index:2;max-width:760px;margin:0 auto}
.trust-bar{
  display:inline-flex;align-items:center;gap:.55rem;
  background:rgba(0,212,255,.08);border:1px solid var(--border);
  border-radius:50px;padding:.32rem 1rem;
  margin-bottom:1.75rem;
  animation:fadeUp .7s ease both;
}
.trust-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:blink 2s infinite}
.trust-text{font-size:.72rem;font-weight:700;color:var(--cyan);letter-spacing:.06em;text-transform:uppercase}
.about-hero h1{
  font-size:clamp(2.6rem,5vw,4rem);font-weight:900;color:var(--w100);
  margin-bottom:1.25rem;
  animation:fadeUp .7s .07s ease both;
}
.about-hero-sub{
  font-size:1.05rem;color:var(--w70);line-height:1.8;
  max-width:600px;margin:0 auto 2.5rem;
  animation:fadeUp .7s .14s ease both;
}
.hero-cta-row{
  display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;
  animation:fadeUp .7s .21s ease both;
}
/* breadcrumb */
.breadcrumb{
  display:flex;align-items:center;gap:.45rem;
  font-size:.75rem;color:var(--w30);margin-bottom:1rem;
  justify-content:center;
  animation:fadeUp .7s ease both;
}
.breadcrumb a{color:var(--w50);text-decoration:none;transition:color .2s}
.breadcrumb a:hover{color:var(--cyan)}
.breadcrumb span{color:var(--cyan)}

/* --------------------------------
   STATS BAR
-------------------------------- */
.stats-bar{background:var(--bg2);border-top:1px solid var(--border2);border-bottom:1px solid var(--border2)}
.stats-inner{
  display:grid;grid-template-columns:repeat(4,1fr);
  max-width:1200px;margin:0 auto;
}
.stat-cell{
  padding:2.5rem 2rem;text-align:center;
  border-right:1px solid var(--border2);
  transition:background .2s;
}
.stat-cell:last-child{border-right:none}
.stat-cell:hover{background:var(--bg3)}
.stat-num{
  font-family:'Sora',sans-serif;font-size:2.4rem;font-weight:900;
  background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  line-height:1;margin-bottom:.35rem;
}
.stat-lbl{font-size:.78rem;color:var(--w50);font-weight:500}

/* --------------------------------
   ABOUT INTRO SECTION
-------------------------------- */
.intro-sec{background:var(--bg)}
.intro-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:5rem;align-items:center;
}
.intro-text-col{}
.intro-text-col p{
  font-size:.95rem;color:var(--w70);line-height:1.85;margin-bottom:1.25rem;
}
.intro-text-col p:last-of-type{margin-bottom:0}
/* Highlight strip */
.intro-highlight{
  display:flex;gap:.6rem;align-items:flex-start;
  background:rgba(0,212,255,.06);border:1px solid var(--border);
  border-left:3px solid var(--cyan);
  border-radius:0 var(--r) var(--r) 0;
  padding:1rem 1.25rem;margin:1.5rem 0;
}
.ih-icon{font-size:1.2rem;flex-shrink:0;margin-top:.05rem}
.ih-text{font-size:.87rem;color:var(--w90);line-height:1.7;font-weight:500}

/* Right panel — visual card */
.intro-visual{
  position:relative;
}
.cert-card{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:var(--r-xl);padding:2.25rem;
  position:relative;overflow:hidden;
}
.cert-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.cert-card-title{
  font-family:'Sora',sans-serif;font-size:1.1rem;font-weight:700;
  color:var(--w100);margin-bottom:.35rem;
}
.cert-card-sub{font-size:.78rem;color:var(--w50);margin-bottom:1.75rem}
.cert-list{display:flex;flex-direction:column;gap:.75rem}
.cert-item{
  display:flex;align-items:center;gap:.75rem;
  padding:.85rem 1rem;
  background:var(--bg3);border:1px solid var(--border2);
  border-radius:var(--r);transition:border-color .2s;
}
.cert-item:hover{border-color:var(--border)}
.cert-ico{
  width:38px;height:38px;border-radius:9px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:1rem;
}
.ci-green{background:rgba(0,229,160,.1);border:1px solid rgba(0,229,160,.22)}
.ci-cyan{background:rgba(0,212,255,.1);border:1px solid rgba(0,212,255,.22)}
.ci-amber{background:rgba(255,176,32,.1);border:1px solid rgba(255,176,32,.22)}
.cert-name{font-size:.84rem;font-weight:700;color:var(--w90);line-height:1.2}
.cert-sub{font-size:.71rem;color:var(--w50);margin-top:.1rem}
.floating-geo{
  position:absolute;bottom:-18px;right:-18px;
  width:140px;height:140px;
  background:radial-gradient(circle,rgba(0,229,160,.06) 0%,transparent 70%);
  border-radius:50%;pointer-events:none;
}

/* --------------------------------
   MISSION / VISION / VALUES
-------------------------------- */
.mvv-sec{background:var(--bg2)}
.mvv-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1.2rem;margin-top:var(--sp-lg);
}
.mvv-card{
  background:var(--bg3);border:1px solid var(--border2);
  border-radius:var(--r-lg);padding:2rem 1.75rem;
  position:relative;overflow:hidden;
  transition:all .28s;
}
.mvv-card::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:var(--grad);transform:scaleX(0);transition:transform .3s;transform-origin:left;
}
.mvv-card:hover{border-color:var(--border);transform:translateY(-4px);box-shadow:var(--sh-md)}
.mvv-card:hover::after{transform:scaleX(1)}
.mvv-icon{
  width:48px;height:48px;border-radius:12px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:1.3rem;margin-bottom:1.25rem;
  transition:transform .25s;
}
.mvv-card:hover .mvv-icon{transform:scale(1.1)}
.mvv-card h3{font-size:1.1rem;font-weight:800;color:var(--w100);margin-bottom:.65rem}
.mvv-card p{font-size:.85rem;color:var(--w70);line-height:1.78}
/* Values list */
.values-list{list-style:none;display:flex;flex-direction:column;gap:.6rem;margin-top:.5rem}
.values-list li{
  display:flex;align-items:center;gap:.6rem;
  font-size:.85rem;color:var(--w70);font-weight:500;
}
.values-list li::before{
  content:'';width:20px;height:20px;flex-shrink:0;border-radius:6px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath d='M2 5l2.5 2.5L8 3' stroke='%2300D4FF' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:center;
}

/* --------------------------------
   WHY COGENERATE
-------------------------------- */
.why-sec{background:var(--bg)}
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.why-items{display:flex;flex-direction:column;gap:1rem}
.why-item{
  display:flex;gap:.85rem;
  padding:1.1rem 1.25rem;
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r);transition:border-color .2s;
}
.why-item:hover{border-color:var(--border)}
.wi-ico{
  width:34px;height:34px;border-radius:8px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:.9rem;flex-shrink:0;
}
.wi-h{font-size:.87rem;font-weight:700;color:var(--w100);margin-bottom:.2rem}
.wi-p{font-size:.77rem;color:var(--w70);line-height:1.6}

/* Right metrics card */
.metrics-card{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:var(--r-lg);padding:2rem;position:relative;overflow:hidden;
}
.metrics-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.m-big{font-family:'Sora',sans-serif;font-size:3rem;font-weight:900;line-height:1;margin-bottom:.2rem}
.m-lbl{font-size:.78rem;color:var(--w50);margin-bottom:1.75rem}
.m-bars{display:flex;flex-direction:column;gap:.65rem}
.m-row{display:flex;align-items:center;gap:.65rem}
.m-name{font-size:.72rem;color:var(--w70);width:100px;flex-shrink:0}
.m-track{flex:1;height:5px;background:var(--w06);border-radius:3px;overflow:hidden}
.m-fill{height:100%;border-radius:3px;background:var(--grad);animation:growbar 1.3s ease both}
.m-val{font-size:.72rem;font-weight:700;color:var(--cyan);width:32px;text-align:right}

/* --------------------------------
   PRESENCE / REACH
-------------------------------- */
.presence-sec{background:var(--bg2)}
.presence-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1.2rem;margin-top:var(--sp-lg);
}
.presence-card{
  background:var(--bg3);border:1px solid var(--border2);
  border-radius:var(--r);padding:1.6rem 1.4rem;
  transition:all .28s;text-align:center;
}
.presence-card:hover{border-color:var(--border);transform:translateY(-3px);box-shadow:var(--sh-md)}
.pres-icon{
  width:52px;height:52px;border-radius:14px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;margin:0 auto 1rem;
}
.pres-title{font-size:.9rem;font-weight:700;color:var(--w100);margin-bottom:.4rem}
.pres-desc{font-size:.78rem;color:var(--w70);line-height:1.65}

/* --------------------------------
   TEAM / LEADERSHIP (placeholder)
-------------------------------- */
.team-sec{background:var(--bg)}
.team-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1.5rem;margin-top:var(--sp-lg);
}
.team-card{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r-lg);overflow:hidden;
  transition:all .28s;
}
.team-card:hover{border-color:var(--border);transform:translateY(-4px);box-shadow:var(--sh-md)}
.team-avatar{
  height:220px;
  display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;
}
.team-avatar-inner{
  width:90px;height:90px;border-radius:50%;
  background:var(--grad);
  display:flex;align-items:center;justify-content:center;
  font-family:'Sora',sans-serif;font-weight:900;font-size:1.8rem;color:var(--bg);
  position:relative;z-index:2;
}
.team-avatar-glow{
  position:absolute;width:200px;height:200px;
  background:radial-gradient(circle,rgba(0,212,255,.1) 0%,transparent 65%);
}
.team-info{padding:1.4rem 1.5rem 1.6rem}
.team-name{font-size:1rem;font-weight:700;color:var(--w100);margin-bottom:.2rem}
.team-role{font-size:.75rem;color:var(--cyan);font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.65rem}
.team-bio{font-size:.78rem;color:var(--w70);line-height:1.65}

/* --------------------------------
   PARTNER / CERTIFICATION STRIP
-------------------------------- */
.certs-sec{background:var(--bg2)}
.certs-row{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1px;background:var(--border2);
  border-radius:var(--r-lg);overflow:hidden;
  margin-top:var(--sp-lg);
}
.cert-cell{
  background:var(--bg2);padding:2.25rem 1.5rem;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;
  transition:background .2s;text-align:center;
}
.cert-cell:hover{background:var(--bg3)}
.cert-cell-icon{
  width:52px;height:52px;border-radius:14px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;
}
.cert-cell-title{font-size:.84rem;font-weight:700;color:var(--w100)}
.cert-cell-sub{font-size:.7rem;color:var(--w50);line-height:1.5}

/* --------------------------------
   CTA BANNER
-------------------------------- */
.cta-sec{background:var(--bg);padding:var(--sp-2xl) 0}
.cta-box{
  background:var(--bg3);border:1px solid var(--border);
  border-radius:var(--r-xl);padding:5rem 4rem;
  text-align:center;position:relative;overflow:hidden;
}
.cta-box::before{
  content:'';position:absolute;
  width:500px;height:500px;
  background:radial-gradient(circle,rgba(0,212,255,.1) 0%,transparent 65%);
  top:-150px;right:-100px;pointer-events:none;
}
.cta-box::after{
  content:'';position:absolute;
  width:320px;height:320px;
  background:radial-gradient(circle,rgba(0,229,160,.07) 0%,transparent 65%);
  bottom:-100px;left:-70px;pointer-events:none;
}
.cta-box h2{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:800;color:var(--w100);margin-bottom:.9rem;position:relative;z-index:1}
.cta-box p{font-size:.93rem;color:var(--w70);line-height:1.78;max-width:460px;margin:0 auto 2.2rem;position:relative;z-index:1}
.cta-btns{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;position:relative;z-index:1}

/* --------------------------------
   CONTACT HERO
-------------------------------- */
.contact-hero{
  min-height:44vh;
  display:flex;align-items:center;justify-content:center;
  text-align:center;
  padding:120px 5% 70px;
  position:relative;overflow:hidden;
}
.ch-glow{
  position:absolute;width:700px;height:500px;
  background:radial-gradient(ellipse,rgba(0,212,255,.09) 0%,transparent 60%);
  top:-80px;left:50%;transform:translateX(-50%);pointer-events:none;
}
.ch-glow2{
  position:absolute;width:350px;height:350px;
  background:radial-gradient(circle,rgba(0,229,160,.06) 0%,transparent 65%);
  bottom:-60px;right:8%;pointer-events:none;
}
.contact-hero-inner{position:relative;z-index:2;max-width:680px;margin:0 auto}

.trust-bar{
  display:inline-flex;align-items:center;gap:.55rem;
  background:rgba(0,212,255,.08);border:1px solid var(--border);
  border-radius:50px;padding:.32rem 1rem;margin-bottom:1.75rem;
  animation:fadeUp .7s ease both;
}
.trust-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:blink 2s infinite}
.trust-text{font-size:.72rem;font-weight:700;color:var(--cyan);letter-spacing:.06em;text-transform:uppercase}

.contact-hero h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;color:var(--w100);margin-bottom:1.1rem;animation:fadeUp .7s .07s ease both}
.contact-hero-sub{font-size:1rem;color:var(--w70);line-height:1.8;max-width:520px;margin:0 auto 1.5rem;animation:fadeUp .7s .14s ease both}

.breadcrumb{
  display:flex;align-items:center;gap:.45rem;font-size:.75rem;color:var(--w30);
  margin-bottom:1rem;justify-content:center;animation:fadeUp .6s ease both;
}
.breadcrumb a{color:var(--w50);text-decoration:none;transition:color .2s}
.breadcrumb a:hover{color:var(--cyan)}
.breadcrumb span{color:var(--cyan)}

/* --------------------------------
   QUICK CONTACT CARDS
-------------------------------- */
.quick-cards-sec{background:var(--bg2);border-top:1px solid var(--border2);border-bottom:1px solid var(--border2)}
.quick-cards-inner{
  max-width:1200px;margin:0 auto;padding:0 5%;
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1px;background:var(--border2);
}
.qc-card{
  background:var(--bg2);
  padding:2.5rem 2rem;
  display:flex;flex-direction:column;align-items:center;
  text-align:center;gap:.75rem;
  transition:background .25s;
  text-decoration:none;
  position:relative;overflow:hidden;
}
.qc-card::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:var(--grad);transform:scaleX(0);transition:transform .3s;transform-origin:center;
}
.qc-card:hover{background:var(--bg3)}
.qc-card:hover::after{transform:scaleX(1)}
.qc-icon-wrap{
  position:relative;
  width:56px;height:56px;
}
.qc-icon{
  width:56px;height:56px;border-radius:14px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;
  transition:transform .25s;
}
.qc-card:hover .qc-icon{transform:scale(1.08)}
.qc-ring{
  position:absolute;inset:0;border-radius:14px;
  border:1px solid var(--cyan);
  animation:pulse-ring 2.5s ease-out infinite;
  opacity:0;
}
.qc-card:hover .qc-ring{opacity:1}
.qc-label{font-size:.68rem;font-weight:700;color:var(--cyan);letter-spacing:.12em;text-transform:uppercase}
.qc-value{font-family:'Sora',sans-serif;font-size:1rem;font-weight:700;color:var(--w100);line-height:1.35}
.qc-sub{font-size:.76rem;color:var(--w50);line-height:1.5}

/* --------------------------------
   MAIN CONTACT SECTION — FORM + MAP
-------------------------------- */
.contact-main{background:var(--bg)}
.contact-grid{
  display:grid;grid-template-columns:1.1fr .9fr;
  gap:4rem;align-items:start;
}

/* -- FORM CARD -- */
.form-card{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:var(--r-xl);padding:2.5rem;
  position:relative;overflow:hidden;
}
.form-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.form-card-title{font-size:1.3rem;font-weight:800;color:var(--w100);margin-bottom:.3rem}
.form-card-sub{font-size:.82rem;color:var(--w50);margin-bottom:2rem;line-height:1.6}

.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.field-group{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1.1rem}
.field-label{font-size:.72rem;font-weight:700;color:var(--w50);letter-spacing:.08em;text-transform:uppercase}
.field-req{color:var(--cyan)}
.field-input{
  background:var(--bg3);border:1px solid var(--border2);
  border-radius:var(--r);padding:.82rem 1rem;
  color:var(--w90);font-family:'DM Sans',sans-serif;font-size:.88rem;
  outline:none;transition:border-color .25s,box-shadow .25s;
  width:100%;
}
.field-input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(0,212,255,.1)}
.field-input::placeholder{color:var(--w30)}
select.field-input option{background:var(--bg2)}
textarea.field-input{resize:vertical;min-height:120px;line-height:1.6}

.form-check{display:flex;align-items:flex-start;gap:.65rem;margin-bottom:1.5rem}
.form-check input[type=checkbox]{
  width:16px;height:16px;flex-shrink:0;margin-top:.2rem;
  accent-color:var(--cyan);cursor:pointer;
}
.form-check label{font-size:.78rem;color:var(--w50);line-height:1.6;cursor:pointer}
.form-check label a{color:var(--cyan);text-decoration:none}
.form-check label a:hover{text-decoration:underline}

.form-success{
  display:none;
  background:rgba(0,229,160,.08);border:1px solid rgba(0,229,160,.25);
  border-radius:var(--r);padding:1.2rem 1.4rem;
  margin-top:1rem;
  font-size:.85rem;color:var(--green);
  text-align:center;font-weight:600;
}
.form-success.show{display:block}

/* Response time note */
.resp-note{
  display:flex;align-items:center;gap:.5rem;
  font-size:.74rem;color:var(--w40);margin-top:1rem;
  padding-top:1rem;border-top:1px solid var(--border2);
}
.resp-dot{width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0;box-shadow:0 0 6px var(--green)}

/* -- RIGHT SIDE -- */
.contact-right{}

/* Info card */
.info-card{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r-lg);overflow:hidden;
  margin-bottom:1.5rem;
  transition:border-color .2s;
}
.info-card:hover{border-color:var(--border)}
.info-card-header{
  padding:1.4rem 1.5rem;
  background:var(--bg3);
  border-bottom:1px solid var(--border2);
  display:flex;align-items:center;gap:.7rem;
}
.info-card-header-icon{
  width:34px;height:34px;border-radius:8px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;
}
.info-card-header h4{font-size:.92rem;font-weight:700;color:var(--w100)}
.info-card-body{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.6rem}

.info-row{
  display:flex;align-items:flex-start;gap:.65rem;
  font-size:.82rem;color:var(--w70);line-height:1.6;
}
.info-row-ico{font-size:1rem;flex-shrink:0;margin-top:.05rem}
.info-row a{color:var(--w70);text-decoration:none;transition:color .2s}
.info-row a:hover{color:var(--cyan)}

/* Map card */
.map-card{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r-lg);overflow:hidden;
  transition:border-color .2s;
}
.map-card:hover{border-color:var(--border)}
.map-frame{
  width:100%;height:240px;
  background:var(--bg3);
  position:relative;overflow:hidden;
  border-bottom:1px solid var(--border2);
}
/* Map SVG illustration */
.map-svg-wrap{
  width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;
  position:relative;
  background:linear-gradient(135deg,#061828 0%,#091F33 100%);
}
.map-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(0,212,255,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,212,255,.04) 1px,transparent 1px);
  background-size:32px 32px;
}
.map-pin-container{
  position:relative;display:flex;flex-direction:column;align-items:center;z-index:2;
  animation:float 3s ease-in-out infinite;
}
.map-pin-glow{
  position:absolute;top:50%;left:50%;
  width:80px;height:80px;transform:translate(-50%,-60%);
  background:radial-gradient(circle,rgba(0,212,255,.25) 0%,transparent 65%);
  border-radius:50%;
}
.map-pin{font-size:2.4rem;line-height:1;position:relative;z-index:3;filter:drop-shadow(0 0 12px rgba(0,212,255,.5))}
.map-label{
  margin-top:.4rem;
  background:rgba(3,16,31,.9);border:1px solid var(--border);
  border-radius:50px;padding:.25rem .85rem;
  font-size:.68rem;font-weight:700;color:var(--cyan);letter-spacing:.06em;
  text-transform:uppercase;white-space:nowrap;
  box-shadow:0 4px 16px rgba(0,0,0,.4);
}
/* City dots */
.map-dots{position:absolute;inset:0;pointer-events:none}
.city-dot{
  position:absolute;
  width:6px;height:6px;border-radius:50%;
  background:var(--cyan);
  box-shadow:0 0 8px var(--cyan);
  opacity:.5;
}
.city-dot::after{
  content:attr(data-city);
  position:absolute;top:-22px;left:50%;transform:translateX(-50%);
  font-size:.55rem;color:var(--w50);white-space:nowrap;
  font-family:'DM Sans',sans-serif;font-weight:600;
}

.map-card-body{padding:1.25rem 1.5rem}
.map-address{font-size:.82rem;color:var(--w70);line-height:1.7;margin-bottom:.85rem}
.map-link{
  display:inline-flex;align-items:center;gap:.35rem;
  font-size:.76rem;font-weight:700;color:var(--cyan);
  text-decoration:none;transition:gap .2s;
}
.map-link:hover{gap:.55rem}

/* --------------------------------
   OFFICE HOURS + SUPPORT STRIP
-------------------------------- */
.support-sec{background:var(--bg2);border-top:1px solid var(--border2)}
.support-inner{
  max-width:1200px;margin:0 auto;padding:3rem 5%;
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1px;background:var(--border2);border-radius:var(--r-lg);overflow:hidden;
}
.sup-cell{
  background:var(--bg2);padding:2rem 1.75rem;
  text-align:center;display:flex;flex-direction:column;
  align-items:center;gap:.55rem;
  transition:background .2s;
}
.sup-cell:hover{background:var(--bg3)}
.sup-icon{
  width:46px;height:46px;border-radius:12px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:.2rem;
}
.sup-title{font-size:.88rem;font-weight:700;color:var(--w100)}
.sup-value{font-size:.8rem;color:var(--cyan);font-weight:600}
.sup-note{font-size:.73rem;color:var(--w40);line-height:1.5}

/* --------------------------------
   WHY REACH OUT
-------------------------------- */
.why-reach-sec{background:var(--bg)}
.wr-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1.2rem;margin-top:var(--sp-lg);
}
.wr-card{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r);padding:1.6rem 1.4rem;
  transition:all .28s;
}
.wr-card:hover{border-color:var(--border);transform:translateY(-3px);box-shadow:var(--sh-md)}
.wr-icon{
  width:42px;height:42px;border-radius:10px;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;font-size:1.1rem;
  margin-bottom:.9rem;transition:transform .25s;
}
.wr-card:hover .wr-icon{transform:scale(1.1)}
.wr-card h4{font-size:.88rem;font-weight:700;color:var(--w100);margin-bottom:.35rem}
.wr-card p{font-size:.77rem;color:var(--w70);line-height:1.65}

/* --------------------------------
   CAREERS HERO
-------------------------------- */
.careers-hero{
  min-height:52vh;
  display:flex;align-items:center;justify-content:center;
  text-align:center;padding:120px 5% 80px;
  position:relative;overflow:hidden;
}
.ch-glow{position:absolute;width:800px;height:600px;background:radial-gradient(ellipse,rgba(0,212,255,.09) 0%,transparent 60%);top:-100px;left:50%;transform:translateX(-50%);pointer-events:none}
.ch-glow2{position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(0,229,160,.06) 0%,transparent 65%);bottom:-60px;right:5%;pointer-events:none}
.ch-glow3{position:absolute;width:300px;height:300px;background:radial-gradient(circle,rgba(168,85,247,.05) 0%,transparent 65%);bottom:-40px;left:5%;pointer-events:none}
.hero-inner{position:relative;z-index:2;max-width:720px;margin:0 auto}

.trust-bar{
  display:inline-flex;align-items:center;gap:.55rem;
  background:rgba(0,212,255,.08);border:1px solid var(--border);
  border-radius:50px;padding:.32rem 1rem;margin-bottom:1.75rem;
  animation:fadeUp .7s ease both;
}
.trust-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:blink 2s infinite}
.trust-text{font-size:.72rem;font-weight:700;color:var(--cyan);letter-spacing:.06em;text-transform:uppercase}

.careers-hero h1{font-size:clamp(2.6rem,5vw,4.2rem);font-weight:900;color:var(--w100);margin-bottom:1.1rem;animation:fadeUp .7s .07s ease both}
.careers-hero-sub{font-size:1.05rem;color:var(--w70);line-height:1.8;max-width:560px;margin:0 auto 2.2rem;animation:fadeUp .7s .14s ease both}
.hero-cta-row{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;animation:fadeUp .7s .21s ease both;margin-bottom:2.5rem}

.breadcrumb{display:flex;align-items:center;gap:.45rem;font-size:.75rem;color:var(--w30);margin-bottom:1rem;justify-content:center;animation:fadeUp .6s ease both}
.breadcrumb a{color:var(--w50);text-decoration:none;transition:color .2s}
.breadcrumb a:hover{color:var(--cyan)}
.breadcrumb span{color:var(--cyan)}

/* Hiring badge strip */
.hiring-strip{
  display:flex;align-items:center;justify-content:center;gap:.6rem;flex-wrap:wrap;
  animation:fadeUp .7s .28s ease both;
}
.h-badge{
  display:inline-flex;align-items:center;gap:.35rem;
  background:var(--w06);border:1px solid var(--w12);
  border-radius:50px;padding:.28rem .9rem;
  font-size:.72rem;font-weight:600;color:var(--w70);
  transition:all .22s;
}
.h-badge:hover{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}
.h-badge .dot{width:5px;height:5px;border-radius:50%;background:var(--green)}

/* --------------------------------
   STATS BAR
-------------------------------- */
.stats-bar{background:var(--bg2);border-top:1px solid var(--border2);border-bottom:1px solid var(--border2)}
.stats-inner{max-width:1200px;margin:0 auto;padding:0 5%;display:grid;grid-template-columns:repeat(4,1fr)}
.stat-cell{padding:2.2rem 1.5rem;text-align:center;border-right:1px solid var(--border2);transition:background .2s}
.stat-cell:last-child{border-right:none}
.stat-cell:hover{background:var(--bg3)}
.stat-num{font-family:'Sora',sans-serif;font-size:2.2rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.3rem}
.stat-lbl{font-size:.76rem;color:var(--w50);font-weight:500}

/* --------------------------------
   WHY JOIN US — CULTURE
-------------------------------- */
.culture-sec{background:var(--bg)}
.culture-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}

.culture-items{display:flex;flex-direction:column;gap:1rem}
.culture-item{
  display:flex;gap:.85rem;
  padding:1.1rem 1.25rem;
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r);transition:border-color .2s;
}
.culture-item:hover{border-color:var(--border)}
.ci-ico{width:36px;height:36px;border-radius:8px;background:var(--cyan-dim);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0}
.ci-h{font-size:.88rem;font-weight:700;color:var(--w100);margin-bottom:.2rem}
.ci-p{font-size:.78rem;color:var(--w70);line-height:1.65}

/* Visual panel */
.culture-visual{position:relative}
.culture-card{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:var(--r-xl);padding:2.25rem;position:relative;overflow:hidden;
}
.culture-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.cc-title{font-family:'Sora',sans-serif;font-size:1.05rem;font-weight:700;color:var(--w100);margin-bottom:.3rem}
.cc-sub{font-size:.76rem;color:var(--w50);margin-bottom:1.75rem}
.perks-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.perk-item{
  background:var(--bg3);border:1px solid var(--border2);
  border-radius:var(--r);padding:1rem;
  display:flex;flex-direction:column;align-items:center;
  text-align:center;gap:.4rem;
  transition:border-color .2s;
}
.perk-item:hover{border-color:var(--border)}
.perk-icon{font-size:1.4rem}
.perk-label{font-size:.73rem;font-weight:700;color:var(--w90);line-height:1.3}
.perk-sub{font-size:.66rem;color:var(--w50);line-height:1.4}

/* --------------------------------
   OPEN POSITIONS
-------------------------------- */
.jobs-sec{background:var(--bg2)}
.jobs-filter-bar{
  display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;
  margin-bottom:2rem;
}
.filter-btn{
  background:var(--w06);border:1px solid var(--w12);border-radius:50px;
  padding:.35rem 1rem;font-size:.76rem;font-weight:600;color:var(--w70);
  cursor:pointer;transition:all .22s;
}
.filter-btn:hover,.filter-btn.active{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}
.filter-count{
  margin-left:auto;font-size:.76rem;color:var(--w40);
}

.jobs-list{display:flex;flex-direction:column;gap:1px;background:var(--border2);border-radius:var(--r-lg);overflow:hidden}

.job-card{
  background:var(--bg2);
  padding:1.75rem 2rem;
  display:grid;
  grid-template-columns:1fr auto;
  gap:1.5rem;
  align-items:center;
  cursor:pointer;
  transition:background .25s;
  position:relative;overflow:hidden;
}
.job-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--grad);transform:scaleY(0);transition:transform .3s;transform-origin:bottom}
.job-card:hover{background:var(--bg3)}
.job-card:hover::before{transform:scaleY(1)}

.job-left{}
.job-top{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.6rem}
.job-title{font-family:'Sora',sans-serif;font-size:1rem;font-weight:700;color:var(--w100)}
.job-new-badge{
  font-size:.6rem;font-weight:800;color:var(--bg);
  background:var(--grad);padding:.15rem .55rem;border-radius:50px;
  letter-spacing:.06em;text-transform:uppercase;
}
.job-meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.job-tag{
  display:inline-flex;align-items:center;gap:.3rem;
  font-size:.72rem;font-weight:600;color:var(--w50);
}
.job-tag-icon{font-size:.8rem}
.job-desc{font-size:.8rem;color:var(--w70);line-height:1.65;margin-top:.5rem;max-width:600px}

.job-right{display:flex;flex-direction:column;align-items:flex-end;gap:.65rem}
.job-dept-pill{
  font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:.3rem .85rem;border-radius:50px;
  background:var(--cyan-dim);border:1px solid var(--border);color:var(--cyan);
  white-space:nowrap;
}
.job-dept-pill.eng{background:rgba(0,212,255,.1);border-color:rgba(0,212,255,.25);color:var(--cyan)}
.job-dept-pill.biz{background:rgba(255,176,32,.1);border-color:rgba(255,176,32,.25);color:var(--amber)}
.job-dept-pill.ops{background:rgba(0,229,160,.1);border-color:rgba(0,229,160,.25);color:var(--green)}
.job-dept-pill.sec{background:rgba(168,85,247,.1);border-color:rgba(168,85,247,.25);color:var(--purple)}
.job-apply-btn{
  display:inline-flex;align-items:center;gap:.3rem;
  font-size:.77rem;font-weight:700;color:var(--cyan);
  background:none;border:none;cursor:pointer;padding:0;
  transition:gap .2s;text-decoration:none;
}
.job-apply-btn:hover{gap:.55rem}

/* No openings state */
.no-jobs{
  padding:4rem 2rem;text-align:center;
  font-size:.9rem;color:var(--w50);
}

/* --------------------------------
   APPLICATION FORM
-------------------------------- */
.apply-sec{background:var(--bg)}
.apply-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:4rem;align-items:start}

.apply-form-card{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:var(--r-xl);padding:2.5rem;
  position:relative;overflow:hidden;
}
.apply-form-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.form-title{font-size:1.3rem;font-weight:800;color:var(--w100);margin-bottom:.3rem}
.form-sub{font-size:.82rem;color:var(--w50);margin-bottom:2rem;line-height:1.6}

.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.field-group{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1.1rem}
.field-label{font-size:.72rem;font-weight:700;color:var(--w50);letter-spacing:.08em;text-transform:uppercase}
.field-req{color:var(--cyan)}
.field-input{
  background:var(--bg3);border:1px solid var(--border2);
  border-radius:var(--r);padding:.82rem 1rem;
  color:var(--w90);font-family:'DM Sans',sans-serif;font-size:.88rem;
  outline:none;transition:border-color .25s,box-shadow .25s;width:100%;
}
.field-input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(0,212,255,.1)}
.field-input::placeholder{color:var(--w30)}
select.field-input option{background:var(--bg2)}
textarea.field-input{resize:vertical;min-height:110px;line-height:1.6}

/* File upload area */
.upload-area{
  border:1.5px dashed var(--border2);border-radius:var(--r);
  padding:1.75rem 1rem;text-align:center;
  background:var(--bg3);
  cursor:pointer;transition:border-color .25s,background .25s;
  position:relative;overflow:hidden;
}
.upload-area:hover{border-color:var(--cyan);background:rgba(0,212,255,.04)}
.upload-area input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.upload-icon{font-size:2rem;margin-bottom:.6rem}
.upload-title{font-size:.84rem;font-weight:700;color:var(--w90);margin-bottom:.25rem}
.upload-hint{font-size:.73rem;color:var(--w40)}
.upload-accepted{font-size:.68rem;color:var(--w30);margin-top:.4rem}
.upload-filename{font-size:.78rem;color:var(--cyan);margin-top:.5rem;display:none}

.form-check{display:flex;align-items:flex-start;gap:.65rem;margin-bottom:1.5rem}
.form-check input[type=checkbox]{width:16px;height:16px;flex-shrink:0;margin-top:.2rem;accent-color:var(--cyan);cursor:pointer}
.form-check label{font-size:.78rem;color:var(--w50);line-height:1.6;cursor:pointer}
.form-check label a{color:var(--cyan);text-decoration:none}

.submit-btn-full{width:100%;justify-content:center;padding:.9rem 2rem;font-size:.95rem}

.form-success{
  display:none;background:rgba(0,229,160,.08);border:1px solid rgba(0,229,160,.25);
  border-radius:var(--r);padding:1.25rem 1.5rem;margin-top:1rem;
  font-size:.85rem;color:var(--green);text-align:center;font-weight:600;line-height:1.6;
}
.form-success.show{display:block}
.resp-note{display:flex;align-items:center;gap:.5rem;font-size:.73rem;color:var(--w40);margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border2)}
.resp-dot{width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0;box-shadow:0 0 6px var(--green)}

/* Right side info */
.apply-right{}
.info-card{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-lg);overflow:hidden;margin-bottom:1.5rem;transition:border-color .2s}
.info-card:hover{border-color:var(--border)}
.info-card-header{padding:1.25rem 1.5rem;background:var(--bg3);border-bottom:1px solid var(--border2);display:flex;align-items:center;gap:.7rem}
.info-card-header-icon{width:34px;height:34px;border-radius:8px;background:var(--cyan-dim);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}
.info-card-header h4{font-size:.92rem;font-weight:700;color:var(--w100)}
.info-card-body{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.65rem}
.info-row{display:flex;align-items:flex-start;gap:.65rem;font-size:.82rem;color:var(--w70);line-height:1.6}
.info-row-ico{font-size:1rem;flex-shrink:0;margin-top:.05rem}
.info-row a{color:var(--w70);text-decoration:none;transition:color .2s}
.info-row a:hover{color:var(--cyan)}

/* Hiring process steps */
.process-card{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-lg);overflow:hidden}
.process-card-header{padding:1.25rem 1.5rem;background:var(--bg3);border-bottom:1px solid var(--border2);display:flex;align-items:center;gap:.7rem}
.process-card-header h4{font-size:.92rem;font-weight:700;color:var(--w100)}
.process-steps{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:0}
.process-step{
  display:flex;gap:1rem;padding:.9rem 0;
  border-bottom:1px solid var(--border2);
  position:relative;
}
.process-step:last-child{border-bottom:none;padding-bottom:0}
.step-num-wrap{display:flex;flex-direction:column;align-items:center;flex-shrink:0}
.step-num{
  width:28px;height:28px;border-radius:50%;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-family:'Sora',sans-serif;font-size:.72rem;font-weight:800;color:var(--cyan);
  flex-shrink:0;
}
.step-line{width:1px;flex:1;background:var(--border2);margin-top:.4rem}
.process-step:last-child .step-line{display:none}
.step-content{padding-bottom:.5rem}
.step-title{font-size:.84rem;font-weight:700;color:var(--w100);margin-bottom:.2rem}
.step-desc{font-size:.75rem;color:var(--w50);line-height:1.6}

/* --------------------------------
   PROCESS OVERVIEW (wide)
-------------------------------- */
.process-sec{background:var(--bg2)}
.process-wide-grid{
  display:grid;grid-template-columns:repeat(5,1fr);
  gap:0;background:var(--border2);
  border-radius:var(--r-lg);overflow:hidden;
  margin-top:var(--sp-lg);
  position:relative;
}
.pw-step{
  background:var(--bg2);padding:2rem 1.5rem;
  text-align:center;display:flex;flex-direction:column;align-items:center;gap:.6rem;
  position:relative;transition:background .25s;
}
.pw-step:hover{background:var(--bg3)}
.pw-step::after{
  content:'?';
  position:absolute;right:-10px;top:50%;transform:translateY(-50%);
  font-size:.9rem;color:var(--w30);z-index:2;
}
.pw-step:last-child::after{display:none}
.pw-num{
  font-family:'Sora',sans-serif;font-size:.7rem;font-weight:800;
  color:var(--cyan);letter-spacing:.1em;text-transform:uppercase;
  background:var(--cyan-dim);border:1px solid var(--border);
  border-radius:50px;padding:.2rem .65rem;
}
.pw-icon{font-size:1.6rem}
.pw-title{font-size:.84rem;font-weight:700;color:var(--w100);line-height:1.3}
.pw-desc{font-size:.72rem;color:var(--w50);line-height:1.55}

/* --------------------------------
   LIFE AT COGENERATE
-------------------------------- */
.life-sec{background:var(--bg)}
.life-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:var(--sp-lg)}
.life-card{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r);padding:1.75rem;
  transition:all .28s;position:relative;overflow:hidden;
}
.life-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transition:transform .3s;transform-origin:left}
.life-card:hover{border-color:var(--border);transform:translateY(-3px);box-shadow:var(--sh-md)}
.life-card:hover::after{transform:scaleX(1)}
.life-icon{width:44px;height:44px;border-radius:11px;background:var(--cyan-dim);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin-bottom:1.1rem;transition:transform .25s}
.life-card:hover .life-icon{transform:scale(1.1)}
.life-card h4{font-size:.9rem;font-weight:700;color:var(--w100);margin-bottom:.4rem}
.life-card p{font-size:.79rem;color:var(--w70);line-height:1.68}

/* CATEGORY PILLS — from theme */
.post-cat{font-size:.62rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:.18rem .6rem;border-radius:50px}
.cat-migration{background:rgba(0,212,255,.1);border:1px solid rgba(0,212,255,.22);color:var(--cyan)}
.cat-managed{background:rgba(0,229,160,.1);border:1px solid rgba(0,229,160,.22);color:var(--green)}
.cat-consulting{background:rgba(255,176,32,.1);border:1px solid rgba(255,176,32,.22);color:var(--amber)}
.cat-security{background:rgba(168,85,247,.1);border:1px solid rgba(168,85,247,.22);color:var(--purple)}
.cat-windows{background:rgba(244,114,182,.1);border:1px solid rgba(244,114,182,.22);color:var(--rose)}

/* -- READING PROGRESS -- */
#progress{position:fixed;top:68px;left:0;height:2px;width:0%;background:var(--grad);z-index:999;transition:width .1s linear}

/* -- POST HERO BANNER -- */
.post-hero{
  position:relative;min-height:520px;
  display:flex;align-items:flex-end;
  overflow:hidden;padding-top:68px;
}
.ph-img{position:absolute;inset:0; display: none;}
.ph-img img{width:100%;height:100%;object-fit:cover;display:block}
.ph-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to bottom,rgba(3,16,31,.3) 0%,rgba(3,16,31,.6) 45%,rgba(3,16,31,.97) 100%);
}
/* matching glow from theme hero */
.ph-glow{position:absolute;width:700px;height:500px;background:radial-gradient(ellipse,rgba(0,212,255,.1),transparent 60%);top:0;left:50%;transform:translateX(-50%);pointer-events:none;animation:shimmer 4s ease-in-out infinite}
.ph-content{position:relative;z-index:2;width:100%;padding:3rem 5% 3.5rem}
.ph-inner{max-width:840px; text-align: center;}

/* breadcrumb — same style as theme */
.breadcrumb{display:flex;align-items:center;gap:.45rem;font-size:.75rem;color:var(--w30);margin-bottom:1.25rem;flex-wrap:wrap}
.breadcrumb a{color:var(--w50);text-decoration:none;transition:color .2s}
.breadcrumb a:hover{color:var(--cyan)}
.breadcrumb .bc-sep{color:var(--w30)}
.breadcrumb .bc-cur{color:var(--cyan)}


.trust-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:blink 2s infinite}
.trust-text{font-size:.72rem;font-weight:700;color:var(--cyan);letter-spacing:.06em;text-transform:uppercase}

.ph-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1.1rem; justify-content: center;}
.ph-date{font-size:.78rem;color:var(--w40)}
.ph-read{font-size:.78rem;color:var(--w40)}
.ph-div{width:1px;height:14px;background:var(--border2)}
.ph-title{font-size:clamp(1.65rem,3.5vw,2.8rem);font-weight:900;color:var(--w100);line-height:1.18;margin-bottom:1.1rem;max-width:800px}
.ph-intro{font-size:.96rem;color:var(--w70);line-height:1.8;max-width:680px;margin:0 auto 1.75rem}

/* share buttons — matching theme btn style */
.share-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap; justify-content: center;}
.share-lbl{font-size:.7rem;font-weight:700;color:var(--w40);text-transform:uppercase;letter-spacing:.1em;margin-right:.15rem}
.sh-btn{display:inline-flex;align-items:center;gap:.35rem;font-size:.73rem;font-weight:700;padding:.3rem .82rem;border-radius:50px;text-decoration:none;transition:all .22s;border:1px solid transparent;cursor:pointer;background:none}
.sh-fb{background:rgba(24,119,242,.12);border-color:rgba(24,119,242,.28);color:#5aa3ff}
.sh-fb:hover{background:rgba(24,119,242,.24)}
.sh-li{background:rgba(0,119,181,.12);border-color:rgba(0,119,181,.28);color:#40b8e0}
.sh-li:hover{background:rgba(0,119,181,.24)}
.sh-tw{background:rgba(29,161,242,.12);border-color:rgba(29,161,242,.28);color:#6dcaf7}
.sh-tw:hover{background:rgba(29,161,242,.24)}
.sh-wa{background:rgba(37,211,102,.12);border-color:rgba(37,211,102,.28);color:#4de88a}
.sh-wa:hover{background:rgba(37,211,102,.24)}
.sh-cp{background:var(--w06);border-color:var(--w12);color:var(--w60)}
.sh-cp:hover{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}

/* -- DETAIL LAYOUT -- */
.detail-layout{
  display:grid;grid-template-columns:1fr 300px;
  gap:3rem;align-items:start;
  padding:3rem 0 5rem;
}

/* -- ARTICLE CARD — uses same card style as blog cards -- */
.article-card{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r-xl);overflow:hidden;
}

/* Feature image inside article — same pc-img sizing logic */
.article-feat-img{
  width:100%;height:420px;overflow:hidden;position:relative;
}
.article-feat-img img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.article-feat-img-ov{
  position:absolute;inset:0;
  background:linear-gradient(to bottom,transparent 60%,var(--bg2));
  pointer-events:none;
}
/* category badge on image — same as pc-img-badge */
.article-feat-badge{
  position:absolute;top:1rem;left:1rem;
  font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  padding:.22rem .7rem;border-radius:50px;z-index:2;
  backdrop-filter:blur(8px);
}

.article-body{padding:2.5rem 2.75rem 2.75rem}

/* Prose typography */
.prose{color:rgba(255,255,255,.82);font-size:.95rem;line-height:1.85}
.prose p{margin-bottom:1.3rem}
.prose p:last-child{margin-bottom:0}
.prose strong{color:var(--w100);font-weight:700}
.prose a{color:var(--cyan);text-decoration:none;border-bottom:1px solid rgba(0,212,255,.28);transition:border-color .2s,color .2s}
.prose a:hover{color:#5de8ff;border-color:var(--cyan)}
.prose h2{
  font-family:'Sora',sans-serif;font-size:1.28rem;font-weight:800;
  color:var(--w100);margin:2.25rem 0 .85rem;
  display:flex;align-items:center;gap:.65rem;
}
.prose h2::before{
  content:'';display:inline-block;
  width:3px;height:1.15em;flex-shrink:0;
  background:var(--grad);border-radius:2px;
}
.prose h3{font-family:'Sora',sans-serif;font-size:1.05rem;font-weight:700;color:var(--w100);margin:1.65rem 0 .65rem}
.prose ul{list-style:none;padding:0;margin-bottom:1.3rem}
.prose ul li{
  position:relative;padding-left:1.45rem;margin-bottom:.55rem;
  color:rgba(255,255,255,.78);
}
.prose ul li::before{
  content:'';position:absolute;left:0;top:.58em;
  width:7px;height:7px;border-radius:50%;background:var(--grad);
}
.prose ol{padding-left:1.5rem;margin-bottom:1.3rem}
.prose ol li{margin-bottom:.55rem;color:rgba(255,255,255,.78)}
.prose ol li::marker{color:var(--cyan);font-weight:700}

/* Callout — uses border style from theme cards */
.callout{
  display:flex;gap:.85rem;align-items:flex-start;
  background:rgba(0,212,255,.06);border:1px solid var(--border);
  border-left:3px solid var(--cyan);border-radius:0 var(--r) var(--r) 0;
  padding:1.1rem 1.4rem;margin:1.75rem 0;
}
.callout-ico{font-size:1.2rem;flex-shrink:0;margin-top:.05rem}
.callout-txt{font-size:.88rem;color:var(--w90);line-height:1.75;font-weight:500}

/* Key points grid — same as theme stats inner pattern */
.kp-box{
  background:var(--bg3);border:1px solid var(--border);
  border-radius:var(--r-lg);padding:1.6rem 1.75rem;margin:2rem 0;
  position:relative;overflow:hidden;
}
.kp-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.kp-label{font-size:.68rem;font-weight:800;color:var(--cyan);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1rem}
.kp-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.kp-item{
  background:var(--bg2);border:1px solid var(--border2);
  border-radius:var(--r);padding:.85rem 1rem;
  display:flex;align-items:flex-start;gap:.65rem;
  transition:border-color .2s;
}
.kp-item:hover{border-color:var(--border)}
.kp-ico{
  width:32px;height:32px;border-radius:8px;flex-shrink:0;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;font-size:.88rem;
}
.kp-text{font-size:.79rem;color:rgba(255,255,255,.8);line-height:1.5}
.kp-text strong{color:var(--w100);display:block;margin-bottom:.15rem}

/* Step cards — uses same trend-item pattern from theme */
.steps{display:flex;flex-direction:column;gap:.85rem;margin:1.5rem 0}
.step-item{
  display:flex;gap:1rem;align-items:flex-start;
  background:var(--bg3);border:1px solid var(--border2);
  border-radius:var(--r);padding:1.1rem 1.25rem;
  transition:border-color .2s;
}
.step-item:hover{border-color:var(--border)}
.step-n{
  font-family:'Sora',sans-serif;font-size:.7rem;font-weight:900;
  min-width:28px;height:28px;border-radius:50%;
  background:var(--cyan-dim);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  color:var(--cyan);flex-shrink:0;
}
.step-h{font-size:.88rem;font-weight:700;color:var(--w100);margin-bottom:.22rem}
.step-p{font-size:.79rem;color:rgba(255,255,255,.7);line-height:1.65}

/* Mistake box — uses amber accent */
.mistake-box{
  background:rgba(255,176,32,.05);border:1px solid rgba(255,176,32,.2);
  border-radius:var(--r);padding:1.25rem 1.5rem;margin:1.75rem 0;
}
.mistake-title{display:flex;align-items:center;gap:.5rem;font-size:.84rem;font-weight:700;color:var(--amber);margin-bottom:.75rem}
.mistake-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:.45rem}
.mistake-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:.82rem;color:rgba(255,255,255,.7);line-height:1.6}
.mistake-list li::before{content:'?';color:var(--amber);font-weight:800;flex-shrink:0}

/* Conclusion CTA — uses same cta-box pattern from theme */
.concl-cta{
  background:var(--bg3);border:1px solid var(--border);
  border-radius:var(--r-lg);padding:2.25rem;
  text-align:center;position:relative;overflow:hidden;
  margin-top:2.5rem;
}
.concl-cta::before{content:'';position:absolute;width:380px;height:380px;background:radial-gradient(circle,rgba(0,212,255,.1),transparent 65%);top:-120px;right:-80px;pointer-events:none}
.concl-cta::after{content:'';position:absolute;width:260px;height:260px;background:radial-gradient(circle,rgba(0,229,160,.07),transparent 65%);bottom:-80px;left:-50px;pointer-events:none}
.concl-title{font-family:'Sora',sans-serif;font-size:1.2rem;font-weight:800;color:var(--w100);margin-bottom:.6rem;position:relative;z-index:1}
.concl-txt{font-size:.87rem;color:var(--w70);line-height:1.75;max-width:460px;margin:0 auto 1.6rem;position:relative;z-index:1}
.concl-btns{display:flex;justify-content:center;gap:.85rem;flex-wrap:wrap;position:relative;z-index:1}

/* Article footer */
.article-footer{
  padding:1.6rem 2.75rem;border-top:1px solid var(--border2);
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;
}
.tags-row{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}
.tag-lbl{font-size:.7rem;font-weight:700;color:var(--w40);text-transform:uppercase;letter-spacing:.08em}
/* tag-cl from theme */
.tag-cl{font-size:.7rem;font-weight:600;color:var(--w60);background:var(--bg3);border:1px solid var(--border2);border-radius:50px;padding:.22rem .7rem;cursor:pointer;text-decoration:none;transition:all .22s}
.tag-cl:hover{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}

/* -- SIDEBAR — exact components from theme -- */
.sidebar{position:sticky;top:88px;display:flex;flex-direction:column;gap:1.5rem}
/* .sb, .sb-h, .sb-b — from theme */
.sb{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-lg);overflow:hidden}
.sb-h{padding:1rem 1.25rem;background:var(--bg3);border-bottom:1px solid var(--border2);font-family:'Sora',sans-serif;font-size:.82rem;font-weight:700;color:var(--w90);display:flex;align-items:center;gap:.5rem}
.sb-b{padding:1.1rem 1.25rem}

/* TOC */
.toc-list{list-style:none;display:flex;flex-direction:column;gap:.28rem}
.toc-a{
  display:flex;align-items:flex-start;gap:.5rem;
  font-size:.77rem;color:var(--w60);text-decoration:none;
  padding:.42rem .65rem;border-radius:8px;transition:all .2s;line-height:1.4;
}
.toc-a:hover,.toc-a.on{background:var(--cyan-dim);color:var(--cyan)}
.toc-a::before{content:'#';font-size:.63rem;color:var(--cyan);font-weight:800;flex-shrink:0;margin-top:.1rem}

/* Trending list — from theme */
.trending-list{display:flex;flex-direction:column;gap:.55rem}
.trend-item{display:flex;gap:.65rem;align-items:flex-start;padding:.6rem .7rem;background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);text-decoration:none;transition:border-color .2s}
.trend-item:hover{border-color:var(--border)}
.trend-num{font-family:'Sora',sans-serif;font-size:.68rem;font-weight:800;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;flex-shrink:0;min-width:16px;padding-top:.1rem}
.trend-thumb{width:50px;height:40px;border-radius:6px;overflow:hidden;flex-shrink:0}
.trend-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.trend-title-txt{font-size:.73rem;color:rgba(255,255,255,.8);line-height:1.4;font-weight:500}
.trend-date{font-size:.63rem;color:var(--w30);margin-top:.18rem}

/* Share in sidebar */
.sb-share{display:flex;flex-direction:column;gap:.5rem}
.sb-share .sh-btn{justify-content:center;padding:.5rem .9rem;border-radius:var(--r)}

/* About box — uses same style as .about-box */
.about-box{
  background:var(--bg3);border:1px solid var(--border);
  border-radius:var(--r);padding:1.2rem;position:relative;overflow:hidden;
}
.about-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.ab-logo{display:flex;align-items:center;gap:.6rem;margin-bottom:.7rem}
.ab-lm{width:30px;height:30px;border-radius:7px;background:var(--grad);display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:900;font-size:.85rem;color:var(--bg)}
.ab-lt{font-family:'Sora',sans-serif;font-weight:700;font-size:.9rem;color:var(--w100)}
.ab-cert{display:inline-flex;align-items:center;gap:.35rem;font-size:.65rem;font-weight:700;color:var(--cyan);background:var(--cyan-dim);border:1px solid var(--border);padding:.18rem .6rem;border-radius:50px;margin-bottom:.7rem}
.ab-txt{font-size:.77rem;color:var(--w60);line-height:1.65;margin-bottom:.9rem}
.ab-row{display:flex;align-items:center;gap:.5rem;font-size:.74rem;color:var(--w50);margin-bottom:.4rem}
.ab-row a{color:var(--w70);text-decoration:none;transition:color .2s}.ab-row a:hover{color:var(--cyan)}

/* Tags cloud — from theme */
.tags-cloud{display:flex;flex-wrap:wrap;gap:.42rem}

/* Newsletter — from theme */
.nl-desc{font-size:.78rem;color:var(--w60);line-height:1.6;margin-bottom:.7rem}
.nl-in{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);padding:.68rem .9rem;color:var(--w90);font-family:'DM Sans',sans-serif;font-size:.82rem;outline:none;transition:border-color .25s;width:100%;margin-bottom:.6rem}
.nl-in:focus{border-color:var(--cyan)}.nl-in::placeholder{color:var(--w30)}
.nl-btn{background:var(--grad);color:var(--bg);font-family:'DM Sans',sans-serif;font-weight:700;font-size:.82rem;padding:.68rem 1.25rem;border-radius:var(--r);border:none;cursor:pointer;width:100%;transition:opacity .2s}.nl-btn:hover{opacity:.9}
.nl-ok{display:none;font-size:.75rem;color:var(--green);text-align:center;font-weight:600;padding:.45rem}.nl-ok.show{display:block}

/* -- RELATED POSTS -- */
.related-sec{background:var(--bg2);border-top:1px solid var(--border2);padding:4.5rem 0}
.rel-header{margin-bottom:2rem}
.rel-header h2{font-size:1.5rem;font-weight:800;color:var(--w100)}
.rel-header p{font-size:.85rem;color:var(--w50);margin-top:.35rem}
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}

/* Related cards — same as post-card from theme */
.rel-card{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r-lg);overflow:hidden;text-decoration:none;transition:all .28s;display:flex;flex-direction:column}
.rel-card:hover{border-color:var(--border);transform:translateY(-3px);box-shadow:var(--sh-md)}
.rel-img{height:162px;overflow:hidden;position:relative}
.rel-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s}
.rel-card:hover .rel-img img{transform:scale(1.06)}
.rel-img-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(6,24,40,.65),transparent 55%);pointer-events:none}
.rel-body{padding:1.1rem;flex:1;display:flex;flex-direction:column}
.rel-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.55rem;flex-wrap:wrap}
.rel-date{font-size:.68rem;color:var(--w40)}
.rel-title{font-size:.86rem;font-weight:700;color:var(--w100);line-height:1.4;flex:1}
/* read-link from theme */
.read-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.71rem;font-weight:700;color:var(--cyan);text-decoration:none;transition:gap .15s;margin-top:.75rem}
.read-link:hover{gap:.55rem}

/* HERO */
.blog-hero{min-height:46vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:120px 5% 70px;position:relative;overflow:hidden}
.bh-g1{position:absolute;width:800px;height:500px;background:radial-gradient(ellipse,rgba(0,212,255,.09),transparent 60%);top:-80px;left:50%;transform:translateX(-50%);pointer-events:none}
.bh-g2{position:absolute;width:350px;height:350px;background:radial-gradient(circle,rgba(0,229,160,.06),transparent 65%);bottom:-50px;right:6%;pointer-events:none}
.hero-inner{position:relative;z-index:2;max-width:700px;margin:0 auto}
.breadcrumb{display:flex;align-items:center;gap:.45rem;font-size:.75rem;color:var(--w30);margin-bottom:1rem;justify-content:center;animation:fadeUp .6s ease both}
.breadcrumb a{color:var(--w50);text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--cyan)}.breadcrumb span{color:var(--cyan)}
.trust-bar{display:inline-flex;align-items:center;gap:.55rem;background:rgba(0,212,255,.08);border:1px solid var(--border);border-radius:50px;padding:.32rem 1rem;margin-bottom:1.75rem;animation:fadeUp .7s ease both}
.trust-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:blink 2s infinite}
.trust-text{font-size:.72rem;font-weight:700;color:var(--cyan);letter-spacing:.06em;text-transform:uppercase}
.blog-hero h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;color:var(--w100);margin-bottom:1.1rem;animation:fadeUp .7s .07s ease both}
.hero-sub{font-size:1rem;color:var(--w70);line-height:1.8;max-width:520px;margin:0 auto 2rem;animation:fadeUp .7s .14s ease both}
.hero-stats{display:inline-flex;align-items:center;gap:2rem;animation:fadeUp .7s .2s ease both}
.hstat-num{font-family:'Sora',sans-serif;font-size:1.5rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
.hstat-lbl{font-size:.68rem;color:var(--w40);margin-top:.15rem;text-align:center}
.hstat-div{width:1px;height:36px;background:var(--border2)}

/* FILTER BAR */
.filter-sec{background:var(--bg2);border-top:1px solid var(--border2);border-bottom:1px solid var(--border2);position:sticky;top:68px;z-index:99}
.filter-inner{max-width:1200px;margin:0 auto;padding:0 5%;display:flex;align-items:center;gap:.85rem;height:64px;flex-wrap:nowrap;overflow-x:auto}
.filter-inner::-webkit-scrollbar{display:none}
.search-wrap{display:flex;align-items:center;gap:.6rem;background:var(--bg3);border:1px solid var(--border2);border-radius:50px;padding:.38rem .9rem .38rem 1rem;flex:0 0 240px;transition:border-color .25s}
.search-wrap:focus-within{border-color:var(--cyan)}
.search-ico{font-size:.9rem;color:var(--w30)}
.search-input{background:none;border:none;outline:none;color:var(--w90);font-family:'DM Sans',sans-serif;font-size:.83rem;width:100%}
.search-input::placeholder{color:var(--w30)}
.tag-btn{background:var(--w06);border:1px solid var(--w12);border-radius:50px;padding:.26rem .82rem;font-size:.72rem;font-weight:600;color:var(--w60);cursor:pointer;transition:all .22s;white-space:nowrap;flex-shrink:0}
.tag-btn:hover,.tag-btn.active{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}
.sort-sel{background:var(--bg3);border:1px solid var(--border2);border-radius:50px;color:var(--w70);font-family:'DM Sans',sans-serif;font-size:.78rem;padding:.33rem 1rem;outline:none;cursor:pointer;margin-left:auto;flex-shrink:0}
.sort-sel:focus{border-color:var(--cyan)}

/* LAYOUT */
.blog-main{background:var(--bg)}
.blog-layout{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start;padding:3rem 0 5rem}
.results-bar{display:flex;align-items:center;padding-bottom:1.5rem;font-size:.78rem;color:var(--w40)}
.results-bar strong{color:var(--cyan)}

/* CATEGORY PILLS */
.post-cat{font-size:.62rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:.18rem .6rem;border-radius:50px}
.cat-migration{background:rgba(0,212,255,.1);border:1px solid rgba(0,212,255,.22);color:var(--cyan)}
.cat-managed{background:rgba(0,229,160,.1);border:1px solid rgba(0,229,160,.22);color:var(--green)}
.cat-consulting{background:rgba(255,176,32,.1);border:1px solid rgba(255,176,32,.22);color:var(--amber)}
.cat-security{background:rgba(168,85,247,.1);border:1px solid rgba(168,85,247,.22);color:var(--purple)}
.cat-windows{background:rgba(244,114,182,.1);border:1px solid rgba(244,114,182,.22);color:var(--rose)}

/* FEATURED */
.featured-post{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;margin-bottom:2rem;transition:border-color .3s,box-shadow .3s;text-decoration:none}
.featured-post:hover{border-color:var(--cyan);box-shadow:var(--sh-lg)}
.feat-img{height:300px;position:relative;overflow:hidden}
.feat-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.featured-post:hover .feat-img img{transform:scale(1.04)}
.feat-img-ov{position:absolute;inset:0;background:linear-gradient(to right,transparent 60%,var(--bg2));pointer-events:none}
.feat-new{position:absolute;top:1rem;left:1rem;background:var(--grad);color:var(--bg);font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.22rem .7rem;border-radius:50px;z-index:2}
.feat-body{padding:2rem;display:flex;flex-direction:column;justify-content:center}
.feat-meta{display:flex;align-items:center;gap:.65rem;margin-bottom:.85rem;flex-wrap:wrap}
.post-date{font-size:.72rem;color:var(--w40)}
.feat-title{font-size:1.18rem;font-weight:800;color:var(--w100);margin-bottom:.7rem;line-height:1.3}
.feat-exc{font-size:.82rem;color:var(--w70);line-height:1.7;margin-bottom:1.4rem}
.read-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:700;color:var(--cyan);text-decoration:none;transition:gap .2s}
.read-link:hover{gap:.55rem}

/* POSTS GRID */
.posts-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.post-card{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-lg);overflow:hidden;transition:all .28s;text-decoration:none;display:flex;flex-direction:column}
.post-card:hover{border-color:var(--border);transform:translateY(-3px);box-shadow:var(--sh-md)}

/* FEATURE IMAGE */
.pc-img{height:178px;position:relative;overflow:hidden;background:var(--bg3)}
.pc-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.post-card:hover .pc-img img{transform:scale(1.06)}
.pc-img-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(6,24,40,.65) 0%,transparent 55%);pointer-events:none}
.pc-img-badge{position:absolute;top:.6rem;left:.6rem;font-size:.6rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;padding:.16rem .58rem;border-radius:50px;z-index:2;backdrop-filter:blur(6px)}

.pc-body{padding:1.15rem;flex:1;display:flex;flex-direction:column}
.pc-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.55rem;flex-wrap:wrap}
.pc-title{font-size:.87rem;font-weight:700;color:var(--w100);margin-bottom:.42rem;line-height:1.4;flex:1}
.pc-exc{font-size:.74rem;color:var(--w60);line-height:1.65;margin-bottom:.75rem}
.pc-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:.65rem;border-top:1px solid var(--border2)}
.pc-time{font-size:.67rem;color:var(--w30)}
.pc-read{font-size:.71rem;font-weight:700;color:var(--cyan);text-decoration:none;display:inline-flex;align-items:center;gap:.25rem;transition:gap .15s}
.pc-read:hover{gap:.45rem}

.post-card.hidden,.featured-post.hidden{display:none!important}
.no-results{display:none;grid-column:1/-1;padding:3rem;text-align:center;font-size:.9rem;color:var(--w40)}
.no-results.show{display:block}

/* SIDEBAR */
.sidebar{position:sticky;top:148px;display:flex;flex-direction:column;gap:1.5rem}
.sb{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-lg);overflow:hidden}
.sb-h{padding:1rem 1.25rem;background:var(--bg3);border-bottom:1px solid var(--border2);font-family:'Sora',sans-serif;font-size:.82rem;font-weight:700;color:var(--w90);display:flex;align-items:center;gap:.5rem}
.sb-b{padding:1.1rem 1.25rem}

/* Trending with real thumbnails */
.trending-list{display:flex;flex-direction:column;gap:.55rem}
.trend-item{display:flex;gap:.65rem;align-items:flex-start;padding:.6rem .7rem;background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);text-decoration:none;transition:border-color .2s}
.trend-item:hover{border-color:var(--border)}
.trend-num{font-family:'Sora',sans-serif;font-size:.68rem;font-weight:800;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;flex-shrink:0;min-width:16px;padding-top:.1rem}
.trend-thumb{width:50px;height:40px;border-radius:6px;overflow:hidden;flex-shrink:0}
.trend-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.trend-title{font-size:.73rem;color:var(--w80);line-height:1.4;font-weight:500}
.trend-date{font-size:.63rem;color:var(--w30);margin-top:.18rem}

.cat-list{display:flex;flex-direction:column;gap:.4rem}
.cat-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);cursor:pointer;text-decoration:none;transition:border-color .2s}
.cat-row:hover{border-color:var(--border)}
.cat-row-l{display:flex;align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;color:var(--w80)}
.cat-cnt{font-size:.66rem;font-weight:700;color:var(--cyan);background:var(--cyan-dim);border:1px solid var(--border);padding:.1rem .52rem;border-radius:50px}

.nl-desc{font-size:.78rem;color:var(--w60);line-height:1.6;margin-bottom:.7rem}
.nl-in{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r);padding:.68rem .9rem;color:var(--w90);font-family:'DM Sans',sans-serif;font-size:.82rem;outline:none;transition:border-color .25s;width:100%;margin-bottom:.6rem}
.nl-in:focus{border-color:var(--cyan)}.nl-in::placeholder{color:var(--w30)}
.nl-btn{background:var(--grad);color:var(--bg);font-family:'DM Sans',sans-serif;font-weight:700;font-size:.82rem;padding:.68rem 1.25rem;border-radius:var(--r);border:none;cursor:pointer;width:100%;opacity:1;transition:opacity .2s}
.nl-btn:hover{opacity:.9}
.nl-ok{display:none;font-size:.75rem;color:var(--green);text-align:center;font-weight:600;padding:.45rem}
.nl-ok.show{display:block}

.tags-cloud{display:flex;flex-wrap:wrap;gap:.42rem}
.tag-cl{font-size:.7rem;font-weight:600;color:var(--w60);background:var(--bg3);border:1px solid var(--border2);border-radius:50px;padding:.22rem .7rem;cursor:pointer;text-decoration:none;transition:all .22s}
.tag-cl:hover{background:var(--cyan-dim);border-color:var(--border);color:var(--cyan)}

/* CTA */
.cta-sec{background:var(--bg);padding:5rem 0}
.cta-box{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r-xl);padding:4.5rem 4rem;text-align:center;position:relative;overflow:hidden}
.cta-box::before{content:'';position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(0,212,255,.1),transparent 65%);top:-150px;right:-100px;pointer-events:none}
.cta-box::after{content:'';position:absolute;width:320px;height:320px;background:radial-gradient(circle,rgba(0,229,160,.07),transparent 65%);bottom:-100px;left:-70px;pointer-events:none}
.cta-box h2{font-size:clamp(1.7rem,2.8vw,2.5rem);font-weight:800;color:var(--w100);margin-bottom:.9rem;position:relative;z-index:1}
.cta-box p{font-size:.9rem;color:var(--w70);line-height:1.78;max-width:440px;margin:0 auto 2rem;position:relative;z-index:1}
.cta-btns{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;position:relative;z-index:1}

/* RESPONSIVE */
@media(max-width:1024px){
  .hero{grid-template-columns:1fr;min-height:auto;padding-top:100px}
  .hero-right{order:-1}
  .ind-grid{grid-template-columns:repeat(2,1fr)}
  .exp-grid{grid-template-columns:repeat(3,1fr)}
  .svc-grid{grid-template-columns:repeat(2,1fr)}
  .why-grid{grid-template-columns:1fr;gap:2.5rem}
  .clients-grid{grid-template-columns:repeat(3,1fr)}
  .testi-grid{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr 1fr}
  .blog-layout{grid-template-columns:1fr;gap:2.5rem}
	
	.detail-layout{grid-template-columns:1fr;gap:2.5rem}

  .rel-grid{grid-template-columns:1fr 1fr}
  .article-feat-img{height:300px}
  
}
@media(max-width:1000px){
	.clients-grid{grid-template-columns:repeat(3,1fr)}.partners-grid{grid-template-columns:1fr 1fr}
	.stats-inner{grid-template-columns:1fr 1fr}
	.footer-top{grid-template-columns:1fr 1fr}
	.ind-layout{grid-template-columns:1fr;gap:2.5rem}
    .sidebar{position:static}
    .card-grid-3{grid-template-columns:1fr 1fr}
    .inline-stats{grid-template-columns:1fr 1fr}
    .svc-layout {grid-template-columns: 1fr;gap: 2.5rem;}
    
    .intro-grid,.why-grid{grid-template-columns:1fr;gap:3rem}
  	.mvv-grid,.team-grid{grid-template-columns:1fr 1fr}
  	.presence-grid{grid-template-columns:1fr 1fr}
  	.certs-row{grid-template-columns:1fr 1fr}
	
	.contact-grid{grid-template-columns:1fr;gap:2.5rem}
  	.wr-grid{grid-template-columns:1fr 1fr}
  	.quick-cards-inner{grid-template-columns:1fr}
  	.support-inner{grid-template-columns:1fr 1fr}
  	.footer-top{grid-template-columns:1fr 1fr}
  	.cta-box{padding:3rem 2rem}
  	.perks-grid{grid-template-columns:1fr}

    .apply-grid,.culture-grid{grid-template-columns:1fr;gap:3rem}
	.process-wide-grid{grid-template-columns:1fr 1fr}
	.pw-step::after{display:none}
	.life-grid{grid-template-columns:1fr 1fr}
	.stats-inner{grid-template-columns:1fr 1fr}
	
	.featured-post{grid-template-columns:1fr}
  	.feat-img{height:220px}
  	.blog-layout { grid-template-columns: 1fr !important;}
}
@media(max-width:860px){
   .nav-links{display:none}
   .nav-hamburger{display:flex}
   .posts-grid{grid-template-columns:1fr}
   .cta-box{padding:3rem 1.5rem}
   .blog-hero{padding:100px 5% 50px}
}
@media(max-width:640px){
	.hero h1{font-size:2rem}
	.ind-grid{grid-template-columns:1fr}
	.exp-grid{grid-template-columns:repeat(2,1fr)}
	.svc-grid{grid-template-columns:1fr}
	.clients-grid{grid-template-columns:repeat(2,1fr)}
	.footer-top{grid-template-columns:1fr}
	.cta-box{padding:3rem 1.5rem}
	.hero-proof{flex-direction:column;align-items:flex-start}
	.proof-sep{display:none}
	.clients-grid{grid-template-columns:1fr 1fr}.partners-grid{grid-template-columns:1fr}.cta-box{padding:3rem 1.5rem}.footer-top{grid-template-columns:1fr}.stat-cell:nth-child(2){border-right:none}.stats-inner{grid-template-columns:1fr 1fr}.tier-banner{flex-direction:column;align-items:flex-start}.tier-badge{margin-left:0}
	.card-grid-3{grid-template-columns:1fr}
	.inline-stats{grid-template-columns:1fr 1fr}
	.cta-box{padding:3rem 1.5rem}
	.footer-top{grid-template-columns:1fr}
	.hero-proof{flex-direction:column;align-items:flex-start}
	.proof-sep{display:none}
	.ind-hero{padding:100px 5% 50px}
	.reveal.on{grid-template-columns: 1fr !important;}
	
	.mvv-grid,.team-grid,.presence-grid,.certs-row,.stats-inner{grid-template-columns:1fr}
  	.about-hero{min-height:auto;padding:100px 5% 60px}

	.form-row{grid-template-columns:1fr}
  	.wr-grid,.support-inner{grid-template-columns:1fr}
  	.contact-hero{padding:100px 5% 50px}
	
	.form-row{grid-template-columns:1fr}
	.process-wide-grid{grid-template-columns:1fr}
	.life-grid{grid-template-columns:1fr}
	.cta-box{padding:3rem 2rem}
	.careers-hero{padding:100px 5% 60px}
	.job-card{grid-template-columns:1fr;gap:.75rem}
	.job-right{align-items:flex-start}

	.rel-grid{grid-template-columns:1fr}
	.article-body{padding:1.5rem 1.25rem 2rem}
	.article-footer{padding:1.25rem}
	.ph-title{font-size:1.5rem}
	.ph-content{padding:2rem 5% 2.5rem}
	.kp-grid{grid-template-columns:1fr}
	.cta-box{padding:3rem 1.5rem}
	
}
@media(max-width:400px){
	.clients-grid{grid-template-columns:1fr}
}