:root{
    /* Bluprint brand palette, Brand Guidelines v1.0, June 2026 */
    --primary-blue:#496380;  /* CTAs, key headings, links, active states */
    --mid-blue:#98AEDD;      /* secondary UI, module identifier, borders */
    --light-blue:#E4EAF6;    /* section backgrounds, tints, highlights */
    --charcoal:#2D2D2D;      /* body text, dark hero/CTA blocks, footer */
    --light-grey:#F2F2F2;    /* page backgrounds, input fields */
    --white:#FFFFFF;         /* content areas, card surfaces */
    --cream:#FBF1E8;         /* warm off-white / cream-peach for light surfaces */
    --ink-soft:rgba(251,241,232,.85);
    --bp-blue:#6a95c4;       /* blueprint paper blue (ref image) */
    --heading: "Bitter", Georgia, serif;
    --body: "Inter", Calibri, Arial, sans-serif;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    font-family:var(--body);color:#FBF1E8;line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased;
    /* Immersive blueprint: #4887c8 paper + white drafting grid (fine + major) */
    background-color:var(--bp-blue);
    background-image:
      linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px),
      linear-gradient(rgba(255,255,255,.16) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.16) 1px, transparent 1px);
    background-size:28px 28px,28px 28px,140px 140px,140px 140px;
    background-position:-1px -1px,-1px -1px,-1px -1px,-1px -1px;
  }

  /* ---------- Nav ---------- */
  nav{position:relative;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:20px 44px 20px 34px;max-width:1320px;margin:0 auto}
  .logo{font-family:var(--heading);cursor:pointer;display:flex;align-items:baseline;white-space:nowrap}
  .logo-mark{height:30px;width:auto;margin-right:9px;flex:none;align-self:center}
  .logo .brand{font-size:26px;font-weight:400;color:#FBF1E8;letter-spacing:-0.5px}
  .logo .module{font-size:13px;font-weight:400;color:#FBF1E8;margin-left:7px;letter-spacing:0}
  .logo .module:empty{margin-left:0}
  /* centred primary menu (Twin-style) */
  .nav-center{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:30px}
  .nav-center a{color:rgba(251,241,232,.85);text-decoration:none;font-size:15px;font-weight:500;cursor:pointer;transition:color .15s;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}
  .nav-center a:hover{color:#FBF1E8}
  .nav-center a.active{color:#FBF1E8;font-weight:600}
  .caret{font-size:10px;opacity:.8;transition:transform .2s}
  /* ---------- Mega dropdown (Solutions) ---------- */
  .has-mega{display:inline-flex;align-items:center}
  .has-mega>a{cursor:pointer}
  .has-mega:hover .caret{transform:rotate(180deg)}
  .mega{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);padding-top:16px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease, transform .18s ease;z-index:60}
  .has-mega:hover .mega{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
  .mega-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2px 22px;width:620px;max-width:92vw;background:var(--cream);border:1px solid rgba(73,99,128,.18);border-radius:16px;padding:20px 22px;box-shadow:0 26px 60px rgba(13,40,71,.30)}
  .mega-col{min-width:0}
  .mega-col.div{border-left:1px solid rgba(45,45,45,.12);padding-left:22px}
  .mega-col h4{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#7587a6;font-weight:600;margin:2px 0 8px 10px}
  .mega-item{display:flex;gap:12px;align-items:flex-start;min-width:0;padding:8px 10px;border-radius:10px;text-decoration:none;cursor:pointer;transition:background .15s}
  .mega-item:hover{background:rgba(73,99,128,.08)}
  .mega-item>span:last-child{flex:1 1 auto;min-width:0}
  /* Solutions items are `.nav-center a`, which forces white-space:nowrap + inline-flex/center.
     Override here so descriptions wrap and stay inside the dropdown box. */
  .nav-center .has-mega .mega-item{display:flex;align-items:flex-start;white-space:normal}
  .mega-item .t,.mega-item .d{overflow-wrap:anywhere;white-space:normal}
  /* not-yet-launched modules */
  .mega-item.soon{cursor:default}
  .mega-item.soon:hover{background:transparent}
  .mega-item.soon .t{color:rgba(45,45,45,.40);font-weight:500}
  .mega-item.soon .d{color:rgba(45,45,45,.30)}
  .mega-item.soon .mega-ic{border-color:rgba(45,45,45,.12);background:#fbfcfe}
  .mega-item.soon .mega-ic svg{stroke:rgba(45,45,45,.40)}
  .mega-ic{width:36px;height:36px;flex:none;border:1px solid rgba(45,45,45,.16);border-radius:9px;display:flex;align-items:center;justify-content:center;background:var(--cream)}
  .mega-ic svg{width:18px;height:18px;stroke:#2D2D2D;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .mega-item .t{display:block;font-weight:600;font-size:14px;color:#2D2D2D;line-height:1.25}
  .mega-item .d{display:block;font-size:12.5px;color:rgba(45,45,45,.62);margin-top:2px;line-height:1.35}
  /* right cluster: account link + auth buttons, spaced off the menu */
  .nav-right{display:flex;align-items:center;gap:13px}
  .nav-right .mybp{color:rgba(251,241,232,.85);text-decoration:none;font-size:15px;font-weight:500;cursor:pointer;margin-right:14px;transition:color .15s;white-space:nowrap}
  .nav-right .mybp:hover{color:#FBF1E8}
  .nav-right .btn{padding:7px 16px;font-size:14px}
  .btn{display:inline-block;background:var(--cream);color:#2f5b86 !important;padding:10px 22px;border-radius:999px;font-size:15px;font-weight:500;text-decoration:none;cursor:pointer;border:none;transition:background .15s}
  .btn:hover{background:#F2E4D6}
  .btn.secondary{background:transparent;color:#FBF1E8 !important;border:1.5px solid rgba(255,255,255,.6)}
  .btn.secondary:hover{border-color:#fff;background:rgba(255,255,255,.10)}

  /* ---------- Layout ---------- */
  .page{display:none;animation:fade .35s ease}
  .page.visible{display:block}
  @keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
  .wrap{max-width:1100px;margin:0 auto;padding:0 48px}
  section{padding:72px 0}
  h1{font-family:var(--heading);font-size:clamp(38px,5.5vw,60px);line-height:1.12;letter-spacing:-0.5px;font-weight:500;color:#FBF1E8}
  h2{font-family:var(--heading);font-size:clamp(28px,3.5vw,38px);line-height:1.2;letter-spacing:-0.5px;font-weight:500;margin-bottom:18px;color:#FBF1E8}
  h3{font-family:var(--heading);font-size:18px;font-weight:500;margin-bottom:8px;color:#FBF1E8}
  .lede{font-size:17px;color:var(--ink-soft);max-width:640px}
  .eyebrow{letter-spacing:1.5px;text-transform:uppercase;font-size:12.5px;font-weight:600;color:rgba(251,241,232,.9);margin-bottom:14px}

  /* ---------- Hero / search ---------- */
  .hero{text-align:center;padding:96px 0 64px}
  .hero h1{max-width:900px;margin:0 auto 20px;white-space:nowrap}
  .hero .lede{margin:0 auto 44px}
  .searchbox{max-width:680px;margin:0 auto;position:relative}
  .searchbox input{width:100%;padding:21px 64px 21px 28px;font-size:17px;font-family:var(--body);border:1.5px solid rgba(255,255,255,.55);border-radius:18px;background:var(--cream);color:var(--charcoal);outline:none;box-shadow:0 6px 30px rgba(13,40,71,.28);transition:border .15s, box-shadow .15s}
  .searchbox input:focus{border-color:#fff;box-shadow:0 6px 34px rgba(255,255,255,.35)}
  .searchbox input::placeholder{color:#9bb4cc}
  .searchbox button{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:13px;border:none;background:#496380;color:#FBF1E8;font-size:19px;cursor:pointer;transition:background .15s}
  .searchbox button:hover{background:#37506a}
  .chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:22px}
  .chip{padding:9px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.08);color:#FBF1E8;font-size:14px;cursor:pointer;transition:all .15s}
  .chip:hover{border-color:#fff;background:rgba(255,255,255,.18);color:#FBF1E8}
  .trust-line{margin-top:34px;font-size:13.5px;color:rgba(251,241,232,.75)}

  /* ---------- Product demo window ---------- */
  .demo{width:min(1240px,94vw);margin:64px 0 0;position:relative;left:50%;transform:translateX(-50%);padding-bottom:12px}
  .demo-stage{position:relative;min-height:600px}
  .demo-app{position:absolute;inset:0;display:grid;grid-template-columns:200px 1fr;background:#E7E7E3;border:1px solid rgba(255,255,255,.5);border-radius:16px;box-shadow:0 36px 90px rgba(13,40,71,.45);overflow:hidden;color:#7c7c78}
  .demo-side{padding:18px 14px;border-right:1px solid rgba(0,0,0,.06);font-size:12.5px;display:flex;flex-direction:column;gap:9px}
  .demo-logo{font-family:var(--heading);font-size:18px;color:#3a3a37;margin-bottom:6px}
  .demo-sh{margin:10px 0 0;font-size:10.5px;letter-spacing:1px;text-transform:uppercase;color:#a8a8a3}
  .demo-user{margin-top:auto;display:flex;align-items:center;gap:8px;color:#5f5f5b}
  .demo-user .ud{width:18px;height:18px;border-radius:50%;background:#c66b9a;flex:none}
  .demo-main{position:relative;padding:18px 22px}
  .demo-running{font-family:var(--heading);font-weight:600;font-size:16px;color:#9a9a95}
  .demo-bar2{position:absolute;left:22px;right:22px;bottom:18px;height:44px;border-radius:12px;background:#dededa;display:flex;align-items:center;padding:0 16px;font-size:13px;color:#9a9a95}
  .demo-win{position:absolute;top:15%;left:16%;right:5%;bottom:13%;background:#FFFFFF;border-radius:14px;box-shadow:0 30px 70px rgba(13,40,71,.34);overflow:hidden;display:flex;flex-direction:column}
  .demo-wb{display:flex;align-items:center;gap:10px;padding:11px 14px;background:#F4F4F2;border-bottom:1px solid rgba(0,0,0,.06)}
  .demo-dots{display:flex;gap:6px;flex:none}
  .demo-dots i{width:11px;height:11px;border-radius:50%;display:block}
  .demo-dots i:nth-child(1){background:#f0a04b}.demo-dots i:nth-child(2){background:#f0c84b}.demo-dots i:nth-child(3){background:#7bc47f}
  .demo-url{flex:1;text-align:center;font-size:12.5px;color:#8a8a86;background:#FFFFFF;border-radius:7px;padding:5px 12px;max-width:340px;margin:0 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .demo-tag{font-size:11.5px;font-weight:600;color:#FBF1E8;background:#2D2D2D;border-radius:999px;padding:4px 11px;white-space:nowrap;flex:none}
  .demo-wbody{padding:18px 20px;overflow:hidden}
  .demo-rh{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:15px}
  .demo-rt{font-family:var(--heading);font-weight:600;font-size:16px;color:#2D2D2D}
  .demo-rs{font-size:12px;color:#8a8a86;margin-top:2px}
  .demo-score{flex:none;text-align:center;line-height:1.05}
  .demo-score .num{font-family:var(--heading);font-weight:600;font-size:30px;color:var(--primary-blue)}
  .demo-score .den{font-size:13px;color:#9a9a96}
  .demo-score .lbl{display:block;font-size:10px;letter-spacing:.5px;text-transform:uppercase;color:#9a9a96;margin-top:3px}
  .demo-sech{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#9a9a96;font-weight:600;margin:0 0 6px}
  .demo-pri{list-style:none;margin:0 0 16px;padding:0;counter-reset:p}
  .demo-pri li{position:relative;padding:8px 0 8px 30px;font-size:13.5px;color:#555;border-top:1px solid rgba(0,0,0,.06)}
  .demo-pri li:first-child{border-top:none}
  .demo-pri li::before{counter-increment:p;content:counter(p);position:absolute;left:0;top:7px;width:20px;height:20px;border-radius:6px;background:var(--light-blue);color:var(--primary-blue);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}
  .demo-pri b{color:#2D2D2D}
  .demo-match{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#F4F7FC;border:1px solid rgba(73,99,128,.18);border-radius:12px;padding:11px 14px}
  .demo-ml{display:flex;align-items:center;gap:11px}
  .demo-av{width:34px;height:34px;border-radius:8px;background:var(--primary-blue);color:#FBF1E8;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;font-family:var(--heading);flex:none}
  .demo-mt{font-weight:600;font-size:14px;color:#2D2D2D}
  .demo-ms{font-size:12px;color:#8a8a86}
  .demo-fit{font-size:12px;color:#5f5f5b;white-space:nowrap;text-align:right}
  .demo-fit b{display:block;font-family:var(--heading);font-size:17px;color:var(--primary-blue)}
  .demo-pill{position:absolute;left:50%;bottom:-16px;transform:translateX(-50%);display:flex;align-items:center;gap:13px;background:#1d1d1d;color:#FBF1E8;border-radius:999px;padding:8px 11px;box-shadow:0 14px 30px rgba(13,40,71,.4);z-index:3}
  .demo-pill .pc{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;color:#FBF1E8;background:rgba(255,255,255,.13)}
  .demo-pill .pc.next{background:#FFFFFF;color:#1d1d1d}
  .demo-pill .pt{font-family:var(--heading);font-size:14.5px;padding:0 2px 5px;position:relative}
  .demo-pill .pt::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--mid-blue);border-radius:2px}
  .demo-pill .live{width:16px;height:16px;border-radius:50%;background:#e0794f;flex:none}
  .demo-cap{text-align:center;font-size:12px;color:rgba(251,241,232,.7);margin-top:30px}
  @media(max-width:760px){
    .demo-stage{min-height:0}
    .demo-app{display:none}
    .demo-win{position:relative;inset:auto;top:auto;left:auto;right:auto;bottom:auto}
    .demo-pill{position:static;transform:none;margin:16px auto 0;width:max-content}
    .demo-cap{margin-top:16px}
  }

  /* ---------- Live activity ticker ---------- */
  .ticker{position:relative;left:50%;transform:translateX(-50%);width:100vw;margin:64px 0 0;padding:8px 0;overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
  .ticker-row{display:flex;gap:14px;width:max-content;animation:tick 46s linear infinite}
  .ticker:hover .ticker-row{animation-play-state:paused}
  .tick-item{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:9px 17px;font-size:14px;color:rgba(251,241,232,.88)}
  .tick-item .d{width:7px;height:7px;border-radius:50%;background:#7ee0a8;flex:none;box-shadow:0 0 0 3px rgba(126,224,168,.18)}
  .tick-item b{color:#FBF1E8;font-weight:600}
  @keyframes tick{to{transform:translateX(-50%)}}

  /* ---------- Step timeline ---------- */
  .steps{position:relative;margin-top:42px;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
  .steps::before{content:"";position:absolute;top:27px;left:14%;right:14%;height:2px;background:linear-gradient(90deg,rgba(255,255,255,.10),rgba(255,255,255,.45),rgba(255,255,255,.10));z-index:0}
  .step{position:relative;z-index:1;text-align:center;padding:0 10px;opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
  .step.in{opacity:1;transform:none}
  .step .node{width:56px;height:56px;border-radius:50%;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;font-family:var(--heading);font-size:21px;font-weight:600;color:var(--primary-blue);background:var(--cream);box-shadow:0 10px 24px rgba(13,40,71,.3)}
  .step h3{color:#FBF1E8}
  .step p{color:rgba(251,241,232,.82);font-size:14.5px;max-width:290px;margin:6px auto 0}
  @media(max-width:760px){.steps{grid-template-columns:1fr;gap:30px}.steps::before{display:none}}

  /* ---------- Interactive symptom picker ---------- */
  .picker{background:var(--cream);border-radius:18px;padding:24px;box-shadow:0 12px 32px rgba(13,40,71,.26);color:var(--charcoal)}
  .picker-h{font-family:var(--heading);font-weight:600;font-size:15px;color:var(--primary-blue);margin-bottom:14px}
  .picker-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
  .pchip{font-family:var(--body);font-size:13.5px;border:1px solid rgba(73,99,128,.28);background:rgba(73,99,128,.06);color:var(--charcoal);border-radius:999px;padding:8px 14px;cursor:pointer;transition:all .15s}
  .pchip:hover{border-color:var(--primary-blue)}
  .pchip.active{background:var(--primary-blue);color:#FBF1E8;border-color:var(--primary-blue)}
  .picker-out{border-top:1px solid rgba(73,99,128,.16);padding-top:16px}
  .po-label{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#9a9a96;font-weight:600;margin-bottom:6px}
  .po-title{font-family:var(--heading);font-weight:600;font-size:19px;color:var(--charcoal);margin-bottom:6px}
  .po-desc{font-size:14.5px;color:rgba(45,45,45,.72);margin-bottom:10px}
  .po-help{font-size:13.5px;color:var(--primary-blue);font-weight:500}

  /* ---------- Testimonials marquee ---------- */
  .quotes{position:relative;left:50%;transform:translateX(-50%);width:100vw;overflow:hidden;margin-top:18px;-webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
  .quotes-row{display:flex;gap:18px;width:max-content;animation:tick 60s linear infinite}
  .quotes:hover .quotes-row{animation-play-state:paused}
  .qcard{width:340px;flex:none;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:20px 22px}
  .qcard p{color:#FBF1E8;font-size:15px;line-height:1.5;margin-bottom:14px}
  .qcard .who{display:flex;align-items:center;gap:10px}
  .qcard .av{width:32px;height:32px;border-radius:50%;background:var(--mid-blue);color:#FBF1E8;font-size:12.5px;font-weight:700;display:flex;align-items:center;justify-content:center;flex:none}
  .qcard .nm{font-size:13px;color:rgba(251,241,232,.78)}
  .qcard .nm b{display:block;color:#FBF1E8;font-weight:600}
  @media(prefers-reduced-motion:reduce){.ticker-row,.quotes-row{animation:none}.step{opacity:1;transform:none}}

  /* ---------- About: team ---------- */
  .tm-av{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:var(--primary-blue);color:var(--cream);font-family:var(--heading);font-weight:600;font-size:18px;margin-bottom:14px}
  .mission h2{max-width:900px;font-size:clamp(24px,3vw,34px);line-height:1.32}

  /* ---------- Features ---------- */
  .feat-ic{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid rgba(251,241,232,.32);border-radius:12px;margin-bottom:16px;background:rgba(255,255,255,.05)}
  .feat-ic svg{width:22px;height:22px;stroke:var(--cream);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

  /* ---------- Architects showcase ---------- */
  .arch-tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:34px 0 0}
  .arch-tab{font-family:var(--body);font-size:14px;font-weight:500;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.06);color:var(--cream);border-radius:999px;padding:9px 18px;cursor:pointer;transition:all .15s;white-space:nowrap}
  .arch-tab:hover{border-color:rgba(255,255,255,.55)}
  .arch-tab.active{background:var(--cream);color:var(--primary-blue);border-color:var(--cream)}
  .arch-panel{display:none}
  .arch-panel.active{display:block}
  .arch-head{display:flex;align-items:center;gap:12px;justify-content:center;margin-bottom:6px}
  .arch-head h2{margin:0}
  .arch-soon{font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--cream);background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:4px 11px}
  .arch-live{background:rgba(126,224,168,.16);border-color:rgba(126,224,168,.45)}
  .arch-sub{text-align:center;color:var(--ink-soft);max-width:600px;margin:0 auto 30px}
  .arch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .arch-card{background:var(--cream);border-radius:18px;padding:22px;box-shadow:0 12px 30px rgba(13,40,71,.20);transition:transform .15s,box-shadow .15s}
  .arch-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(13,40,71,.26)}
  .arch-av{width:54px;height:54px;border-radius:15px;overflow:hidden;border:1px solid rgba(13,40,71,.07);margin-bottom:16px;display:block}
  .arch-av svg{display:block;width:100%;height:100%}
  .arch-name{font-size:12.5px;color:rgba(45,45,45,.6);margin-bottom:2px}
  .arch-role{font-family:var(--heading);font-weight:600;font-size:17px;color:var(--charcoal);margin-bottom:8px}
  .arch-desc{font-size:14px;color:rgba(45,45,45,.72);line-height:1.5}
  .arch-logos{display:flex;gap:7px;margin-top:15px;padding-top:13px;border-top:1px solid rgba(13,40,71,.09)}
  .arch-logos img{width:19px;height:19px;border-radius:5px;background:#fff;padding:2px;box-shadow:0 2px 5px rgba(13,40,71,.14);display:block}
  .conn-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;max-width:780px;margin:28px auto 0}
  .conn-tile{width:60px;height:60px;border-radius:15px;background:var(--cream);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(13,40,71,.18)}
  .conn-tile img{width:30px;height:30px;border-radius:6px;display:block}
  @media(max-width:860px){.arch-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.arch-grid{grid-template-columns:1fr}}

  /* ---------- Conversational diagnostic mock ---------- */
  .chat{max-width:720px;margin:42px auto 0;display:flex;flex-direction:column;gap:16px}
  .chat-row{display:flex;align-items:flex-end;gap:11px;opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
  .chat-row.in{opacity:1;transform:none}
  .chat-row.you{flex-direction:row-reverse}
  .chat-av{flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600}
  .chat-av.bp{background:var(--cream);color:var(--primary-blue);font-family:var(--heading)}
  .chat-av.you{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22)}
  .chat-av.you svg{width:17px;height:17px;stroke:var(--cream);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .bubble{max-width:80%;padding:13px 17px;border-radius:18px;font-size:15px;line-height:1.5}
  .chat-row.bp .bubble{background:var(--cream);color:var(--charcoal);border-bottom-left-radius:6px;box-shadow:0 6px 18px rgba(13,40,71,.16)}
  .chat-row.you .bubble{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);color:var(--cream);border-bottom-right-radius:6px}
  @media(prefers-reduced-motion:reduce){.chat-row{opacity:1;transform:none}}
  @media(max-width:600px){.bubble{max-width:84%;font-size:14.5px}}

  /* ---------- Use cases ---------- */
  .uc-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:40px}
  .uc-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.22);border-radius:18px;padding:30px 30px 26px;display:flex;flex-direction:column;transition:transform .15s, box-shadow .15s, border-color .15s}
  .uc-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(13,40,71,.28);border-color:rgba(255,255,255,.42)}
  .uc-tag{align-self:flex-start;font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--cream);background:rgba(73,99,128,.55);border:1px solid rgba(251,241,232,.25);border-radius:999px;padding:5px 12px;margin-bottom:16px}
  .uc-card h3{font-size:22px;line-height:1.2;margin-bottom:10px}
  .uc-desc{color:rgba(251,241,232,.82);font-size:15px;margin-bottom:18px}
  .uc-out{display:flex;gap:10px;align-items:flex-start;border-top:1px solid rgba(251,241,232,.18);padding-top:14px;margin-top:auto}
  .uc-out-l{font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:rgba(251,241,232,.6);font-weight:600;flex:none;padding-top:2px}
  .uc-out-t{font-size:14.5px;color:var(--cream)}
  .uc-cta{margin-top:18px;font-size:14.5px;font-weight:600;color:var(--cream);cursor:pointer;display:inline-flex;align-items:center;gap:6px;align-self:flex-start}
  .uc-cta .ar{transition:transform .15s}
  .uc-card:hover .uc-cta .ar{transform:translateX(3px)}
  @media(max-width:760px){.uc-grid{grid-template-columns:1fr}}

  /* ---------- Cards & grids ---------- */
  .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
  .card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.30);border-radius:18px;padding:30px;transition:transform .15s, box-shadow .15s}
  .card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(13,40,71,.30)}
  .card p{color:rgba(251,241,232,.82);font-size:15px}
  .step-num{font-family:var(--heading);font-size:34px;font-weight:300;color:rgba(251,241,232,.55);margin-bottom:12px;display:block}

  /* ---------- Section break (drawn panel) ---------- */
  .tint{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.22);border-radius:24px;padding:56px 48px}

  /* ---------- Stats band (deeper blueprint panel) ---------- */
  .stats{background:rgba(13,40,71,.25);border:1px solid rgba(255,255,255,.18);color:#FBF1E8;border-radius:24px;padding:56px 48px;display:grid;grid-template-columns:repeat(3,1fr);gap:36px;text-align:center}
  .stats .num{font-family:var(--heading);font-size:46px;font-weight:500;letter-spacing:-1px;color:#FBF1E8}
  .stats .lbl{font-size:14.5px;color:rgba(251,241,232,.82);max-width:240px;margin:6px auto 0}
  .news{background:var(--cream);border-radius:26px;overflow:hidden;display:grid;grid-template-columns:1.05fr 1fr;box-shadow:0 26px 64px rgba(13,40,71,.30)}
  .news-art{position:relative;min-height:400px}
  .news-art svg{position:absolute;inset:0;width:100%;height:100%;display:block}
  .news-body{padding:58px 54px;display:flex;flex-direction:column;justify-content:center}
  .news-body h2{font-family:var(--heading);color:var(--charcoal);font-size:clamp(28px,3vw,40px);font-weight:600;margin:0 0 14px;letter-spacing:-.5px}
  .news-body .sub{color:#5f5a55;font-size:16px;line-height:1.55;margin:0 0 26px;max-width:430px}
  .news-form{display:flex;flex-direction:column;gap:13px;max-width:440px}
  .news-form input{width:100%;padding:15px 18px;border-radius:12px;border:1px solid rgba(13,40,71,.18);background:#fff;font-size:15px;font-family:var(--body);color:var(--charcoal)}
  .news-form input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px rgba(73,99,128,.15)}
  .news-form button{padding:15px 18px;border:none;border-radius:12px;background:var(--primary-blue);color:var(--cream);font-family:var(--body);font-weight:600;font-size:15px;cursor:pointer;transition:filter .15s}
  .news-form button:hover{filter:brightness(1.09)}
  .news-fine{font-size:12.5px;color:#8a7f75;margin:15px 0 0}
  @media(max-width:820px){.news{grid-template-columns:1fr}.news-art{min-height:230px}.news-body{padding:38px 30px}}
  .photoband{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 22px 54px rgba(13,40,71,.30)}
  .photoband img{display:block;width:100%;height:340px;object-fit:cover}
  .pb-grade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(73,99,128,.32),rgba(73,99,128,.05) 55%,rgba(73,99,128,.20));mix-blend-mode:multiply}
  .pb-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,40,71,0) 42%,rgba(13,40,71,.55))}
  .photoband svg.pb-mark{position:absolute;inset:0;width:100%;height:100%}
  .pb-cap{position:absolute;left:42px;bottom:32px;max-width:540px}
  .pb-cap .eyebrow{color:rgba(251,241,232,.85);margin-bottom:8px}
  .pb-cap h3{margin:0;font-family:var(--heading);font-weight:600;color:#FBF1E8;font-size:clamp(22px,2.5vw,32px);letter-spacing:-.4px;text-shadow:0 2px 14px rgba(13,40,71,.55)}
  @media(max-width:820px){.photoband img{height:250px}.pb-cap{left:26px;bottom:24px}}

  /* ---------- Split / CTA ---------- */
  .split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
  .quoteband{background:rgba(13,40,71,.25);border:1px solid rgba(255,255,255,.18);color:#FBF1E8;border-radius:24px;padding:64px 56px;text-align:center}
  .quoteband h2{color:#FBF1E8;max-width:700px;margin:0 auto 14px}
  .quoteband p{color:rgba(251,241,232,.85);max-width:560px;margin:0 auto 28px}

  ul.tick{list-style:none}
  ul.tick li{padding-left:30px;position:relative;margin-bottom:12px;color:var(--ink-soft);font-size:15.5px}
  ul.tick li::before{content:"✓";position:absolute;left:0;color:#FBF1E8;font-weight:700}

  table{width:100%;border-collapse:collapse;background:transparent;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.4)}
  th,td{padding:15px 20px;text-align:left;font-size:14.5px;border-bottom:1px solid rgba(255,255,255,.18)}
  th{background:rgba(255,255,255,.12);font-family:var(--heading);font-weight:500;color:#FBF1E8}
  td{color:rgba(251,241,232,.85)}
  td strong{color:#FBF1E8 !important}
  tr:nth-child(odd) td{background:rgba(255,255,255,.05)}
  tr:last-child td{border-bottom:none}

  footer{background:rgba(13,40,71,.30);margin-top:72px;padding:44px 48px;color:rgba(251,241,232,.8);font-size:13.5px}
  .footer-inner{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}
  footer .logo .brand{color:#FBF1E8}
  footer .logo .module{color:rgba(251,241,232,.75)}
  footer a{color:rgba(251,241,232,.85);text-decoration:none;margin-left:22px;cursor:pointer}
  footer a:hover{color:#FBF1E8}

  .badge{display:inline-block;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.45);color:#FBF1E8;font-size:12.5px;font-weight:600;padding:4px 12px;border-radius:999px;margin-bottom:16px}

  .dark-card{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.32)}
  .dark-card h3{color:#FBF1E8}
  .dark-card ul.tick li{color:rgba(251,241,232,.88)}
  .dark-card ul.tick li::before{color:#FBF1E8}

  @media(max-width:980px){
    nav{padding:18px 22px}
    .nav-center{display:none}
    .nav-right .mybp{display:none}
    .nav-right{gap:10px}
    .wrap{padding:0 22px}
    .grid3,.grid2,.split,.stats{grid-template-columns:1fr}
    .stats,.tint{padding:40px 28px}
    .footer-inner{flex-direction:column;gap:18px}
  }
