@font-face{
    font-family:'Stack Sans Text';font-style:normal;font-weight:400;font-display:swap;
    src:url('/fonts/stack-sans-text-latin-400-normal.woff2') format('woff2');
  }
  @font-face{
    font-family:'Stack Sans Text';font-style:normal;font-weight:500;font-display:swap;
    src:url('/fonts/stack-sans-text-latin-500-normal.woff2') format('woff2');
  }
  @font-face{
    font-family:'Stack Sans Text';font-style:normal;font-weight:700;font-display:swap;
    src:url('/fonts/stack-sans-text-latin-700-normal.woff2') format('woff2');
  }
  /* Noi Grotesk: site body/heading typeface */
  @font-face{font-family:'Noi Grotesk';font-style:normal;font-weight:300;font-display:swap;src:url('/fonts/NoiGroteskTrial-Light.woff2') format('woff2')}
  @font-face{font-family:'Noi Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/NoiGroteskTrial-Regular.woff2') format('woff2')}
  @font-face{font-family:'Noi Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/NoiGroteskTrial-Medium.woff2') format('woff2')}
  @font-face{font-family:'Noi Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/NoiGroteskTrial-Semibold.woff2') format('woff2')}
  @font-face{font-family:'Noi Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/NoiGroteskTrial-Bold.woff2') format('woff2')}
  @font-face{font-family:'Noi Grotesk';font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/NoiGroteskTrial-RegularItalic.woff2') format('woff2')}
  :root{
    --pink:#c6f04f;        /* capacoty button accent (blue) */
    --pink-deep:#1a6b3d;
    --heading:#0A0A0A;
    --body:#5C6C6D;
    --panel:#F3F6FB;
    --border:#D9DEDE;
    --nav-h:96px;
    --max:1312px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  body{
    font-family:"Noi Grotesk",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
    color:var(--body);background:#fbfaf6;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;
  }
  h1,h2,h3{color:var(--heading);line-height:1.08;letter-spacing:-0.02em;font-weight:600}
  h2{font-size:36px;font-weight:500}
  h3{font-weight:500}
  a{text-decoration:none;color:inherit}
  img{display:block}
  .wrap{width:100%;max-width:var(--max);margin:0 auto}

  /* ---------------- NAV ---------------- */
  /* Header/nav + mobile drawer are now provided by the shared partial
     (partials/header.html + partials.css). The .logo/.navlinks/.dd-*
     rules that follow are dead on the homepage (the partial uses .md-*
     selectors) but kept harmless; only .btn below is still used by the body. */
  .logo{font-family:'Stack Sans Text',-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;font-size:24px;font-weight:500;color:#0a0a0a;letter-spacing:-.02em;display:inline-flex;align-items:center;transition:color .3s ease}
  /* homepage: logo is black on load, turns brand-green when the nav frosts */
  header.scrolled .logo,header.nav-open .logo{color:#1a6b3d}
  /* mobile/tablet shows the black icon mark; desktop shows the wordmark */
  .logo-mark{display:block;height:28px;width:auto}
  .logo-word{display:none}
  @media(min-width:1280px){
    .logo-mark{display:none}
    .logo-word{display:inline}
  }
  .navlinks{display:none;align-items:center;gap:28px;list-style:none}
  .navlinks a,.navlinks button{
    background:none;border:none;cursor:pointer;font:inherit;color:#0a0a0a;font-size:16px;
    display:flex;align-items:center;gap:4px;transition:opacity .2s;
  }
  .navlinks a:hover,.navlinks button:hover{opacity:.7}
  .navlinks .active{font-weight:600}
  .chev{width:16px;height:16px;stroke:#0a0a0a;stroke-width:2;fill:none}
  /* Features dropdown */
  .has-dd{position:relative}
  .has-dd .dd-btn{transition:opacity .2s}
  .has-dd .chev{transition:transform .2s}
  .has-dd.open .chev{transform:rotate(180deg)}
  .dd-panel{
    position:absolute;top:calc(100% + 36px);left:50%;
    transform:translateX(-50%) translateY(8px);
    min-width:248px;border-radius:16px;
    background:rgba(255,255,255,0.92);
    -webkit-backdrop-filter:blur(40px) saturate(180%);
    backdrop-filter:blur(40px) saturate(180%);
    border:1px solid transparent;
    box-shadow:0 22px 50px rgba(10,30,20,.16);padding:8px;
    display:flex;flex-direction:column;
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:40;
  }
  .has-dd.open .dd-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
  .dd-panel a{display:flex;align-items:baseline;gap:8px;padding:9px 12px;border-radius:9px;font-size:14px;color:#0a140f;white-space:nowrap}
  .dd-panel a b{display:inline-block;min-width:34px;color:#1C6A4D;font-weight:700;font-size:13px}
  .dd-panel a:hover{background:#F1F7F2}
  .dd-sep{height:1px;background:#eef1ef;margin:6px 8px}
  /* pink button with black slide-in hover */
  .btn{
    position:relative;isolation:isolate;overflow:hidden;
    display:inline-flex;align-items:center;justify-content:center;
    padding:12px 24px;border-radius:999px;font-size:16px;font-weight:500;text-align:center;cursor:pointer;border:none;
    background:var(--pink);color:#0a0a0a;transition:color .25s ease;
  }
  .btn::before{
    content:"";position:absolute;inset:0;background:#0a0a0a;z-index:-1;
    transform:translateX(-101%);
    transition:transform .42s cubic-bezier(.2,.75,.25,1);
  }
  .btn:hover{color:#fff}
  .btn:hover::before{transform:translateX(0)}
  .nav-signin{background:none;border:none;cursor:pointer;font:inherit;color:#0a0a0a;font-size:16px;margin-right:4px;transition:opacity .2s}
  .nav-signin:hover{opacity:.7}
  .menu-icon{display:flex;padding:8px}
  .menu-icon svg{width:24px;height:24px;stroke:#0a0a0a;stroke-width:2;fill:none}
  .nav-mobile{display:flex;align-items:center;gap:8px}
  .nav-demo-desktop{display:flex;align-items:center;gap:18px}
  @media(min-width:1280px){
    .navlinks{display:flex}
    .nav-mobile{display:none}
  }
  @media(max-width:1279px){
    .navlinks,.nav-demo-desktop{display:none}
    .logo{font-size:24px}
    .nav-mobile{gap:8px}
    .nav-mobile .btn{padding:9px 16px;font-size:14px;white-space:nowrap}
    .menu-icon{padding:6px}
  }
  @media(max-width:400px){
    .logo{font-size:20px}
    .nav-mobile{gap:6px}
    .nav-mobile .btn{padding:8px 13px;font-size:13px}
  }
  /* (mobile drawer now provided by the shared partial, partials.css) */

  /* ---------------- HERO ---------------- */
  .hero{position:relative;width:100%;height:100dvh;overflow:hidden;background:#1a1a1a}
  .hero-bg{display:none}
  .hero-pad{position:relative;z-index:2;height:100%;padding:0 24px}
  .hero-inner{position:relative;margin:0 auto;max-width:var(--max);height:100%;color:#ededeb}
  .hero-content{position:relative;z-index:5;max-width:820px;padding-top:calc(var(--nav-h) + 24px);display:flex;flex-direction:column;align-items:flex-start;gap:16px}
  .hero-img{position:absolute;z-index:3;left:0;bottom:0;width:66%;max-width:1000px;height:54vh;object-fit:cover;object-position:top center;border-radius:14px 14px 0 0;border:1px solid rgba(255,255,255,.14);border-bottom:none}
  .hero h1{color:#ededeb;font-size:28px;font-weight:500;letter-spacing:-.02em;line-height:1.1}
  .hero p{color:rgba(255,255,255,.66);font-size:16px;line-height:1.45;max-width:520px}
  /* hero CTA: grouped lime pill matching the tool pages (SAH/FCA):
     a compact green container holding the primary action plus a nested
     outlined secondary. Sized to fit the hero, no mobile blow-up. */
  .hero-cta-group{
    display:inline-flex;align-items:center;gap:8px;flex-wrap:nowrap;
    margin-top:8px;padding:6px;border-radius:999px;
    background:#c6f04f;max-width:100%;
    -webkit-tap-highlight-color:transparent;
  }
  .hero-cta-primary,.hero-cta-secondary{
    position:relative;isolation:isolate;overflow:hidden;z-index:1;
    display:inline-flex;align-items:center;justify-content:center;
    padding:12px 22px;border-radius:999px;
    font-size:16px;font-weight:500;text-decoration:none;white-space:nowrap;cursor:pointer;
    transition:color .25s ease,background .2s ease,border-color .2s ease;
  }
  /* primary: dark text on the lime container; black slide-in on hover (matches .btn) */
  .hero-cta-primary{color:#0a0a0a}
  .hero-cta-primary::before{
    content:"";position:absolute;inset:0;z-index:-1;background:#0a0a0a;
    transform:translateX(-101%);
    transition:transform .42s cubic-bezier(.2,.75,.25,1);
  }
  .hero-cta-primary:hover{color:#fff}
  .hero-cta-primary:hover::before{transform:translateX(0)}
  /* secondary: outlined pill sitting on the lime (matches .btn-line) */
  .hero-cta-secondary{border:1px solid rgba(10,10,10,.28);color:#0a0a0a}
  .hero-cta-secondary:hover{background:rgba(10,10,10,.06);border-color:rgba(10,10,10,.5)}
  /* small phones: trim padding so the group never overflows the hero */
  @media(max-width:400px){
    .hero-cta-primary,.hero-cta-secondary{padding:11px 16px;font-size:15px}
  }
  @media(prefers-reduced-motion:reduce){
    .hero-cta-primary::before{transition:none}
  }
  /* desktop: the lime CTA sits under the sub-heading, a touch more compact
     than the full-size mobile pill */
  @media(min-width:1024px){
    .hero-cta-group{padding:4px;gap:6px}
    .hero-cta-primary,.hero-cta-secondary{padding:8px 18px;font-size:13.5px;line-height:1}
  }
  /* trust pill */
  .trustpill{display:inline-flex;align-items:center;gap:.75rem;background:#fff;border:1px solid var(--border);padding:.45rem 1rem .45rem .45rem;border-radius:9999px;font-size:.9rem;color:var(--heading);font-weight:500;margin-top:20px}
  .trustpill .avatars{display:flex}
  .trustpill .avatars img{width:28px;height:28px;border-radius:50%;object-fit:cover;border:2px solid #fff;margin-left:-8px;display:block}
  .trustpill .avatars img:first-child{margin-left:0}
  @media(min-width:640px){.hero-pad{padding:0 40px}.hero h1{font-size:32px}}
  @media(min-width:768px){.hero-pad{padding:0 64px}.hero-content{padding-top:calc(var(--nav-h) + 40px)}}
  @media(min-width:1024px){.hero h1{font-size:36px}.hero p{font-size:17px}}
  @media(min-width:1280px){.hero h1{font-size:40px}}
  /* mobile: full-width image, softer top-down beam, content left-aligned */
  @media(max-width:767px){
    .hero-content{max-width:none;padding-top:calc(var(--nav-h) + 16px);gap:16px}
    .hero h1{font-size:34px;line-height:1.06}
    .hero p{font-size:16.5px;line-height:1.5}
    .hero-img{width:150%;left:0;max-width:none;height:auto}
    /* mobile: keep both CTAs side by side on one row, shrunk to fit (short) */
    .hero-cta-row{flex-direction:row;align-items:center;gap:10px;flex-wrap:nowrap}
    .hero-cta-stacked,.hero-cta-outline{flex:1 1 0;min-width:0;padding:11px 14px;font-size:15px}
  }
  /* scroll-hint arrow pinned to the hero's bottom */
  .hero-scroll{
    display:flex;align-items:center;justify-content:center;
    position:absolute;left:50%;transform:translateX(-50%);z-index:6;
    bottom:calc(16px + env(safe-area-inset-bottom,0px));
    width:44px;height:44px;border-radius:50%;color:#fff;text-decoration:none;
    background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);
    -webkit-tap-highlight-color:transparent;
    animation:heroArrowHint 1.8s ease-in-out infinite;
  }
  .hero-scroll svg{width:26px;height:26px;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  @keyframes heroArrowHint{
    0%,100%{opacity:.4;transform:translate(-50%,0)}
    50%{opacity:1;transform:translate(-50%,6px)}
  }
  @media(prefers-reduced-motion:reduce){.hero-scroll{animation:none}}

  /* ---------------- CLINICAL ASSURANCES ---------------- */
  .assurances{background:#fbfaf6;padding:56px 24px}
  @media(min-width:640px){.assurances{padding:72px 40px}}
  @media(min-width:768px){.assurances{padding:84px 64px}}
  .assurances-inner{width:100%;max-width:var(--max);margin:0 auto}
  .assurances-head{margin-bottom:32px}
  .assurances-head h2{font-size:28px;font-weight:500;color:var(--heading);letter-spacing:-.01em}
  .assurances-head p{color:var(--body);font-size:16px;margin-top:8px}
  .assurance-cards{display:grid;grid-template-columns:1fr;gap:16px}
  /* mobile: swipeable carousel (matches the .card-carousel pattern) */
  @media(max-width:639px){
    .assurance-cards{display:flex;grid-template-columns:none;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}
    .assurance-cards::-webkit-scrollbar{display:none}
    .assurance-card{flex:0 0 86%;scroll-snap-align:start}
  }
  @media(min-width:768px){.assurance-cards{grid-template-columns:repeat(3,1fr);gap:20px}}
  /* 4-card variant (homepage compliance section): one clean row on desktop, balanced 2-up on tablet */
  @media(min-width:640px){.assurance-cards--4up{grid-template-columns:repeat(2,1fr);gap:18px}}
  @media(min-width:1080px){.assurance-cards--4up{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}}
  .assurance-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px 24px}
  .assurance-card svg{width:28px;height:28px;color:#1a6b3d;display:block}
  .ac-label{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8a9aa0;margin:16px 0 4px}
  .assurance-card h3{font-size:18px;font-weight:500;color:var(--heading);letter-spacing:-.01em;margin-bottom:10px}
  .assurance-card p{color:var(--body);font-size:14px;line-height:1.6}
  /* inline resource links in body copy */
  .rlink{color:var(--pink-deep);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
  .rlink:hover{opacity:.75}

  /* ---------------- SECTION SHELL ---------------- */
  .section{background:#fbfaf6;padding:56px 24px}
  @media(min-width:640px){.section{padding:80px 40px}}
  @media(min-width:768px){.section{padding:80px 64px}}
  @media(min-width:1024px){.section{padding:96px 64px}}

  /* split text+image (block_185) */
  .split{
    width:100%;max-width:var(--max);margin:0 auto;
    display:flex;flex-direction:column;gap:48px;
  }
  .split-copy{display:flex;flex-direction:column;gap:28px;flex:1}
  .split-copy h2{font-size:30px}
  .split-copy p{color:var(--body)}
  .split-copy .stack{display:flex;flex-direction:column;gap:24px}
  .split-copy h2 .was{color:#9aa6a0;text-decoration-thickness:2px;text-decoration-color:#c6f04f;font-weight:inherit}
  .split-copy h2 .now{color:#0a0a0a}
  .ticks{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:4px}
  .ticks li{position:relative;padding-left:30px;color:var(--body);font-size:15px}
  .ticks li::before{
    content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:6px;
    background:#26c774;
  }
  .ticks li::after{
    content:"";position:absolute;left:6px;top:7px;width:7px;height:4px;
    border-left:2px solid #0a0a0a;border-bottom:2px solid #0a0a0a;transform:rotate(-45deg);
  }
  .split-media{flex:1;width:100%}
  .split-media img{width:100%;height:auto;object-fit:cover;border-radius:24px}
  .split-media img.shot{border:1px solid var(--border);box-shadow:0 24px 50px rgba(10,30,20,.12)}
  /* composite "clinical colleague" hero image */
  .cc-hero{width:100%;border-radius:24px;border:1px solid var(--border);background:linear-gradient(155deg,#EAF5EE,#D7ECDD);padding:26px;display:flex;flex-direction:column;gap:14px;box-shadow:0 24px 50px rgba(10,30,20,.10)}
  .cc-chat,.cc-card{background:#fff;border:1px solid #E3E8E6;border-radius:14px;box-shadow:0 8px 20px rgba(10,30,20,.06)}
  .cc-chat{padding:14px 16px}
  .cc-q{font-size:13px;color:#0a140f;font-weight:500;line-height:1.45}
  .cc-analyse{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:11.5px;color:#1C6A4D;font-weight:600}
  .cc-analyse .d{width:7px;height:7px;border-radius:50%;background:#26c774;animation:genpulse 1.2s ease-in-out infinite}
  .cc-card{padding:14px 16px}
  .cc-card-h{font-size:12px;font-weight:600;color:#0a140f;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}
  .cc-enc{font-size:10px;font-weight:600;color:#1C6A4D;background:#E6F2EA;border-radius:6px;padding:3px 8px;white-space:nowrap}
  .cc-srow{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:#5C6C66;padding:7px 0;border-bottom:1px solid #f3f5f3}
  .cc-srow:last-child{border-bottom:none}
  .cc-srow b{color:#0a140f}
  .cc-file{display:flex;align-items:center;gap:11px}
  .cc-file .ic{width:30px;height:30px;border-radius:8px;background:#EAF1F8;color:#3b73b0;display:grid;place-items:center;font-size:13px;flex-shrink:0}
  .cc-file .meta{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}
  .cc-file b{font-size:12.5px;color:#0a140f}
  .cc-file small{font-size:10.5px;color:#8a9a92}
  /* section-2 stat cards: frosted-glass tiles floating on a Monet (matches the app-screenshot mockups) */
  .statgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%}
  .stat{background:rgba(255,255,255,.55);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);
    border:1px solid rgba(16,23,46,.07);border-radius:18px;padding:26px 22px;display:flex;flex-direction:column;justify-content:space-between;gap:16px;min-height:180px}
  .stat-num{font-size:46px;font-weight:600;letter-spacing:-.03em;color:#0c1a14;line-height:1}
  .stat-lbl{font-size:14px;color:#33414f;line-height:1.4}
  /* section-1 "report generating" visual */
  .gen-viz{
    width:100%;aspect-ratio:3/2;border-radius:24px;overflow:hidden;
    display:flex;align-items:center;justify-content:center;padding:34px;
    background:#EEF0F0;
    border:1px solid var(--border);
  }
  .gen-card{width:100%;max-width:440px;background:#fff;border:1px solid #E3E8E6;border-radius:16px;padding:22px;box-shadow:0 18px 40px rgba(10,30,20,.10)}
  .gen-card h4{color:#0a140f;font-size:15px;font-weight:600;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center}
  .gen-pill{font-size:11px;font-weight:700;color:#0A2418;background:#c6f04f;padding:3px 10px;border-radius:999px}
  .gen-row{display:flex;align-items:center;gap:11px;padding:10px 0;border-bottom:1px solid rgba(10,20,15,.07);font-size:13px;color:var(--body)}
  .gen-row:last-of-type{border-bottom:none}
  .gen-tick{width:21px;height:21px;border-radius:6px;background:#26c774;color:#0A2418;display:grid;place-items:center;font-size:11px;font-weight:800;flex-shrink:0}
  .gen-tick.wait{background:#E3E8E6;color:#8a9a92;animation:genpulse 1.4s ease-in-out infinite}
  .gen-bar{height:9px;border-radius:6px;background:#E3E8E6;margin-top:16px;overflow:hidden}
  .gen-bar span{display:block;height:100%;width:72%;border-radius:6px;background:linear-gradient(90deg,#26c774,#5ee8b0);animation:genfill 2.8s ease-in-out infinite}
  @keyframes genfill{0%,100%{width:64%}50%{width:84%}}
  @keyframes genpulse{0%,100%{opacity:.5}50%{opacity:1}}
  @media(min-width:640px){.split-copy h2{font-size:36px}}
  @media(min-width:1024px){
    .split{flex-direction:row;align-items:center;gap:80px}
    .split.reverse{flex-direction:row-reverse}
  }

  /* with-decidros (block_173) */
  .od{width:100%;max-width:var(--max);margin:0 auto;display:flex;flex-direction:column;gap:80px}
  .od-head{display:flex;flex-direction:column;gap:24px;align-items:center;text-align:center}
  .od-head p{max-width:680px;color:var(--body)}
  .cardgrid{display:grid;grid-template-columns:1fr;gap:20px;width:100%;max-width:1280px;margin:0 auto}
  @media(min-width:640px){.cardgrid{grid-template-columns:1fr 1fr}}
  @media(min-width:1280px){.cardgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
  /* mobile: With-Capacoty cards become a swipeable carousel */
  .card-carousel{width:100%}
  .card-nav{display:none}
  .card-nav-btn{
    width:52px;height:52px;border-radius:50%;border:1px solid var(--border);
    background:#fff;color:#0a140f;display:grid;place-items:center;cursor:pointer;
    transition:background .2s,color .2s,border-color .2s,opacity .2s;
  }
  .card-nav-btn svg{width:20px;height:20px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
  .card-nav-btn:disabled{opacity:.35;cursor:default}
  .card-nav-btn:not(:disabled):hover{background:#0a0a0a;color:#fff;border-color:#0a0a0a}
  @media(max-width:639px){
    .card-carousel .cardgrid,
    .card-carousel .feat-grid,
    .card-carousel .hl-grid{
      display:flex;grid-template-columns:none;max-width:none;
      gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;
      -webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px;
    }
    .card-carousel .cardgrid::-webkit-scrollbar,
    .card-carousel .feat-grid::-webkit-scrollbar,
    .card-carousel .hl-grid::-webkit-scrollbar{display:none}
    .card-carousel .cardgrid > .card,
    .card-carousel .feat-grid > .feat-card,
    .card-carousel .hl-grid > .hl-card{flex:0 0 86%;scroll-snap-align:start}
    .card-nav{display:flex;justify-content:space-between;margin-top:24px}
  }
  .card{
    background:#fff;border-radius:16px;
    padding:24px;display:flex;flex-direction:column;gap:28px;min-height:200px;
  }
  .card img{width:40px;height:40px;object-fit:contain}
  .rt-ic{width:46px;height:46px;border-radius:12px;background:#E6F2EA;display:grid;place-items:center}
  .rt-ic svg{width:24px;height:24px;stroke:#1C6A4D;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
  .card.soon{opacity:.6;background:#FAFBFB}
  .card.soon .rt-ic{background:#EEF0F0}
  .card.soon .rt-ic svg{stroke:#9aa6a0}
  .card.soon h3{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
  .soon-badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#7a8a82;background:#EEF0F0;border:1px solid #e1e5e5;border-radius:999px;padding:2px 8px}
  .card .ct{display:flex;flex-direction:column;gap:12px}
  .card h3{font-size:18px}
  .card p{font-size:14px;color:var(--body)}

  /* how it works (block_198) */
  .how{width:100%;max-width:var(--max);margin:0 auto;display:flex;flex-direction:column;gap:80px}
  .how-head{display:flex;flex-direction:column;gap:28px}
  .how-head p{color:var(--body);white-space:pre-line}
  @media(min-width:1024px){
    .how-head{flex-direction:row;justify-content:space-between;gap:80px}
    .how-head h2{flex:1}
    .how-head p{max-width:50%}
  }
  .how-cards{display:flex;flex-direction:column;gap:24px}
  @media(min-width:1024px){.how-cards{display:grid;grid-template-columns:1fr 1fr}}
  .how-card{
    background:#fff;border:1px solid var(--border);border-radius:16px;padding:32px 24px;text-align:center;
    display:flex;flex-direction:column;align-items:center;gap:32px;
  }
  .how-card img{width:100%;max-height:300px;height:auto;object-fit:contain}
  .how-card .ct{display:flex;flex-direction:column;gap:24px}
  .how-card h3{font-size:24px}
  .how-card p{color:var(--body)}
  @media(min-width:640px){.how-card{padding:48px 36px;gap:56px}.how-card h3{font-size:30px}}
  /* detailed app mockups inside how-cards */
  .how-mock{width:100%;max-width:460px;background:#fff;border:1px solid #E3E8E6;border-radius:16px;box-shadow:0 18px 40px rgba(10,30,20,.08);overflow:hidden;text-align:left}
  /* equal heights for the Tools (WHODAS) + Ask mocks */
  .how-mock.whodas,.how-mock.ask{min-height:336px;display:flex;flex-direction:column}
  .how-mock.ask .ak-msgs{flex:1}
  .ak-a .ak-a-text{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
  /* My drafts */
  .dm-head{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;border-bottom:1px solid #eef1ef}
  .dm-title{font-weight:600;color:#0a140f;font-size:14px}
  .dm-pill{font-size:11px;font-weight:600;color:#1C6A4D;background:#E6F2EA;padding:3px 9px;border-radius:999px}
  .dm-row{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid #f3f5f3}
  .dm-row:last-child{border-bottom:none}
  .dm-doc{width:30px;height:30px;border-radius:8px;background:#EAF1F8;color:#3b73b0;display:grid;place-items:center;font-size:13px;flex-shrink:0}
  .dm-name{flex:1;font-size:13px;color:#0a140f;font-weight:500;display:flex;flex-direction:column;gap:2px;min-width:0}
  .dm-name small{font-weight:400;color:#8a9a92;font-size:11px}
  .dm-tag{font-size:10px;font-weight:600;color:#5C6C66;background:#EEF0F0;border-radius:5px;padding:1px 6px;margin-left:6px}
  .dm-prog{width:90px;flex-shrink:0}
  .dm-prog span{font-size:11px;color:#5C6C66;display:block;text-align:right;margin-bottom:5px}
  .dm-bar{height:5px;border-radius:3px;background:#E3E8E6;overflow:hidden}
  .dm-bar i{display:block;height:100%;background:#26c774;border-radius:3px}
  /* WHODAS assessment */
  .wd-item{padding:13px 18px;border-bottom:1px solid #f3f5f3}
  .wd-q{font-size:12.5px;color:#0a140f;font-weight:500;margin-bottom:10px;line-height:1.4}
  .wd-scale{display:flex;align-items:center;gap:6px;font-size:9.5px;color:#9aa6a0}
  .wd-scale .opt{width:23px;height:23px;border-radius:50%;border:1px solid #E3E8E6;display:grid;place-items:center;font-size:11px;font-weight:600;color:#5C6C66;flex-shrink:0}
  .wd-scale .opt.sel{background:#c6f04f;border-color:#c6f04f;color:#0a140f}
  .wd-summary{display:flex;justify-content:space-between;align-items:center;padding:13px 18px;background:#F1F7F2;font-size:12px;color:#5C6C66}
  .wd-summary b{color:#0a140f;font-size:15px}
  /* Ask chat */
  .ak-head{padding:14px 18px;border-bottom:1px solid #eef1ef;font-weight:600;color:#0a140f;font-size:14px;display:flex;align-items:center;gap:9px}
  .ak-head .dot{width:9px;height:9px;border-radius:50%;background:#26c774}
  .ak-msgs{padding:16px 18px;display:flex;flex-direction:column;gap:12px}
  .ak-q{align-self:flex-end;max-width:82%;background:#0a140f;color:#fff;font-size:12.5px;line-height:1.45;padding:9px 13px;border-radius:14px 14px 4px 14px}
  .ak-a{align-self:flex-start;max-width:90%;background:#F1F7F2;color:#2a3a32;font-size:12.5px;line-height:1.5;padding:10px 13px;border-radius:14px 14px 14px 4px}
  .ak-a .cite{display:inline-block;margin-top:7px;font-size:10px;color:#1C6A4D;background:#E6F2EA;padding:2px 7px;border-radius:6px}
  .ak-input{margin:2px 18px 18px;border:1px solid #E3E8E6;border-radius:12px;padding:10px 12px;color:#9aa6a0;font-size:12.5px;display:flex;align-items:center;justify-content:space-between;gap:10px}
  .ak-input .send{width:26px;height:26px;border-radius:8px;background:#c6f04f;color:#0a140f;display:grid;place-items:center;font-size:13px;font-weight:800;flex-shrink:0}

  /* CTA panel (block_170) */
  .ctapanel{
    width:100%;max-width:var(--max);margin:0 auto;background:var(--panel);
    border-radius:16px;display:flex;flex-direction:column;overflow:hidden;
  }
  .ctapanel .copy{display:flex;flex-direction:column;gap:24px;padding:32px 24px}
  .ctapanel h3{font-size:36px}
  .ctapanel p{color:var(--body)}
  .ctapanel .media{position:relative;width:100%;height:320px}
  .ctapanel .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:20px}
  /* ripple / fluted-glass effect over the image */
  .ctapanel .media.glass{overflow:hidden;border-radius:20px}
  .ctapanel .media .ripple{
    position:absolute;inset:0;border-radius:20px;pointer-events:none;
    backdrop-filter:blur(2.5px);-webkit-backdrop-filter:blur(2.5px);
    background:
      repeating-linear-gradient(90deg,
        rgba(255,255,255,0.22) 0px,
        rgba(255,255,255,0.00) 4px,
        rgba(0,0,0,0.13) 8px,
        rgba(255,255,255,0.00) 12px),
      linear-gradient(118deg, rgba(255,255,255,0.14), rgba(255,255,255,0) 46%);
  }
  .btn-gradient{
    align-self:flex-start;
    background:linear-gradient(90deg,#f39263,#7683DE);color:#fff;
  }
  .btn-gradient:hover{background:var(--primary-500)}
  @media(min-width:640px){.ctapanel .copy{padding:40px}.ctapanel h3{font-size:36px}.ctapanel .media{height:432px}}
  @media(min-width:1024px){
    .ctapanel{flex-direction:row}
    .ctapanel .copy{padding:80px 64px;justify-content:center;flex:1}
    .ctapanel .media{width:50%;min-width:50%;height:auto}
  }

  /* ---------------- THIS ISN'T GENERIC AI ---------------- */
  .feat{width:100%;max-width:var(--max);margin:0 auto;display:flex;flex-direction:column;gap:20px}
  .feat-h h2{text-align:center}
  .feat-sub{max-width:760px;margin:0 auto 28px;text-align:center;color:var(--body)}
  .feat-grid{display:grid;grid-template-columns:1fr;gap:20px}
  @media(min-width:640px){.feat-grid{grid-template-columns:1fr 1fr}}
  @media(min-width:1024px){.feat-grid{grid-template-columns:1fr 1fr 1fr}}
  .feat-card{background:#fff;border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:14px;min-height:170px}
  .feat-check{width:30px;height:30px;border-radius:8px;background:#26c774;display:grid;place-items:center;color:#fff}
  .feat-check svg{width:15px;height:15px;stroke:#fff;fill:none}
  .feat-card .feat-title{font-size:16px;font-weight:600;color:#0a140f;letter-spacing:-.01em}
  .feat-card .feat-desc{font-size:14px;color:var(--body);line-height:1.5}

  /* ---------------- RECENT HIGHLIGHTS ---------------- */
  .hl{width:100%;max-width:var(--max);margin:0 auto;display:flex;flex-direction:column;gap:32px}
  .hl-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:14px}
  .hl-h .lnk{color:#1C6A4D;font-weight:500;font-size:15px}
  .hl-h .lnk:hover{text-decoration:underline}
  .hl-grid{display:grid;grid-template-columns:1fr;gap:20px}
  @media(min-width:640px){.hl-grid{grid-template-columns:1fr 1fr}}
  @media(min-width:1024px){.hl-grid{grid-template-columns:1fr 1fr 1fr}}
  .hl-card{background:#fff;border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:14px;transition:.2s;min-height:190px}
  .hl-card:hover{border-color:var(--green-600,#1C6A4D);transform:translateY(-3px);box-shadow:0 18px 40px rgba(14,53,38,.10)}
  .hl-meta{font-size:12px;font-weight:600;letter-spacing:.02em;color:#1C6A4D;text-transform:uppercase}
  .hl-card h4{font-size:17px;line-height:1.3;color:#0a140f;font-weight:600;flex:1}
  .hl-author{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--body)}
  .hl-avatar{width:28px;height:28px;border-radius:50%;background:#26c774;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700}

  /* ---------------- FOOTER ---------------- */
  footer{background:#000;color:#fff;padding:56px 24px}
  @media(min-width:640px){footer{padding:56px 40px}}
  @media(min-width:768px){footer{padding:56px 64px}}
  .foot{max-width:var(--max);margin:0 auto;display:flex;flex-direction:column;gap:80px}
  .foot-top{display:flex;flex-direction:column;gap:80px}
  .foot-brand{display:flex;flex-direction:column;gap:24px}
  .foot-brand-row{display:flex;flex-direction:column;gap:24px}
  .foot-logo{font-size:34px;font-weight:800;color:#fff;letter-spacing:-.04em}
  .foot-tag{font-size:20px}
  .foot-cols{display:flex;flex-direction:column;gap:80px}
  .newsletter{width:100%}
  .newsletter h3{color:#fff;font-size:24px;font-weight:600;max-width:640px}
  .newsletter form{display:flex;flex-direction:column;gap:16px;margin-top:40px}
  .newsletter input[type=text],.newsletter input[type=email]{
    width:100%;border:1px solid #3a3a3a;background:transparent;color:#fff;
    border-radius:12px;padding:18px 24px;font:inherit;
  }
  .newsletter input::placeholder{color:#bdbdbd}
  .check{display:flex;align-items:flex-start;gap:16px;padding-bottom:8px}
  .check .box{width:18px;height:18px;border-radius:4px;background:#171717;display:grid;place-items:center;margin-top:2px;flex-shrink:0}
  .check .box svg{width:13px;height:13px;stroke:#fff;stroke-width:2;fill:none}
  .check label{color:#fff;font-size:14px}
  .check a{text-decoration:underline;text-underline-offset:4px}
  .btn-white{background:#fff;color:var(--heading);align-self:flex-start;min-width:120px}
  .btn-white:hover{background:#171717;color:#fff}
  /* mobile: clean 2-up grid */
  nav.footnav{display:grid;grid-template-columns:repeat(2,1fr);gap:36px 28px;width:100%}
  nav.footnav ul{list-style:none;display:flex;flex-direction:column;gap:12px;min-width:0}
  nav.footnav a{color:#fff}
  nav.footnav a:hover{color:#cfcfcf}
  nav.footnav .lbl{list-style:none;color:#c6f04f;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;margin-bottom:4px}
  @media(min-width:640px){
    /* stay stacked: form full-width on top, link columns below */
    .foot-cols{display:flex;flex-direction:column;gap:64px}
    nav.footnav{grid-template-columns:repeat(3,1fr);gap:40px;align-items:start}
    nav.footnav a{white-space:nowrap}
  }
  @media(min-width:768px){
    .foot-brand-row{flex-direction:row;align-items:center;gap:16px}
    .foot-div{width:1px;height:40px;background:rgba(255,255,255,.3)}
  }
  @media(min-width:1280px){
    .foot-top{flex-direction:row;justify-content:space-between}
    /* foot-brand must fill the row, or the cols below collapse to content
       width and squeeze the form to its min, that was the "too narrow" bug */
    .foot-brand{width:100%}
    /* newsletter left, link columns pushed right; space-between separates
       them without squashing, now 3 columns, so the form gets more room */
    .foot-cols{grid-template-columns:none;display:flex;flex-direction:row;justify-content:space-between;gap:80px;align-items:flex-start}
    .newsletter{max-width:600px;flex:1 1 520px}
    nav.footnav{display:flex;flex:0 0 auto;width:auto;gap:72px;padding-top:34px}
  }
  .foot-bot{
    display:flex;flex-direction:column-reverse;gap:40px;
    border-top:0;align-items:flex-start;
  }
  .socials{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}
  .socials .row{display:flex;gap:8px}
  .soc,.pod{
    border:1px solid #3a3a3a;border-radius:999px;color:#fff;
    display:flex;align-items:center;justify-content:center;transition:.2s;
  }
  .soc{width:48px;height:48px;font-size:13px}
  .pod{padding:12px 24px;font-weight:500}
  .soc:hover,.pod:hover{background:#fff;color:var(--heading)}
  .soc2{width:100px;height:100px;border-radius:50%;border:1px solid #3a3a3a;display:grid;place-items:center;font-size:11px;text-align:center;color:#bdbdbd;line-height:1.3}
  @media(min-width:640px){
    .foot-bot{flex-direction:row-reverse;align-items:flex-end;justify-content:space-between}
  }

  /* ---------------- SUBSCRIBER VERIFY MODAL ---------------- */
  .sv-overlay{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(6,20,14,.55);backdrop-filter:blur(4px)}
  .sv-overlay.open{display:flex}
  .sv-modal{background:#fff;border-radius:20px;max-width:420px;width:100%;padding:36px 32px;text-align:center;box-shadow:0 30px 70px rgba(0,0,0,.35);display:flex;flex-direction:column;align-items:center;gap:14px}
  .sv-modal .sv-icon{width:54px;height:54px;border-radius:50%;background:#26c774;color:#fff;font-size:26px;font-weight:800;display:grid;place-items:center}
  .sv-modal h3{font-size:22px;color:#0a140f}
  .sv-modal .sv-msg{font-size:15px;color:var(--body);line-height:1.5}
  .sv-modal .btn{margin-top:8px}

/* Features-menu anchor scrolling (added 2026-06-13, retuned 2026-06-16).
   The homepage doesn't load site.css, so set smooth-scroll here. The header is
   sticky (~70px on mobile, ~82px once the desktop pill frosts) and every
   anchored section already carries a generous top padding (56 → 96px across
   breakpoints). A flat 6rem scroll-margin stacked ON TOP of that padding, so a
   jump from the Features dropdown / drawer dropped the heading ~190px down,
   far too low, and #assurances (less padding) landed at a different level
   than the rest. We only need to clear the fixed header; the section's own
   top padding supplies the breathing room. So the offset is small and tuned
   per breakpoint (tracking the section padding) to land every section's
   heading at the same modest gap (~20-30px) just below the header. */
html { scroll-behavior: smooth; }
section[id] { scroll-margin-top: 2.5rem; }                                /* base: pad-top 56, header ~70 */
@media (min-width: 640px)  { section[id] { scroll-margin-top: 1.5rem; } } /* pad-top 80 */
@media (min-width: 1024px) { section[id] { scroll-margin-top: 1rem;   } } /* pad-top 96 */
