:root {
    --navy: #0A1D25;
    --console-black: #050B0D;
    --white: #FFFFFF;
    --green: #62D84E;
    --green-ink: #0A1D25;
    --green-deep: #1E6B14;
    --sky: #7BA8E6;
    --hairline: rgba(255, 255, 255, 0.09);
    --hairline-light: rgba(10, 29, 37, 0.12);
    --muted: rgba(255, 255, 255, 0.7);
    --ink: #050B0D;
    --ink-soft: #4A5A60;
    --fh: 'General Sans','Figtree',system-ui,sans-serif;
    --fb: 'Figtree',system-ui,-apple-system,sans-serif;
    --fm: 'IBM Plex Mono',monospace;
    --ease: cubic-bezier(0.16,1,0.3,1);
  }
  *,*::before,*::after{box-sizing:border-box;}
  body {
    background: var(--console-black);
    color: #FFFFFF;
    font-family: var(--fb);
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    line-height: 1.6;
  }
  a{color:inherit;}
  ul{margin:0;padding:0;}

  .wrap {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
    box-sizing: border-box;
    position: relative;
    z-index: 10;
  }

  /* GLOBAL HEADER */
  header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 300;
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border-bottom: 1px solid transparent;
    height: 80px;
    display: flex;
    align-items: center;
    transition: height .3s var(--ease), background .35s ease, backdrop-filter .35s ease, border-color .35s ease, box-shadow .35s ease;
  }
  header.scrolled {
    height: 64px;
    background: rgba(5, 11, 13, 0.92);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-bottom: 1px solid var(--hairline);
    box-shadow: 0 8px 30px rgba(0,0,0,.35);
  }
  header.scrolled .brand-logo { height: 38px; }
  .nav-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
  }
  .brand {
    display: flex;
    align-items: center;
    text-decoration: none;
  }
  .brand-logo { height: 50px; width: auto; display: block; transition: height .3s var(--ease); }
  .footer-brand-side .brand-logo { height: 56px; }
  nav.main-nav { display:flex; }
  .nav-links {
    display: flex;
    list-style:none;
    gap: 8px;
    align-items:center;
  }
  .nav-links > li { position: relative; }
  .nav-links a, .nav-trigger {
    font-family: var(--fb);
    color: rgba(255, 255, 255, 0.72);
    font-size: 14.5px;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.2s ease;
    padding: 10px 14px;
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:none;
    border:none;
    cursor:pointer;
    position: relative;
  }
  .nav-links a::after, .nav-trigger::after {
    content:''; position:absolute; left:14px; right:14px; bottom:5px; height:1.5px;
    background:var(--green); transform:scaleX(0); transform-origin:left;
    transition: transform .3s var(--ease);
  }
  .nav-links a:hover::after, .nav-trigger:hover::after, .has-mega.open .nav-trigger::after { transform:scaleX(1); }
  .nav-links a:hover, .nav-trigger:hover { color: var(--white); }
  .has-mega.open .nav-trigger { color: var(--white); }
  .nav-trigger svg { width:9px; height:6px; fill:currentColor; transition:transform .25s var(--ease); }
  .has-mega.open .nav-trigger svg { transform: rotate(180deg); }
  .nav-actions { display: flex; align-items: center; gap:18px; }

  /* MEGA MENU */
  .mega-backdrop{position:fixed;inset:80px 0 0 0;background:rgba(0,0,0,.45);z-index:198;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s;}
  .mega-backdrop.active{opacity:1;visibility:visible;}
  .mega-panel{position:fixed;top:80px;left:0;right:0;z-index:299;background:rgba(5,11,13,.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--hairline);box-shadow:0 30px 60px rgba(0,0,0,.45);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .28s var(--ease),transform .28s var(--ease),visibility .28s,top .3s var(--ease);}
  .has-mega.open .mega-panel{opacity:1;visibility:visible;transform:translateY(0);}
  header.scrolled .mega-panel{ top:64px; }
  header.scrolled ~ .mega-backdrop{ top:64px; }
  .mega-inner{max-width:1200px;margin:0 auto;padding:3rem 30px;display:grid;grid-template-columns:200px 1fr 320px;gap:3rem;}
  .mega-rail{display:flex;flex-direction:column;gap:.25rem;border-right:1px solid var(--hairline);padding-right:2rem;}
  .mega-rail-link{font-family:var(--fb);font-size:13.5px;font-weight:600;color:rgba(255,255,255,.85);text-decoration:none;padding:.7rem 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid transparent;transition:color .2s ease;}
  .mega-rail-link:hover{color:var(--green);}
  .mega-rail-label{font-family:var(--fm);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.5);margin:1.1rem 0 .4rem;}
  .mega-grid{display:grid;grid-template-columns:1fr 1fr;gap:.25rem 2rem;align-content:start;}
  .mega-grid-cta{grid-column:1/-1;display:flex;justify-content:flex-end;margin-bottom:.5rem;}
  .mega-grid-cta a{font-family:var(--fm);font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--green);text-decoration:none;}
  .mega-item{display:block;text-decoration:none;padding:.95rem 1rem;border-radius:10px;transition:background .2s ease;}
  .mega-item:hover{background:rgba(255,255,255,.05);}
  .mega-item-title{font-family:var(--fh);font-size:14.5px;font-weight:600;color:var(--white);margin-bottom:.3rem;}
  .mega-item-desc{font-size:12.5px;color:rgba(255,255,255,.66);line-height:1.55;}
  .mega-callout{background:rgba(98,216,78,.06);border:1px solid rgba(98,216,78,.18);border-radius:14px;padding:1.75rem;display:flex;flex-direction:column;justify-content:center;}
  .mega-callout-eyebrow{font-family:var(--fm);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--green);margin-bottom:.85rem;}
  .mega-callout h5{font-family:var(--fh);font-size:1.05rem;font-weight:600;color:var(--white);line-height:1.4;margin:0 0 .75rem 0;}
  .mega-callout p{font-size:13px;color:rgba(255,255,255,.7);line-height:1.6;margin:0 0 1.25rem 0;}
  .mega-callout a{font-family:var(--fm);font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--green);text-decoration:none;}
  .mega-callout-stat{font-family:var(--fh);font-size:1.05rem;font-weight:600;color:var(--white);line-height:1.4;margin:0 0 .75rem 0;}
  @media(max-width:1100px){ .mega-panel{display:none;} .nav-links{display:none;} }

  /* SCROLL TIMELINE */
  #scroll-timeline{ position:fixed; right:28px; top:50%; transform:translateY(-50%); z-index:150; display:flex; flex-direction:column; align-items:center; }
  .tl-dot{ width:8px; height:8px; border-radius:50%; cursor:pointer; background:rgba(255,255,255,.22); border:1.5px solid rgba(255,255,255,.32); transition:all .3s ease; position:relative; flex-shrink:0; }
  .tl-line{ width:1px; height:26px; background:rgba(255,255,255,.14); flex-shrink:0; transition:background .3s ease; }
  .tl-dot.active{ background:var(--green); border-color:var(--green); transform:scale(1.5); box-shadow:0 0 0 4px rgba(98,216,78,.18); }
  .tl-dot::before{ content:attr(data-label); position:absolute; right:18px; top:50%; transform:translateY(-50%); font-family:var(--fm); font-size:.62rem; letter-spacing:.1em; text-transform:uppercase; white-space:nowrap; color:rgba(255,255,255,.7); background:rgba(5,11,13,.85); padding:4px 9px; border-radius:4px; border:1px solid var(--hairline); opacity:0; pointer-events:none; transition:opacity .2s ease; }
  .tl-dot:hover::before{ opacity:1; }
  #scroll-timeline.on-light .tl-dot{ background:rgba(10,29,37,.18); border-color:rgba(10,29,37,.3); }
  #scroll-timeline.on-light .tl-line{ background:rgba(10,29,37,.14); }
  #scroll-timeline.on-light .tl-dot.active{ background:var(--green-deep); border-color:var(--green-deep); box-shadow:0 0 0 4px rgba(30,107,20,.14); }
  #scroll-timeline.on-light .tl-dot::before{ color:rgba(10,29,37,.75); background:#FFFFFF; border-color:var(--hairline-light); box-shadow:0 4px 14px rgba(10,29,37,.1); }
  @media(max-width:1100px){ #scroll-timeline{ display:none; } }

  /* MOBILE NAV */
  .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;background:none;border:none;}
  .hamburger span{display:block;width:22px;height:2px;background:#fff;transition:all .3s ease;}
  .hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
  .hamburger.active span:nth-child(2){opacity:0;}
  .hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}
  .mobile-nav{display:none;position:fixed;inset:80px 0 0 0;background:var(--console-black);z-index:250;overflow-y:auto;padding:2rem 30px 3rem;}
  .mobile-nav.active{display:block;}
  .mobile-nav details{border-bottom:1px solid var(--hairline);padding:1rem 0;}
  .mobile-nav summary{font-family:var(--fh);font-size:1.1rem;font-weight:600;color:#fff;cursor:pointer;list-style:none;display:flex;justify-content:space-between;}
  .mobile-nav summary::-webkit-details-marker{display:none;}
  .mobile-nav a{display:block;color:rgba(255,255,255,.65);text-decoration:none;font-size:.95rem;padding:.6rem 0;}
  .mobile-nav > a{font-family:var(--fh);font-size:1.1rem;font-weight:600;color:#fff;text-decoration:none;display:block;padding:1rem 0;border-bottom:1px solid var(--hairline);}
  @media(max-width:1100px){ .hamburger{display:flex;} }

  /* SECTION SYSTEM */
  .sec { padding: 110px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.02); position: relative; }
  .glow-bg::before {
    content: ''; position: absolute; top: -20%; left: -10%; width: 60%; height: 140%;
    background: radial-gradient(circle, rgba(98, 216, 78, 0.06) 0%, rgba(5, 11, 13, 0) 70%);
    pointer-events: none; z-index: 0; animation: drift 16s ease-in-out infinite;
  }
  .glow-bg::after {
    content: ''; position: absolute; bottom: -25%; right: -8%; width: 45%; height: 120%;
    background: radial-gradient(circle, rgba(123, 168, 230, 0.05) 0%, rgba(5, 11, 13, 0) 70%);
    pointer-events: none; z-index: 0; animation: drift 20s ease-in-out infinite reverse;
  }
  @keyframes drift {
    0%,100% { transform: translate(0,0) scale(1); }
    50% { transform: translate(4%,3%) scale(1.06); }
  }
  .sig-navy { background: var(--navy); color: #FFFFFF; }
  .sig-black { background: var(--console-black); color: #FFFFFF; }
  .sig-focus-white { background: var(--white); color: var(--ink); border-top:1px solid var(--hairline-light); border-bottom:1px solid var(--hairline-light); }

  h1,h2,h3,h4,h5{font-family:var(--fh);}
  h2 { font-size: clamp(32px, 4.2vw, 48px); font-weight: 700; letter-spacing: -.02em; line-height: 1.12; margin: 0 0 24px 0; }
  .sig-focus-white h2 { color: var(--ink); }
  .sig-focus-white h2 .payload-green { color: var(--green-deep); }
  .payload-green{ color: var(--green); }

  .eyebrow { font-family: var(--fm); font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--green); margin-bottom: 16px; display: block; font-weight: 500; }
  .sig-focus-white .eyebrow { color: var(--green-deep); }

  .lede-text { font-size: 18px; line-height: 1.65; margin: 0 0 32px 0; max-width: 68ch; color: var(--muted); }
  .sig-focus-white .lede-text { color: var(--ink-soft); }

  .actions-row { display: flex; align-items: center; gap: 24px; flex-wrap:wrap; }
  .btn-pill {
    font-family: var(--fb); background: var(--green); color: var(--navy);
    padding: 14px 28px; font-size: 14.5px; font-weight: 600; border-radius: 999px;
    text-decoration: none; display: inline-block; transition: all 0.2s ease;
    box-shadow: 0 4px 14px rgba(98, 216, 78, 0.15); border:none; cursor:pointer;
    position: relative; overflow: hidden; isolation: isolate;
  }
  .btn-pill::before {
    content:''; position:absolute; inset:0; z-index:-1;
    background: linear-gradient(110deg, transparent 30%, rgba(255,255,255,.45) 50%, transparent 70%);
    transform: translateX(-120%); transition: transform .6s var(--ease);
  }
  .btn-pill:hover::before { transform: translateX(120%); }
  .btn-pill:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(98, 216, 78, 0.25); filter: brightness(1.05); }
  .sig-focus-white .btn-pill { background: var(--navy); color: #FFFFFF; box-shadow: 0 4px 14px rgba(10, 29, 37, 0.15); }
  .sig-focus-white .btn-pill:hover { box-shadow: 0 6px 20px rgba(10, 29, 37, 0.25); }
  .btn-ghost{ font-family:var(--fb); background:transparent; color:#fff; border:1px solid rgba(255,255,255,.25); padding:13px 27px; font-size:14.5px; font-weight:600; border-radius:999px; text-decoration:none; display:inline-block; transition:all .2s ease; }
  .btn-ghost:hover{ border-color:rgba(255,255,255,.55); background:rgba(255,255,255,.04); }
  .link-action { font-family: var(--fm); font-size: 13.5px; color: var(--sky); text-decoration: none; transition: color 0.2s ease; }
  .link-action:hover { color: #FFFFFF; }
  .sig-focus-white .link-action { color: var(--green-deep); font-weight: 600; }
  .sig-focus-white .link-action:hover { color: var(--navy); }

  /* HERO */
  .hero-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 50px; align-items: center; }
  .hero-graphic-wrapper {
    position: relative; border-radius: 16px; padding: 8px;
    background: linear-gradient(145deg, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0) 100%);
    border: 1px solid rgba(255,255,255,0.1);
    box-shadow: 0 20px 40px rgba(0,0,0,0.4), 0 0 80px rgba(98, 216, 78, 0.05);
    animation: float 6s ease-in-out infinite;
  }
  .hero-graphic { width:100%; aspect-ratio: 4/3.1; border-radius:10px; background:#0d2530; display:flex; align-items:center; justify-content:center; padding:24px; }
  @keyframes float { 0%{transform:translateY(0);} 50%{transform:translateY(-10px);} 100%{transform:translateY(0);} }

  /* LIFECYCLE PILLARS */
  .pillars-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--hairline-light); margin-top:50px; border-radius:14px; overflow:hidden; border:1px solid var(--hairline-light); }
  .pillar{ background:var(--white); padding:2.25rem 1.75rem; transition:transform .35s var(--ease), box-shadow .35s var(--ease); position:relative; z-index:1; }
  .pillar:hover{ transform:translateY(-6px); box-shadow:0 20px 40px rgba(10,29,37,.1); z-index:2; }
  .pillar-n{ font-family:var(--fm); font-size:11px; color:var(--green-deep); letter-spacing:.12em; margin-bottom:1rem; }
  .pillar h4{ font-size:1.15rem; font-weight:700; color:var(--ink); margin:0 0 .6rem 0; }
  .pillar p{ font-size:.88rem; color:var(--ink-soft); line-height:1.6; margin:0; }
  @media(max-width:900px){ .pillars-grid{ grid-template-columns:1fr 1fr; } }
  @media(max-width:560px){ .pillars-grid{ grid-template-columns:1fr; } }

  /* INFOGRAPHIC */
  .css-infographic { display: flex; align-items: center; justify-content: space-between; background: #F8F9FA; border: 1px solid rgba(10, 29, 37, 0.06); border-radius: 16px; padding: 40px; margin: 48px 0; }
  .info-node { background: #FFFFFF; border: 1px solid rgba(10, 29, 37, 0.1); padding: 24px 20px; border-radius: 12px; text-align: center; width: 210px; box-shadow: 0 8px 24px rgba(0,0,0,0.04); display: flex; flex-direction: column; align-items: center; transition: transform .35s var(--ease), box-shadow .35s var(--ease); }
  .info-node:hover { transform: translateY(-5px); box-shadow: 0 16px 32px rgba(0,0,0,0.08); }
  .info-node.shield { border-color: var(--green-deep); background: rgba(46, 139, 34, 0.04); position: relative; box-shadow: 0 12px 32px rgba(30, 107, 20, 0.08); }
  .info-node.shield::before { content: 'IN-LINE POLICY ENGINE'; position: absolute; top: -10px; left: 50%; transform: translateX(-50%); background: var(--green-deep); color: #FFF; font-size: 9px; font-family: var(--fm); padding: 4px 10px; border-radius: 4px; letter-spacing: 0.08em; white-space: nowrap; }
  .info-node-icon { width: 32px; height: 32px; margin-bottom: 14px; display: flex; align-items: center; justify-content: center; }
  .info-node .title { font-family: var(--fh); font-size: 13.5px; font-weight: 700; color: var(--ink); text-transform: uppercase; letter-spacing: 0.05em; }
  .info-node .desc { font-size: 12px; color: var(--ink-soft); margin-top: 8px; line-height: 1.4; }
  .info-path { flex-grow: 1; height: 2px; background: linear-gradient(90deg, rgba(10,29,37,0.15) 0%, rgba(46,139,34,0.4) 50%, rgba(10,29,37,0.15) 100%); margin: 0 24px; position: relative; }
  .info-path::after { content: '→'; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background: #F8F9FA; padding: 0 10px; color: var(--green-deep); font-weight: bold; font-size: 16px; }

  .grid-capabilities { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 48px; }
  .cap-box { background: #FFFFFF; border: 1px solid rgba(10, 29, 37, 0.08); padding: 32px; border-radius: 16px; transition: all 0.3s var(--ease); box-shadow: 0 4px 12px rgba(0,0,0,0.02); }
  .cap-box:hover { transform: translateY(-4px); border-color: rgba(30, 107, 20, 0.3); box-shadow: 0 12px 30px rgba(0,0,0,0.06); }
  .cap-icon-wrap { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background: rgba(30, 107, 20, 0.05); border-radius: 8px; margin-bottom: 20px; color: var(--green-deep); }
  .cap-box h4 { font-family: var(--fh); margin: 0 0 12px 0; font-size: 18px; font-weight: 600; color: var(--ink); }
  .cap-box p { margin: 0; font-size: 15px; color: var(--ink-soft); line-height: 1.6; }

  /* IDENTITY VECTOR LIST */
  .identity-vector-list { list-style: none; padding: 0; margin: 40px 0 0 0; display: flex; flex-direction: column; gap: 18px; }
  .identity-vector-list li { font-size: 16.5px; color: var(--muted); background: rgba(255,255,255,0.01); padding: 22px 24px 22px 58px; border-radius: 12px; border: 1px solid rgba(255,255,255,0.03); position: relative; transition: all 0.25s ease; }
  .identity-vector-list li:hover { border-color: rgba(98, 216, 78, 0.25); background: rgba(255,255,255,0.03); transform: translateX(4px); }
  .list-icon-container { position: absolute; left: 22px; top: 23px; color: var(--green); display: flex; align-items: center; justify-content: center; }
  .identity-vector-list strong { font-family: var(--fh); color: #FFFFFF; font-weight: 600; }
  .sig-focus-white .identity-vector-list li { color: var(--ink-soft); background: rgba(10,29,37,.02); border-color: rgba(10,29,37,.06); }
  .sig-focus-white .identity-vector-list li:hover { border-color: rgba(30,107,20,.3); background: rgba(10,29,37,.04); }
  .sig-focus-white .identity-vector-list strong { color: var(--ink); }
  .sig-focus-white .list-icon-container { color: var(--green-deep); }

  /* PROOF / RECOGNITION */
  .proof-strip { display: flex; gap: 80px; margin-top: 40px; flex-wrap:wrap; }
  .proof-unit .num { font-family: var(--fh); font-size: 56px; font-weight: 700; color: var(--sky); line-height: 1; letter-spacing: -0.02em; }
  .proof-unit .lbl { font-family: var(--fm); font-size: 12px; color: var(--muted); margin-top: 12px; letter-spacing: 0.1em; }
  .source-tag { font-family: var(--fm); font-size: 11px; color: rgba(255, 255, 255, 0.45); margin-top: 32px; }
  .sig-focus-white .proof-unit .num { color: var(--green-deep); }
  .sig-focus-white .proof-unit .lbl { color: var(--ink-soft); }
  .sig-focus-white .source-tag { color: rgba(10,29,37,.45); }

  /* TESTIMONIALS */
  .grid-testimonials { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 56px; }
  .testimonial-card { background: rgba(255, 255, 255, 0.02); border: 1px solid var(--hairline); padding: 32px; border-radius: 16px; display: flex; flex-direction: column; justify-content: space-between; transition: all 0.3s ease; }
  .testimonial-card:hover { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.15); transform: translateY(-4px); }
  .testimonial-quote { font-size: 15.5px; line-height: 1.6; color: rgba(255, 255, 255, 0.95); margin: 0 0 32px 0; }
  .testimonial-meta { font-size: 13.5px; }
  .testimonial-author { font-family: var(--fh); font-weight: 600; color: #FFFFFF; display: block; margin-bottom: 4px; }
  .testimonial-company { color: var(--sky); display: block; line-height: 1.4; }
  .success-framing-rule { margin-top: 48px; border: none; border-top: 1px solid var(--hairline); }
  .success-framing-text { font-size: 14px; line-height: 1.65; color: var(--muted); max-width: 86ch; margin: 20px 0 32px 0; }
  .success-footer-row { display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; }
  .success-trusted-by { font-family: var(--fm); font-size: 13px; color: rgba(255, 255, 255, 0.65); max-width: 64ch; line-height: 1.5; }

  /* RECOGNITION */
  .recognition-grid{ display:grid; grid-template-columns:1.3fr 1fr; gap:24px; margin-top:40px; }
  .recognition-badge,.recognition-stat{ background:rgba(255,255,255,.02); border:1px solid var(--hairline); border-radius:16px; padding:2.5rem; position:relative; overflow:hidden; }
  .recognition-badge::before{ content:''; position:absolute; top:-30%; right:-15%; width:200px; height:200px; border-radius:50%; background:radial-gradient(circle, rgba(98,216,78,.12) 0%, transparent 70%); pointer-events:none; }
  .badge-icon{ width:46px; height:46px; border-radius:10px; background:rgba(98,216,78,.1); border:1px solid rgba(98,216,78,.25); display:flex; align-items:center; justify-content:center; color:var(--green); margin-bottom:1.5rem; }
  .badge-title{ font-family:var(--fh); font-size:1.4rem; font-weight:700; color:#FFFFFF; margin-bottom:.4rem; line-height:1.25; }
  .badge-date{ font-family:var(--fm); font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; color:var(--green); margin-bottom:1.1rem; }
  .badge-desc{ font-size:.92rem; color:var(--muted); line-height:1.6; max-width:42ch; margin:0; }
  .recognition-stat{ display:flex; flex-direction:column; justify-content:center; }
  .recognition-stat .num{ font-family:var(--fh); font-size:48px; font-weight:700; color:var(--sky); line-height:1; letter-spacing:-.02em; margin-bottom:.75rem; }
  .recognition-stat .lbl{ font-family:var(--fm); font-size:11.5px; color:var(--muted); letter-spacing:.1em; text-transform:uppercase; }
  @media(max-width:760px){ .recognition-grid{ grid-template-columns:1fr; } }

  /* FAQ */
  .faq-list{ margin-top:48px; border-top:1px solid var(--hairline); max-width:880px; }
  .faq-item{ border-bottom:1px solid var(--hairline); }
  .faq-q{ width:100%; text-align:left; background:none; border:none; cursor:pointer; padding:1.5rem 0; display:flex; justify-content:space-between; align-items:center; gap:1.5rem; font-family:var(--fh); font-size:1.05rem; font-weight:600; color:#FFFFFF; }
  .faq-q svg{ width:14px; height:14px; flex-shrink:0; stroke:var(--green); stroke-width:2; fill:none; transition:transform .25s var(--ease); }
  .faq-item.open .faq-q svg{ transform:rotate(45deg); }
  .faq-a{ max-height:0; overflow:hidden; transition:max-height .45s var(--ease); }
  .faq-item.open .faq-a{ max-height:420px; }
  .faq-a p{ font-size:.95rem; color:var(--muted); line-height:1.7; margin:0 0 1.5rem 0; max-width:70ch; }
  .sig-focus-white .faq-q{ color:var(--ink); }
  .sig-focus-white .faq-q svg{ stroke:var(--green-deep); }
  .sig-focus-white .faq-a p{ color:var(--ink-soft); }
  .sig-focus-white .faq-list,.sig-focus-white .faq-item{ border-color:var(--hairline-light); }

  /* DUAL CTA BAND */
  .dual-cta-sec{ padding:100px 0 80px; background:var(--console-black); }
  .dual-cta{ display:grid; grid-template-columns:1fr 1fr; gap:60px; }
  .dual-cta-panel{ padding:2.5rem; border:1px solid var(--hairline); border-radius:14px; background:rgba(255,255,255,.015); }
  .dual-cta-panel h4{ font-size:1.3rem; font-weight:700; margin:0 0 .75rem 0; }
  .dual-cta-panel p{ font-size:.92rem; color:var(--muted); line-height:1.6; margin:0 0 1.5rem 0; max-width:42ch; }
  @media(max-width:760px){ .dual-cta{ grid-template-columns:1fr; gap:24px; } }

  /* FOOTER */
  footer { background: #050B0D; color: rgba(255, 255, 255, 0.6); padding: 70px 0 40px 0; border-top: 1px solid var(--hairline); }
  .footer-grid { display: grid; grid-template-columns: 1.2fr repeat(4, 1fr); gap: 40px; margin-bottom: 50px; }
  .footer-brand-side p { font-size: 14px; line-height: 1.6; margin-top: 20px; color: rgba(255, 255, 255, 0.62); max-width: 28ch; }
  .footer-col h4 { color: #FFFFFF; font-family: var(--fm); font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; margin: 0 0 20px 0; }
  .footer-col a { display: block; color: rgba(255, 255, 255, 0.72); font-size: 14px; text-decoration: none; margin-bottom: 12px; }
  .footer-col a:hover { color: var(--green); }
  .footer-trust-strip { border-top: 1px solid var(--hairline); padding: 24px 0; display: flex; gap: 16px; align-items: center; font-size: 13px; flex-wrap:wrap; }
  .footer-trust-strip .title { font-family: var(--fm); font-weight: 600; letter-spacing: 0.1em; color: #FFFFFF; text-transform: uppercase; margin-right: 12px; }
  .footer-trust-strip .metrics { color: rgba(255, 255, 255, 0.6); }
  .footer-bottom { border-top: 1px solid var(--hairline); padding-top: 30px; display: flex; justify-content: space-between; align-items: center; font-size: 13px; color: rgba(255, 255, 255, 0.55); flex-wrap:wrap; gap:1rem; }
  .footer-bottom .tagline { font-family: var(--fm); color: rgba(255, 255, 255, 0.6); }

  .reveal { opacity: 0; transform: translateY(24px); transition: opacity 0.8s var(--ease), transform 0.8s var(--ease); }
  .reveal.active { opacity: 1; transform: translateY(0); }

  @media (max-width: 980px) {
    .hero-grid { grid-template-columns: 1fr; gap: 40px; }
    .css-infographic { flex-direction: column; gap: 20px; padding: 30px 20px; }
    .info-path { width: 2px; height: 35px; margin: 8px 0; background: linear-gradient(180deg, rgba(10,29,37,0.15) 0%, rgba(46,139,34,0.4) 50%, rgba(10,29,37,0.15) 100%); }
    .info-path::after { content: '↓'; }
    .grid-capabilities { grid-template-columns: 1fr; }
    .grid-testimonials { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
    .success-footer-row { flex-direction: column; align-items: flex-start; gap: 16px; }
    .sec{ padding:80px 0; }
  }
  @media (max-width: 600px) {
    #sec-hero{ min-height:auto!important; padding-top:120px!important; padding-bottom:60px!important; }
    #sec-why-now, #sec-recognition{ min-height:auto!important; }
    .proof-strip{ gap:40px; }
    .recognition-stat,.recognition-badge{ padding:1.75rem; }
    .dual-cta-panel{ padding:1.75rem; }
    h2{ font-size: clamp(26px, 7vw, 36px); }
  }
  @media (max-width: 480px) {
    .footer-grid{ grid-template-columns:1fr; gap:32px; }
    .footer-bottom{ flex-direction:column; align-items:flex-start; }
  }
  @media (max-width: 1100px) and (min-width: 769px) and (orientation: landscape) {
    #sec-hero{ min-height:auto; padding-top:120px; padding-bottom:80px; }
  }

  /* INNER PAGE LAYOUT */
  .inner-hero{ min-height:56vh; display:flex; align-items:center; padding:170px 0 90px; }
  .inner-hero .wrap{ max-width:880px; }
  .inner-hero .eyebrow{ margin-bottom:18px; }
  .inner-hero h1{ font-family:var(--fh); font-size:clamp(32px,4.5vw,52px); font-weight:700; letter-spacing:-.02em; line-height:1.12; margin:0 0 22px 0; max-width:18ch; }
  @media(max-width:760px){ .inner-hero{ min-height:auto; padding:130px 0 60px; } }
  .breadcrumb{ font-family:var(--fm); font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.45); text-decoration:none; display:inline-flex; align-items:center; gap:8px; margin-bottom:28px; transition:color .2s ease; }
  .breadcrumb:hover{ color:var(--green); }
  .prose{ max-width:760px; }
  .prose h2{ font-size:clamp(24px,3vw,32px); margin:3rem 0 1.1rem; }
  .prose h2:first-child{ margin-top:0; }
  .prose p{ font-size:1.05rem; line-height:1.8; color:var(--ink-soft); margin:0 0 1.4rem; }
  .sig-navy .prose p, .sig-black .prose p{ color:var(--muted); }
  .prose strong{ color:var(--ink); font-weight:600; }
  .sig-navy .prose strong, .sig-black .prose strong{ color:#fff; }
  .prose blockquote{ border-left:3px solid var(--green-deep); padding:.25rem 0 .25rem 1.5rem; margin:2rem 0; font-size:1.05rem; line-height:1.7; color:var(--ink); font-style:italic; }
  .sig-navy .prose blockquote, .sig-black .prose blockquote{ border-left-color:var(--green); color:#fff; }
  .prose .quote-attr{ display:block; margin-top:.75rem; font-family:var(--fm); font-size:.78rem; font-style:normal; letter-spacing:.05em; color:var(--ink-soft); }
  .sig-navy .prose .quote-attr, .sig-black .prose .quote-attr{ color:var(--muted); }
  .prose .disclaimer{ font-size:.85rem; font-style:italic; color:var(--caption,#8a96a0); margin-top:2.5rem; padding-top:1.5rem; border-top:1px solid var(--hairline-light); }
  .sig-navy .prose .disclaimer, .sig-black .prose .disclaimer{ border-top-color:var(--hairline); }

  /* GOVERNANCE CALLOUT (industries / solutions "how Whiteswan governs this" cards) */
  .gov-callout{
    background:#fff; border:1px solid rgba(10,29,37,.08); border-left:3px solid var(--green-deep);
    border-radius:0 16px 16px 0; padding:2rem 2.25rem; margin:2.5rem 0 0;
    box-shadow:0 4px 12px rgba(0,0,0,.02);
    transition:transform .3s var(--ease), box-shadow .3s var(--ease);
  }
  .gov-callout:hover{ transform:translateY(-3px); box-shadow:0 12px 30px rgba(0,0,0,.06); }
  .gov-callout .tag{ font-family:var(--fm); font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--green-deep); margin-bottom:.85rem; display:block; }
  .gov-callout h3{ font-family:var(--fh); font-size:1.15rem; font-weight:700; color:var(--ink); margin:0 0 .85rem; }
  .gov-callout p{ font-size:1rem; line-height:1.75; color:var(--ink-soft); margin:0 0 1rem; }
  .gov-callout p:last-child{ margin-bottom:0; }
  .surface-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:24px; margin-top:48px; }
  .surface-card{ background:#fff; border:1px solid rgba(10,29,37,.08); border-radius:16px; padding:2rem; transition:all .3s var(--ease); }
  .surface-card:hover{ transform:translateY(-4px); border-color:rgba(30,107,20,.3); box-shadow:0 12px 30px rgba(0,0,0,.06); }
  .surface-card .tag{ font-family:var(--fm); font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:var(--green-deep); margin-bottom:.75rem; display:block; }
  .surface-card h3{ font-size:1.2rem; font-weight:700; color:var(--ink); margin:0 0 .6rem; }
  .surface-card p{ font-size:.92rem; color:var(--ink-soft); line-height:1.65; margin:0 0 1rem; }
  .surface-card p:last-child{ margin-bottom:0; }
  .verified-list{ list-style:none; margin:2rem 0; padding:0; display:flex; flex-direction:column; gap:14px; }
  .verified-list li{ position:relative; padding-left:32px; font-size:1rem; line-height:1.65; color:var(--ink-soft); }
  .sig-navy .verified-list li, .sig-black .verified-list li{ color:var(--muted); }
  .verified-list li::before{ content:'✓'; position:absolute; left:0; top:0; color:var(--green-deep); font-weight:700; }
  .sig-navy .verified-list li::before, .sig-black .verified-list li::before{ color:var(--green); }
  .industry-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--hairline-light); margin-top:48px; border:1px solid var(--hairline-light); border-radius:14px; overflow:hidden; }
  .industry-card{ background:#fff; padding:1.85rem 1.5rem; text-decoration:none; display:block; transition:background .25s ease; }
  .industry-card:hover{ background:var(--mist,#f3f6f7); }
  .industry-card .tag{ font-family:var(--fm); font-size:9.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--green-deep); margin-bottom:.6rem; display:block; }
  .industry-card h3{ font-size:1.02rem; font-weight:700; color:var(--ink); margin:0 0 .5rem; }
  .industry-card p{ font-size:.82rem; color:var(--ink-soft); line-height:1.55; margin:0; }
  .cta-strip{ padding:90px 0; text-align:center; }
  .cta-strip h2{ margin-bottom:18px; }
  .cta-strip .actions-row{ justify-content:center; }
  .two-col-cta{ display:flex; gap:16px; flex-wrap:wrap; margin-top:2rem; }
  @media(max-width:900px){ .surface-grid{ grid-template-columns:1fr; } .industry-grid{ grid-template-columns:1fr 1fr; } }
  @media(max-width:600px){ .industry-grid{ grid-template-columns:1fr; } }

  /* CONTACT PAGE */
  .contact-grid{ display:grid; grid-template-columns:1.3fr 1fr; gap:48px; margin-top:40px; align-items:start; }
  .contact-form{ display:flex; flex-direction:column; gap:18px; margin-top:32px; }
  .form-row{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
  .form-field{ display:flex; flex-direction:column; gap:8px; }
  .form-field label{ font-family:var(--fm); font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-soft); }
  .form-field input, .form-field select, .form-field textarea{
    font-family:var(--fb); font-size:.95rem; color:var(--ink); background:#fff;
    border:1px solid rgba(10,29,37,.15); border-radius:8px; padding:.75rem .9rem; resize:vertical;
    transition:border-color .2s ease;
  }
  .form-field input:focus, .form-field select:focus, .form-field textarea:focus{ outline:none; border-color:var(--green-deep); }
  .contact-side{ display:flex; flex-direction:column; gap:16px; }
  .contact-card{ background:#fff; border:1px solid rgba(10,29,37,.08); border-radius:14px; padding:1.5rem; }
  .contact-card .tag{ font-family:var(--fm); font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:var(--green-deep); margin-bottom:.6rem; display:block; }
  .contact-card p{ font-size:.9rem; color:var(--ink-soft); line-height:1.6; margin:0 0 .5rem; }
  @media(max-width:760px){ .contact-grid{ grid-template-columns:1fr; } .form-row{ grid-template-columns:1fr; } }

  /* CAPABILITY BLOCKS (platform sub-pages) */
  .cap-block{
    background:#fff; border:1px solid rgba(10,29,37,.08); border-radius:16px;
    padding:2rem 2.25rem; margin-bottom:20px;
    box-shadow:0 4px 12px rgba(0,0,0,.02);
    transition:transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);
  }
  .cap-block:last-of-type{ margin-bottom:0; }
  .cap-block:hover{ transform:translateY(-4px); border-color:rgba(30,107,20,.3); box-shadow:0 12px 30px rgba(0,0,0,.06); }
  .cap-block h3{ font-family:var(--fh); font-size:1.3rem; font-weight:700; color:var(--ink); margin:0 0 .4rem; }
  .cap-tagline{ font-size:1rem; color:var(--ink-soft); line-height:1.6; margin:0 0 1.25rem; font-style:italic; }
  .cap-stages{ list-style:none; margin:0 0 1.25rem; padding:0; counter-reset:stage; display:flex; flex-direction:column; gap:10px; }
  .cap-stages li{ position:relative; padding-left:38px; font-size:.95rem; line-height:1.65; color:var(--ink-soft); counter-increment:stage; }
  .cap-stages li::before{ content:counter(stage); position:absolute; left:0; top:1px; width:24px; height:24px; border-radius:50%; background:rgba(30,107,20,.08); color:var(--green-deep); font-family:var(--fm); font-size:.7rem; font-weight:600; display:flex; align-items:center; justify-content:center; }
  .cap-stages li strong{ color:var(--ink); font-weight:600; }
  .cap-status{ display:inline-flex; align-items:center; gap:6px; font-family:var(--fm); font-size:10.5px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--green-deep); background:rgba(30,107,20,.08); border-radius:999px; padding:5px 12px; }
  .cap-status::before{ content:''; width:6px; height:6px; border-radius:50%; background:var(--green-deep); }
  .cap-boundary{ margin-top:14px; padding:14px 16px; border-left:3px solid #C98A2E; background:rgba(201,138,46,.06); border-radius:0 8px 8px 0; }
  .cap-boundary .cap-status{ color:#9A6A1F; background:rgba(201,138,46,.12); margin-bottom:8px; }
  .cap-boundary .cap-status::before{ background:#C98A2E; }
  .cap-boundary p{ font-size:.85rem; color:var(--ink-soft); line-height:1.6; margin:0; }
  .surface-chain{ list-style:none; margin:2rem 0 0; padding:0; display:flex; flex-direction:column; gap:0; border-top:1px solid rgba(10,29,37,.08); }
  .surface-chain li{ padding:1.5rem 0; border-bottom:1px solid rgba(10,29,37,.08); }
  .surface-chain .sc-name{ font-family:var(--fh); font-weight:700; font-size:1.05rem; color:var(--ink); margin-bottom:.5rem; display:block; }
  .surface-chain .sc-caps{ font-family:var(--fm); font-size:.82rem; color:var(--green-deep); line-height:1.7; }

  /* INSIGHTS / BLOG */
  .post-meta-row{ display:flex; align-items:center; gap:14px; margin-bottom:1rem; }
  .post-tag{ font-family:var(--fm); font-size:10.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--green); background:rgba(98,216,78,.1); padding:5px 11px; border-radius:999px; }
  .related-section{ border-top:1px solid rgba(10,29,37,.08); margin-top:3rem; padding-top:2.5rem; }
  .related-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:1.5rem; }
  .related-card{ background:#fff; border:1px solid rgba(10,29,37,.08); border-radius:14px; padding:1.5rem; text-decoration:none; transition:all .3s var(--ease); display:block; }
  .related-card:hover{ transform:translateY(-3px); border-color:rgba(30,107,20,.3); box-shadow:0 10px 26px rgba(0,0,0,.05); }
  .related-card .tag{ font-family:var(--fm); font-size:9.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--green-deep); margin-bottom:.5rem; display:block; }
  .related-card h4{ font-size:1rem; font-weight:700; color:var(--ink); margin:0; line-height:1.4; }
  .hub-banner{ background:var(--navy); border-radius:16px; padding:2rem; margin-top:2.5rem; display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; }
  .hub-banner .eyebrow{ margin-bottom:.5rem; }
  .hub-banner h4{ color:#fff; font-size:1.15rem; font-weight:700; margin:0; }
  .insights-index-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--hairline-light); margin-top:48px; border:1px solid var(--hairline-light); border-radius:14px; overflow:hidden; }
  .insights-index-grid .industry-card{ }
  @media(max-width:900px){ .related-grid{ grid-template-columns:1fr; } .insights-index-grid{ grid-template-columns:1fr 1fr; } }
  @media(max-width:600px){ .insights-index-grid{ grid-template-columns:1fr; } }
