﻿/* ==========================================================================
   InnoAxis Theme CSS (Light-only) Ã¢â‚¬â€ FIXED
   - Removes variant-a / variant-b switching
   - Fixes header markup assumptions (brand contains logo + name)
   - Scopes menu rules to header only (prevents footer/menu collisions)
   - Fixes Ã¢â‚¬Å“-webkit-any-linkÃ¢â‚¬Â default blue by styling anchors
   - Mobile dropdown aligns LEFT under the hamburger
========================================================================== */

/* =========================
   Base / Reset
========================= */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body { font-family: Arial, system-ui, -apple-system, Segoe UI, Roboto, sans-serif; }

.container { width: min(1160px, calc(100% - 40px)); margin: 0 auto; }
.muted { color: var(--muted); }

/* =========================
   Design Tokens (LIGHT ONLY)
========================= */
:root{
  --bg:#f3f4f6;
  --bg2:#e5e7eb;
  --surface:#ffffff;
  --text:#0b1020;
  --muted:rgba(11,16,32,.65);

  --card:#ffffff;
  --cardText:#111827;
  --cardMuted:#4b5563;

  --border:rgba(17,24,39,.12);
  --border2:#d1d5db;

  --primary:#10b981;
  --primaryText:#ffffff;
  --accent:#10b981;

  --shadow:0 8px 20px rgba(17,24,39,.08);

  --radius:16px;
}

/* =========================
   Global
========================= */
body{
  background: var(--bg);
  color: var(--text);
}

/* Fix default WebKit link colors everywhere */
a, a:visited, a:hover, a:active{
  color: inherit;
  text-decoration: none;
}
a:hover{ text-decoration: underline; text-underline-offset: 3px; }

/* If you WANT links white only in hero, do it here (recommended) */
.hero a, .hero a:visited{ color: #fff; }

/* =========================
   Header
========================= */
.site-header{
  border-bottom: 1px solid var(--border2);
  background: var(--surface);
  position: sticky;
  top: 0;
  z-index: 10;
}

.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 0;
}

/* Brand (logo + text) */
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color: var(--text);
}

/* WP custom logo */
.brand-logo{
  display:flex;
  align-items:center;
}
.brand-logo img.custom-logo{
  display:block;
  max-height:32px;
  width:auto;
  height:auto;
}

/* Brand text */
.brand-name{
  font-size:16px;
  font-weight:700;
  letter-spacing:0.015em;
  line-height:1;
  white-space:nowrap;
  color: var(--text);
}

/* Right side actions */
.header-actions{
  display:flex;
  align-items:center;
  gap:14px;
}

/* Language switch AFTER buttons */
.header-actions .lang-switch{
  display:inline-flex;
  align-items:center;
  gap:10px;
  white-space:nowrap;
  font-weight:700;
  line-height:1;
  margin-left:6px;
}
.header-actions .lang-switch a{
  opacity:.75;
  transition:opacity .2s ease, transform .2s ease;
}
.header-actions .lang-switch a:hover{
  opacity:1;
  transform:translateY(-1px);
}
.header-actions .lang-switch .lang-sep{ opacity:.45; }
.header-actions .lang-switch a.current-lang{
  opacity:1;
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* =========================
   Navigation (HEADER ONLY)
========================= */
.nav{
  display:flex;
  align-items:left;
  gap:16px;
  position:relative; /* IMPORTANT: makes dropdown position correctly */
}

/* Scope UL styles ONLY to headerÃ¢â‚¬â„¢s primary menu */
.nav #primary-menu.menu{
  display:flex;
  align-items:center;
  gap:18px;
  list-style:none;
  margin:0;
  padding:0;
}

.nav #primary-menu.menu a{
  color: var(--text);
  font-size:15.5px;
  font-weight:600;
  text-decoration:none;
}
.nav #primary-menu.menu a:hover{ text-decoration: underline; }

/* Hamburger hidden on desktop */
.nav-toggle{
  display:none;
  border:0;
  background:transparent;
  padding:10px;
  cursor:pointer;
  color: var(--text);
}
.nav-toggle-bar{
  display:block;
  width:22px;
  height:2px;
  margin:5px 0;
  background: currentColor;
  opacity:.9;
}

/* MOBILE dropdown Ã¢â‚¬â€ aligned LEFT under hamburger */
@media (max-width:980px){
  .nav-toggle{ display:inline-block; }

  /* Hide until nav-open */
  .nav #primary-menu{
    display:none !important;
    position:absolute;
    top: calc(100% + 10px);
    left: 0;        /* LEFT align */
    right: auto;    /* ensure not right aligned */
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
    padding:14px;
    border-radius:14px;
    background: var(--surface);
    border: 1px solid var(--border2);
    box-shadow: 0 10px 30px rgba(0,0,0,.15);
    z-index:50;
    min-width: 240px;
  }

  .nav.nav-open #primary-menu{
    display:flex !important;
  }
}

/* =========================
   Buttons
========================= */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:12px;
  text-decoration:none;
  font-weight:700;
  border:1px solid transparent;
  cursor:pointer;
}

.btn-primary{ background: var(--primary); color: var(--primaryText); }
.btn-outline{ border-color: var(--border2); color: var(--text); background: transparent; }
.btn-ghost{
  background: transparent;
  border: 1px solid var(--border2);
  color: var(--text);
}

/* =========================
   Hero
========================= */
:root{ --hero-bg: none; }

.hero{
  padding:64px 0;
  position: relative;
  overflow: hidden;
  color: #ffffff; /* hero text white */
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background: var(--hero-bg) center / cover no-repeat;
  z-index:0;
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(
    180deg,
    rgba(7,11,20,var(--hero-overlay, .70)),
    rgba(7,11,20,calc(var(--hero-overlay, .70) + .18))
  );
  z-index:1;
}
.hero > .container{ position: relative; z-index:2; }

.hero-inner{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:22px;
  align-items:center;
}
.lead{ color: rgba(255,255,255,.86); max-width:62ch; }
.microproof{ margin-top:12px; color: rgba(255,255,255,.80); font-size:13px; }
.hero-cta{ display:flex; gap:12px; flex-wrap:wrap; margin-top:16px; }

@media (max-width:900px){
  .hero-inner{ grid-template-columns:1fr; }
}

/* =========================
   Sections / Layout
========================= */
.section{
  padding:48px 0;
  background: var(--bg);
}
.section-alt{ background: var(--bg2); }

.grid-3{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
@media (max-width:900px){
  .grid-3{ grid-template-columns:1fr; }
}

.grid-4{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
@media (max-width:1100px){
  .grid-4{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px){
  .grid-4{ grid-template-columns:1fr; }
}

/* Section headings */
.section-head{ margin-bottom:16px; }
.section-head.center{ text-align:center; }
.center{ text-align:center; }

.section-head .eyebrow{
  text-align:center;
  color: #0f766e;
  letter-spacing: .12em;
  font-weight: 700;
  text-transform: uppercase;
  font-size:12px;
  opacity:.85;
  margin-bottom:8px;
}
.section-head h2{
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  color: var(--text);
}
.section-head p{ color: var(--muted); }

/* =========================
   Cards / Tiles
========================= */
.card, .tile{
  background: var(--card);
  color: var(--cardText);
  border: 1px solid var(--border2);
  border-radius: var(--radius);
  padding:16px;
  box-shadow: var(--shadow);
}
.card p, .tile p{ color: var(--cardMuted); }

.card-feature{ text-align:center; }
.card-feature .card-icon{
  display:block;
  margin:0 auto 16px;
  width:150px;
  height:auto;
  max-width:100%;
  object-fit:contain;
}

/* Full-width image tiles (scoped) */
.grid-feature-images .tile-feature{
  padding:0;
  overflow:hidden;
  text-align:left;
  box-shadow: var(--shadow);
}
.grid-feature-images .tile-feature .tile-icon{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  margin:0;
}
.grid-feature-images .tile-feature h3,
.grid-feature-images .tile-feature p{ padding:0 16px; }
.grid-feature-images .tile-feature h3{ margin-top:16px; }
.grid-feature-images .tile-feature p{ margin-bottom:20px; }

/* =========================
   Trust section
========================= */
.trust{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

/* =========================
   Footer
========================= */
.site-footer{
  background: var(--surface);
  color: var(--text);
  border-top: 1px solid var(--border2);
}
.site-footer .footer-inner{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
  padding: 22px 0;
}
.site-footer .footer-col{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:72px;
}
.site-footer .footer-social{
  display:flex !important;
  flex-direction:row !important;
  gap:14px !important;
  align-items:flex-end !important;
  justify-content:flex-end !important;
}
.site-footer .footer-social a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--text) !important;
}
.site-footer .footer-social a:hover{ color: var(--primary) !important; }
.site-footer .footer-social svg{
  display:block;
  width: 100%;
  height: 100%;
}

.footer-legal{
  font-size: 0.85rem;
  color: var(--muted);
  text-align: center;
  padding: 12px 0 20px;
}
.footer-legal p{ margin:0; }
.footer-legal a{ color: inherit; }
.footer-legal a:hover{ text-decoration: underline; }
.footer-link-button{
  appearance: none;
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  font: inherit;
  padding: 0;
  text-decoration: none;
}
.footer-link-button:hover{ text-decoration: underline; text-underline-offset: 3px; }

/* =========================
   Mobile tweaks
========================= */
@media (max-width:640px){
  .brand-name{ font-size:16px; }
  .site-footer .footer-inner{ align-items:flex-start; }
}

/* =========================
   How it works (scoped)
========================= */
.how-section{
  position: relative;
  background-size: cover;
  background-position: center;
  color: #ffffff;
}
.how-overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(5,12,24,.85), rgba(5,12,24,.90));
  z-index: 0;
}
.how-inner{ position: relative; z-index: 1; }
.how-grid{ gap:24px; }

#how .section-head h2{ color:#ffffff; }
#how .section-head .eyebrow{ color:#7dd3a6; }

.how-tile{
  text-align: center;
  background: rgba(8, 14, 28, 0.58);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 18px;
  box-shadow: 0 24px 80px rgba(0,0,0,0.45);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  padding: 2.5rem 2rem;
  transition: transform .3s ease, box-shadow .3s ease;
}
.how-tile:hover{
  transform: translateY(-6px);
  box-shadow: 0 30px 80px rgba(0,0,0,0.45);
}
.how-icon-wrap{
  width:132px;
  height:132px;
  margin:0 auto 16px;
  border-radius:18px;
  overflow:hidden;
  border:none;
}
.how-icon{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
#how .how-tile h3{ color:#fff; }
#how .how-tile p{ color:rgba(255,255,255,.90); }

/* =========================
   Productized offerings
========================= */
.offering-list{
  margin: 0 0 14px;
  padding-left: 18px;
}
.offering-list li{
  margin: 0 0 8px;
  color: var(--cardText);
}

/* =========================
   Homepage v2 (scoped)
========================= */
.hp-main{
  background: #eef1f5;
}

.hp-hero{
  position: relative;
  overflow: hidden;
  color: #ffffff;
  padding: clamp(68px, 10vw, 120px) 0 clamp(88px, 12vw, 140px);
  background: linear-gradient(140deg, #030b1e 0%, #05193e 46%, #0c2f66 100%);
}

.hp-hero::before{
  content:"";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background: var(--hero-bg) center / cover no-repeat;
}

.hp-hero::after{
  content:"";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(1200px 520px at 82% 34%, rgba(96, 199, 255, 0.22), transparent 58%),
    radial-gradient(900px 440px at 20% 100%, rgba(53, 113, 255, 0.22), transparent 62%),
    linear-gradient(
      180deg,
      rgba(7,11,20,var(--hero-overlay, .70)),
      rgba(7,11,20,calc(var(--hero-overlay, .70) + .14))
    );
}

.hp-hero-inner{
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 28px;
  align-items: center;
}

.hp-hero-copy h1{
  margin: 0 0 16px;
  font-size: clamp(2.1rem, 4.8vw, 4rem);
  line-height: 1.08;
  letter-spacing: -.02em;
}

.hp-hero-copy p{
  margin: 0;
  max-width: 44ch;
  color: rgba(240, 247, 255, .92);
  font-size: clamp(1.02rem, 2.1vw, 1.3rem);
}

.hp-hero-cta{
  margin-top: 24px;
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.hp-hero-cta .btn{
  min-height: 46px;
  padding: 11px 22px;
  border-radius: 10px;
}

.hp-hero-cta .btn-ghost{
  border-color: rgba(255,255,255,.42);
  color: #ffffff;
  background: rgba(255,255,255,.06);
}

.hp-pillars{
  margin-top: -64px;
  position: relative;
  z-index: 3;
}

.hp-grid{
  display: grid;
  gap: 18px;
}

.hp-grid-3{
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hp-pillars-grid{
  grid-template-columns: repeat(3, minmax(240px, 1fr));
}

.hp-card{
  background: #ffffff;
  border: 1px solid #d6dbe4;
  border-radius: 14px;
  box-shadow: 0 12px 34px rgba(15, 23, 42, .10);
  padding: 28px 24px;
}

.hp-card-pillar{
  text-align: center;
}

.hp-icon-img{
  display: block;
  width: auto;
  max-width: 140px;
  height: auto;
  max-height: 92px;
  object-fit: contain;
  margin: 0 auto 6px;
}

.hp-card h2,
.hp-card h3{
  margin: 14px 0 12px;
  font-size: clamp(1.45rem, 2.3vw, 2rem);
  line-height: 1.2;
  color: #0b1020;
}

.hp-card h3{
  font-size: clamp(1.25rem, 2vw, 1.7rem);
}

.hp-card p{
  margin: 0;
  color: #374151;
  font-size: 1.05rem;
  line-height: 1.52;
}

.hp-what{
  padding: 72px 0 56px;
}

.hp-section-head{
  text-align: center;
  margin-bottom: 30px;
}

.hp-eyebrow{
  margin: 0 0 12px;
  font-size: .86rem;
  letter-spacing: .35em;
  text-transform: uppercase;
  font-weight: 700;
  color: #4b5563;
}

.hp-section-head h2{
  margin: 0;
  font-size: clamp(1.95rem, 4vw, 3.25rem);
  line-height: 1.12;
  color: #0b1020;
}

.hp-service{
  padding: 0 0 20px;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, .24);
  background: linear-gradient(180deg, #f7fbff 0%, #eef5ff 100%);
  box-shadow: 0 10px 24px rgba(12, 39, 72, .08);
}

.hp-service-top{
  position: relative;
  display: flex;
  align-items: center;
  min-height: 170px;
  background: #0a2b57;
}

.hp-service-img{
  width: 100%;
  min-height: 170px;
  max-height: 190px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.hp-service-top::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(2,10,26,0.10) 32%, rgba(2,10,26,0.74) 72%);
  pointer-events: none;
}

.hp-service .hp-service-title{
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  max-width: 58%;
  margin: 0;
  text-align: right;
  color: #ffffff;
  font-size: clamp(1.25rem, 1.75vw, 1.7rem);
  line-height: 1.15;
  text-shadow: 0 2px 14px rgba(0,0,0,.45);
}

.hp-service-desc{
  margin: 14px 16px 0;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, .64);
  background: linear-gradient(180deg, rgba(59,130,246,.08), rgba(110,231,183,.08));
  color: #173651;
  font-size: 1.02rem;
  line-height: 1.62;
  letter-spacing: .01em;
  font-weight: 500;
}

.hp-what .hp-service .hp-service-desc{
  opacity: 0;
  transform: translateY(16px);
  animation: fadeUp .75s ease forwards;
}

.hp-what .hp-service:nth-child(2) .hp-service-desc{ animation-delay: .08s; }
.hp-what .hp-service:nth-child(3) .hp-service-desc{ animation-delay: .16s; }

.hp-what .hp-service .hp-service-desc strong{
  display: block;
  margin: 2px 0;
  font-weight: 700;
  font-size: 1.06em;
  background: linear-gradient(90deg, #6EE7B7, #3B82F6);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.hp-footnote{
  margin: 22px 0 0;
  text-align: center;
  color: #4b5563;
}

.hp-process{
  color: #ffffff;
  padding: 62px 0 70px;
  background:
    radial-gradient(900px 280px at 50% 50%, rgba(86, 242, 219, .22), transparent 64%),
    linear-gradient(130deg, #03102a 0%, #072248 58%, #12376e 100%);
}

.hp-process .hp-eyebrow{
  color: rgba(201, 230, 255, .9);
}

.hp-process .hp-section-head h2{
  color: #ffffff;
}

.hp-steps{
  gap: 16px;
}

.hp-step{
  background: rgba(3, 12, 31, .48);
  border: 1px solid rgba(172, 210, 255, .24);
  border-radius: 14px;
  padding: 24px 20px;
  text-align: center;
}

.hp-step h3{
  margin: 0 0 12px;
  font-size: clamp(1.6rem, 2.8vw, 2.25rem);
  line-height: 1.15;
}

.hp-step h3 span{
  color: #79f3d0;
}

.hp-step p{
  margin: 0;
  color: rgba(234, 244, 255, .92);
}

.hp-cta{
  padding: 62px 0 90px;
}

.hp-cta-inner{
  text-align: center;
}

.hp-cta h2{
  margin: 0 0 18px;
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: 1.12;
}

.hp-cta p{
  margin: 0 0 26px;
  color: #374151;
  font-size: clamp(1.05rem, 2vw, 1.3rem);
}

@media (max-width: 980px){
  .hp-hero-inner{
    grid-template-columns: 1fr;
  }

  .hp-hero-copy{
    text-align: center;
  }

  .hp-hero-copy p{
    margin: 0 auto;
  }

  .hp-hero-cta{
    justify-content: center;
  }

  .hp-grid-3{
    grid-template-columns: 1fr;
  }

  .hp-grid-2{
    grid-template-columns: 1fr;
  }

  .hp-what .hp-grid-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hp-pillars-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }

  .hp-pillars{
    margin-top: -38px;
  }

  .hp-hero-points{
    text-align: left;
    display: inline-block;
  }
}

@media (max-width: 720px){
  .hp-pillars-grid{
    grid-template-columns: 1fr;
  }

  .hp-service-top{
    min-height: 160px;
  }

  .hp-service-img{
    width: 100%;
    min-height: 160px;
    max-height: 220px;
  }

  .hp-service-title{
    max-width: 68%;
    right: 14px;
    font-size: clamp(1.1rem, 4vw, 1.45rem);
  }
}

/* Homepage BMS flow enhancements */
.hp-hero-points{
  margin: 18px 0 0;
  padding-left: 20px;
  color: rgba(240,247,255,.95);
}

.hp-hero-points li{
  margin: 6px 0;
}

.hp-hero-proof{
  margin-top: 14px !important;
  color: rgba(193, 224, 255, .9) !important;
  font-size: .95rem !important;
}

.hp-proof .hp-card{
  padding: 22px 20px;
}

.hp-proof .hp-card h2{
  margin-top: 2px;
}

.hp-problem{
  padding-top: 60px;
}

.hp-guide{
  padding: 24px 0 54px;
}

.hp-guide-card{
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
  background: linear-gradient(180deg, #f8fbff 0%, #edf5ff 100%);
  border-color: rgba(37,99,235,.22);
}

.hp-guide-card h2{
  margin: 0 0 12px;
}

.hp-guide-card p{
  max-width: 70ch;
  margin-inline: auto;
}

.hp-guide-cta{
  margin-top: 18px;
}

.hp-plan-cta{
  margin-top: 24px;
  text-align: center;
}

.hp-offers{
  padding-top: 70px;
}

.hp-stakes{
  padding: 64px 0;
  background: linear-gradient(180deg, #f7fbff 0%, #edf4fb 100%);
}

.hp-grid-2{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-stake{
  min-height: 100%;
}

.hp-stake h3{
  margin-top: 0;
}

.hp-stake .offering-list{
  margin: 0;
  padding-left: 20px;
}

.hp-stake .offering-list li{
  margin-bottom: 8px;
  color: #334155;
}

.hp-stake-risk{
  border-left: 5px solid #ef4444;
}

.hp-stake-win{
  border-left: 5px solid #10b981;
}

.hp-final-cta{
  background: radial-gradient(900px 320px at 50% 0%, rgba(59,130,246,.12), transparent 60%);
}

/* =========================
   Products page (scoped)
========================= */
.products-hero{
  color: #ffffff;
  padding: 64px 0 70px;
  background:
    linear-gradient(180deg, rgba(4,14,30,.44), rgba(4,14,30,.74)),
    url('https://innoaxis.ca/wp-content/uploads/2026/03/product_qt.png') center / cover no-repeat;
}

.products-hero-inner{
  max-width: 940px;
}

.products-eyebrow{
  margin: 0 0 12px;
  text-transform: uppercase;
  font-size: .84rem;
  letter-spacing: .25em;
  color: rgba(209, 233, 255, .9);
  font-weight: 700;
}

.products-hero h1{
  margin: 0 0 14px;
  font-size: clamp(2rem, 4vw, 3.3rem);
  line-height: 1.12;
}

.products-lead{
  margin: 0;
  max-width: 75ch;
  color: rgba(234, 244, 255, .94);
  line-height: 1.6;
}

.products-hero-cta{
  margin-top: 24px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.products-hero-cta .btn-outline{
  color: #ffffff;
  border-color: rgba(255,255,255,.44);
  background: rgba(255,255,255,.05);
}

.products-journey{
  position: relative;
  padding: clamp(56px, 6vw, 96px) 0;
  background: radial-gradient(1000px 600px at 50% -10%, rgba(30,144,255,.18), transparent 60%),
              radial-gradient(900px 500px at 90% 20%, rgba(126,217,87,.16), transparent 55%),
              linear-gradient(180deg, #07131c 0%, #050c12 100%);
  color: #eaf2ff;
  overflow: hidden;
}

.products-journey::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: radial-gradient(circle at 20% 10%, rgba(30,144,255,.10), transparent 40%),
              radial-gradient(circle at 80% 30%, rgba(126,217,87,.10), transparent 45%);
  pointer-events:none;
}

.journey-title{
  text-align: center;
  font-size: clamp(1.5rem, 2.2vw, 2.2rem);
  font-weight: 700;
  letter-spacing: .4px;
  margin: 0 0 42px;
}

.journey-steps{
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
  gap: 18px;
  align-items: stretch;
}

/* Progress line behind */
.journey-steps::before{
  content:"";
  position:absolute;
  left: 5%;
  right: 5%;
  top: 44px;
  height: 3px;
  background: linear-gradient(90deg, rgba(30,144,255,.85), rgba(126,217,87,.85));
  filter: drop-shadow(0 0 10px rgba(30,144,255,.35));
  border-radius: 999px;
  z-index: 0;
  opacity: .9;
}

/* Step card */
.journey-step{
  position: relative;
  z-index: 1;
  padding: 22px 18px 20px;
  border-radius: 18px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  backdrop-filter: blur(10px);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.journey-step:hover{
  transform: translateY(-6px);
  border-color: rgba(126,217,87,.35);
  box-shadow: 0 16px 40px rgba(0,0,0,.45);
}

.journey-step h3{
  margin: 12px 0 10px;
  font-size: 1.05rem;
  font-weight: 700;
  color: #ffffff;
}

.journey-step p{
  margin: 0;
  font-size: .95rem;
  line-height: 1.45;
  color: rgba(234,242,255,.82);
}

/* Icon circle */
.step-icon{
  width: 54px;
  height: 54px;
  margin: 0 auto;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, rgba(30,144,255,.25), rgba(126,217,87,.18));
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 0 0 6px rgba(255,255,255,.03), 0 0 28px rgba(30,144,255,.22);
  position: relative;
  font-size: 1rem;
  font-weight: 800;
  color: #ffffff;
}

/* Arrow */
.journey-arrow{
  position: relative;
  width: 38px;
  min-width: 38px;
  display: grid;
  place-items: center;
  z-index: 2;
}

.journey-arrow::before{
  content:"";
  width: 14px;
  height: 14px;
  border-right: 2px solid rgba(234,242,255,.55);
  border-top: 2px solid rgba(234,242,255,.55);
  transform: rotate(45deg);
  filter: drop-shadow(0 0 10px rgba(30,144,255,.20));
  opacity: .9;
}

/* Subtle flow animation */
@media (prefers-reduced-motion: no-preference){
  .journey-arrow::before{
    animation: arrowPulse 1.6s ease-in-out infinite;
  }
  @keyframes arrowPulse{
    0%, 100%{ transform: translateX(0) rotate(45deg); opacity:.55; }
    50%{ transform: translateX(4px) rotate(45deg); opacity:.95; }
  }
}

/* Responsive: stack */
@media (max-width: 980px){
  .journey-steps{
    grid-template-columns: 1fr;
  }

  .journey-steps::before{
    left: 50%;
    right: auto;
    top: 0;
    bottom: 0;
    width: 3px;
    height: auto;
    transform: translateX(-50%);
    background: linear-gradient(180deg, rgba(30,144,255,.85), rgba(126,217,87,.85));
  }

  .journey-arrow{
    width: 100%;
    min-width: 0;
    height: 20px;
  }

  .journey-arrow::before{
    transform: rotate(135deg);
  }
}

@media (max-width: 980px) and (prefers-reduced-motion: no-preference){
  @keyframes arrowPulse{
    0%, 100%{ transform: translateY(0) rotate(135deg); opacity:.55; }
    50%{ transform: translateY(4px) rotate(135deg); opacity:.95; }
  }
}

.products-grid,
.product-accordion{
  position: relative;
  display: grid;
  padding: 14px;
  border-radius: 16px;
  background:
    radial-gradient(900px 480px at 20% 0%, rgba(30,144,255,.16), transparent 62%),
    radial-gradient(900px 480px at 85% 18%, rgba(126,217,87,.12), transparent 62%),
    linear-gradient(180deg, #07131c 0%, #050c12 100%);
  border: 1px solid rgba(255,255,255,.10);
}

.products-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.product-accordion{
  grid-template-columns: 1fr;
  gap: 12px;
}

.product-item{
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(255,255,255,.04);
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  backdrop-filter: blur(8px);
  overflow: hidden;
}

.product-item > summary{
  list-style: none;
  cursor: pointer;
  padding: 16px 18px;
  font-size: clamp(1.2rem, 2vw, 1.45rem);
  font-weight: 700;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: linear-gradient(90deg, rgba(9,34,73,.86), rgba(18,77,111,.48));
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.product-item > summary::-webkit-details-marker{
  display: none;
}

.product-item > summary::after{
  content: "+";
  font-size: 1.35rem;
  font-weight: 700;
  color: rgba(223, 238, 255, .95);
}

.product-item[open] > summary::after{
  content: "-";
}

.product-item-body{
  padding: 18px;
  color: rgba(223, 238, 255, .92);
  background: rgba(7, 20, 45, .22);
}

.product-item-body > p{
  margin: 0 0 12px;
}

.product-card{
  background: #ffffff;
  border: 1px solid #d7dde6;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .08);
  padding: 24px;
}

.product-card h2{
  margin: 0 0 10px;
  font-size: clamp(1.4rem, 2.2vw, 2rem);
}

.product-card p{
  margin: 0 0 10px;
  color: #334155;
}

.product-meta{
  margin: 8px 0 0;
  color: #475569;
  font-size: .97rem;
}

/* Secure Foundation Detail */
.sf-detail,
.secure-foundation-detail{
  position: relative;
  background:
    radial-gradient(900px 500px at 20% 0%, rgba(30,144,255,.16), transparent 60%),
    radial-gradient(900px 500px at 80% 20%, rgba(126,217,87,.13), transparent 60%),
    linear-gradient(180deg, #07131c 0%, #050c12 100%);
  color: #eaf2ff;
}

.sf-head,
.sf-header{
  margin-bottom: 18px;
}

.sf-head .eyebrow,
.sf-header .eyebrow{
  margin: 0 0 10px;
  color: rgba(186, 223, 255, .9);
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .82rem;
  font-weight: 700;
}

.sf-head h2,
.sf-header h2{
  margin: 0 0 10px;
  font-size: clamp(1.65rem, 3.1vw, 2.5rem);
  line-height: 1.15;
  color: #ffffff;
}

.sf-head .muted,
.sf-header .muted{
  color: rgba(223, 238, 255, .88);
}

.sf-subtitle{
  margin: 0 0 10px;
  color: rgba(223, 238, 255, .92);
  font-weight: 700;
  letter-spacing: .02em;
}

.sf-intro{
  margin: 0;
  color: rgba(223, 238, 255, .88);
  line-height: 1.62;
}

.sf-deliverables{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}

.sf-card{
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  padding: 18px 16px;
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  backdrop-filter: blur(10px);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.sf-card:hover{
  transform: translateY(-6px);
  border-color: rgba(126,217,87,.35);
  box-shadow: 0 16px 40px rgba(0,0,0,.45);
}

.sf-card h3{
  margin: 0 0 8px;
  font-size: 1.08rem;
  color: #ffffff;
}

.sf-card p{
  margin: 0;
  color: rgba(223, 238, 255, .92);
  line-height: 1.55;
}

.sf-card ul{
  margin: 12px 0 0;
  padding-left: 18px;
}

.sf-card li{
  margin: 0 0 7px;
  color: rgba(223, 238, 255, .90);
}

.sf-outcome{
  margin-top: 18px;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(126,217,87,.35);
  border-left: 4px solid rgba(126,217,87,.85);
  border-radius: 12px;
  padding: 16px;
}

.sf-outcome h3{
  margin: 0 0 6px;
  color: #ffffff;
}

.sf-outcome p{
  margin: 0;
  color: rgba(223, 238, 255, .92);
}

.sf-cta{
  margin-top: 16px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

@media (max-width: 980px){
  .products-grid{
    grid-template-columns: 1fr;
  }

  .sf-deliverables{
    grid-template-columns: 1fr;
  }
}


/* Products accordion spacing + readability fixes */
.section .product-accordion,
.section .products-grid{
  margin-top: clamp(20px, 3.5vw, 38px);
  padding: clamp(16px, 2.2vw, 24px);
}

.product-accordion{
  background:
    radial-gradient(980px 520px at 20% 0%, rgba(30,144,255,.22), transparent 62%),
    radial-gradient(920px 500px at 85% 18%, rgba(126,217,87,.16), transparent 62%),
    linear-gradient(180deg, #0a1d2d 0%, #081623 100%);
}

.product-item{
  background: rgba(255,255,255,.07);
  border-color: rgba(255,255,255,.18);
}

.product-item > summary{
  background: linear-gradient(90deg, rgba(12,45,92,.86), rgba(21,90,130,.58));
}

.product-item-body{
  background: rgba(12, 36, 66, .56);
  color: rgba(241, 248, 255, .96);
}

.product-item-body > p,
.product-item .product-meta,
.product-item .offering-list li{
  color: rgba(234, 244, 255, .94);
}

.product-item .product-meta{
  font-weight: 600;
}

.product-item .sf-card{
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.18);
}

.product-item .sf-card h3{
  color: #ffffff;
}

.product-item .sf-card p,
.product-item .sf-card li{
  color: rgba(234, 244, 255, .94);
}

.product-item .sf-outcome{
  background: rgba(255,255,255,.09);
  border-color: rgba(126,217,87,.55);
}

/* Extra breathing room after deliverable cards */
.product-item .sf-deliverables{
  margin-bottom: clamp(18px, 2.8vw, 30px);
}

/* Header label no-wrap fix (FR menu/buttons) */
.nav #primary-menu.menu a,
.header-actions .btn{
  white-space: nowrap;
}

@media (max-width: 1240px){
  .nav #primary-menu.menu{ gap: 14px; }
  .nav #primary-menu.menu a{ font-size: 15px; }
  .header-actions{ gap: 10px; }
  .header-actions .btn{ padding: 10px 12px; }
}

/* Interior pages: shared theme (services, about, pricing, how, industries, resources, contact, book) */
.interior-page-hero{
  position: relative;
  padding: clamp(56px, 6vw, 92px) 0;
  background:
    radial-gradient(980px 520px at 72% 16%, rgba(30,144,255,.22), transparent 60%),
    radial-gradient(860px 480px at 18% 0%, rgba(126,217,87,.14), transparent 62%),
    linear-gradient(180deg, #07131c 0%, #050c12 100%);
  color: #eaf2ff;
  overflow: hidden;
}

.interior-page-hero::before{
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 85% 10%, rgba(120, 198, 255, .18), transparent 34%),
    radial-gradient(circle at 14% 26%, rgba(126,217,87,.12), transparent 36%);
  pointer-events: none;
}

.interior-page-hero .container{
  position: relative;
  z-index: 1;
}

.interior-page-hero .section-head{ margin-bottom: 0; }

.interior-page-hero .section-head .eyebrow{
  text-align: left;
  color: rgba(186, 223, 255, .92);
}

.interior-page-hero .section-head h1,
.interior-page-hero > .container > h1{
  margin: 0 0 12px;
  max-width: 24ch;
  color: #ffffff;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1.12;
}

.interior-page-hero .section-head .muted,
.interior-page-hero > .container > .muted{
  max-width: 72ch;
  color: rgba(234, 244, 255, .92);
}

.interior-page-content,
.interior-page-cta{
  background: #f4f8fc;
}

.interior-page-alt{
  background:
    radial-gradient(980px 420px at 15% -12%, rgba(30,144,255,.13), transparent 62%),
    radial-gradient(900px 420px at 88% -8%, rgba(126,217,87,.11), transparent 62%),
    #eef5fb;
}

.interior-page-content .card,
.interior-page-cta .card,
.interior-page-content .trust,
.interior-page-cta .trust{
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(7, 26, 52, .10);
  border-radius: 16px;
  box-shadow: 0 16px 34px rgba(8, 28, 52, .10);
  backdrop-filter: blur(8px);
}

.interior-page-content .card,
.interior-page-cta .card{ padding: 18px; }

.interior-page-content .card h3,
.interior-page-cta .card h3,
.interior-page-content .trust h2,
.interior-page-cta .trust h2{ color: #0f172a; }

.interior-page-content .card p,
.interior-page-cta .card p,
.interior-page-content .offering-list li,
.interior-page-cta .offering-list li,
.interior-page-content .muted,
.interior-page-cta .muted,
.interior-page-content .trust .muted,
.interior-page-cta .trust .muted{
  color: #334155;
}

.interior-page-content .trust,
.interior-page-cta .trust{
  padding: clamp(16px, 2.2vw, 24px);
}

.interior-page-content .btn,
.interior-page-cta .btn{ white-space: nowrap; }

@media (max-width: 980px){
  .interior-page-hero .section-head h1,
  .interior-page-hero > .container > h1{
    max-width: 100%;
  }

  .interior-page-content .trust,
  .interior-page-cta .trust{
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Services page: larger hierarchy + alternating contrast (Trust Framework palette) */
.page-template-page-services .interior-page-content.services-framework,
.page-template-page-services .interior-page-content.services-fit,
.page-template-page-services .interior-page-cta{
  background:
    radial-gradient(1000px 560px at 50% -8%, rgba(30,144,255,.18), transparent 60%),
    radial-gradient(900px 500px at 88% 18%, rgba(126,217,87,.14), transparent 58%),
    linear-gradient(180deg, #07131c 0%, #050c12 100%);
  color: #eaf2ff;
}

/* Services hero aligned with home/industries hero treatment */
.page-template-page-services .interior-page-hero{
  padding: clamp(96px, 11vw, 170px) 0 clamp(88px, 10vw, 150px);
  background:
    linear-gradient(180deg, rgba(4,14,30,.44), rgba(4,14,30,.72)),
    url('https://innoaxis.ca/wp-content/uploads/2026/03/services_bg.png') center / cover no-repeat;
}

.page-template-page-services .services-framework .section-head .eyebrow,
.page-template-page-services .services-fit .section-head .eyebrow{
  color: rgba(186,223,255,.92);
}

.page-template-page-services .services-framework .section-head h2,
.page-template-page-services .services-fit .section-head h2,
.page-template-page-services .interior-page-cta h2{
  color: #ffffff;
}

.page-template-page-services .services-framework .muted,
.page-template-page-services .services-fit .muted,
.page-template-page-services .interior-page-cta .muted{
  color: rgba(223, 238, 255, .9);
}

.page-template-page-services .interior-page-cta .trust{
  background: rgba(8, 24, 46, .62);
  border: 1px solid rgba(186, 223, 255, .20);
  box-shadow: 0 18px 42px rgba(0,0,0,.38);
}

.page-template-page-services .interior-page-cta .btn.btn-outline{
  color: #ffffff;
  border-color: rgba(255, 255, 255, .72);
}

.page-template-page-services .interior-page-cta .btn.btn-outline:hover{
  color: #ffffff;
  border-color: #ffffff;
  background: rgba(255, 255, 255, .08);
}

.page-template-page-services .interior-page-content{
  background:
    radial-gradient(880px 320px at 50% -18%, rgba(30,144,255,.08), transparent 62%),
    #f6f9fd;
}

.page-template-page-services .interior-page-alt{
  background:
    radial-gradient(980px 420px at 15% -12%, rgba(30,144,255,.10), transparent 62%),
    radial-gradient(900px 420px at 88% -8%, rgba(126,217,87,.10), transparent 62%),
    #eef5fb;
}

.page-template-page-services .section-head.center h2{
  font-size: clamp(2.2rem, 3.6vw, 3rem);
  line-height: 1.12;
}

.page-template-page-services .services-framework .card,
.page-template-page-services .services-fit .card{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 16px;
  box-shadow: 0 14px 34px rgba(0,0,0,.35);
  backdrop-filter: blur(8px);
}

.page-template-page-services .services-artifacts .card,
.page-template-page-services .interior-page-content .container.grid-3 > .card{
  background: #ffffff;
  border: 1px solid #d7dde6;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .08);
}

.page-template-page-services .services-framework .card h3,
.page-template-page-services .services-fit .card h3{
  font-size: clamp(1.3rem, 2vw, 1.58rem);
  color: #ffffff;
}

.page-template-page-services .services-framework .card p,
.page-template-page-services .services-fit .card p{
  font-size: 1.08rem;
  line-height: 1.66;
  color: rgba(234, 244, 255, .93);
}

@media (max-width: 900px){
  .page-template-page-services .section-head.center h2{
    font-size: clamp(2.05rem, 7vw, 2.45rem);
  }

  .page-template-page-services .services-framework .card h3,
  .page-template-page-services .services-fit .card h3{
    font-size: clamp(1.34rem, 5vw, 1.6rem);
  }

  .page-template-page-services .services-framework .card p,
  .page-template-page-services .services-fit .card p{
    font-size: 1.12rem;
    line-height: 1.7;
  }
}

/* Services framework flow */
.page-template-page-services .framework-steps{
  position: relative;
  align-items: stretch;
}

.page-template-page-services .framework-steps::before{
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  top: 52px;
  height: 3px;
  background: linear-gradient(90deg, rgba(30,144,255,.75), rgba(126,217,87,.75));
  border-radius: 999px;
  opacity: .9;
  pointer-events: none;
}

.page-template-page-services .framework-step{
  position: relative;
  z-index: 1;
}

.page-template-page-services .framework-step::after{
  content: attr(data-step);
  position: absolute;
  top: 12px;
  right: 12px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  font-size: .85rem;
  font-weight: 800;
  color: rgba(255,255,255,.94);
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
}

.page-template-page-services .framework-icon{
  width: 54px;
  height: 54px;
  border-radius: 999px;
  margin: 0 0 12px;
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 0 0 6px rgba(255,255,255,.03), 0 0 28px rgba(30,144,255,.22);
  background: linear-gradient(135deg, rgba(30,144,255,.28), rgba(126,217,87,.22));
}

.page-template-page-services .framework-icon.discovery{
  background:
    radial-gradient(circle at 35% 35%, rgba(255,255,255,.92) 0 10%, transparent 12%),
    linear-gradient(135deg, rgba(30,144,255,.28), rgba(126,217,87,.22));
}

.page-template-page-services .framework-icon.stabilize{
  background:
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.92) 0 9%, transparent 11%),
    linear-gradient(135deg, rgba(30,144,255,.28), rgba(126,217,87,.22));
}

.page-template-page-services .framework-icon.implement{
  background:
    radial-gradient(circle at 62% 40%, rgba(255,255,255,.92) 0 8%, transparent 10%),
    linear-gradient(135deg, rgba(30,144,255,.28), rgba(126,217,87,.22));
}

.page-template-page-services .framework-icon.govern{
  background:
    radial-gradient(circle at 50% 34%, rgba(255,255,255,.92) 0 8%, transparent 10%),
    linear-gradient(135deg, rgba(30,144,255,.28), rgba(126,217,87,.22));
}

@media (max-width: 1100px){
  .page-template-page-services .framework-steps::before{
    display: none;
  }
}

@media (max-width: 700px){
  .page-template-page-services .framework-steps::before{
    display: block;
    left: 26px;
    right: auto;
    top: 24px;
    bottom: 24px;
    width: 3px;
    height: auto;
    background: linear-gradient(180deg, rgba(30,144,255,.75), rgba(126,217,87,.75));
  }

.page-template-page-services .framework-step{
    padding-left: 20px;
  }
}

/* Industries accordion readability */
.page-template-page-industries .product-item-body{
  color: rgba(240, 247, 255, .96);
}

.page-template-page-industries .product-item-body .offering-list li{
  color: rgba(232, 242, 255, .95);
}

.page-template-page-industries .product-item-body .offering-list li::marker{
  color: rgba(178, 214, 255, .9);
}

.page-template-page-industries .product-item-body .btn.btn-outline{
  color: #eaf4ff;
  border-color: rgba(234, 244, 255, .62);
  background: rgba(255,255,255,.04);
}

/* Industries hero image override */
.page-template-page-industries .interior-page-hero{
  padding: clamp(96px, 11vw, 170px) 0 clamp(88px, 10vw, 150px);
  background:
    linear-gradient(180deg, rgba(4, 14, 30, .46), rgba(4, 14, 30, .72)),
    url('https://innoaxis.ca/wp-content/uploads/2026/03/industries.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Bottom Industries Visual */
.industries-bottom-visual {
  margin: 40px auto 60px;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(255,255,255,0.06);
  min-height: clamp(220px, 32vw, 420px);
  background-image:
    linear-gradient(180deg, rgba(4, 14, 30, .32), rgba(4, 14, 30, .52)),
    url('https://innoaxis.ca/wp-content/uploads/2026/03/downtown.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.industries-bottom-visual img {
  width: 100%;
  height: auto;
  display: block;
}

/* Industries proof section: dark blue/green theme */
.page-template-page-industries .interior-page-content.interior-page-alt{
  background:
    radial-gradient(980px 520px at 50% -10%, rgba(30,144,255,.18), transparent 60%),
    radial-gradient(900px 500px at 88% 22%, rgba(126,217,87,.14), transparent 58%),
    linear-gradient(180deg, #07131c 0%, #050c12 100%);
  color: #eaf2ff;
}

.page-template-page-industries .interior-page-content.interior-page-alt .section-head .eyebrow,
.page-template-page-industries .interior-page-content.interior-page-alt .section-head h2,
.page-template-page-industries .interior-page-content.interior-page-alt .muted{
  color: rgba(234, 244, 255, .94);
}

.page-template-page-industries .interior-page-content.interior-page-alt .card{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 14px 34px rgba(0,0,0,.35);
}

.page-template-page-industries .interior-page-content.interior-page-alt .card h3{
  color: #ffffff;
}

/* Eyebrow consistency across pages */
:root{
  --eyebrow-size: clamp(.94rem, 1.1vw, 1.04rem);
  --eyebrow-track: .2em;
}

.hp-eyebrow,
.products-eyebrow,
.section-head .eyebrow,
.sf-head .eyebrow,
.sf-header .eyebrow{
  margin: 0 0 12px;
  font-size: var(--eyebrow-size);
  letter-spacing: var(--eyebrow-track);
  text-transform: uppercase;
  font-weight: 700;
  line-height: 1.2;
}

/* Default on light backgrounds */
.hp-eyebrow,
.section-head .eyebrow,
.sf-head .eyebrow,
.sf-header .eyebrow{
  color: #1f3b58;
}

/* Lighter eyebrow color on dark backgrounds */
.products-eyebrow,
.hp-process .hp-eyebrow,
.interior-page-hero .section-head .eyebrow,
.page-template-page-services .services-framework .section-head .eyebrow,
.page-template-page-services .services-fit .section-head .eyebrow{
  color: rgba(204, 230, 255, .94);
}

/* Homepage service highlight */
.hp-service-highlight {
  text-align: center;
  padding: 80px 20px;
  background: linear-gradient(
    180deg,
    rgba(10,20,40,0.85),
    rgba(5,15,30,1)
  );
}

.hp-service-highlight .hp-service-desc {
  font-size: clamp(1.6rem, 2vw, 2.1rem);
  line-height: 1.5;
  max-width: 900px;
  margin: 0 auto;
  color: #ffffff;
  font-weight: 500;

  opacity: 0;
  transform: translateY(20px);
  animation: fadeUp 0.9s ease forwards;
}

.hp-service-highlight .hp-service-desc strong {
  display: block;
  font-weight: 700;
  font-size: 1.15em;
  background: linear-gradient(90deg, #6EE7B7, #3B82F6);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ===== High-end AI Motion Nav ===== */
.site-header{
  position: sticky;
  top: 0;
  z-index: 1000;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

/* Glass container behind nav area */
.site-header::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background: linear-gradient(
    180deg,
    rgba(255,255,255,.86),
    rgba(255,255,255,.72)
  );
  border-bottom: 1px solid rgba(148,163,184,.24);
}

/* Ensure header content is above glass layer */
.site-header .header-inner{
  position: relative;
  z-index: 1;
}

/* Nav base */
.nav{
  position: relative;
}

/* Animated "data glow" behind the menu (desktop + mobile) */
.nav::before{
  content:"";
  position:absolute;
  inset:-18px -16px;
  pointer-events:none;
  opacity:.0;
  transition: opacity .35s ease;
  background:
    radial-gradient(600px 220px at 20% 20%, rgba(59,130,246,.20), transparent 60%),
    radial-gradient(520px 220px at 80% 30%, rgba(110,231,183,.16), transparent 62%),
    linear-gradient(90deg, rgba(255,255,255,.06), rgba(255,255,255,0));
  filter: blur(2px);
}

/* Show glow when hovering nav area OR menu open */
.nav:hover::before,
.nav.nav-open::before{
  opacity: 1;
}

/* Menu layout upgrades */
.menu{
  display:flex;
  gap: 10px;
  align-items:center;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(148,163,184,.28);
  box-shadow: 0 10px 28px rgba(15, 23, 42, .12);
}

/* Links: premium type + spacing */
.menu a{
  position: relative;
  display:inline-flex;
  align-items:center;
  padding: 10px 12px;
  border-radius: 999px;
  text-decoration:none;
  color: #1e293b;
  letter-spacing: .2px;
  transition: transform .18s ease, background .18s ease, color .18s ease;
  outline: none;
}

/* Animated underline "signal" */
.menu a::after{
  content:"";
  position:absolute;
  left: 14px;
  right: 14px;
  bottom: 6px;
  height: 2px;
  border-radius: 999px;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .22s ease;
  background: linear-gradient(90deg, rgba(110,231,183,.0), rgba(110,231,183,.9), rgba(59,130,246,.9), rgba(59,130,246,0));
  filter: drop-shadow(0 0 10px rgba(110,231,183,.25));
}

/* Hover state */
.menu a:hover{
  background: rgba(59,130,246,.24);
  transform: translateY(-1px);
  color: #0f172a;
}

.menu a:hover::after{
  transform: scaleX(1);
}

/* Current page: persistent highlight */
.menu .current-menu-item > a,
.menu a[aria-current="page"]{
  background: rgba(59,130,246,.30);
  border: 1px solid rgba(147,197,253,.46);
  color:#fff;
}

.menu .current-menu-item > a::after,
.menu a[aria-current="page"]::after{
  transform: scaleX(1);
}

/* Focus styles (accessible) */
.menu a:focus-visible{
  box-shadow: 0 0 0 3px rgba(59,130,246,.35);
}

/* ===== Mobile nav open animation ===== */
@media (max-width: 980px){
  /* Allow menu to feel like a panel when open */
  .menu{
    flex-direction: column;
    align-items: stretch;
    border-radius: 18px;
    padding: 10px;
  }

  .menu a{
    justify-content: center;
    padding: 12px 14px;
  }

  /* Staggered reveal when nav-open */
  .nav .menu .menu-item{
    opacity: 0;
    transform: translateY(10px);
  }

  .nav.nav-open .menu .menu-item{
    animation: navItemIn .45s ease forwards;
  }

  /* Stagger using nth-child */
  .nav.nav-open .menu .menu-item:nth-child(1){ animation-delay: .03s; }
  .nav.nav-open .menu .menu-item:nth-child(2){ animation-delay: .06s; }
  .nav.nav-open .menu .menu-item:nth-child(3){ animation-delay: .09s; }
  .nav.nav-open .menu .menu-item:nth-child(4){ animation-delay: .12s; }
  .nav.nav-open .menu .menu-item:nth-child(5){ animation-delay: .15s; }
  .nav.nav-open .menu .menu-item:nth-child(6){ animation-delay: .18s; }
  .nav.nav-open .menu .menu-item:nth-child(7){ animation-delay: .21s; }
  .nav.nav-open .menu .menu-item:nth-child(8){ animation-delay: .24s; }

  @keyframes navItemIn{
    to{ opacity: 1; transform: translateY(0); }
  }
}

/* ===== Reduce motion for accessibility ===== */
@media (prefers-reduced-motion: reduce){
  .menu a,
  .menu a::after,
  .nav::before{
    transition: none !important;
    animation: none !important;
  }
}

/* ===== Services HOW WE WORK: AI Visual Upgrade ===== */
.page-template-page-services .section.services-framework{
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(1000px 560px at 50% -8%, rgba(30,144,255,.18), transparent 60%),
    radial-gradient(900px 500px at 88% 18%, rgba(126,217,87,.14), transparent 58%),
    linear-gradient(180deg, #07131c 0%, #050c12 100%);
}

.page-template-page-services .section.services-framework::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(800px 300px at 18% 12%, rgba(59,130,246,.20), transparent 64%),
    radial-gradient(700px 280px at 84% 18%, rgba(110,231,183,.16), transparent 66%),
    linear-gradient(180deg, rgba(2,10,22,.08), rgba(2,10,22,.26));
}

.page-template-page-services .services-framework > .container{
  position: relative;
  z-index: 1;
}

.page-template-page-services .services-framework .framework-steps{
  position: relative;
  align-items: stretch;
}

/* Glowing circuit flow line behind cards */
.page-template-page-services .services-framework .framework-steps::before{
  content:"";
  position:absolute;
  left: 7%;
  right: 7%;
  top: 58px;
  height: 3px;
  border-radius: 999px;
  z-index: 0;
  background:
    linear-gradient(90deg,
      rgba(59,130,246,.16) 0%,
      rgba(59,130,246,.90) 26%,
      rgba(110,231,183,.90) 62%,
      rgba(110,231,183,.16) 100%);
  box-shadow: 0 0 16px rgba(59,130,246,.32);
}

.page-template-page-services .services-framework .framework-step{
  position: relative;
  z-index: 1;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 12px 30px rgba(0,0,0,.34);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transform-origin: center;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.page-template-page-services .services-framework .framework-step h3{
  color: #ffffff;
}

.page-template-page-services .services-framework .framework-step p{
  color: rgba(234,244,255,.94);
}

.page-template-page-services .services-framework .framework-step:hover,
.page-template-page-services .services-framework .framework-step:focus-within{
  transform: translateY(-5px) rotateX(1.5deg);
  border-color: rgba(110,231,183,.38);
  box-shadow:
    0 18px 40px rgba(0,0,0,.42),
    0 0 0 1px rgba(59,130,246,.24),
    0 0 28px rgba(59,130,246,.24);
}

/* AI halo rings */
.page-template-page-services .services-framework .framework-step::before,
.page-template-page-services .services-framework .framework-step::after{
  content:"";
  position:absolute;
  width: 80px;
  height: 80px;
  border-radius: 999px;
  pointer-events:none;
  left: 12px;
  top: 12px;
}

.page-template-page-services .services-framework .framework-step::before{
  background: radial-gradient(circle, rgba(110,231,183,.22) 0 18%, rgba(110,231,183,0) 60%);
  filter: blur(1px);
  opacity: .52;
}

.page-template-page-services .services-framework .framework-step::after{
  border: 1px solid rgba(59,130,246,.28);
  box-shadow: inset 0 0 18px rgba(59,130,246,.18), 0 0 18px rgba(59,130,246,.18);
  opacity: .55;
}

@media (prefers-reduced-motion: no-preference){
  .page-template-page-services .services-framework .framework-step::before{
    animation: servicesHaloPulse 6.2s ease-in-out infinite;
  }

  .page-template-page-services .services-framework .framework-step::after{
    animation: servicesHaloRotate 14s linear infinite;
  }

  @keyframes servicesHaloPulse{
    0%, 100%{ transform: scale(1); opacity:.40; }
    50%{ transform: scale(1.14); opacity:.72; }
  }

  @keyframes servicesHaloRotate{
    0%{ transform: rotate(0deg); }
    100%{ transform: rotate(360deg); }
  }
}

/* Keyboard focus clarity */
.page-template-page-services .services-framework .framework-step:focus-within{
  outline: 2px solid rgba(147,197,253,.66);
  outline-offset: 2px;
}

@media (max-width: 1100px){
  .page-template-page-services .services-framework .framework-steps::before{
    left: 10%;
    right: 10%;
    top: 52px;
  }
}

@media (max-width: 700px){
  /* Disable horizontal flow line and use vertical guide */
  .page-template-page-services .services-framework .framework-steps::before{
    left: 24px;
    right: auto;
    top: 20px;
    bottom: 20px;
    width: 2px;
    height: auto;
    background: linear-gradient(180deg, rgba(59,130,246,.86), rgba(110,231,183,.62));
    box-shadow: 0 0 10px rgba(59,130,246,.24);
  }

  .page-template-page-services .services-framework .framework-step{
    padding-left: 18px;
  }
}

@media (prefers-reduced-motion: reduce){
  .page-template-page-services .services-framework .framework-step,
  .page-template-page-services .services-framework .framework-step::before,
  .page-template-page-services .services-framework .framework-step::after{
    transition: none !important;
    animation: none !important;
    transform: none !important;
  }
}


/* About page: Concept B (scoped, production-safe) */
.page-template-page-about .about-concept-b{
  background: linear-gradient(135deg, #0f172a 0%, #1e1b4b 50%, #312e81 100%);
  color: #f8fafc;
}

.page-template-page-about .about-concept-b .interior-page-hero,
.page-template-page-about .about-concept-b .interior-page-content,
.page-template-page-about .about-concept-b .interior-page-alt,
.page-template-page-about .about-concept-b .interior-page-cta{
  background: transparent;
}

.page-template-page-about .about-hero-inner{
  max-width: 860px;
  text-align: center;
}

.page-template-page-about .about-hero-head{
  margin-inline: auto;
}

.page-template-page-about .about-concept-b .eyebrow{
  color: #38bdf8;
}

.page-template-page-about .about-concept-b h1,
.page-template-page-about .about-concept-b h2,
.page-template-page-about .about-concept-b h3{
  color: #f8fafc;
}

.page-template-page-about .about-concept-b .muted{
  color: #c4d0e2;
}

.page-template-page-about .about-glass-card{
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.page-template-page-about .about-glass-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(56, 189, 248, 0.16);
  border-color: rgba(56, 189, 248, 0.35);
}

.page-template-page-about .about-framework-section .section-head{
  margin-bottom: 36px;
}

.page-template-page-about .about-vertical-framework{
  position: relative;
  max-width: 860px;
  margin: 0 auto;
  padding-left: 38px;
  display: grid;
  gap: 20px;
}

.page-template-page-about .about-vertical-framework::before{
  content: "";
  position: absolute;
  left: 8px;
  top: 8px;
  bottom: 8px;
  width: 2px;
  background: linear-gradient(180deg, rgba(56, 189, 248, .95), rgba(56, 189, 248, .12));
}

.page-template-page-about .about-framework-step{
  position: relative;
}

.page-template-page-about .about-framework-step::before{
  content: "";
  position: absolute;
  left: -35px;
  top: 24px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #38bdf8;
  box-shadow: 0 0 0 4px rgba(30, 27, 75, .9), 0 0 16px rgba(56, 189, 248, .45);
}

.page-template-page-about .about-framework-step h3{
  color: #7dd3fc;
}

.page-template-page-about .about-cta .trust{
  max-width: 900px;
  margin-inline: auto;
}

.page-template-page-about .about-concept-b .btn-outline{
  border-color: rgba(125, 211, 252, .65);
  color: #d9f3ff;
}

.page-template-page-about .about-concept-b .btn-outline:hover{
  border-color: #38bdf8;
  color: #ffffff;
}

@media (max-width: 980px){
  .page-template-page-about .about-vertical-framework{
    padding-left: 26px;
  }

  .page-template-page-about .about-framework-step::before{
    left: -23px;
  }
}

/* About page: alternating dark/light sections (about only) */
.page-template-page-about .about-concept-b > section{
  position: relative;
}

/* Light sections: 2, 4, 6 */
.page-template-page-about .about-concept-b > section:nth-of-type(even){
  background:
    radial-gradient(900px 360px at 50% -12%, rgba(59,130,246,.14), transparent 62%),
    linear-gradient(180deg, #f8fbff 0%, #edf4fb 100%);
  color: #0f172a;
}

.page-template-page-about .about-concept-b > section:nth-of-type(even) h1,
.page-template-page-about .about-concept-b > section:nth-of-type(even) h2,
.page-template-page-about .about-concept-b > section:nth-of-type(even) h3{
  color: #0f172a;
}

.page-template-page-about .about-concept-b > section:nth-of-type(even) .muted{
  color: #475569;
}

.page-template-page-about .about-concept-b > section:nth-of-type(even) .eyebrow{
  color: #1d4ed8;
}

.page-template-page-about .about-concept-b > section:nth-of-type(even) .about-glass-card{
  background: rgba(255, 255, 255, 0.84);
  border-color: rgba(15, 23, 42, 0.10);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
}

.page-template-page-about .about-concept-b > section:nth-of-type(even) .about-framework-step h3{
  color: #1e40af;
}

.page-template-page-about .about-concept-b > section:nth-of-type(even) .about-vertical-framework::before{
  background: linear-gradient(180deg, rgba(30, 64, 175, .65), rgba(30, 64, 175, .14));
}

.page-template-page-about .about-concept-b > section:nth-of-type(even) .about-framework-step::before{
  background: #2563eb;
  box-shadow: 0 0 0 4px rgba(241, 245, 249, .95), 0 0 14px rgba(37, 99, 235, .28);
}

.page-template-page-about .about-concept-b > section:nth-of-type(even) .btn-outline{
  color: #1e40af;
  border-color: rgba(30, 64, 175, .45);
}

.page-template-page-about .about-concept-b > section:nth-of-type(even) .btn-outline:hover{
  color: #0f172a;
  border-color: #1d4ed8;
}

/* Dark sections: 1, 3, 5 */
.page-template-page-about .about-concept-b > section:nth-of-type(odd){
  background:
    radial-gradient(900px 360px at 50% -10%, rgba(56,189,248,.12), transparent 62%),
    linear-gradient(180deg, rgba(15,23,42,.92) 0%, rgba(30,27,75,.88) 100%);
}

/* About page: Vision/Mission dark override */
.page-template-page-about .about-concept-b .about-vision-mission{
  background:
    radial-gradient(900px 360px at 50% -10%, rgba(56,189,248,.14), transparent 62%),
    linear-gradient(180deg, rgba(15,23,42,.94) 0%, rgba(30,27,75,.90) 100%);
  color: #f8fafc;
}

.page-template-page-about .about-concept-b .about-vision-mission h2,
.page-template-page-about .about-concept-b .about-vision-mission h3,
.page-template-page-about .about-concept-b .about-vision-mission p{
  color: #f8fafc;
}

.page-template-page-about .about-concept-b .about-vision-mission .muted{
  color: #c4d0e2;
}

.page-template-page-about .about-concept-b .about-vision-mission .about-glass-card{
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.14);
}

/* About page: AI visual Trust Framework (horizontal) */
.page-template-page-about .about-framework-section{
  background:
    radial-gradient(1000px 420px at 50% -10%, rgba(59,130,246,.22), transparent 62%),
    radial-gradient(900px 420px at 88% 15%, rgba(110,231,183,.16), transparent 62%),
    linear-gradient(180deg, #07131c 0%, #0a1830 100%) !important;
}

.page-template-page-about .about-framework-section .eyebrow,
.page-template-page-about .about-framework-section h2{
  color: #f8fafc !important;
}

.page-template-page-about .about-framework-grid{
  position: relative;
  align-items: stretch;
  gap: 18px;
}

.page-template-page-about .about-framework-grid::before{
  content: "";
  position: absolute;
  left: 6%;
  right: 6%;
  top: 40px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(56,189,248,.25), rgba(56,189,248,.92), rgba(110,231,183,.92), rgba(110,231,183,.2));
  box-shadow: 0 0 16px rgba(56,189,248,.35);
  z-index: 0;
}

.page-template-page-about .about-framework-section .about-framework-step{
  position: relative;
  z-index: 1;
  padding-top: 20px;
  min-height: 100%;
}

.page-template-page-about .about-framework-section .about-framework-step::before{
  display: none;
}

.page-template-page-about .about-framework-icon{
  width: 54px;
  height: 54px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  margin: 0 0 14px;
  font-size: 1.05rem;
  font-weight: 700;
  color: #f8fafc;
  border: 1px solid rgba(255,255,255,.22);
  box-shadow: 0 0 0 6px rgba(255,255,255,.05), 0 0 26px rgba(56,189,248,.28);
  background: linear-gradient(135deg, rgba(56,189,248,.34), rgba(110,231,183,.22));
}

.page-template-page-about .about-framework-icon.discovery{ background: linear-gradient(135deg, rgba(56,189,248,.42), rgba(59,130,246,.26)); }
.page-template-page-about .about-framework-icon.stabilize{ background: linear-gradient(135deg, rgba(14,165,233,.38), rgba(16,185,129,.24)); }
.page-template-page-about .about-framework-icon.implement{ background: linear-gradient(135deg, rgba(37,99,235,.38), rgba(45,212,191,.24)); }
.page-template-page-about .about-framework-icon.govern{ background: linear-gradient(135deg, rgba(79,70,229,.38), rgba(56,189,248,.24)); }

.page-template-page-about .about-framework-section .about-framework-step h3{
  color: #d8efff !important;
}

.page-template-page-about .about-framework-section .about-framework-step .muted{
  color: rgba(226,238,255,.9) !important;
}

@media (max-width: 980px){
  .page-template-page-about .about-framework-grid::before{
    display: none;
  }

  .page-template-page-about .about-framework-grid{
    gap: 14px;
  }

  .page-template-page-about .about-framework-icon{
    margin-bottom: 10px;
  }
}

/* About page: Home palette alignment (final override) */
.page-template-page-about .about-concept-b{
  background: #f4f7fb !important;
  color: #0f172a !important;
}

/* Hero mirrors Home dark-blue direction */
.page-template-page-about .about-concept-b .interior-page-hero{
  background:
    radial-gradient(1200px 420px at 75% 8%, rgba(56,189,248,.20), transparent 60%),
    radial-gradient(900px 360px at 15% 15%, rgba(110,231,183,.14), transparent 62%),
    linear-gradient(180deg, #07131c 0%, #0a1b2e 100%) !important;
}

.page-template-page-about .about-concept-b .interior-page-hero h1,
.page-template-page-about .about-concept-b .interior-page-hero .muted,
.page-template-page-about .about-concept-b .interior-page-hero .eyebrow{
  color: #eaf2ff !important;
}

/* Light content sections like Home */
.page-template-page-about .about-concept-b .interior-page-content,
.page-template-page-about .about-concept-b .interior-page-alt,
.page-template-page-about .about-concept-b .interior-page-cta{
  background:
    radial-gradient(900px 340px at 50% -14%, rgba(59,130,246,.10), transparent 62%),
    linear-gradient(180deg, #f9fbff 0%, #eef4fb 100%) !important;
  color: #0f172a !important;
}

/* Keep Trust Framework as dark anchor section, same family as Home dark bands */
.page-template-page-about .about-concept-b .about-framework-section{
  background:
    radial-gradient(1000px 420px at 50% -10%, rgba(59,130,246,.22), transparent 62%),
    radial-gradient(900px 420px at 88% 15%, rgba(110,231,183,.16), transparent 62%),
    linear-gradient(180deg, #07131c 0%, #0a1830 100%) !important;
  color: #eaf2ff !important;
}

.page-template-page-about .about-concept-b .about-framework-section .eyebrow,
.page-template-page-about .about-concept-b .about-framework-section h2,
.page-template-page-about .about-concept-b .about-framework-section h3,
.page-template-page-about .about-concept-b .about-framework-section .muted{
  color: #eaf2ff !important;
}

/* Standard cards for light sections */
.page-template-page-about .about-concept-b .about-glass-card{
  background: #ffffff !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: 0 12px 30px rgba(15,23,42,.10) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.page-template-page-about .about-concept-b .about-glass-card h2,
.page-template-page-about .about-concept-b .about-glass-card h3{
  color: #0f172a !important;
}

.page-template-page-about .about-concept-b .about-glass-card .muted,
.page-template-page-about .about-concept-b .about-glass-card p,
.page-template-page-about .about-concept-b .about-glass-card li{
  color: #334155 !important;
}

/* Dark cards only inside hero/framework */
.page-template-page-about .about-concept-b .interior-page-hero .about-glass-card,
.page-template-page-about .about-concept-b .about-framework-section .about-glass-card{
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 16px 34px rgba(0,0,0,.35) !important;
}

.page-template-page-about .about-concept-b .about-framework-section .about-framework-step h3{
  color: #d8efff !important;
}

.page-template-page-about .about-concept-b .about-framework-section .about-framework-step .muted{
  color: rgba(226,238,255,.92) !important;
}

/* Eyebrow color on light sections */
.page-template-page-about .about-concept-b .interior-page-content .eyebrow,
.page-template-page-about .about-concept-b .interior-page-alt .eyebrow,
.page-template-page-about .about-concept-b .interior-page-cta .eyebrow{
  color: #1d4ed8 !important;
}

/* CTA trust block in Home-style dark panel */
.page-template-page-about .about-concept-b .about-cta .trust{
  background:
    linear-gradient(180deg, rgba(7,19,28,.94), rgba(10,24,48,.94)) !important;
  border: 1px solid rgba(186,223,255,.22) !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.35) !important;
}

.page-template-page-about .about-concept-b .about-cta .trust h2,
.page-template-page-about .about-concept-b .about-cta .trust .muted{
  color: #eaf2ff !important;
}

.page-template-page-about .about-concept-b .btn-outline{
  color: #1e40af !important;
  border-color: rgba(30,64,175,.45) !important;
}

.page-template-page-about .about-concept-b .btn-outline:hover{
  color: #0f172a !important;
  border-color: #1d4ed8 !important;
}

.page-template-page-about .about-concept-b .about-framework-section .btn-outline,
.page-template-page-about .about-concept-b .about-cta .btn-outline{
  color: #d9f3ff !important;
  border-color: rgba(125,211,252,.65) !important;
}

.page-template-page-about .about-concept-b .about-framework-section .btn-outline:hover,
.page-template-page-about .about-concept-b .about-cta .btn-outline:hover{
  color: #ffffff !important;
  border-color: #38bdf8 !important;
}

/* About page: force Vision/Mission side-by-side */
.page-template-page-about .about-vision-mission .container.grid-2{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

@media (max-width: 640px){
  .page-template-page-about .about-vision-mission .container.grid-2{
    grid-template-columns: 1fr;
  }
}

/* About page: heading style polish for Philosophy + Framework */
.page-template-page-about .about-philosophy-section .section-head .eyebrow{
  color: #0f4aa1 !important;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .14em;
  font-family: "Segoe UI", Tahoma, Arial, sans-serif;
}

.page-template-page-about .about-philosophy-section .section-head h2{
  color: #0b214a !important;
  font-family: "Segoe UI", Tahoma, Arial, sans-serif;
  font-weight: 800;
}

.page-template-page-about .about-framework-section .section-head .eyebrow{
  color: #7dd3fc !important;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .14em;
  font-family: "Segoe UI", Tahoma, Arial, sans-serif;
}

.page-template-page-about .about-framework-section .section-head h2{
  color: #f8fafc !important;
  font-family: "Segoe UI", Tahoma, Arial, sans-serif;
  font-weight: 800;
}

/* About page: framework connector behind icons + arrow flow */
.page-template-page-about .about-framework-grid{
  position: relative;
}

.page-template-page-about .about-framework-grid::before{
  top: 46px;
  z-index: 0;
}

.page-template-page-about .about-framework-section .about-framework-step{
  position: relative;
  z-index: 1;
}

.page-template-page-about .about-framework-section .about-framework-icon{
  position: relative;
  z-index: 2;
}

.page-template-page-about .about-framework-section .about-framework-step:not(:last-child)::after{
  content: "\2192";
  position: absolute;
  right: -14px;
  top: 34px;
  font-size: 22px;
  font-weight: 900;
  line-height: 1;
  color: #7dd3fc;
  text-shadow: 0 0 12px rgba(56,189,248,.45);
  z-index: 3;
}

/* About page: Leadership + Who We Serve always side-by-side on desktop */
.page-template-page-about .about-leadership-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

/* About page: CTA buttons side-by-side */
.page-template-page-about .about-cta-actions{
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
}

.page-template-page-about .about-cta-actions .btn{
  display: inline-flex;
}

@media (max-width: 980px){
  .page-template-page-about .about-framework-grid::before{
    display: none;
  }

  .page-template-page-about .about-framework-section .about-framework-step:not(:last-child)::after{
    display: none;
  }
}

@media (max-width: 760px){
  .page-template-page-about .about-leadership-grid{
    grid-template-columns: 1fr;
  }

  .page-template-page-about .about-cta-actions{
    width: 100%;
  }

  .page-template-page-about .about-cta-actions .btn{
    flex: 1 1 auto;
    min-width: 0;
  }
}

/* Resources page: keep accordion copy readable on dark panel */
.page-template-page-resources .product-accordion .product-item > summary,
.page-template-page-resources .product-accordion .product-item > summary span{
  color: #f8fbff;
}

.page-template-page-resources .product-accordion .product-item-body,
.page-template-page-resources .product-accordion .product-item-body > p,
.page-template-page-resources .product-accordion .product-item .offering-list li{
  color: rgba(241, 248, 255, .97);
}

.page-template-page-resources .product-accordion .product-item .offering-list li::marker{
  color: rgba(186, 223, 255, .95);
}

/* Resources page: single centered CTA below industry grid */
.page-template-page-resources .industry-starting-point{
  justify-content: center;
  margin-top: 20px;
}

/* Book a Call page */
.page-template-page-book-a-call .book-call-shell{
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(0, 1.35fr);
  gap: 20px;
  align-items: start;
}

.page-template-page-book-a-call .book-call-copy h2{
  margin-top: 0;
}

.page-template-page-book-a-call .book-call-copy .offering-list{
  margin: 0 0 12px;
  padding-left: 20px;
}

.page-template-page-book-a-call .book-call-copy .offering-list li{
  margin-bottom: 8px;
}

.page-template-page-book-a-call .book-call-frame{
  padding: 0 !important;
  overflow: hidden;
}

.page-template-page-book-a-call .book-call-frame iframe{
  display: block;
  border: 0;
}

.page-template-page-book-a-call .book-call-final{
  display: block;
  max-width: 980px;
  margin-inline: auto;
  background:
    radial-gradient(900px 280px at 50% -10%, rgba(56,189,248,.20), transparent 60%),
    linear-gradient(180deg, rgba(7,19,28,.96), rgba(10,24,48,.96)) !important;
  border: 1px solid rgba(186,223,255,.26) !important;
  box-shadow: 0 20px 44px rgba(0,0,0,.34) !important;
}

.page-template-page-book-a-call .book-call-final .book-call-final-inner{
  text-align: center;
}

.page-template-page-book-a-call .book-call-final h2{
  color: #eaf2ff !important;
  margin-top: 0;
}

.page-template-page-book-a-call .book-call-final .muted{
  color: rgba(223,238,255,.92) !important;
}

.page-template-page-book-a-call .book-call-benefits{
  margin: 16px auto 18px;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

.page-template-page-book-a-call .book-call-benefits li{
  padding: 7px 12px;
  border-radius: 999px;
  border: 1px solid rgba(125,211,252,.55);
  background: rgba(59,130,246,.16);
  color: #e6f6ff;
  font-weight: 700;
  font-size: .9rem;
}

.page-template-page-book-a-call .book-call-final .book-call-frame{
  margin-top: 10px;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
}

/* Book a Call: force light text inside final booking panel */
.page-template-page-book-a-call .book-call-final,
.page-template-page-book-a-call .book-call-final h1,
.page-template-page-book-a-call .book-call-final h2,
.page-template-page-book-a-call .book-call-final h3,
.page-template-page-book-a-call .book-call-final p,
.page-template-page-book-a-call .book-call-final li{
  color: #eaf2ff !important;
}

.page-template-page-book-a-call .book-call-final .muted{
  color: rgba(223,238,255,.92) !important;
}

@media (max-width: 980px){
  .page-template-page-book-a-call .book-call-shell{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px){
  .page-template-page-book-a-call .book-call-benefits{
    justify-content: flex-start;
  }

  .page-template-page-book-a-call .book-call-final .book-call-final-inner{
    text-align: left;
  }
}

/* Pre-publish consistency pass: About / Book / Resources */
.page-template-page-about .section-head h2,
.page-template-page-book-a-call .section-head h2,
.page-template-page-resources .section-head h2{
  font-weight: 800;
  letter-spacing: -.01em;
}

.page-template-page-about .section-head .eyebrow,
.page-template-page-book-a-call .section-head .eyebrow,
.page-template-page-resources .section-head .eyebrow{
  font-weight: 800;
  letter-spacing: .13em;
}

.page-template-page-book-a-call .book-call-final .btn-primary{
  box-shadow: 0 10px 26px rgba(14,165,233,.32);
}
