/* ISS Technologies — final alignment & theme layer (loaded last on every page)
   One palette: Navy #070a1f + ISS Blue #2f6bff. No content changes. */
:root{--iss-blue:#2f6bff;--iss-blue-2:#6b96ff;--iss-bg:#142356;--iss-line:rgba(140,170,255,.22);--edge:clamp(16px,3vw,48px);--ac:#6b96ff;--ac2:#a9c4ff}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{overflow-x:clip;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,video{max-width:100%}
:focus-visible{outline:2px solid var(--iss-blue-2);outline-offset:3px}

/* ---- One container width everywhere (header, content, footer line up) ---- */
header nav,.wrap,main .container,.container,.iss-cta,footer .wrap{max-width:1560px!important;margin-left:auto!important;margin-right:auto!important;padding-left:var(--edge)!important;padding-right:var(--edge)!important;box-sizing:border-box}
.iss-cta{padding:0 var(--edge)!important}
header nav{width:100%}

/* ---- Unify the stray cyan/teal/green accents to the blue theme ---- */
a.btn-primary,.btn-primary,.pill.cta,.cta{background:linear-gradient(100deg,#2f6bff,#5a8dff)!important;color:#fff!important;border-color:rgba(255,255,255,.28)!important;box-shadow:0 8px 28px -8px rgba(47,107,255,.65)}
.btn-primary:hover,.pill.cta:hover{filter:brightness(1.08);transform:translateY(-2px)}
.btn-secondary{border:1px solid rgba(140,170,255,.4)!important;background:rgba(27,52,129,.35)!important;color:#e6eeff!important}
.btn-secondary:hover{border-color:var(--iss-blue-2)!important;background:rgba(47,107,255,.2)!important}
.breadcrumb a,main nav[aria-label=Breadcrumb] a{color:var(--iss-blue-2)}

/* ---- Inner-page heroes: richer background, even rhythm ---- */
.mshero,.svh,.page-hero{position:relative;overflow:hidden;background:radial-gradient(900px 420px at 85% -10%,rgba(47,107,255,.28),transparent 60%),radial-gradient(700px 360px at 0% 110%,rgba(47,107,255,.16),transparent 60%),linear-gradient(180deg,#172862,#142356)!important;border-bottom:1px solid var(--iss-line)}
.mshero h1,.svh h1{letter-spacing:-.035em;text-wrap:balance;background:linear-gradient(100deg,#fff 30%,#a9c4ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.mshero p,.svh p{max-width:62ch}
.section-tag{color:var(--iss-blue-2)!important}

/* ---- Cards: same radius, border, hover everywhere ---- */
.card,.msi,.msitem,.iss-card,.svc-card,article.card{border-radius:16px;border:1px solid var(--iss-line);transition:transform .3s,border-color .3s,box-shadow .3s}
.card:hover,.msi:hover,.msitem:hover,.iss-card:hover{transform:translateY(-4px);border-color:rgba(107,150,255,.6);box-shadow:0 22px 44px -24px rgba(47,107,255,.7)}
/* card grids fill the row (no orphan gap at the right) */
.msitems,.cards,.card-grid,.about-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))!important;gap:clamp(14px,1.6vw,24px)!important;align-items:stretch}
.msitems>*{width:auto!important;max-width:none!important}

/* ---- Headings & text ---- */
h1,h2,h3{text-wrap:balance}
main p{max-width:75ch}
main .ctr p,.mslead,.lede,.ourp,.intro{margin-left:auto;margin-right:auto}

/* ---- Footer: same left edge as the page, tidy columns ---- */
footer{border-top:1px solid var(--iss-line);background:linear-gradient(180deg,#192b69 0%,#132352 55%,#111d48 100%)}
footer .ft-top{display:grid;grid-template-columns:minmax(260px,1.4fr) 3fr;gap:clamp(24px,4vw,64px);align-items:start}
footer .ftcols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(16px,2vw,32px)}
footer .ft-bot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--iss-line);margin-top:clamp(28px,4vw,48px);padding-top:20px}
footer a{transition:color .2s}
@media(max-width:1000px){footer .ft-top{grid-template-columns:1fr}footer .ftcols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){footer .ftcols{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---- Floating chat buttons never cover content on phones ---- */
@media(max-width:700px){.chat-fab,.wa-fab,[class*=floating]{transform:scale(.9)}}

/* ================= HOME PAGE: extra polish ================= */
/* hero: deeper glow, larger breathing room */
.banner{background:radial-gradient(1200px 600px at 50% -10%,rgba(47,107,255,.35),transparent 60%),#142356}
.banner .hero{padding-bottom:clamp(96px,10vw,150px)}
.banner .lede{color:#b9c9ee}
.banner .hero .cta{padding:clamp(14px,1.4vw,18px) clamp(30px,3vw,46px);font-weight:600;letter-spacing:.01em}
/* proof strip: one tidy glass bar, evenly spaced, no wrapping */
.home-proof-banner{display:grid!important;grid-template-columns:repeat(4,auto);justify-content:center;align-items:center;gap:0;width:fit-content;max-width:100%;margin:clamp(28px,4vw,48px) auto 0!important;padding:clamp(14px,1.6vw,20px) clamp(10px,1.6vw,24px);border:1px solid var(--iss-line);border-radius:20px;background:rgba(24,43,103,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 24px 60px -30px rgba(47,107,255,.7)}
.home-proof-banner>*{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4px clamp(16px,2.6vw,40px);min-width:0}
.home-proof-banner>*+*{border-left:1px solid var(--iss-line)}
.home-proof-banner .proof-partner{flex-direction:row;gap:10px}
.home-proof-banner strong{white-space:nowrap;font-size:clamp(18px,2vw,28px);line-height:1.1}
.home-proof-banner span{font-size:clamp(11px,.95vw,13px);color:var(--mute,#9db0d4)}
.home-proof-banner .proof-partner-name{font-size:clamp(13px,1.1vw,16px);color:#fff;font-weight:600;text-align:left;white-space:nowrap}
@media(max-width:760px){.home-proof-banner{width:100%;grid-template-columns:repeat(3,1fr);gap:12px 0}.home-proof-banner>*{padding:4px 6px}.home-proof-banner strong{font-size:clamp(15px,4.4vw,20px)}.home-proof-banner>*+*{border-left:1px solid var(--iss-line)}.home-proof-banner .proof-partner+*{border-left:0}.home-proof-banner>*+*{border-left:0}.home-proof-banner .proof-partner{grid-column:1/-1;padding-bottom:10px;border-bottom:1px solid var(--iss-line)}}

/* section headings: consistent accent underline + centred */
#services h2.ctr,#industries-we-serve h2,#technologies .plabel,#customers .plabel{position:relative}
h2.ctr::after{content:"";display:block;width:64px;height:3px;border-radius:3px;margin:16px auto 0;background:linear-gradient(90deg,#2f6bff,#8fb0ff)}
/* section separation */
#customers,#technologies{border-top:1px solid var(--iss-line);border-bottom:1px solid var(--iss-line);background:linear-gradient(180deg,rgba(25,45,108,.35),rgba(20,35,86,0))}
/* four service cards: one accent colour family (blue → indigo), equal heights */
html body #services .hsv-card.is-ms,html body #services .hsv-card.is-cld,html body #services .hsv-card.is-cmp{--ac:#5b86ff;--ac2:#a9bfff}
html body #services .hsv-card.is-cld{--ac:#7a8cff;--ac2:#b9c3ff}
html body #services .hsv-card{border-radius:22px;background:linear-gradient(170deg,rgba(29,53,128,.55),rgba(20,35,86,.96))}
@media(max-width:1100px){html body #services .hsv{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){html body #services .hsv{grid-template-columns:1fr!important}}
/* partner/technology logos: even tiles */
.track img,.tchip{box-shadow:0 10px 26px -14px rgba(0,0,0,.7)}
/* contact band */
.contact{border-radius:24px}
/* back-to-top / small buttons */
.btn,.pill{transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* ================= BLOG ================= */
#blog-list.has-posts{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr))!important}
.bpost{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--iss-line);border-radius:18px;background:linear-gradient(170deg,rgba(29,53,128,.5),rgba(20,35,86,.94));color:inherit;text-decoration:none;transition:transform .3s,border-color .3s,box-shadow .3s}
.bpost:hover{transform:translateY(-5px);border-color:rgba(107,150,255,.65);box-shadow:0 26px 50px -26px rgba(47,107,255,.8)}
.bpost-img{aspect-ratio:16/9;overflow:hidden;border-bottom:1px solid var(--iss-line)}
.bpost-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.bpost:hover .bpost-img img{transform:scale(1.05)}
.bpost-body{display:flex;flex-direction:column;gap:10px;padding:clamp(18px,2vw,26px);flex:1}
.bpost-body h3{margin:0;font-size:clamp(18px,1.6vw,22px);line-height:1.3;color:#fff}
.bpost-body p{margin:0;color:#9db0d4;font-size:14.5px;line-height:1.6}
.bpost-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px;color:#9db0d4}
.bpost-cat{padding:3px 11px;border-radius:99px;background:rgba(47,107,255,.2);border:1px solid rgba(107,150,255,.45);color:#cfe0ff;font-weight:600;font-size:12px}
.bpost-more{margin-top:auto;padding-top:6px;color:#8fb0ff;font-weight:600;font-size:14px}
/* single article */
.post-wrap{max-width:820px!important}
#post-article{padding:clamp(32px,5vw,64px) 0 clamp(40px,6vw,80px)}
#post-article .post-cover{width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:18px;border:1px solid var(--iss-line);margin-bottom:clamp(22px,3vw,34px)}
#post-body{font-size:clamp(16px,1.2vw,18px);line-height:1.8;color:#d6e0f7}
#post-body h2{font-size:clamp(22px,2.2vw,30px);margin:1.6em 0 .5em;color:#fff;max-width:none}
#post-body p{margin:0 0 1.2em;max-width:none}
#post-body ul{margin:0 0 1.2em;padding-left:1.3em}#post-body li{margin:.35em 0}
#post-body a{color:#8fb0ff;text-decoration:underline;text-underline-offset:3px;word-break:break-word}
.post-back{display:inline-block;margin-top:clamp(20px,3vw,36px);color:#8fb0ff;text-decoration:none;font-weight:600}

.post-fig{margin:26px 0}.post-fig img{display:block;max-width:100%;height:auto;border-radius:14px}



/* ========================================================================
   ISS Technologies — Managed-site visual palette + typography
   Source palette: iss-website-managed-soc
   IMPORTANT: palette/type only. Existing animations, transitions, graphics,
   layout and component structures are intentionally preserved.
   ======================================================================== */








:root{
  --managed-bg:#F3F7FA;
  --managed-panel:#FFFFFF;
  --managed-panel-2:#EAF1F6;
  --managed-line:#C9D7E3;
  --managed-line-soft:#DCE6EE;
  --managed-ink:#102235;
  --managed-muted:#5F7183;
  --managed-accent:#0B9FD3;
  --managed-accent-light:#46C6F2;
  --managed-green:#18A874;
  --managed-red:#E3485B;
  --managed-soft:#F7FAFC;

  /* Existing variable names remapped to the managed site's palette. */
  --bg:#F3F7FA;
  --panel:#FFFFFF;
  --panel-2:#EAF1F6;
  --line:#C9D7E3;
  --line-soft:#DCE6EE;
  --ink:#102235;
  --mute:#5F7183;
  --sig:#0B9FD3;
  --safe:#18A874;
  --threat:#E3485B;
  --blue:#0B9FD3;
  --blue2:#46C6F2;
  --navy:#182B45;
  --navy2:#243A53;
  --iss-blue:#0B9FD3;
  --iss-blue-2:#46C6F2;
  --iss-bg:#F3F7FA;
  --iss-surface:#FFFFFF;
  --iss-surface-2:#EAF1F6;
  --iss-text:#102235;
  --iss-muted:#5F7183;
  --iss-cyan:#0B9FD3;
  --iss-violet:#6B7FA0;
  --card:#FFFFFF;
  --tx:#102235;
  --tx2:#5F7183;
  --bd:#C9D7E3;
}

html,body{
  background:var(--managed-bg);
  color:var(--managed-ink);
  font-family:'IBM Plex Sans',Inter,'Segoe UI',Arial,sans-serif;
}

body{font-size:16px;line-height:1.55}

h1,h2,h3,h4,h5,h6,
.hero-title,.page-title,.section-title,.headline{
  font-family:'Archivo',Inter,'Segoe UI',Arial,sans-serif !important;
  font-weight:650;
  letter-spacing:-.025em;
  line-height:1.06;
}

h1,.hero-title,.page-title{font-size:clamp(2.25rem,4.3vw,3.85rem)}
h2,.section-title{font-size:clamp(1.85rem,3.4vw,2.8rem)}
h3{font-size:clamp(1.15rem,1.7vw,1.55rem)}
p,li,td,th,label,input,textarea,select,button,a{
  font-family:'IBM Plex Sans',Inter,'Segoe UI',Arial,sans-serif;
}

code,pre,.mono,.eyebrow,.kicker,.tag,.badge,.stat-label{
  font-family:'IBM Plex Mono',monospace !important;
}

/* Page surfaces: managed site's light, clean rhythm. */
main,.page,.page-content,.content,.site-main{
  background:var(--managed-bg) !important;
}

section:not(.hero):not(.page-head):not(.dark):not(.dark-section):not(.footer):not(.cta-dark){
  background-color:transparent;
}

/* Common light sections */
.section-light,.light-section,.section-white,.bg-light,
.trusted-partners,.iss-partners-section,.tools,
.services-section,.industries-section,.about-section,
.contact-section,.careers-section{
  background:var(--managed-bg) !important;
}

/* Cards / panels — use managed site's white + pale-blue surfaces. */
.card,.service-card,.feature-card,.info-card,.stat-card,.industry-card,
.solution-card,.benefit-card,.process-card,.step-card,.resource-card,
.blog-card,.case-card,.team-card,.tool-card,.flip-card,
.panel,.glass,.tile,.box,.feature,.service-item{
  background:var(--managed-panel) !important;
  color:var(--managed-ink) !important;
  border-color:var(--managed-line) !important;
  box-shadow:0 10px 28px rgba(16,34,53,.065);
}

/* Secondary/internal card surfaces */
.card .icon,.card-icon,.service-icon,.feature-icon,.step-icon,
.stat-icon,.industry-icon,.tool-icon,.badge-icon{
  background:var(--managed-panel-2) !important;
  color:var(--managed-accent) !important;
}

/* Common text colors */
.card h1,.card h2,.card h3,.card h4,.card h5,
.service-card h1,.service-card h2,.service-card h3,.service-card h4,
.feature-card h3,.industry-card h3,.benefit-card h3,
.card strong,.panel strong{
  color:var(--managed-ink) !important;
}
.card p,.card li,.service-card p,.feature-card p,.industry-card p,
.benefit-card p,.panel p,.muted,.text-muted{
  color:var(--managed-muted) !important;
}

/* Borders and subtle hover: no replacement of existing motion. */
.card:hover,.service-card:hover,.feature-card:hover,.industry-card:hover,
.benefit-card:hover,.panel:hover,.tile:hover{
  border-color:#AFC8D8 !important;
  box-shadow:0 16px 34px rgba(16,34,53,.09);
}

/* Buttons: managed-site cyan accent instead of saturated royal blue. */
.btn-primary,.btn--primary,.btn-primary-solid,.primary-btn,
.cta,.cta-btn,.hero-cta{
  background:var(--managed-accent) !important;
  border-color:var(--managed-accent) !important;
  color:#FFFFFF !important;
}
.btn-primary:hover,.btn--primary:hover,.btn-primary-solid:hover,
.primary-btn:hover,.cta:hover,.cta-btn:hover,.hero-cta:hover{
  background:#087FAE !important;
  border-color:#087FAE !important;
}
.btn-secondary,.btn--secondary,.btn-outline,.btn--ghost{
  background:#FFFFFF !important;
  color:var(--managed-ink) !important;
  border-color:var(--managed-line) !important;
}

/* Blue-heavy generic surfaces from the second ZIP become managed neutral surfaces.
   This deliberately avoids touching animation/keyframes. */
.hero:not(.dark),.page-hero:not(.dark),.inner-hero:not(.dark){
  background:var(--managed-bg) !important;
  color:var(--managed-ink) !important;
}

/* Dark sections remain dark, but no longer use royal-blue fills. */
.dark,.dark-section,.sec.dk,.section-dark,.cta-dark,.footer-dark{
  background:#182B45 !important;
  color:#F4F8FC !important;
}
.dark h1,.dark h2,.dark h3,.dark h4,
.dark-section h1,.dark-section h2,.dark-section h3,.dark-section h4,
.sec.dk h1,.sec.dk h2,.sec.dk h3,.sec.dk h4{
  color:#F4F8FC !important;
}
.dark p,.dark-section p,.sec.dk p{color:#C5D5E4 !important}

/* Header keeps its existing design/layout but adopts managed navy. */
header,.site-header,.main-header,.navbar{
  background:#182B45 !important;
  color:#F4F8FC !important;
  border-color:rgba(70,198,242,.35) !important;
}
header a,.site-header a,.main-header a,.navbar a{
  color:#F4F8FC !important;
}
header a:hover,.site-header a:hover,.main-header a:hover,.navbar a:hover{
  color:#7FD8F6 !important;
}

/* Remove strong royal-blue background fills while preserving gradients/animations. */
[style*="#2f6bff"],[style*="#6b96ff"],[style*="#142356"],
[style*="#192d6c"],[style*="#5b7cff"]{
  background-color:var(--managed-panel-2) !important;
  color:var(--managed-ink) !important;
}

/* Responsive typography matches the managed site's scaling. */
@media (max-width:900px){
  h1,.hero-title,.page-title{font-size:clamp(2rem,7vw,3rem)}
  h2,.section-title{font-size:clamp(1.7rem,5.5vw,2.35rem)}
}
@media (max-width:600px){
  body{font-size:15.5px}
  h1,.hero-title,.page-title{font-size:clamp(1.9rem,10vw,2.65rem)}
  h2,.section-title{font-size:clamp(1.6rem,8vw,2.15rem)}
}




/* ========================================================================
   FINAL THEME CORRECTION — MIXED DARK + LIGHT ENTERPRISE THEME
   ------------------------------------------------------------------------
   Do NOT alter existing animation/keyframe/layout rules.
   This block only restores visual surfaces and text contrast.
   ======================================================================== */

:root{
  --theme-dark:#17191B;
  --theme-dark-2:#202326;
  --theme-dark-3:#292D31;
  --theme-light:#F3F7FA;
  --theme-light-2:#EAF1F6;
  --theme-white:#FFFFFF;
  --theme-ink:#102235;
  --theme-muted:#5F7183;
  --theme-accent:#0B9FD3;
  --theme-accent-2:#46C6F2;
  --theme-line:#C9D7E3;
}

/* ---------- GLOBAL TYPE ---------- */
html,body{
  background:var(--theme-light)!important;
  color:var(--theme-ink)!important;
  font-family:'IBM Plex Sans',Inter,'Segoe UI',Arial,sans-serif!important;
}
h1,h2,h3,h4,h5,h6,
.hl,.hero h1,.page-head h1,.svc-hero h1{
  font-family:'Archivo',Inter,'Segoe UI',Arial,sans-serif!important;
  letter-spacing:-.028em!important;
  font-weight:650!important;
}
body,p,li,a,button,input,textarea,select{
  font-family:'IBM Plex Sans',Inter,'Segoe UI',Arial,sans-serif!important;
}

/* ---------- HEADER: DARK CHARCOAL, NOT BLUE ---------- */
html body header,
html body .site-header,
html body .main-header,
html body .navbar{
  background:#17191B!important;
  background-image:none!important;
  color:#F5F7F8!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.16)!important;
}
html body header a,
html body .site-header a,
html body .main-header a,
html body .navbar a{
  color:#F5F7F8!important;
}
html body header a:hover,
html body .site-header a:hover,
html body .main-header a:hover,
html body .navbar a:hover{
  color:#7FD8F6!important;
}
html body header.scrolled{
  background:rgba(23,25,27,.96)!important;
}

/* ---------- HOME HERO: DARK, RESTORE CONTRAST ---------- */
html body .banner{
  background:
    radial-gradient(900px 520px at 72% 20%,rgba(70,198,242,.10),transparent 62%),
    radial-gradient(700px 420px at 22% 80%,rgba(255,255,255,.025),transparent 65%),
    #17191B!important;
  color:#F7F9FA!important;
}
html body .banner::before{
  background:
    radial-gradient(50% 60% at 78% 40%,rgba(70,198,242,.08),transparent 70%),
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px) 0 0/64px 64px,
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px) 0 0/64px 64px!important;
}
html body .banner::after{
  background:linear-gradient(rgba(23,25,27,0),rgba(23,25,27,.28) 45%,rgba(23,25,27,.86) 85%,#17191B)!important;
}
html body .banner .hl,
html body .banner .hl .l1{
  color:#F7F9FA!important;
  text-shadow:none!important;
}
html body .banner .rot{
  color:#73D7F8!important;
  -webkit-text-fill-color:#73D7F8!important;
  text-shadow:none!important;
}
html body .banner .lede{
  color:#C5D0D8!important;
}
html body .banner .cta,
html body .banner .pill.cta{
  background:#0B9FD3!important;
  color:#fff!important;
  border-color:#0B9FD3!important;
  box-shadow:0 12px 30px rgba(11,159,211,.22)!important;
}
html body .banner .cta:hover{
  background:#087FAE!important;
}

/* Home proof strip stays dark and readable. */
html body .home-proof-banner{
  background:rgba(32,35,38,.88)!important;
  border-color:rgba(255,255,255,.14)!important;
  box-shadow:0 24px 60px -30px rgba(0,0,0,.7)!important;
}
html body .home-proof-banner>*+*{
  border-left-color:rgba(255,255,255,.12)!important;
}
html body .home-proof-banner strong,
html body .home-proof-banner .proof-partner-name{
  color:#F7F9FA!important;
}
html body .home-proof-banner span{
  color:#AEBBC5!important;
}

/* ---------- HOME CUSTOMERS / PARTNERS: LIGHT ---------- */
html body #customers{
  background:#F3F7FA!important;
  color:#102235!important;
  border-top:1px solid #DCE6EE!important;
  border-bottom:1px solid #DCE6EE!important;
}
html body #customers .pband{
  background:
    radial-gradient(circle at 50% 20%,rgba(11,159,211,.055),transparent 34%),
    #F3F7FA!important;
}
html body #customers .plabel,
html body #customers h2{
  color:#102235!important;
  text-shadow:none!important;
}
html body #customers .track img{
  background:#fff!important;
  border:1px solid #D9E5EC!important;
  border-radius:16px;
}

/* ---------- HOME SERVICES: DARK FEATURE SECTION ---------- */
html body #services{
  background:
    radial-gradient(circle at 80% 15%,rgba(70,198,242,.055),transparent 30%),
    #202326!important;
  color:#F4F7F9!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
html body #services h2.ctr{
  color:#F7F9FA!important;
}
html body #services .mslead{
  color:#B9C5CD!important;
}
html body #services .stagepanel,
html body #services .mspanel{
  background:#292D31!important;
  border-color:rgba(255,255,255,.10)!important;
}
html body #services .hsv-card{
  background:linear-gradient(170deg,#292D31,#1D2023)!important;
  border-color:rgba(255,255,255,.11)!important;
  color:#F4F7F9!important;
  box-shadow:0 24px 50px -30px rgba(0,0,0,.75)!important;
}
html body #services .hsv-card h3,
html body #services .hsv-card p,
html body #services .hsv-card strong{
  color:#F4F7F9!important;
}
html body #services .hsv-card p{
  color:#AEBBC5!important;
}
html body #services .hsv-card .pill,
html body #services .hsv-card a{
  color:#73D7F8!important;
}

/* ---------- WHY / SUPPORTING SECTIONS: LIGHT ---------- */
html body #why-iss,
html body #contact,
html body #trusted-partners,
html body #technologies{
  background:#F3F7FA!important;
  color:#102235!important;
  border-top:1px solid #DCE6EE!important;
}
html body #why-iss h2,
html body #contact h2,
html body #trusted-partners h2,
html body #technologies h2,
html body #why-iss p,
html body #contact p,
html body #trusted-partners p{
  color:#102235!important;
}
html body #why-iss .wip,
html body #contact p,
html body #trusted-partners .tp-sub{
  color:#5F7183!important;
}
html body #why{
  background:#17191B!important;
  color:#F4F7F9!important;
}
html body #why h2,
html body #why h3,
html body #why p{
  color:#F4F7F9!important;
}
html body #why .wwi p{
  color:#B9C5CD!important;
}

/* Trusted partner cards remain white. */
html body #trusted-partners .tp-card,
html body .tp-card{
  background:#FFFFFF!important;
  color:#102235!important;
  border-color:#D6E2EA!important;
  box-shadow:0 10px 28px rgba(16,34,53,.065)!important;
}
html body .tp-card h3{color:#102235!important}
html body .tp-card p{color:#5F7183!important}

/* ---------- ALL SERVICE / INNER PAGE HEROES: DARK, NOT WASHED OUT ---------- */
html body .page-head,
html body .mshero,
html body .svc-hero,
html body .service-hero{
  background-color:#17191B!important;
  color:#F7F9FA!important;
}
html body .page-head h1,
html body .mshero h1,
html body .svc-hero h1,
html body .service-hero h1{
  color:#F7F9FA!important;
}
html body .page-head p,
html body .mshero p,
html body .svc-hero p,
html body .service-hero p{
  color:#C5D0D8!important;
}
/* Preserve actual banner images where present. */
html body .page-head .banner-img,
html body .svc-banner .banner-img{
  z-index:0!important;
}
html body .page-head.svc-banner::after,
html body .svc-banner::after{
  background:linear-gradient(90deg,rgba(23,25,27,.94) 0%,rgba(23,25,27,.82) 30%,rgba(23,25,27,.40) 55%,rgba(23,25,27,.05) 78%,rgba(23,25,27,0) 100%)!important;
}
html body .page-head.svc-banner h1,
html body .page-head.svc-banner .lede,
html body .svc-banner h1,
html body .svc-banner .lede{
  color:#F7F9FA!important;
}

/* ---------- INNER CONTENT: ALTERNATE LIGHT + DARK ---------- */
html body main > .sec:not(.dk):not(.dark):not(.dark-section),
html body .sec--alt,
html body .content-section,
html body .service-content{
  background:#F3F7FA!important;
  color:#102235!important;
}
html body main > .sec.dk,
html body .sec.dark,
html body .dark-section{
  background:#202326!important;
  color:#F4F7F9!important;
}
html body main > .sec.dk h2,
html body main > .sec.dk h3,
html body .dark-section h2,
html body .dark-section h3{
  color:#F7F9FA!important;
}
html body main > .sec.dk p,
html body .dark-section p{
  color:#B9C5CD!important;
}

/* ---------- CARDS: WHITE ON LIGHT, CHARCOAL ON DARK ---------- */
html body .card,
html body .service-card,
html body .feature-card,
html body .info-card,
html body .stat-card,
html body .industry-card,
html body .solution-card,
html body .benefit-card,
html body .process-card,
html body .step-card,
html body .resource-card,
html body .blog-card,
html body .case-card,
html body .team-card,
html body .tool-card,
html body .flip-card,
html body .panel,
html body .tile,
html body .box,
html body .feature,
html body .service-item{
  background:#FFFFFF!important;
  color:#102235!important;
  border-color:#D6E2EA!important;
  box-shadow:0 10px 28px rgba(16,34,53,.065)!important;
}
html body .dark .card,
html body .dark-section .card,
html body .sec.dk .card,
html body .dark .service-card,
html body .dark-section .service-card,
html body .sec.dk .service-card{
  background:#292D31!important;
  color:#F4F7F9!important;
  border-color:rgba(255,255,255,.11)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.20)!important;
}
html body .dark .card h3,
html body .dark-section .card h3,
html body .sec.dk .card h3,
html body .dark .service-card h3,
html body .dark-section .service-card h3,
html body .sec.dk .service-card h3{
  color:#F4F7F9!important;
}
html body .dark .card p,
html body .dark-section .card p,
html body .sec.dk .card p,
html body .dark .service-card p,
html body .dark-section .service-card p,
html body .sec.dk .service-card p{
  color:#B9C5CD!important;
}

/* ---------- MEGA MENU: DARK CHARCOAL ---------- */
html body .mega-menu,
html body .nav-menu,
html body .dropdown-menu,
html body .mega-panel{
  background:#202326!important;
  color:#F4F7F9!important;
  border-color:rgba(255,255,255,.10)!important;
}
html body .mega-menu h3,
html body .mega-menu a,
html body .mega-panel h3,
html body .mega-panel a{
  color:#F4F7F9!important;
}
html body .mega-menu p,
html body .mega-panel p{
  color:#AEBBC5!important;
}

/* ---------- FOOTER: DARK ---------- */
html body footer{
  background:linear-gradient(180deg,#202326 0%,#17191B 100%)!important;
  color:#B9C5CD!important;
}
html body footer h3,
html body footer strong{
  color:#F4F7F9!important;
}
html body footer a{
  color:#DCE4E9!important;
}
html body footer a:hover{
  color:#73D7F8!important;
}

/* ---------- BUTTONS ---------- */
html body .pill.cta,
html body .btn-primary,
html body .btn--primary,
html body .primary-btn,
html body .cta-primary{
  background:#0B9FD3!important;
  border-color:#0B9FD3!important;
  color:#fff!important;
}
html body .pill.cta:hover,
html body .btn-primary:hover,
html body .btn--primary:hover,
html body .primary-btn:hover{
  background:#087FAE!important;
  border-color:#087FAE!important;
}

/* ---------- REMOVE THE PREVIOUS PALETTE OVERRIDE THAT WAS TURNING HEROES
   INTO WHITE SURFACES. Keep all existing motion untouched. ---------- */
html body .hero:not(.dark),
html body .page-hero:not(.dark),
html body .inner-hero:not(.dark){
  background-color:transparent!important;
}

/* Home banner is the deliberate exception above. */
html body .banner{
  background-color:#17191B!important;
}
