/* ==========================================================
     TOKENS — change a value here and it updates everywhere.
     Accent / line / chart colors match the real product's
     computed styles (pulled from devtools).
     ========================================================== */
  :root{
    --bg:#ffffff;
    --ink:#0a0a0d;          /* primary text + dark surfaces */
    --ink-soft:#63666d;     /* secondary / body text */
    --ink-faint:#9a9ca1;    /* labels, captions */
    --accent:#e3ff8f;       /* brand lime — matches product */
    --accent-deep:#b9ec1e;  /* accent hover state */
    --line:#e4e4e7;         /* borders on light surfaces — matches product */
    --surface:#f6f6f3;      /* tinted section background — now also used by the footer */
    --maxw:1320px;          /* page content max width */
    --header-h:68px;
    --page-hero-h:min(52vh,460px);

    /* chart bar segment colors, reused by the weekly activity chart —
       gray/black values also matched to the product's computed styles */
    --seg-gray:#71717a;
    --seg-black:#000000;
    --seg-accent:var(--accent);

    /* status chips (up/down %) */
    --success-bg:#e8fbe0;
    --success-text:#1e7a34;
    --danger-bg:#fde8e8;
    --danger-text:#b3261e;

    /* empty chart track behind the bars */
    --track:#eee;

    /* white text for the few spots that still sit on a genuinely dark
       fill (the active hero tab, the career-page hero preview) */
    --on-dark:#ffffff;
  }

  /* ==========================================================
     RESET & BASE
     ========================================================== */
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  html,body{background:#ffffff;}
  body{
    margin:0;
    font-family:'Onest',system-ui,sans-serif;
    color:var(--ink);
    background:#ffffff;
    -webkit-font-smoothing:antialiased;
    line-height:1.5;
  }
  h1,h2,h3,.disp{
    font-family:'Onest',system-ui,sans-serif;
    font-weight:800;
    letter-spacing:-0.03em;
    margin:0;
  }
  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 16px;}
  ::selection{background:var(--accent);color:var(--ink);}
  :focus-visible{outline:2px solid var(--ink);outline-offset:3px;}

  .mb-2{margin-bottom:2px;}
  .mb-6{margin-bottom:6px;}
  .mb-12{margin-bottom:12px;}
  .mb-14{margin-bottom:14px;}

  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:6px;
    height:32px;padding:0 14px;border-radius:6px;
    font-size:14px;font-weight:500;
    border:1.5px solid transparent;
    box-shadow:0 1px 3px rgba(0,0,0,.05);
    cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1);
    white-space:nowrap;
    -webkit-appearance:none;
    appearance:none;
  }
  .btn:hover{transform:translateY(-1px);}
  .btn-primary{
    background-color:#e3ff8f;
    background-color:var(--accent);
    color:#0a0a0d;
    color:var(--ink);
  }
  .btn-primary:hover{
    background-color:#b9ec1e;
    background-color:var(--accent-deep);
  }
  .btn-ghost{background:transparent;color:var(--ink);border-color:var(--line);}
  .btn-ghost:hover{border-color:var(--ink);}
  .btn svg{width:14px;height:14px;}

  .page-frame{
    width:calc(100% - 32px);
    max-width:var(--maxw);
    margin:0 auto;
    border-left:1px solid var(--line);
    border-right:1px solid var(--line);
    min-height:calc(100vh - 68px);
    display:flex;
    flex-direction:column;
    background:#ffffff;
  }
  .page-frame > .page{flex:1;background:#ffffff;}

  body > header{
    position:fixed;top:0;left:0;right:0;z-index:60;
    width:100%;
    background:#ffffff;
    border-bottom:1px solid var(--line);
    transition:transform .28s cubic-bezier(.4,0,.2,1);
    will-change:transform;
  }
  body > header.header-hidden{transform:translateY(-100%);}
  body:has(> header){padding-top:var(--header-h);}
  .nav{
    display:flex;align-items:center;justify-content:space-between;
    width:calc(100% - 32px);max-width:var(--maxw);
    height:68px;gap:12px;padding:0 16px;
    margin:0 auto;
  }
  .nav-left{display:flex;align-items:center;gap:14px;}
  .brand{display:flex;align-items:center;flex-shrink:0;}
  .brand-logo{height:22px;width:auto;display:block;}
  .brand-logo--light{display:none;}
  .brand--on-dark .brand-logo--dark{display:none;}
  .brand--on-dark .brand-logo--light{display:block;}
  .navactions{display:flex;align-items:center;gap:10px;flex-shrink:0;}

  .nav-menu{display:flex;align-items:center;justify-content:center;gap:2px;flex:1;}
  .nav-item{position:relative;}
  .nav-link{
    display:inline-flex;align-items:center;justify-content:center;gap:4px;
    height:38px;padding:0 12px;border-radius:8px;
    color:var(--ink-soft);font-size:14px;font-weight:600;
    white-space:nowrap;transition:background .15s ease,color .15s ease;
  }
  .nav-link:hover{background:var(--surface);color:var(--ink);}
  .nav-link.active,
  .nav-link.active:hover{background:var(--accent);color:var(--ink);}
  .nav-link .chevron{width:14px;height:14px;flex-shrink:0;color:var(--ink-faint);transition:transform .15s ease;}
  .nav-item.has-mega.mega-open .nav-link .chevron{transform:rotate(180deg);}
  .nav-item .mega-menu{
    position:absolute;left:50%;top:calc(100% + 8px);
    width:460px;transform:translateX(-50%) translateY(-6px);
  }
  .nav-item.has-mega.mega-open .mega-menu{transform:translateX(-50%) translateY(0);}
  .nav-mobile-toggle{
    display:none;
    width:36px;height:36px;border-radius:8px;
    border:1px solid var(--line);background:var(--bg);
    align-items:center;justify-content:center;
    cursor:pointer;flex-shrink:0;
  }
  .nav-mobile-toggle svg{width:18px;height:18px;stroke:var(--ink);}

  .sidebar-toggle{
    width:32px;height:32px;border-radius:6px;
    border:1px solid var(--line);background:var(--bg);
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;flex-shrink:0;transition:border-color .15s ease;
  }
  .sidebar-toggle:hover{border-color:var(--ink);}
  .sidebar-toggle svg{width:16px;height:16px;stroke:var(--ink-soft);}

  .shell{display:flex;align-items:flex-start;}
  .sidebar{
    position:sticky;top:68px;z-index:70;
    width:220px;flex-shrink:0;
    height:calc(100vh - 68px);
    border-right:1px solid var(--line);
    background:var(--bg);
    transition:width .22s ease;
  }
  .sidebar.collapsed{width:64px;}
  .sidebar-nav{padding:16px 10px;display:flex;flex-direction:column;gap:2px;}
  .sidebar-link{
    position:relative;
    display:flex;align-items:center;gap:12px;
    height:38px;padding:0 10px;border-radius:8px;
    color:var(--ink-soft);font-size:14px;font-weight:600;
    white-space:nowrap;transition:background .15s ease,color .15s ease;
  }
  .sidebar-link:hover{background:var(--surface);color:var(--ink);}
  .sidebar-link.active,
  .sidebar-link.active:hover{background:var(--accent);color:var(--ink);}
  .sidebar-link.active .chevron{color:var(--ink);}
  .sidebar-link .ic{width:32px;height:32px;flex-shrink:0;border-radius:7px;display:flex;align-items:center;justify-content:center;}
  .sidebar-link .ic svg{width:17px;height:17px;stroke:currentColor;}
  .sidebar-link span{opacity:1;transition:opacity .15s ease;}
  .sidebar-link .chevron{margin-left:auto;width:14px;height:14px;flex-shrink:0;color:var(--ink-faint);}
  .sidebar.collapsed .sidebar-link{justify-content:center;padding:0;}
  .sidebar.collapsed .sidebar-link .label,
  .sidebar.collapsed .sidebar-link .chevron{display:none;}
  .sidebar-divider{height:1px;background:var(--line);margin:10px 12px;}
  .sidebar.collapsed .sidebar-divider{margin:10px 8px;}
  .page{flex:1;min-width:0;}

  .sidebar-item{position:relative;}
  .mega-menu{
    position:absolute;left:calc(100% + 10px);top:0;
    width:460px;background:var(--bg);border:1px solid var(--line);border-radius:14px;
    padding:18px;display:flex;gap:18px;
    opacity:0;pointer-events:none;z-index:80;
    box-shadow:0 24px 50px -20px rgba(10,10,13,.35);
    transition:opacity .15s ease, transform .15s ease;
    transform:translateX(-6px);
  }
  .has-mega.mega-open .mega-menu{opacity:1;pointer-events:auto;}
  .sidebar-item.has-mega.mega-open .mega-menu{transform:translateX(0);}
  .mega-col{flex:1.3;min-width:0;}
  .mega-eyebrow{display:block;font-size:10.5px;font-weight:800;letter-spacing:.06em;color:var(--ink-faint);text-transform:uppercase;margin-bottom:10px;}
  .mega-item{display:flex;align-items:flex-start;gap:10px;padding:8px 8px;border-radius:9px;color:var(--ink);transition:background .15s ease;}
  .mega-item:hover{background:var(--surface);}
  .mega-item .ic{width:28px;height:28px;flex-shrink:0;border-radius:7px;border:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:center;}
  .mega-item .ic svg{width:14px;height:14px;stroke:var(--ink-soft);}
  .mega-item-title{display:block;font-size:13px;font-weight:700;white-space:normal;}
  .mega-item-desc{display:block;font-size:11.5px;color:var(--ink-soft);white-space:normal;line-height:1.4;margin-top:3px;}
  .mega-visual{flex:1;min-width:150px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;justify-content:space-between;white-space:normal;}
  .mega-visual .mega-visual-label{font-size:11px;font-weight:700;color:var(--ink-faint);margin-bottom:10px;}
  .mega-visual-cta{display:flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:var(--ink);margin-top:12px;}

  @media (max-width:960px){
    body > header{position:fixed;}
    .nav{position:relative;}
    .nav-menu{
      display:none;position:absolute;top:var(--header-h);left:0;right:0;
      flex-direction:column;align-items:stretch;gap:0;
      background:var(--bg);border-bottom:1px solid var(--line);
      padding:12px 16px 16px;
      max-height:calc(100dvh - var(--header-h));
      overflow-y:auto;-webkit-overflow-scrolling:touch;
    }
    .nav-menu.open{display:flex;}
    .nav-item{display:flex;justify-content:center;}
    .nav-link{width:auto;align-self:center;justify-content:center;}
    .nav-item.has-mega .nav-link .chevron{display:none;}
    .nav-item .mega-menu{display:none !important;}
    .nav-mobile-toggle{display:flex;}
    .navactions .btn-ghost{display:none;}

    /* Hero: hide interior vertical divider + home separator on mobile */
    .page-hero__vline{display:none;}
    .hero__rule{display:none;}
  }

  @media (max-width:860px){
    .sidebar{display:none;}
    .sidebar-toggle{display:none;}
  }

  .hero-announce{
    display:inline-flex;align-items:center;gap:10px;
    margin:0 0 18px;
    font-size:13px;font-weight:600;color:var(--ink-soft);
    text-decoration:none;
    transition:color .15s ease;
  }
  .hero-announce:hover{color:var(--ink);}
  .hero-announce strong{font-weight:700;color:var(--ink);}
  .hero-announce:hover strong{color:var(--ink);}
  .hero-announce__icon{
    width:28px;height:28px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
    background:#ffffff;
    box-shadow:inset 0 0 0 1px var(--line);
  }
  .hero-announce__dot{
    width:8px;height:8px;border-radius:50%;
    background:var(--accent-deep);
    box-shadow:0 0 0 3px rgba(196,230,74,.28);
  }

  .hero{padding:64px 24px 20px;text-align:center;background:#ffffff;}
  .hero h1{font-size:clamp(38px,6.4vw,72px);line-height:0.98;max-width:900px;margin:0 auto;}
  .hero p.sub{max-width:560px;margin:22px auto 0;color:var(--ink-soft);font-size:17.5px;line-height:1.55;}
  .hero--home{
    --home-hero-h:min(56vh,480px);
    position:relative;padding:0;text-align:center;background:#ffffff;
  }
  .hero--home .hero__copy{
    position:relative;z-index:2;
    min-height:var(--home-hero-h);
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    padding:56px 16px 88px;box-sizing:border-box;
  }
  .hero--home .ctas{margin-top:30px;}
  .hero__rule{
    width:100%;height:0;border-top:1px solid var(--line);
  }
  .hero__shot{
    position:relative;z-index:2;
    width:100%;margin:0;padding:0;
  }
  .hero__shot img{
    width:100%;height:auto;display:block;
    border:none;border-radius:0;box-shadow:none;
  }
  .feature--no-border{border-top:none;}
  .hero--page{text-align:left;padding:160px 24px 220px;}
  .hero--page h1{font-size:clamp(32px,5vw,56px);max-width:none;margin:0;}
  .hero--page p.sub{margin:40px 0 0;max-width:640px;}

  .page-hero{position:relative;background:#ffffff;}
  .page-hero__frame{
    position:absolute;top:0;left:50%;transform:translateX(-50%);
    width:calc(100% - 32px);max-width:var(--maxw);height:var(--page-hero-h);
    border-left:1px solid var(--line);
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:#ffffff;pointer-events:none;z-index:1;
  }
  .page-hero__vline{
    position:absolute;top:0;left:50%;transform:translateX(-50%);
    width:calc(100% - 32px);max-width:var(--maxw);height:var(--page-hero-h);
    pointer-events:none;z-index:3;
  }
  .page-hero__vline::after{
    content:'';position:absolute;top:0;bottom:0;right:clamp(240px,32vw,420px);
    width:1px;background:var(--line);
  }
  .page-hero__copy{
    position:sticky;top:var(--header-h);z-index:2;
    height:var(--page-hero-h);
    width:calc(100% - 32px);max-width:var(--maxw);margin:0 auto;
    padding:0 16px;box-sizing:border-box;
    display:flex;flex-direction:column;justify-content:center;
    text-align:left;
    color:var(--ink);
  }
  .page-hero__copy-stack{
    position:relative;width:100%;flex:1;
    display:flex;flex-direction:column;justify-content:center;
  }
  .page-hero__copy-layer--dark{position:relative;z-index:0;}
  .page-hero__copy-layer--light{
    position:absolute;inset:0;z-index:1;
    color:#ffffff;pointer-events:none;
    clip-path:inset(100% 0 0 0);
    display:flex;flex-direction:column;justify-content:center;
    text-align:left;
  }
  .page-hero__copy h1{font-size:clamp(32px,5vw,56px);line-height:0.98;margin:0;}
  .page-hero__copy .sub{
    max-width:640px;margin:24px 0 0;color:var(--ink-soft);
    font-size:17.5px;line-height:1.55;
  }
  .page-hero__visual{
    width:100%;height:var(--page-hero-h);
    max-height:calc(100vh - var(--header-h));
    position:relative;z-index:1;overflow:hidden;background:var(--ink);
  }
  .page-hero__visual img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
  .page-hero__visual::after{
    content:'';position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(to bottom,rgba(10,10,13,.12),rgba(10,10,13,.5));
  }

  .page-hero--solutions{--page-hero-h:min(58vh,520px);}
  .page-hero--solutions .page-hero__copy{align-items:flex-start;}
  .page-hero--solutions .page-hero__eyebrow{
    display:flex;align-items:center;gap:10px;
    font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
    margin:0 0 28px;color:var(--ink);
  }
  .page-hero--solutions .page-hero__eyebrow-icon{width:22px;height:22px;flex-shrink:0;}
  .page-hero--solutions h1{
    font-size:clamp(40px,5.8vw,68px);line-height:1.04;font-weight:800;letter-spacing:-.025em;
  }
  .page-hero--solutions .page-hero__hl{color:#e3ff8f;}
  .page-hero--solutions .sub{
    margin-top:28px;max-width:520px;font-size:18px;line-height:1.6;color:var(--ink-soft);
  }
  .page-hero--solutions .page-hero__ctas{margin-top:32px;}
  .page-hero--solutions .page-hero__cta{
    display:inline-flex;align-items:center;gap:10px;
    height:44px;padding:0 20px;border-radius:4px;
    background:var(--ink);color:#e3ff8f;
    font-size:15px;font-weight:600;text-decoration:none;
    transition:background .15s ease,transform .15s ease,box-shadow .4s ease;
  }
  .page-hero--solutions .page-hero__cta:hover{background:#1a1a1f;transform:translateY(-1px);}
  .page-hero--solutions .page-hero__cta span{font-size:18px;line-height:1;}

  /* Light overlay — overrides dark hero text colors where clipped over the image */
  .page-hero__copy-layer--light h1,
  .page-hero--solutions .page-hero__copy-layer--light h1{color:#ffffff;}
  .page-hero__copy-layer--light .sub,
  .page-hero--solutions .page-hero__copy-layer--light .sub{color:rgba(255,255,255,.88);}
  .page-hero__copy-layer--light .page-hero__eyebrow,
  .page-hero--solutions .page-hero__copy-layer--light .page-hero__eyebrow{color:rgba(255,255,255,.92);}
  .page-hero__copy-layer--light .page-hero__hl,
  .page-hero--solutions .page-hero__copy-layer--light .page-hero__hl{color:#e3ff8f;}
  .page-hero--solutions .page-hero__copy-layer--light{align-items:flex-start;}

  .hero .ctas,
  .finalcta .ctas{display:flex;justify-content:center;gap:12px;margin-top:30px;}

  .preview-shell{
    max-width:var(--maxw);margin:26px auto 0;
    border:1px solid var(--line);border-radius:20px;
    background:#ffffff;
    box-shadow:0 30px 70px -35px rgba(10,10,13,.25);
    overflow:hidden;
  }
  .preview-shell--sm{max-width:820px;}
  .preview-pane{display:none;padding:26px;}
  .preview-pane.active{display:block;}

  .mockcard{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:18px;}
  .card-title{font-weight:700;font-size:14px;}
  .card-sub{color:var(--ink-soft);font-size:13px;}

  .mockgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px;}
  @media (max-width:760px){.mockgrid{grid-template-columns:repeat(2,1fr);}}
  .stat-eyebrow{font-size:10.5px;font-weight:800;letter-spacing:.08em;color:var(--ink-faint);text-transform:uppercase;}
  .stat-num{font-size:26px;font-weight:800;margin-top:8px;font-family:'Onest',sans-serif;}
  .stat-chip{display:inline-block;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;margin-top:8px;}
  .chip-up{background:var(--success-bg);color:var(--success-text);}
  .chip-down{background:var(--danger-bg);color:var(--danger-text);}

  .aicard{display:flex;gap:10px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--bg);}
  .aicard input{flex:1;border:none;outline:none;font-size:14px;font-family:inherit;color:var(--ink-soft);background:transparent;}

  .bars{display:flex;align-items:flex-end;gap:16px;height:170px;margin-top:18px;padding:0 6px;}
  .bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;}
  .bar-stack{width:100%;max-width:34px;height:150px;border-radius:6px 6px 3px 3px;overflow:hidden;display:flex;flex-direction:column-reverse;background:var(--track);}
  .bar-stack div{width:100%;}
  .seg-gray{background:var(--seg-gray);}
  .seg-black{background:var(--seg-black);}
  .seg-accent{background:var(--seg-accent);}
  .bar-label{font-size:11px;color:var(--ink-faint);font-weight:600;}

  .kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
  .kanban--2col{grid-template-columns:1fr 1fr;}
  @media (max-width:760px){.kanban{grid-template-columns:repeat(2,1fr);}}
  .kcol{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px;}
  .kcol h4{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);margin:0 0 10px;}
  .kcard{border:1px solid var(--line);border-radius:9px;padding:9px 10px;margin-bottom:8px;font-size:12.5px;font-weight:600;background:var(--surface);}
  .kcard span{display:block;font-size:11px;color:var(--ink-faint);font-weight:500;margin-top:3px;}

  .feature{padding:100px 24px;border-top:1px solid var(--line);background:#ffffff;}
  .feature-head{max-width:640px;margin:0 auto 46px;text-align:center;}
  .feature-head .eyebrow{font-size:13px;font-weight:800;color:var(--accent-deep);text-transform:uppercase;letter-spacing:.06em;background:var(--ink);display:inline-block;padding:5px 12px;border-radius:999px;margin-bottom:16px;}
  .feature-head h2{font-size:clamp(28px,3.6vw,42px);line-height:1.05;}
  .feature-head p{color:var(--ink-soft);font-size:16.5px;margin-top:14px;}

  .gridwrap{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:12px;}
  @media (max-width:900px){.gridwrap{grid-template-columns:repeat(2,1fr);}}
  @media (max-width:600px){.gridwrap{grid-template-columns:1fr;}}
  .gridcard{
    background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:22px;text-align:left;
    transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease;
  }
  .gridcard:hover{transform:translateY(-3px);border-color:var(--ink);box-shadow:0 10px 24px -14px rgba(10,10,13,.25);}
  .gridcard .icon{width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:var(--surface);display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
  .gridcard .icon svg{width:18px;height:18px;stroke:var(--ink);}
  .gridcard h3{font-size:15.5px;font-weight:700;margin-bottom:6px;}
  .gridcard p{font-size:13.5px;color:var(--ink-soft);line-height:1.5;}

  .mini-mock{margin-bottom:16px;}
  .mini-ai{display:flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 8px 8px 10px;}
  .mini-ai-text{flex:1;min-width:0;font-size:11px;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .mini-btn{flex-shrink:0;background:var(--accent);color:var(--ink);font-size:10.5px;font-weight:700;padding:5px 9px;border-radius:5px;white-space:nowrap;}

  .mini-kanban{display:flex;gap:6px;}
  .mini-col{flex:1;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px;display:flex;flex-direction:column;gap:5px;}
  .mini-dot{width:6px;height:6px;border-radius:50%;}
  .mini-card{height:11px;border-radius:3px;background:var(--bg);border:1px solid var(--line);}

  .mini-decision{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px;}
  .mini-decision-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;}
  .mini-decision-top span:first-child{font-size:11px;font-weight:700;color:var(--ink);}
  .mini-conf{flex-shrink:0;font-size:9.5px;font-weight:700;background:var(--success-bg);color:var(--success-text);padding:2px 6px;border-radius:999px;}
  .mini-decision-actions{display:flex;gap:6px;}
  .mini-decision-actions span{font-size:10px;font-weight:700;padding:4px 8px;border-radius:5px;}
  .mini-approve{background:var(--accent);color:var(--ink);}
  .mini-review{background:var(--bg);border:1px solid var(--line);color:var(--ink-soft);}

  .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease;}
  .reveal.in-view{opacity:1;transform:translateY(0);}
  .gridwrap .reveal:nth-child(1){transition-delay:0s;}
  .gridwrap .reveal:nth-child(2){transition-delay:.06s;}
  .gridwrap .reveal:nth-child(3){transition-delay:.12s;}
  .gridwrap .reveal:nth-child(4){transition-delay:.18s;}
  .gridwrap .reveal:nth-child(5){transition-delay:.24s;}
  .gridwrap .reveal:nth-child(6){transition-delay:.3s;}
  .decision-list .reveal:nth-child(1){transition-delay:0s;}
  .decision-list .reveal:nth-child(2){transition-delay:.08s;}
  .statgrid .reveal:nth-child(1){transition-delay:0s;}
  .statgrid .reveal:nth-child(2){transition-delay:.08s;}
  .statgrid .reveal:nth-child(3){transition-delay:.16s;}
  .notif-list .reveal:nth-child(1){transition-delay:0s;}
  .notif-list .reveal:nth-child(2){transition-delay:.06s;}
  .notif-list .reveal:nth-child(3){transition-delay:.12s;}
  .notif-list .reveal:nth-child(4){transition-delay:.18s;}
  @media (prefers-reduced-motion: reduce){
    .reveal{opacity:1;transform:none;transition:none;}
    .gridcard{transition:none;}
    .mega-menu{transition:opacity .15s ease;}
    body > header{transition:none;}
  }

  .decision-list{display:flex;flex-direction:column;gap:12px;max-width:720px;margin:0 auto;}
  .decision-card{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:18px;text-align:left;}
  .decision-top{display:flex;align-items:center;justify-content:space-between;gap:10px;}
  .decision-title{font-weight:700;font-size:14.5px;}
  .confidence{font-size:11px;font-weight:700;background:var(--success-bg);color:var(--success-text);padding:3px 9px;border-radius:999px;white-space:nowrap;}
  .decision-meta{font-size:12.5px;color:var(--ink-faint);margin:2px 0 12px;}
  .ai-rec{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:13px;color:var(--ink-soft);line-height:1.5;margin-bottom:14px;}
  .ai-rec b{color:var(--ink);}
  .decision-actions{display:flex;align-items:center;gap:8px;}
  .btn-text{background:transparent;border:none;color:var(--ink-faint);font-weight:600;font-size:13px;cursor:pointer;height:32px;padding:0 4px;}
  .btn-text:hover{color:var(--ink);}

  .joblist{display:flex;flex-direction:column;font-size:13px;overflow-x:auto;}
  .job-row{display:grid;grid-template-columns:2fr 1.1fr 1fr .8fr .8fr;gap:10px;align-items:center;padding:11px 4px;border-bottom:1px solid var(--line);min-width:480px;}
  .job-row:last-child{border-bottom:none;}
  .job-row--head{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);}
  .job-row:not(.job-row--head) span:first-child{font-weight:700;}
  .job-status{display:inline-block;background:var(--success-bg);color:var(--success-text);font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;width:fit-content;}

  .cp-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;font-size:12.5px;font-weight:600;color:var(--ink-soft);border-bottom:1px solid var(--line);}
  .cp-row:last-child{border-bottom:none;}
  .cp-toggle{width:28px;height:16px;border-radius:999px;background:var(--line);position:relative;flex-shrink:0;}
  .cp-toggle::after{content:'';position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:var(--bg);}
  .cp-toggle.on{background:var(--accent);}
  .cp-toggle.on::after{left:14px;background:var(--ink);}
  .cp-preview{border:1px solid var(--line);border-radius:10px;overflow:hidden;}
  .cp-preview-hero{background:var(--ink);color:var(--on-dark);font-weight:800;font-size:15px;padding:22px 16px;}
  .cp-preview-role{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;font-size:12.5px;font-weight:700;border-top:1px solid var(--line);}
  .cp-preview-role span{color:var(--ink-faint);font-weight:700;font-size:11px;}

  .notif-list{display:flex;flex-direction:column;gap:16px;}
  .notif-item{display:flex;gap:12px;align-items:flex-start;}
  .notif-title{font-size:13px;font-weight:700;}
  .notif-desc{font-size:12.5px;color:var(--ink-soft);margin-top:2px;}
  .notif-time{margin-left:auto;font-size:11px;color:var(--ink-faint);flex-shrink:0;white-space:nowrap;padding-top:1px;}

  .role-chip{display:inline-block;background:var(--bg);border:1px solid var(--line);color:var(--ink-soft);font-size:11.5px;font-weight:700;padding:5px 10px;border-radius:999px;}
  .role-chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:26px;}

  .solutions-block{padding:80px 24px 100px;background:#ffffff;border-top:1px solid var(--line);}
  .solutions-block__inner{max-width:var(--maxw);}
  .content-block{padding:80px 24px;background:#ffffff;border-top:1px solid var(--line);}
  .my-onbordo-features{padding-bottom:40px;}
  .my-onbordo-cta{padding-top:48px;padding-bottom:100px;border-top:1px solid var(--line);}

  .content-block__head{
    position:static;z-index:auto;width:auto;background:transparent;border:none;
    max-width:640px;margin-bottom:40px;text-align:left;
  }
  .content-block__eyebrow{
    display:inline-block;margin-bottom:14px;font-size:11px;font-weight:800;
    letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);
  }
  .content-block__head h2{font-size:clamp(26px,3.2vw,36px);line-height:1.1;margin:0;}
  .content-block__head p{margin:14px 0 0;font-size:16px;line-height:1.6;color:var(--ink-soft);}
  .content-block .solutions-grid{margin-top:0;}
  .solutions-grid{
    display:grid;grid-template-columns:repeat(2,1fr);gap:20px;
  }
  @media (max-width:900px){.solutions-grid{grid-template-columns:1fr;}}
  .solution-card{
    background:var(--surface);border-radius:12px;overflow:hidden;
    display:flex;flex-direction:column;min-height:100%;
  }
  .solution-card__body{padding:36px 36px 20px;}
  .solution-card__eyebrow{
    display:block;margin-bottom:12px;font-size:11px;font-weight:700;
    letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);
  }
  .solution-card h3{font-size:clamp(20px,2.2vw,24px);line-height:1.2;font-weight:700;margin:0 0 12px;}
  .solution-card p{margin:0;font-size:15px;line-height:1.55;color:var(--ink-soft);}
  .solution-card__tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
  .solution-card__visual{margin-top:auto;padding:8px 24px 28px;min-height:210px;display:flex;align-items:flex-end;}
  .solutions-grid .reveal:nth-child(1){transition-delay:0s;}
  .solutions-grid .reveal:nth-child(2){transition-delay:.06s;}
  .solutions-grid .reveal:nth-child(3){transition-delay:.12s;}
  .solutions-grid .reveal:nth-child(4){transition-delay:.18s;}

  .sol-mock{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:18px;}
  .sol-mock--pipeline{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
  .sol-mock__node{
    font-size:11px;font-weight:700;padding:8px 12px;border-radius:6px;
    background:var(--surface);border:1px solid var(--line);color:var(--ink);white-space:nowrap;
  }
  .sol-mock__node--accent{background:#e3ff8f;border-color:#e3ff8f;color:var(--ink);}
  .sol-mock__node--dark{background:var(--ink);border-color:var(--ink);color:#e3ff8f;}
  .sol-mock__line{flex:1;min-width:16px;height:1px;background:var(--line);}
  .sol-mock--kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
  .sol-mock__col{
    background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px;
    display:flex;flex-direction:column;gap:6px;min-height:120px;
  }
  .sol-mock__col span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);}
  .sol-mock__col div{height:10px;border-radius:4px;background:var(--bg);border:1px solid var(--line);}
  .sol-mock__col--active{border-color:var(--ink);}
  .sol-mock__col--active span{color:var(--ink);}
  .sol-mock--approval{display:flex;flex-direction:column;gap:14px;}
  .sol-mock__approval-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px;}
  .sol-mock__approval-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;}
  .sol-mock__approval-top span:first-child{font-size:11px;font-weight:700;}
  .sol-mock__badge{font-size:9px;font-weight:700;background:var(--success-bg);color:var(--success-text);padding:2px 6px;border-radius:999px;}
  .sol-mock__approval-actions{display:flex;gap:6px;}
  .sol-mock__approve,.sol-mock__review{font-size:10px;font-weight:700;padding:5px 10px;border-radius:5px;}
  .sol-mock__approve{background:#e3ff8f;color:var(--ink);}
  .sol-mock__review{background:var(--bg);border:1px solid var(--line);color:var(--ink-soft);}
  .sol-mock__approval-flow{display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px;font-weight:700;color:var(--ink-soft);}
  .sol-mock__flow-line{width:24px;height:1px;background:var(--line);}
  .sol-mock--hub{position:relative;min-height:160px;display:flex;align-items:center;justify-content:center;padding:24px;}
  .sol-mock__hub-center{
    position:relative;z-index:2;width:56px;height:56px;border-radius:50%;
    background:var(--ink);color:#e3ff8f;font-size:9px;font-weight:800;
    display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.1;
  }
  .sol-mock__hub-orbit{position:absolute;inset:12px;}
  .sol-mock__hub-node{
    position:absolute;font-size:10px;font-weight:700;padding:6px 10px;border-radius:6px;
    background:var(--surface);border:1px solid var(--line);color:var(--ink);
  }
  .sol-mock__hub-node:nth-child(1){top:0;left:50%;transform:translateX(-50%);}
  .sol-mock__hub-node:nth-child(2){right:0;top:50%;transform:translateY(-50%);}
  .sol-mock__hub-node:nth-child(3){bottom:0;left:50%;transform:translateX(-50%);}
  .sol-mock__hub-node:nth-child(4){left:0;top:50%;transform:translateY(-50%);}
  @media (max-width:600px){
    .sol-mock--kanban{grid-template-columns:repeat(2,1fr);}
    .sol-mock--pipeline{justify-content:center;}
    .sol-mock__line{display:none;}
  }
  .sol-mock--career{padding:0;overflow:hidden;}
  .sol-mock--career .sol-mock__career-hero{background:var(--ink);color:#e3ff8f;font-size:11px;font-weight:800;padding:12px 14px;}
  .sol-mock--career .sol-mock__career-row{
    display:flex;justify-content:space-between;align-items:center;
    padding:9px 14px;font-size:10px;font-weight:700;border-top:1px solid var(--line);
  }
  .sol-mock--career .sol-mock__career-row span{color:var(--ink-faint);font-size:9px;}
  .sol-mock--jobs{display:flex;flex-direction:column;gap:6px;}
  .sol-mock--jobs .sol-mock__job-row{
    display:grid;grid-template-columns:1.4fr 1fr .7fr;gap:8px;align-items:center;
    padding:7px 10px;background:var(--surface);border:1px solid var(--line);border-radius:6px;font-size:9.5px;font-weight:700;
  }
  .sol-mock--jobs .sol-mock__job-row span:last-child{
    justify-self:end;font-size:8.5px;font-weight:700;background:var(--success-bg);color:var(--success-text);
    padding:2px 6px;border-radius:999px;
  }
  .sol-mock--notif{display:flex;flex-direction:column;gap:8px;}
  .sol-mock--notif .sol-mock__notif{
    padding:8px 10px;background:var(--surface);border:1px solid var(--line);border-radius:6px;
  }
  .sol-mock--notif .sol-mock__notif strong{display:block;font-size:10px;font-weight:700;margin-bottom:2px;}
  .sol-mock--notif .sol-mock__notif span{font-size:9px;color:var(--ink-soft);line-height:1.4;}
  .sol-mock--interview{display:grid;grid-template-columns:1fr 1.2fr;gap:10px;}
  .sol-mock--interview .sol-mock__cal{
    background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px;font-size:9px;font-weight:700;
  }
  .sol-mock--interview .sol-mock__cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-top:8px;text-align:center;}
  .sol-mock--interview .sol-mock__cal-day{padding:4px 0;border-radius:4px;color:var(--ink-soft);font-size:8px;}
  .sol-mock--interview .sol-mock__cal-day.is-today{background:#e3ff8f;color:var(--ink);}
  .sol-mock--interview .sol-mock__summary{
    background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px;
    font-size:9px;line-height:1.5;color:var(--ink-soft);
  }
  .sol-mock--interview .sol-mock__summary b{color:var(--ink);}
  .sol-mock--article{display:flex;flex-direction:column;gap:8px;padding:14px;}
  .sol-mock--article .sol-mock__line-block{height:8px;border-radius:4px;background:var(--surface);border:1px solid var(--line);}
  .sol-mock--article .sol-mock__line-block--short{width:72%;}
  .sol-mock--article .sol-mock__line-block--accent{background:#e3ff8f;border-color:#e3ff8f;width:40%;}
  .sol-mock--price{display:flex;align-items:center;justify-content:center;min-height:120px;}
  .sol-mock--price .sol-mock__price-tag{
    font-family:'Onest',sans-serif;font-size:32px;font-weight:800;color:var(--ink);
  }
  .sol-mock--price .sol-mock__price-tag span{font-size:13px;font-weight:600;color:var(--ink-faint);}
  .sol-mock--quiz{display:flex;flex-direction:column;gap:8px;padding:14px;}
  .sol-mock--quiz .sol-mock__quiz-q{font-size:10px;font-weight:700;line-height:1.4;}
  .sol-mock--quiz .sol-mock__quiz-a{font-size:9px;color:var(--ink-soft);padding:6px 8px;background:var(--surface);border:1px solid var(--line);border-radius:6px;}
  .sol-mock--quiz .sol-mock__quiz-a--pending{color:var(--ink-faint);font-style:italic;}
  .sol-mock--applicant{padding:0;overflow:hidden;}
  .sol-mock--applicant .sol-mock__applicant-head{background:var(--ink);color:#e3ff8f;font-size:11px;font-weight:800;padding:12px 14px;}
  .sol-mock--applicant .sol-mock__applicant-row{
    display:flex;justify-content:space-between;align-items:center;gap:8px;
    padding:10px 14px;border-top:1px solid var(--line);font-size:10px;font-weight:600;
  }
  .sol-mock--applicant .sol-mock__applicant-status{font-size:9px;font-weight:700;color:var(--ink-soft);}
  @media (max-width:600px){
    .sol-mock--interview{grid-template-columns:1fr;}
  }

  .interviews-grid{display:flex;gap:20px;flex-wrap:wrap;}
  .interviews-grid > div{flex:1;min-width:220px;}
  .mini-cal{border:1px solid var(--line);border-radius:10px;padding:12px;}
  .mini-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:12.5px;font-weight:700;}
  .mini-cal-head .arrows{color:var(--ink-faint);font-weight:500;font-size:11px;}
  .mini-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center;}
  .mini-cal-grid .dow{font-size:9.5px;font-weight:700;color:var(--ink-faint);padding:3px 0 6px;}
  .mini-cal-day{font-size:11px;padding:5px 0;border-radius:5px;color:var(--ink-soft);position:relative;}
  .mini-cal-day.muted{color:var(--ink-faint);opacity:.5;}
  .mini-cal-day.today{background:var(--accent);color:var(--ink);font-weight:700;}
  .mini-cal-day.has-dot::after{content:'';position:absolute;bottom:2px;left:50%;transform:translateX(-50%);width:3px;height:3px;border-radius:50%;background:var(--ink);}

  .statband{background:#ffffff;color:var(--ink);padding:90px 24px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .statband .eyebrow{color:var(--accent-deep);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;}
  .statband h2{font-size:clamp(28px,3.6vw,40px);color:var(--ink);margin-top:14px;max-width:600px;margin-left:auto;margin-right:auto;}
  .statgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;max-width:900px;margin:52px auto 0;}
  @media (max-width:760px){.statgrid{grid-template-columns:1fr;}}
  .statgrid .card{
    background:transparent;border:none;border-left:1px solid var(--line);
    padding:6px 20px;
  }
  .statgrid .card:first-child{border-left:none;}
  @media (max-width:760px){
    .statgrid .card{border-left:none;border-top:1px solid var(--line);padding:20px 0 0;margin-top:20px;}
    .statgrid .card:first-child{border-top:none;margin-top:0;padding-top:0;}
  }
  .statgrid .num{font-family:'Onest',sans-serif;font-size:40px;font-weight:800;color:var(--ink);}
  .statgrid .lbl{color:var(--ink-soft);font-size:13.5px;margin-top:8px;}

  .finalcta{padding:110px 24px;text-align:center;background:#ffffff;}
  .finalcta h2{font-size:clamp(30px,4.2vw,50px);}
  .finalcta p{color:var(--ink-soft);font-size:17px;margin-top:14px;}

  .pricing-section{padding:60px 24px 100px;background:#ffffff;border-top:1px solid var(--line);}
  .pricing-billing{
    display:flex;align-items:center;justify-content:center;gap:12px;
    flex-wrap:wrap;margin-bottom:36px;
  }
  .pricing-billing__btn{
    height:36px;padding:0 18px;border-radius:999px;
    border:1.5px solid var(--line);background:var(--bg);
    font-family:inherit;font-size:14px;font-weight:600;color:var(--ink-soft);
    cursor:pointer;transition:all .15s ease;
  }
  .pricing-billing__btn:hover{border-color:var(--ink);color:var(--ink);}
  .pricing-billing__btn.is-active{
    background:var(--ink);border-color:var(--ink);color:#e3ff8f;
  }
  .pricing-billing__note{font-size:13px;font-weight:600;color:var(--ink-faint);}
  .pricing-card__billing-note{
    min-height:18px;margin:8px 0 0;font-size:12px;font-weight:600;color:var(--ink-faint);
  }
  .pricing-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch;
  }
  @media (max-width:900px){
    .pricing-grid{grid-template-columns:1fr;max-width:480px;margin:0 auto;}
    .pricing-card__features{grid-template-rows:none;}
  }
  .pricing-card{
    display:grid;grid-template-rows:auto 1fr auto;background:var(--surface);
    border:1px solid var(--line);border-radius:12px;padding:28px 24px;
    transition:border-color .2s ease,box-shadow .2s ease;
  }
  .pricing-card--featured{border-color:var(--ink);box-shadow:0 12px 32px -16px rgba(10,10,13,.15);}
  .pricing-card__head{
    display:grid;grid-template-rows:auto auto minmax(40px,auto) 18px minmax(68px,auto);
    gap:0;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--line);
  }
  .pricing-card__badge{
    display:inline-block;width:fit-content;margin-bottom:10px;font-size:10.5px;font-weight:800;
    letter-spacing:.06em;text-transform:uppercase;background:#e3ff8f;color:var(--ink);
    padding:4px 10px;border-radius:999px;
  }
  .pricing-card__badge--spacer{visibility:hidden;pointer-events:none;user-select:none;}
  .pricing-card__name{
    display:block;font-size:12px;font-weight:800;letter-spacing:.08em;
    text-transform:uppercase;color:var(--ink-faint);margin-bottom:10px;
  }
  .pricing-card__price{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap;}
  .pricing-card__amount{font-family:'Onest',sans-serif;font-size:36px;font-weight:800;line-height:1;color:var(--ink);}
  .pricing-card__amount--contact{font-size:28px;line-height:1.25;}
  .pricing-card__period{font-size:14px;font-weight:600;color:var(--ink-soft);}
  .pricing-card__desc{margin:12px 0 0;font-size:14px;line-height:1.55;color:var(--ink-soft);}
  .pricing-card__features{
    list-style:none;margin:0 0 24px;padding:0;align-self:start;
    display:grid;gap:10px;
  }
  .pricing-card__features li{
    position:relative;padding-left:22px;font-size:13.5px;line-height:1.45;color:var(--ink-soft);
    display:flex;align-items:center;
  }
  .pricing-card__features li::before{
    content:'';position:absolute;left:0;top:50%;width:10px;height:6px;
    border-left:2px solid #b9ec1e;border-bottom:2px solid #b9ec1e;
    transform:translateY(-60%) rotate(-45deg);
  }
  .pricing-card__cta{width:100%;align-self:end;}
  .pricing-grid .reveal:nth-child(1){transition-delay:0s;}
  .pricing-grid .reveal:nth-child(2){transition-delay:.06s;}
  .pricing-grid .reveal:nth-child(3){transition-delay:.12s;}

  .pricing-matrix-wrap{margin-top:56px;padding-top:56px;border-top:1px solid var(--line);}
  .pricing-matrix__title{font-size:clamp(22px,3vw,28px);margin:0 0 20px;}
  .pricing-matrix{
    border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);
  }
  .pricing-matrix__row{
    display:grid;grid-template-columns:1.4fr repeat(3,1fr);
    border-top:1px solid var(--line);
  }
  .pricing-matrix__row:first-child{border-top:none;}
  .pricing-matrix__row--head{background:var(--bg);}
  .pricing-matrix__cell{
    padding:14px 16px;font-size:13.5px;line-height:1.45;color:var(--ink-soft);
    border-left:1px solid var(--line);display:flex;align-items:center;
  }
  .pricing-matrix__cell:first-child{border-left:none;}
  .pricing-matrix__row--head .pricing-matrix__cell{
    font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);
  }
  .pricing-matrix__cell--feature{font-weight:600;color:var(--ink);}
  .pricing-matrix__cell--featured{background:rgba(227,255,143,.12);}
  .pricing-matrix__val{font-weight:700;color:var(--ink);}
  .pricing-matrix__hint{
    display:inline-block;margin-left:6px;font-size:10px;font-weight:800;
    letter-spacing:.04em;text-transform:uppercase;color:var(--accent-deep);
  }
  @media (max-width:760px){
    .pricing-matrix{overflow-x:auto;}
    .pricing-matrix__row{min-width:640px;}
  }

  .pricing-addons{
    margin-top:72px;padding-top:56px;border-top:1px solid var(--line);
  }
  .pricing-addons-block{
    padding:72px 0 0;margin-top:72px;border-top:1px solid var(--line);
  }
  .pricing-addons-block.content-block{border-top:1px solid var(--line);padding:72px 0 0;}
  .pricing-addons__head{max-width:640px;margin-bottom:32px;}
  .pricing-addons__head h2{font-size:clamp(24px,3vw,32px);line-height:1.1;margin:0;}
  .pricing-addons__head p{margin:12px 0 0;font-size:15px;line-height:1.6;color:var(--ink-soft);}
  .pricing-addons__grid{
    display:grid;grid-template-columns:repeat(2,1fr);gap:14px;
  }
  @media (max-width:700px){.pricing-addons__grid{grid-template-columns:1fr;}}
  .pricing-addon{
    display:flex;align-items:flex-start;justify-content:space-between;gap:20px;
    padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:12px;
  }
  .pricing-addon__info h3{font-size:14.5px;font-weight:700;margin:0 0 4px;}
  .pricing-addon__info p{margin:0;font-size:13px;line-height:1.5;color:var(--ink-soft);}
  .pricing-addon__price{
    flex-shrink:0;font-family:'Onest',sans-serif;font-size:22px;font-weight:800;
    color:var(--ink);white-space:nowrap;
  }
  .pricing-addon__price span{font-size:12px;font-weight:600;color:var(--ink-faint);}
  .pricing-addons__note{
    margin:28px 0 0;font-size:13px;line-height:1.6;color:var(--ink-faint);
  }

  footer,.site-footer{
    width:100%;background:#ffffff;color:var(--ink-soft);
    padding:56px 24px 28px;border-top:1px solid var(--line);
  }
  .site-footer__inner{max-width:var(--maxw);margin:0 auto;padding:0 16px;}
  .site-footer__grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr)) minmax(200px,260px);
    gap:32px 40px;align-items:start;
  }
  @media (max-width:1024px){
    .site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .site-footer__aside{grid-column:1/-1;max-width:420px;}
  }
  @media (max-width:560px){
    .site-footer__grid{grid-template-columns:1fr;}
  }
  .foot-col h5{
    font-size:11.5px;color:var(--ink);text-transform:uppercase;
    letter-spacing:.07em;margin:0 0 18px;font-weight:800;
  }
  .foot-col a{
    display:block;font-size:13.5px;color:var(--ink-soft);
    margin-bottom:10px;font-weight:500;line-height:1.4;
  }
  .foot-col a:hover{color:var(--ink);}
  .site-footer__aside{display:flex;flex-direction:column;gap:18px;}
  .foot-social{display:flex;gap:16px;flex-wrap:wrap;}
  .foot-social a{
    display:flex;align-items:center;justify-content:center;
    width:auto;height:auto;border:none;border-radius:0;
  }
  .foot-social a:hover{opacity:.65;}
  .foot-social svg{width:18px;height:18px;stroke:var(--ink);}
  .site-footer__desc{margin:0;font-size:13px;line-height:1.65;color:var(--ink-soft);}
  .site-footer__badges{display:flex;flex-wrap:wrap;gap:10px;}
  .site-footer__badges span{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:52px;height:52px;padding:0 10px;border-radius:50%;
    border:1px solid var(--line);font-size:9px;font-weight:800;
    letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);
    text-align:center;line-height:1.15;
  }
  .site-footer__bottom{
    display:flex;justify-content:space-between;align-items:center;
    gap:16px;margin-top:48px;padding-top:24px;
    border-top:1px solid var(--line);
    font-size:12.5px;color:var(--ink-faint);flex-wrap:wrap;
  }
  .site-footer__tagline{color:var(--ink-faint);}

  .blog-section{padding:60px 24px 100px;background:#ffffff;border-top:1px solid var(--line);}
  .blog-filters{
    display:flex;align-items:center;justify-content:space-between;gap:16px;
    flex-wrap:wrap;margin-bottom:32px;
  }
  .blog-filters__tags{display:flex;flex-wrap:wrap;gap:8px;}
  .blog-tag{
    display:inline-flex;align-items:center;height:32px;padding:0 14px;
    border-radius:999px;border:1px solid var(--line);background:var(--bg);
    font-size:13px;font-weight:600;color:var(--ink-soft);cursor:pointer;
    transition:all .15s ease;
  }
  .blog-tag:hover,.blog-tag.is-active{
    border-color:var(--ink);background:var(--ink);color:#e3ff8f;
  }
  .blog-featured{
    display:grid;grid-template-columns:1.1fr .9fr;gap:0;
    background:var(--surface);border:1px solid var(--line);border-radius:12px;
    overflow:hidden;margin-bottom:24px;text-decoration:none;color:inherit;
    transition:border-color .2s ease,box-shadow .2s ease;
  }
  .blog-featured:hover{border-color:var(--ink);box-shadow:0 12px 32px -16px rgba(10,10,13,.12);}
  .blog-featured__body{padding:40px;display:flex;flex-direction:column;justify-content:center;}
  .blog-featured__visual{min-height:280px;background:var(--ink);overflow:hidden;}
  .blog-featured__visual img{width:100%;height:100%;object-fit:cover;display:block;}
  .blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
  .blog-card{
    display:flex;flex-direction:column;background:var(--surface);
    border:1px solid var(--line);border-radius:12px;overflow:hidden;
    text-decoration:none;color:inherit;min-height:100%;
    transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
  }
  .blog-card:hover{border-color:var(--ink);box-shadow:0 10px 28px -14px rgba(10,10,13,.12);transform:translateY(-2px);}
  .blog-card__visual{height:160px;overflow:hidden;background:var(--ink);position:relative;}
  .blog-card__visual img{width:100%;height:100%;object-fit:cover;display:block;}
  .blog-card__visual--mock{display:flex;align-items:center;justify-content:center;padding:20px;background:var(--bg);}
  .blog-card__body{padding:24px;display:flex;flex-direction:column;flex:1;}
  .blog-card__meta{
    display:flex;align-items:center;gap:10px;flex-wrap:wrap;
    margin-top:auto;padding-top:16px;font-size:12px;color:var(--ink-faint);font-weight:600;
  }
  .blog-card__meta span{display:inline-flex;align-items:center;gap:6px;}
  .blog-card__category{
    display:inline-block;width:fit-content;margin-bottom:12px;
    font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
    background:#e3ff8f;color:var(--ink);padding:4px 10px;border-radius:999px;
  }
  .blog-card h3,.blog-featured h2{font-size:20px;line-height:1.25;margin:0 0 10px;}
  .blog-featured h2{font-size:clamp(24px,3vw,32px);margin-bottom:14px;}
  .blog-card p,.blog-featured p{margin:0;font-size:14px;line-height:1.6;color:var(--ink-soft);}
  .blog-article-wrap{padding:0 24px 100px;background:#ffffff;}
  .blog-article-back{
    display:inline-flex;align-items:center;gap:6px;
    font-size:14px;font-weight:700;color:var(--ink-soft);text-decoration:none;margin-bottom:28px;
  }
  .blog-article-back:hover{color:var(--ink);}
  .blog-article{max-width:720px;margin:0 auto;}
  .blog-article__head{margin-bottom:36px;padding-bottom:32px;border-bottom:1px solid var(--line);}
  .blog-article__head h1{font-size:clamp(30px,4.5vw,44px);line-height:1.08;margin:14px 0 16px;}
  .blog-article__meta{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;font-weight:600;color:var(--ink-faint);}
  .blog-article__content{font-size:17px;line-height:1.75;color:var(--ink-soft);}
  .blog-article__content h2{
    font-size:22px;line-height:1.25;color:var(--ink);margin:40px 0 14px;
  }
  .blog-article__content p{margin:0 0 18px;}
  .blog-article__content ul,.blog-article__content ol{margin:0 0 18px;padding-left:22px;}
  .blog-article__content li{margin-bottom:8px;}
  .blog-article__content blockquote{
    margin:28px 0;padding:18px 20px;border-left:3px solid #e3ff8f;
    background:var(--surface);border-radius:0 8px 8px 0;
    font-size:16px;line-height:1.6;color:var(--ink);
  }
  .blog-related{padding:72px 24px 100px;border-top:1px solid var(--line);background:#ffffff;}
  .blog-related h2{font-size:clamp(22px,3vw,28px);margin-bottom:24px;}
  @media (max-width:900px){
    .blog-featured{grid-template-columns:1fr;}
    .blog-featured__visual{min-height:200px;order:-1;}
    .blog-grid{grid-template-columns:1fr;}
  }
  @media (max-width:600px){
    .blog-featured__body{padding:28px 24px;}
  }

  /* ==========================================================
     RESPONSIVE — mobile & tablet refinements
     ========================================================== */
  html{overflow-x:clip;}
  body{overflow-x:clip;}

  @media (max-width:768px){
    :root{--header-h:60px;}
    .nav{height:var(--header-h);width:100%;padding:0 12px;gap:8px;}
    .brand-logo{height:20px;}

    .page-frame{
      width:100%;
      border-left:none;
      border-right:none;
    }

    .hero--home{--home-hero-h:auto;}
    .hero--home .hero__copy{
      min-height:auto;
      padding:40px 16px 56px;
    }
    .hero-announce{
      font-size:12px;
      margin-bottom:14px;
      gap:8px;
    }
    .hero-announce__icon{width:24px;height:24px;}
    .hero-announce__dot{width:7px;height:7px;}
    .hero{padding:48px 16px 20px;}
    .hero h1{font-size:clamp(32px,9vw,52px);}
    .hero p.sub{font-size:16px;margin-top:18px;}

    .hero .ctas,
    .finalcta .ctas{
      flex-direction:column;align-items:stretch;
      gap:10px;width:100%;max-width:320px;
      margin-left:auto;margin-right:auto;
    }
    .hero .ctas .btn,
    .finalcta .ctas .btn{width:100%;height:40px;}

    .page-hero{--page-hero-h:min(72vh,440px);}
    .page-hero--solutions{--page-hero-h:min(78vh,500px);}
    .page-hero__frame{
      width:100%;
      border-left:none;
      border-right:none;
    }
    .page-hero__copy{
      width:100%;
      height:auto;
      min-height:var(--page-hero-h);
    }
    .page-hero__copy h1{font-size:clamp(28px,8vw,40px);}
    .page-hero--solutions h1{font-size:clamp(30px,8vw,44px);}
    .page-hero__copy .sub,
    .page-hero--solutions .sub{font-size:16px;margin-top:18px;}
    .page-hero__ctas{margin-top:24px;}
    .page-hero__cta{height:40px;}

    .feature{padding:64px 16px;}
    .statband{padding:64px 16px;}
    .home-contact-banner{min-height:auto;}
    .home-contact-banner__inner{
      flex-direction:column;align-items:flex-start;gap:24px;
      padding:48px 16px;min-height:auto;
    }
    .home-contact-banner__text{font-size:clamp(20px,5.5vw,28px);}
    .home-contact-banner__cta{width:100%;justify-content:center;}
    .finalcta{padding:72px 16px;}
    .solutions-block{padding:56px 16px 72px;}
    .content-block{padding:56px 16px;}
    .pricing-section{padding:48px 16px 72px;}
    .blog-section{padding:48px 16px 72px;}
    .blog-article-wrap{padding:0 16px 72px;}
    .blog-related{padding:56px 16px 72px;}

    .solution-card__body{padding:28px 20px 16px;}
    .solution-card__visual{padding:8px 16px 24px;}

    .pricing-addon{
      flex-direction:column;
      align-items:flex-start;
      gap:12px;
    }
    .pricing-addon__price{align-self:flex-start;}

    .navactions .btn-primary{
      padding:0 10px;
      font-size:13px;
      height:32px;
    }

    footer,.site-footer{padding:48px 16px 24px;}
    .site-footer__bottom{
      flex-direction:column;
      align-items:flex-start;
      gap:8px;
    }

    .preview-pane{padding:16px;}
    .preview-shell{margin-left:16px;margin-right:16px;}

    .wrap{padding:0 12px;}

    .decision-actions{flex-wrap:wrap;}
    .blog-filters{align-items:flex-start;}
    .blog-filters__tags{width:100%;}
  }

  @media (max-width:480px){
    .navactions .btn-primary{
      padding:0 8px;
      font-size:12px;
    }
    .statgrid .num{font-size:32px;}
    .gridcard{padding:18px;}
    .pricing-card{padding:22px 18px;}
    .blog-card__body{padding:20px;}
    .blog-card h3,.blog-featured h2{font-size:18px;}
  }

  /* ==========================================================
     COOKIE CONSENT — banner & preference center
     ========================================================== */
  .cookie-banner{
    position:fixed;left:16px;right:16px;bottom:16px;z-index:200;
    max-width:920px;margin:0 auto;
    transform:translateY(calc(100% + 24px));
    opacity:0;pointer-events:none;
    transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s ease;
  }
  .cookie-banner.is-visible{
    transform:translateY(0);opacity:1;pointer-events:auto;
  }
  .cookie-banner__inner{
    display:flex;align-items:flex-start;justify-content:space-between;gap:20px;
    padding:22px 24px;background:#ffffff;border:1px solid var(--line);
    border-radius:14px;box-shadow:0 24px 60px -24px rgba(10,10,13,.28);
  }
  .cookie-banner__title{
    margin:0 0 8px;font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--ink);
  }
  .cookie-banner__text{
    margin:0;font-size:13.5px;line-height:1.6;color:var(--ink-soft);max-width:640px;
  }
  .cookie-banner__text a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:2px;}
  .cookie-banner__actions{
    display:flex;align-items:center;gap:10px;flex-shrink:0;flex-wrap:wrap;
  }
  .cookie-banner__actions .btn{height:36px;padding:0 16px;}

  .cookie-modal{
    position:fixed;inset:0;z-index:210;display:flex;align-items:center;justify-content:center;
    padding:20px 16px;opacity:0;pointer-events:none;
    transition:opacity .25s ease;
  }
  .cookie-modal.is-open{opacity:1;pointer-events:auto;}
  body.cookie-modal-open{overflow:hidden;}
  .cookie-modal__backdrop{
    position:absolute;inset:0;background:rgba(10,10,13,.45);
  }
  .cookie-modal__panel{
    position:relative;z-index:1;width:100%;max-width:640px;max-height:min(88vh,760px);
    display:flex;flex-direction:column;background:#ffffff;border:1px solid var(--line);
    border-radius:14px;box-shadow:0 30px 70px -28px rgba(10,10,13,.35);overflow:hidden;
  }
  .cookie-modal__head{
    display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
    padding:24px 24px 0;
  }
  .cookie-modal__title{
    margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--ink);
  }
  .cookie-modal__close{
    width:32px;height:32px;border:1px solid var(--line);border-radius:8px;
    background:var(--bg);display:flex;align-items:center;justify-content:center;
    cursor:pointer;flex-shrink:0;color:var(--ink-soft);
  }
  .cookie-modal__close:hover{border-color:var(--ink);color:var(--ink);}
  .cookie-modal__close svg{width:16px;height:16px;stroke:currentColor;}
  .cookie-modal__intro{
    margin:14px 24px 0;font-size:13px;line-height:1.65;color:var(--ink-soft);
    overflow:auto;flex-shrink:0;
  }
  .cookie-modal__intro a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:2px;}
  .cookie-prefs{
    margin:18px 24px 0;border-top:1px solid var(--line);
    overflow:auto;flex:1;min-height:0;
  }
  .cookie-pref{border-bottom:1px solid var(--line);}
  .cookie-pref__trigger{
    width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;
    padding:16px 0;background:transparent;border:none;cursor:pointer;text-align:left;
    font-family:inherit;
  }
  .cookie-pref__chevron{
    width:14px;height:14px;stroke:var(--ink-faint);transition:transform .15s ease;
  }
  .cookie-pref.is-open .cookie-pref__chevron{transform:rotate(90deg);}
  .cookie-pref__name{font-size:14px;font-weight:700;color:var(--ink);}
  .cookie-pref__status{
    font-size:12px;font-weight:700;color:var(--accent-deep);white-space:nowrap;
  }
  .cookie-pref__body{padding:0 0 16px 26px;}
  .cookie-pref__body p{margin:0;font-size:12.5px;line-height:1.6;color:var(--ink-soft);}
  .cookie-toggle{
    position:relative;display:inline-flex;align-items:center;cursor:pointer;
  }
  .cookie-toggle input{
    position:absolute;opacity:0;width:0;height:0;
  }
  .cookie-toggle__track{
    width:44px;height:24px;border-radius:999px;background:var(--line);
    position:relative;transition:background .15s ease;
  }
  .cookie-toggle__track::after{
    content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;
    background:#ffffff;box-shadow:0 1px 3px rgba(0,0,0,.15);transition:transform .15s ease;
  }
  .cookie-toggle input:checked + .cookie-toggle__track{background:var(--accent-deep);}
  .cookie-toggle input:checked + .cookie-toggle__track::after{transform:translateX(20px);}
  .cookie-toggle input:focus-visible + .cookie-toggle__track{outline:2px solid var(--ink);outline-offset:2px;}
  .cookie-modal__actions{
    display:flex;align-items:center;justify-content:flex-end;gap:10px;
    padding:16px 24px 24px;border-top:1px solid var(--line);flex-shrink:0;
  }
  .cookie-modal__actions .btn{height:36px;padding:0 16px;}

  @media (max-width:768px){
    .cookie-banner{left:12px;right:12px;bottom:12px;}
    .cookie-banner__inner{flex-direction:column;align-items:stretch;padding:18px;}
    .cookie-banner__actions{width:100%;}
    .cookie-banner__actions .btn{flex:1;}
    .cookie-modal{padding:0;}
    .cookie-modal__panel{max-height:100vh;height:100%;border-radius:0;border-left:none;border-right:none;}
    .cookie-modal__actions{flex-direction:column-reverse;}
    .cookie-modal__actions .btn{width:100%;}
  }

  /* ==========================================================
     CONTACT BAND — home page
     ========================================================== */
  .contact-band{
    background:var(--ink);color:#ffffff;
    min-height:calc(100vh - var(--header-h));
    max-height:calc(100vh - var(--header-h));
    display:flex;align-items:center;
    padding:40px 16px;border-top:1px solid var(--line);
    box-sizing:border-box;overflow:hidden;
  }
  .contact-band__inner{
    display:grid;grid-template-columns:1fr 1.05fr;gap:40px;
    align-items:center;width:100%;
  }
  .contact-band__eyebrow{
    display:inline-block;margin-bottom:14px;font-size:11px;font-weight:800;
    letter-spacing:.08em;text-transform:uppercase;color:#e3ff8f;
  }
  .contact-band__copy h2{
    margin:0;font-size:clamp(28px,4vw,40px);line-height:1.05;color:#ffffff;
  }
  .contact-band__copy p{
    margin:14px 0 0;font-size:16px;line-height:1.6;color:rgba(255,255,255,.78);max-width:420px;
  }
  .contact-form{display:grid;gap:12px;}
  .contact-form-wrap{min-height:280px;display:flex;align-items:center;}
  .contact-form-success{
    display:none;
    flex-direction:column;align-items:flex-start;gap:14px;
    padding:48px 40px;border:1px solid var(--line);border-radius:12px;
    background:#ffffff;width:100%;box-sizing:border-box;
  }
  .contact-band--sent .contact-band__copy,
  .contact-band--sent .contact-form-wrap{display:none !important;}
  .contact-band--sent .contact-band__inner{
    grid-template-columns:1fr;
    justify-items:center;
  }
  .contact-band--sent .contact-form-success{
    display:flex;
    max-width:560px;
    animation:contact-success-in .35s ease;
  }

  /* ==========================================================
     CONTACT PAGE — continuous side rails (hero → footer)
     ========================================================== */
  .contact-page-frame{
    width:calc(100% - 32px);
    max-width:var(--maxw);
    margin:0 auto;
    border-left:1px solid var(--line);
    border-right:1px solid var(--line);
  }
  .contact-page-frame .site-footer{
    border-top:1px solid var(--line);
  }

  /* ==========================================================
     CONTACT PAGE — split layout, demo scheduler
     ========================================================== */
  .contact-split{
    width:100%;
    max-width:none;
    margin:0;
    display:grid;
    grid-template-columns:1fr 1fr;
    border-left:none;
    border-right:none;
    background:#ffffff;
  }
  .contact-split__col{
    padding:56px 40px 64px;
    min-height:100%;
    box-sizing:border-box;
  }
  .contact-split__col--contact{
    border-right:1px solid var(--line);
  }
  .contact-split__col--demo{
    background:#ffffff;
  }
  .contact-split__inner{
    max-width:440px;
    text-align:left;
  }
  .contact-split__col--demo .contact-split__inner{
    max-width:400px;
  }
  .contact-split h2{
    margin:0;
    font-size:clamp(26px,3.2vw,36px);
    line-height:1.08;
    letter-spacing:-0.02em;
    color:var(--ink);
  }
  .contact-split__col > .contact-split__inner > p{
    margin:14px 0 0;
    font-size:16px;
    line-height:1.65;
    color:var(--ink-soft);
  }
  .contact-band--page .contact-band__eyebrow{
    color:var(--ink);
    background:var(--accent);
    padding:6px 12px;
    border-radius:999px;
    font-size:10.5px;
    display:inline-block;
    margin-bottom:16px;
  }
  .contact-band__eyebrow--dark{
    background:var(--ink) !important;
    color:var(--accent) !important;
  }
  .contact-split .contact-form{
    margin-top:28px;
    gap:14px;
  }
  .contact-split .contact-field{gap:6px;}
  .contact-split .contact-field__label{
    font-size:12px;font-weight:700;color:var(--ink);
  }
  .contact-split .contact-field__input{
    height:44px;padding:0 14px;border-radius:10px;
    border:1.5px solid var(--line);background:#ffffff;
    color:var(--ink);font-size:14px;width:100%;box-sizing:border-box;
    transition:border-color .2s ease,box-shadow .2s ease;
  }
  .contact-split .contact-field__input:hover{border-color:#d0d0d5;}
  .contact-split .contact-field__textarea{
    min-height:108px;padding:12px 14px;line-height:1.5;resize:vertical;
  }
  .contact-split .contact-field__input:focus{
    outline:none;border-color:var(--ink);
    box-shadow:0 0 0 3px rgba(227,255,143,.45);
  }
  .contact-split .contact-field__input::placeholder{color:var(--ink-faint);}
  .contact-split .contact-form__submit{
    width:100%;height:44px;margin-top:6px;font-size:14px;font-weight:800;border-radius:10px;
  }
  .contact-split .contact-form-success{
    display:none;flex-direction:column;align-items:flex-start;gap:12px;
    margin-top:28px;padding:32px 0 0;
  }
  .contact-split__col--sent .contact-band__eyebrow,
  .contact-split__col--sent h2,
  .contact-split__col--sent .contact-split__inner > p,
  .contact-split__col--sent .contact-form{display:none !important;}
  .contact-split__col--sent .contact-form-success{
    display:flex;animation:contact-success-in .35s ease;margin-top:0;padding:0;
  }
  .contact-demo__list{
    margin:24px 0 0;padding:0;list-style:none;
    display:flex;flex-direction:column;gap:10px;
  }
  .contact-demo__list li{
    position:relative;padding-left:20px;font-size:14.5px;font-weight:600;color:var(--ink-soft);
  }
  .contact-demo__list li::before{
    content:'';position:absolute;left:0;top:8px;width:6px;height:6px;
    border-radius:50%;background:var(--accent-deep);
  }
  .contact-split__col--demo .btn{
    margin-top:28px;width:100%;height:44px;font-size:14px;font-weight:800;
  }
  .contact-demo__hint{
    display:block;margin-top:10px;font-size:13px;font-weight:600;color:var(--ink-faint);
  }

  .demo-modal .contact-form{gap:14px;}
  .demo-modal .contact-form__row{
    display:grid;grid-template-columns:1fr 1fr;gap:12px;
  }
  .demo-modal .contact-field{gap:6px;}
  .demo-modal .contact-field__label{font-size:12px;font-weight:700;color:var(--ink);}
  .demo-modal .contact-field__input{
    height:44px;padding:0 14px;border-radius:10px;
    border:1.5px solid var(--line);background:var(--surface);
    color:var(--ink);font-size:14px;width:100%;box-sizing:border-box;
    transition:border-color .2s ease,box-shadow .2s ease;
  }
  .demo-modal .contact-field__input:focus{
    outline:none;border-color:var(--ink);background:#ffffff;
    box-shadow:0 0 0 3px rgba(227,255,143,.45);
  }
  .demo-modal .contact-form__submit{width:100%;height:44px;margin-top:4px;}
  .demo-step__intro{
    margin:0 0 20px;font-size:14.5px;line-height:1.6;color:var(--ink-soft);
  }
  .demo-step__back{
    display:inline-flex;align-items:center;margin-bottom:16px;padding:0;
    border:none;background:none;font-family:inherit;font-size:13px;
    font-weight:700;color:var(--ink-soft);cursor:pointer;
  }
  .demo-step__back:hover{color:var(--ink);}

  .demo-modal{
    position:fixed;inset:0;z-index:220;display:flex;align-items:center;justify-content:center;
    padding:20px 16px;opacity:0;pointer-events:none;transition:opacity .25s ease;
  }
  .demo-modal.is-open{opacity:1;pointer-events:auto;}
  body.demo-modal-open{overflow:hidden;}
  .demo-modal__backdrop{
    position:absolute;inset:0;background:rgba(10,10,13,.5);
  }
  .demo-modal__panel{
    position:relative;z-index:1;width:100%;max-width:720px;
    background:#ffffff;border:1px solid var(--line);border-radius:16px;
    box-shadow:0 30px 70px -28px rgba(10,10,13,.35);overflow:hidden;
  }
  .demo-modal__head{
    display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
    padding:24px 28px 0;
  }
  .demo-modal__eyebrow{
    display:inline-block;margin-bottom:8px;font-size:10.5px;font-weight:800;
    letter-spacing:.08em;text-transform:uppercase;
    color:var(--ink);background:var(--accent);padding:5px 10px;border-radius:999px;
  }
  .demo-modal__title{
    margin:0;font-size:clamp(22px,3vw,28px);font-weight:800;
    letter-spacing:-0.02em;color:var(--ink);
  }
  .demo-modal__close{
    width:36px;height:36px;border:1px solid var(--line);border-radius:10px;
    background:var(--bg);display:flex;align-items:center;justify-content:center;
    cursor:pointer;flex-shrink:0;color:var(--ink-soft);
  }
  .demo-modal__close:hover{border-color:var(--ink);color:var(--ink);}
  .demo-modal__close svg{width:16px;height:16px;stroke:currentColor;}
  .demo-modal__body{padding:24px 28px 8px;}
  .demo-picker{
    display:grid;grid-template-columns:1fr 200px;gap:24px;align-items:start;
  }
  .demo-calendar__nav{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:16px;
  }
  .demo-calendar__month{
    font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-0.01em;
  }
  .demo-calendar__arrow{
    width:32px;height:32px;border:1px solid var(--line);border-radius:8px;
    background:var(--bg);display:flex;align-items:center;justify-content:center;
    cursor:pointer;color:var(--ink-soft);
  }
  .demo-calendar__arrow:hover{border-color:var(--ink);color:var(--ink);}
  .demo-calendar__arrow svg{width:14px;height:14px;stroke:currentColor;}
  .demo-calendar__weekdays{
    display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px;
  }
  .demo-calendar__weekdays span{
    font-size:10px;font-weight:700;text-transform:uppercase;
    color:var(--ink-faint);text-align:center;padding:4px 0;
  }
  .demo-calendar__grid{
    display:grid;grid-template-columns:repeat(7,1fr);gap:4px;
  }
  .demo-calendar__day{
    aspect-ratio:1;border:none;border-radius:8px;background:transparent;
    font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;
    font-family:inherit;transition:background .15s ease,color .15s ease;
  }
  .demo-calendar__day:hover:not(.is-disabled):not(.is-selected){
    background:var(--surface);
  }
  .demo-calendar__day.is-selected{
    background:var(--ink);color:#ffffff;
  }
  .demo-calendar__day.is-disabled{
    color:var(--ink-faint);cursor:not-allowed;opacity:.45;
  }
  .demo-calendar__day--pad{pointer-events:none;}
  .demo-times{
    border-left:1px solid var(--line);padding-left:24px;min-height:280px;
  }
  .demo-times__label{
    margin:0 0 12px;font-size:12px;font-weight:700;color:var(--ink-soft);
    line-height:1.4;
  }
  .demo-times__grid{
    display:flex;flex-direction:column;gap:6px;
    max-height:300px;overflow-y:auto;
  }
  .demo-times__grid.is-empty::after{
    content:'Select a date first';
    font-size:13px;color:var(--ink-faint);font-weight:600;
  }
  .demo-times__slot{
    width:100%;height:36px;border:1.5px solid var(--line);border-radius:8px;
    background:var(--bg);font-family:inherit;font-size:13px;font-weight:700;
    color:var(--ink);cursor:pointer;text-align:center;
    transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
  }
  .demo-times__slot:hover{border-color:var(--ink);background:#ffffff;}
  .demo-times__slot.is-selected{
    border-color:var(--ink);background:var(--accent);box-shadow:0 0 0 2px rgba(227,255,143,.4);
  }
  .demo-booked{
    display:flex;flex-direction:column;align-items:center;text-align:center;
    gap:0;padding:24px 12px 32px;width:100%;
    animation:contact-success-in .4s ease;
  }
  .demo-booked__icon{
    width:56px;height:56px;border-radius:50%;
    background:var(--accent);color:var(--ink);
    display:flex;align-items:center;justify-content:center;
    font-size:24px;font-weight:800;margin-bottom:20px;
  }
  .demo-booked__eyebrow{
    display:inline-block;margin-bottom:10px;font-size:10.5px;font-weight:800;
    letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);
  }
  .demo-booked__title{
    margin:0 0 12px;font-size:clamp(24px,3.5vw,30px);font-weight:800;
    letter-spacing:-0.02em;color:var(--ink);
  }
  .demo-booked__thanks{
    margin:0 0 16px;font-size:16px;line-height:1.55;color:var(--ink-soft);max-width:420px;
  }
  .demo-booked__when{
    margin:0 0 16px;padding:10px 18px;border-radius:999px;
    background:var(--surface);border:1px solid var(--line);
    font-size:14px;font-weight:700;color:var(--ink);
  }
  .demo-booked__note{
    margin:0 0 28px;font-size:14.5px;line-height:1.6;color:var(--ink-soft);max-width:400px;
  }
  .demo-booked__done{
    height:44px;padding:0 32px;font-size:14px;font-weight:800;border-radius:10px;
  }
  .demo-modal--scheduled .demo-modal__head > div:first-child{
    visibility:hidden;height:0;overflow:hidden;margin:0;padding:0;
  }
  .demo-modal--scheduled .demo-modal__head{padding-bottom:0;}
  .demo-modal--scheduled .demo-modal__body{padding-top:8px;}
  .demo-modal__foot{
    display:flex;align-items:center;justify-content:space-between;gap:16px;
    padding:16px 28px 24px;border-top:1px solid var(--line);
  }
  .demo-modal__selection{
    margin:0;font-size:13px;font-weight:600;color:var(--ink-soft);
  }
  .demo-modal__foot .btn{height:44px;padding:0 22px;flex-shrink:0;}
  .demo-modal__foot .btn:disabled{opacity:.45;cursor:not-allowed;}

  .contact-form-success__icon{
    width:44px;height:44px;border-radius:50%;
    background:#e3ff8f;color:var(--ink);
    display:flex;align-items:center;justify-content:center;
    font-size:20px;font-weight:800;
  }
  .contact-form-success h3{
    margin:0;font-size:clamp(20px,2.5vw,26px);line-height:1.2;color:var(--ink);
  }
  .contact-form-success p{
    margin:0;font-size:15px;line-height:1.6;color:var(--ink-soft);max-width:400px;
  }
  @keyframes contact-success-in{
    from{opacity:0;transform:translateY(8px);}
    to{opacity:1;transform:translateY(0);}
  }
  .contact-form__row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .contact-field{display:grid;gap:6px;}
  .contact-field__label{font-size:12px;font-weight:700;color:rgba(255,255,255,.72);}
  .contact-field__input{
    width:100%;height:40px;padding:0 12px;border-radius:8px;
    border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);
    color:#ffffff;font-family:inherit;font-size:14px;
    transition:border-color .15s ease,background .15s ease;
  }
  .contact-field__textarea{
    height:auto;min-height:72px;max-height:96px;padding:10px 12px;resize:vertical;
  }
  .contact-field__input::placeholder{color:rgba(255,255,255,.4);}
  .contact-field__input:focus{
    outline:none;border-color:#e3ff8f;background:rgba(255,255,255,.1);
  }
  .contact-form__submit{
    justify-self:start;margin-top:4px;height:40px;padding:0 18px;
  }
  .contact-form.is-sent .contact-form__submit{pointer-events:none;opacity:.85;}

  /* ==========================================================
     FAQ PAGE
     ========================================================== */
  .faq-section{padding:72px 24px 100px;background:#ffffff;border-top:1px solid var(--line);}
  .faq-list{display:flex;flex-direction:column;gap:0;max-width:800px;}
  .faq-item{
    border-bottom:1px solid var(--line);padding:0;
  }
  .faq-item summary{
    list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;
    padding:18px 0;font-size:15.5px;font-weight:700;color:var(--ink);
  }
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-item summary::after{
    content:'+';flex-shrink:0;width:24px;height:24px;border-radius:6px;
    border:1px solid var(--line);display:flex;align-items:center;justify-content:center;
    font-size:16px;font-weight:700;color:var(--ink-soft);transition:transform .15s ease,border-color .15s ease;
  }
  .faq-item[open] summary::after{
    content:'−';border-color:var(--ink);color:var(--ink);
  }
  .faq-item p{
    margin:0 0 18px;padding-right:40px;font-size:14.5px;line-height:1.65;color:var(--ink-soft);
  }
  .faq-item p a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:2px;}
  .faq-item[open] summary{padding-bottom:10px;}

  .contact-band--page{
    background:#ffffff;
    color:var(--ink);
    min-height:auto;
    max-height:none;
    border-top:none;
    margin-top:0;
    padding:0;
    align-items:flex-start;
  }

  /* ==========================================================
     HOME — contact promo banner (full viewport width)
     ========================================================== */
  .home-contact-banner{
    display:block;
    width:100vw;
    position:relative;
    left:50%;
    right:50%;
    margin-left:-50vw;
    margin-right:-50vw;
    background:var(--ink);
    color:#ffffff;
    text-decoration:none;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    transition:background .2s ease;
    min-height:220px;
  }
  .home-contact-banner:hover{background:#1a1a1f;}
  .home-contact-banner__inner{
    display:flex;align-items:center;justify-content:space-between;gap:32px 48px;
    max-width:var(--maxw);margin:0 auto;
    padding:56px 24px;
    min-height:220px;
    box-sizing:border-box;
  }
  .home-contact-banner__copy{
    display:flex;flex-direction:column;gap:14px;
    flex:1;min-width:0;text-align:left;
  }
  .home-contact-banner__eyebrow{
    font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
    color:#e3ff8f;
  }
  .home-contact-banner__text{
    font-size:clamp(22px,3.2vw,34px);font-weight:700;line-height:1.2;
    color:#ffffff;max-width:720px;
  }
  .home-contact-banner__cta{
    display:inline-flex;align-items:center;gap:10px;flex-shrink:0;
    font-size:15px;font-weight:800;color:var(--ink);
    background:#e3ff8f;
    padding:14px 26px;border-radius:10px;
    white-space:nowrap;
    transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
    box-shadow:0 0 0 0 rgba(227,255,143,0);
  }
  .home-contact-banner__arrow{
    display:inline-block;
    transition:transform .25s ease;
    animation:banner-arrow-nudge 1.6s ease-in-out infinite;
  }
  .home-contact-banner:hover .home-contact-banner__cta{
    transform:translateY(-2px);
    box-shadow:0 8px 28px -6px rgba(227,255,143,.45);
    background:#ebff9f;
  }
  .home-contact-banner:hover .home-contact-banner__arrow{
    animation:none;
    transform:translateX(5px);
  }
  @keyframes banner-arrow-nudge{
    0%,100%{transform:translateX(0);}
    50%{transform:translateX(6px);}
  }

  @media (max-width:900px){
    .contact-band--page{margin-top:0;padding:0;}
    .contact-page-frame{
      width:100%;
      border-left:none;
      border-right:none;
    }
    .contact-split{
      width:100%;
      grid-template-columns:1fr;
      border-left:none;
      border-right:none;
    }
    .contact-split__col{
      padding:40px 20px 48px;
      border-right:none !important;
    }
    .contact-split__col--contact{
      border-bottom:1px solid var(--line);
    }
    .contact-split__inner,
    .contact-split__col--demo .contact-split__inner{max-width:none;}
    .demo-modal .contact-form__row{grid-template-columns:1fr;}
    .demo-picker{grid-template-columns:1fr;}
    .demo-times{border-left:none;padding-left:0;padding-top:20px;border-top:1px solid var(--line);}
    .demo-modal{padding:0;align-items:stretch;}
    .demo-modal__panel{max-width:none;min-height:100vh;border-radius:0;border:none;}
    .demo-modal__foot{flex-direction:column;align-items:stretch;}
    .demo-modal__foot .btn{width:100%;}
    .contact-band__inner{grid-template-columns:1fr;gap:28px;}
    .contact-form__row{grid-template-columns:1fr;}
  }