  :root {
    color-scheme: light;
    --blue:#044AB3; --blue-deep:#03408f; --blue-card:#0653CB; --blue-bright:#0B55DC;
    --navy:#0A3D99; --navy-2:#083277; --orange:#FB4A02; --orange-2:#E35B11;
    --black:#121212; --white:#ffffff;
    --ground:#003AAA; --surface:#044AB3; --raised:#0653CB;
    --wrap:clamp(1400px, 80vw, 2080px);
    --fnu:calc((var(--wrap) - 48px) / 1352);
    --ok:#29DDA4;
    --fd:"PPNeueMontreal","OverusedGrotesk","Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;
    --fw-display:520;
    --fm:"PPNeueMontreal","OverusedGrotesk","Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;
  }
  html { background:var(--blue); }
  body { margin:0; background:var(--blue); color:#fff; font-family:var(--fd);
         font-size:1rem; line-height:1.5; -webkit-font-smoothing:antialiased;
         overflow-x:hidden; }
  * { box-sizing:border-box; }
  html { scrollbar-width:none; -ms-overflow-style:none; }
  html::-webkit-scrollbar, body::-webkit-scrollbar { display:none; width:0; }
  .nav { position:fixed; top:0; left:0; right:0; z-index:60; display:flex;
         align-items:center; justify-content:space-between; padding:14px 44px;
         pointer-events:none; }
  .nav > * { pointer-events:auto; }
  .nav-brand { font-weight:700; font-size:1rem; letter-spacing:0.04em; color:#fff;
               font-family:var(--fm); transition:color 240ms; }
  .nav-pill { position:absolute; left:50%; transform:translateX(-50%); display:flex;
              background:var(--navy); padding:4px; gap:2px; }
  .nav-pill a { display:block; padding:0.5625rem 1.125rem; font-size:0.875rem; font-weight:500;
                color:#fff; text-decoration:none; }
  .nav-pill a.on { background:#fff; color:var(--blue-bright); }
  .nav-right { display:flex; align-items:center; gap:18px; }
  .nav-right .lnk { color:#fff; font-size:0.875rem; font-weight:500; text-decoration:none;
                    transition:color 240ms; }
  body.on-light .nav-brand, body.on-light .nav-right .lnk { color:var(--blue-bright); }
  @media (max-width:1320px){ .nav-right .lnk { display:none; } }
  @media (max-width:1150px){ .nav { padding:14px 24px; } }
  @media (max-width:960px){ .nav-pill { display:none; } }
  .btn { display:inline-flex; align-items:stretch; background:#fff; border:0;
         text-decoration:none; cursor:pointer; font-family:var(--fd); padding:0; }
  .btn .t { padding:0.6875rem 1.25rem; color:var(--blue-bright); font-size:0.9375rem; font-weight:500; }
  .btn .a { width:2.75rem; background:var(--blue-bright); display:flex; align-items:center;
            justify-content:center; }
  .btn .a svg path { fill:#fff; }
  .btn.orange .t { background:var(--orange); color:#121212; }
  .btn.orange .a { background:#fff; }
  .btn.orange .a svg path { fill:var(--orange); }
  .btn.orange:hover .t { background:var(--orange-2); }
  .arrow-px { width:14px; height:14px; }
  .hero { position:relative; height:100vh; min-height:640px; overflow:hidden; }
  .hero .dev { position:absolute; inset:0; display:none; }
  .hero-copy { position:absolute; left:0; bottom:0; z-index:3; padding:0 24px 30px;
               max-width:840px; }
  .hero-copy .hc { display:none; }
  .hero-copy h1 { margin:0 0 16px; font-size:clamp(34px,4.05vw,58px); line-height:1.06;
                  letter-spacing:-0.022em; font-weight:var(--fw-display); }
  .hero-copy .sub { margin:0 0 22px; max-width:520px; font-size:14.5px; line-height:1.55;
                    color:rgba(255,255,255,0.9); font-weight:500; }
  .dev-3 .ledger { position:absolute; right:5%; top:14%; width:min(560px,44vw);
                   background:rgba(3,35,88,0.55); border:1px solid rgba(255,255,255,0.16); }
  .dev-3 .ledger-h { display:flex; justify-content:space-between; padding:12px 16px;
                     border-bottom:1px solid rgba(255,255,255,0.16); font-family:var(--fm);
                     font-size:10px; letter-spacing:0.12em; color:rgba(255,255,255,0.75); }
  .dev-3 .rows { height:min(420px,46vh); overflow:hidden; padding:6px 0; }
  .reg-row { display:grid; grid-template-columns:64px 1fr 150px; gap:12px; align-items:center;
             padding:9px 16px; font-family:var(--fm); font-size:11.5px; letter-spacing:0.03em;
             color:rgba(255,255,255,0.85); border-left:2px solid transparent;
             opacity:0; transform:translateY(6px);
             transition:opacity 200ms ease, transform 200ms ease, border-color 150ms; }
  .reg-row.in { opacity:1; transform:none; }
  .reg-row .st { text-align:right; color:rgba(255,255,255,0.7); }
  .reg-row.testing { border-left-color:var(--orange); }
  .reg-row.testing .st { color:var(--orange); }
  .reg-row.pass .st { color:#fff; }
  @media (max-width:960px){ .dev-3 .ledger { right:4%; left:4%; width:auto; top:10%; }
                            .dev-3 .rows { height:34vh; } }
  .hero { position:relative; height:100vh; min-height:660px; overflow:hidden;
          background:var(--blue); }
  .hero-inner { position:absolute; inset:auto 0 0 0; z-index:3;
                max-width:var(--wrap); margin:0 auto; padding:0 24px 56px;
                display:grid; grid-template-columns:1.05fr 0.95fr; gap:clamp(30px,4vw,72px);
                align-items:end; }
  .hero-copy2 h1 { margin:16px 0 20px; font-size:clamp(44px,6.1vw,96px); line-height:0.98;
                   letter-spacing:-0.015em; font-weight:400; }
  .hero-copy2 .sub { margin:0 0 30px; max-width:50ch; font-size:clamp(15px,1.15vw,17.5px);
                     line-height:1.55; color:rgba(255,255,255,0.9); font-weight:450; }
  .hero-cta { display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
  .ghost-link { color:#fff; font-size:14.5px; font-weight:500; text-decoration:none;
                border-bottom:1px solid rgba(255,255,255,0.45); padding-bottom:2px; }
  .ghost-link:hover { border-color:#fff; }
  .hero-facts { display:flex; gap:clamp(30px,4.6vw,74px); flex-wrap:wrap; margin-top:38px;
                padding-top:20px; border-top:1px solid rgba(255,255,255,0.24);
                font-family:var(--fm); font-size:11.5px; letter-spacing:0.07em;
                color:rgba(255,255,255,0.72); }
  .hero-facts span { display:flex; flex-direction:column; gap:7px; }
  .hero-facts b { display:block; color:#fff; font-family:var(--fd); font-weight:500;
                  font-size:clamp(26px,2.6vw,38px); line-height:0.9;
                  letter-spacing:-0.02em; }
  @media (max-width:900px){
    .hero { height:auto; min-height:88vh; padding-top:120px; }
    .hero-inner { position:static; grid-template-columns:1fr; padding-bottom:40px; }
  }
  .wrapx { max-width:var(--wrap); margin:0 auto; padding:0 24px; position:relative; z-index:2; }
  .eyebrow { display:flex; align-items:center; gap:0.5rem; font-family:var(--fm);
             font-size:0.75rem; letter-spacing:0.12em; }
  .eyebrow::before { content:""; width:6px; height:6px; background:currentColor; }
  .h2 { margin:16px 0 0; font-size:clamp(36px,4.3vw,68px); line-height:0.96;
        letter-spacing:-0.015em; font-weight:400; max-width:22ch; }
  .rmask { display:block; overflow:hidden;
           padding:0.12em 0 0.18em; margin:-0.12em 0 -0.18em; }
  .rmask .rin { display:block;
                transition:transform 800ms cubic-bezier(0.22,0.61,0.2,1); }
  .js .rmask .rin { transform:translateY(145%); }
  .rmask.in .rin { transform:none; }
  .fade { transition:opacity 700ms ease, transform 700ms cubic-bezier(0.22,0.61,0.2,1); }
  .js .fade { opacity:0; transform:translateY(20px); }
  .js #top .fade { opacity:1; transform:none; transition:none; }
  .fade.in { opacity:1; transform:none; }
  @media (prefers-reduced-motion:reduce){
    .rmask .rin, .fade, .reg-row { transform:none !important; opacity:1 !important; transition:none !important; }
  }
  .traces-svg { position:absolute; inset:0; width:100%; height:100%; z-index:1;
                overflow:visible; pointer-events:none; }
  .traces-svg path { fill:none; stroke-width:1.5; }
  .tr-dim { stroke:rgba(255,255,255,0.14); }
  .tr-lit { stroke:#fff; opacity:0.92; }
  .tr-pulse { stroke:var(--orange); stroke-width:3.5; }
  .px-seam { position:relative; overflow:hidden; }
  .px-grid { display:grid; }
  .clients-dome { position:relative; padding:0 0 110px; }
  .cl-head { text-align:center; margin-top:-40px; position:relative; z-index:2; }
  .cl-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:48px; }
  .cl-card { background:rgba(255,255,255,0.10); border:1px solid rgba(255,255,255,0.14);
             min-height:120px; display:flex; align-items:center; justify-content:center;
             padding:20px; text-align:center; font-weight:500; font-size:17px;
             transition:background-color 200ms; }
  .cl-card:hover { background:rgba(255,255,255,0.16); }
  .cl-note { margin-top:18px; text-align:center; font-family:var(--fm); font-size:11.5px;
             letter-spacing:0.10em; color:rgba(255,255,255,0.7); }
  @media (max-width:960px){ .cl-grid { grid-template-columns:repeat(2,1fr); } }
  .rc-band { position:relative; background:#fff; color:var(--black); padding:104px 0 128px; }
  .rc-band .eyebrow { color:var(--blue-bright); }
  .rc-band .h2 { color:var(--black); }
  .rc-wrap { display:grid; grid-template-columns:1fr; gap:48px; align-items:start; }
  .rc-head { position:relative; }
  .rc-lede { max-width:34ch; margin:28px 0 0; font-size:15px; line-height:1.5;
             color:rgba(18,18,18,0.66); }
  .rc-ctl { display:flex; align-items:center; flex-wrap:wrap; gap:16px 20px; margin-top:28px; }
  .rc-pause { min-height:44px; padding:0 20px; border-radius:999px;
              border:1px solid rgba(18,18,18,0.18); background:none; color:var(--black);
              font-family:var(--fm); font-size:0.75rem; font-weight:600; letter-spacing:0.14em;
              text-transform:uppercase; cursor:pointer;
              transition:background 0.18s ease, color 0.18s ease, border-color 0.18s ease; }
  .rc-pause:hover { background:var(--black); color:#fff; border-color:var(--black); }
  .rc-pause:focus-visible { outline:2px solid var(--blue-bright); outline-offset:3px; }
  .rc-g2 { font-family:var(--fm); font-size:0.6875rem; font-weight:600; letter-spacing:0.07em;
           text-transform:uppercase; color:var(--blue-bright); text-decoration:underline;
           text-underline-offset:2px; }
  .rc-g2 { display:inline-flex; align-items:center; min-height:44px; }
  .rc-cols { display:flex; gap:24px; justify-content:center; max-height:740px; overflow:hidden;
             -webkit-mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 75%,transparent);
                     mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 75%,transparent); }
  .rc-col { width:300px; flex:none; }
  .rc-track { display:flex; flex-direction:column; gap:24px; padding-bottom:24px;
              animation:rc-glide var(--rc-dur,15s) linear infinite; will-change:transform; }
  @keyframes rc-glide { to { transform:translateY(-50%); } }
  .rc-cols.paused .rc-track, .rc-cols.off .rc-track { animation-play-state:paused; }
  @media (hover:hover){ .rc-cols:hover .rc-track { animation-play-state:paused; } }
  .rc-card { position:relative; overflow:hidden; padding:40px; border-radius:12px;
             border:1px solid rgba(18,18,18,0.12); background:#fff;
             box-shadow:0 10px 30px rgba(4,74,179,0.06); }
  .rc-mark { position:absolute; right:-4%; bottom:18px; width:calc(var(--w, 110px) * 1.9); height:auto; opacity:0.07;
             pointer-events:none; user-select:none; z-index:0; }
  .rc-q, .rc-who { position:relative; z-index:1; }
  .rc-q { margin:0; font-size:15px; line-height:1.55; color:rgba(18,18,18,0.82); }
  .rc-who { display:flex; align-items:center; gap:10px; margin-top:20px; }
  .rc-logo { flex:none; width:124px; height:52px; display:grid; place-items:center; padding:8px; background:#fff;
             border:1px solid rgba(18,18,18,0.12); }
  .rc-logo img { display:block; width:calc(var(--w) * .62); height:calc(var(--h) * .62); }
  .rc-who b { display:block; font-size:14px; font-weight:500; line-height:1.25; letter-spacing:-0.01em; }
  .rc-who span:not(.rc-logo) { display:block; font-size:12.5px; color:rgba(18,18,18,0.66);
                              line-height:1.35; letter-spacing:-0.01em; }
  .rc-who .rc-tag { margin-top:3px; font-family:var(--fm); font-size:10.5px; letter-spacing:0.08em;
                    text-transform:uppercase; color:var(--blue-bright); }
  @media (min-width:1380px){
    .rc-wrap { grid-template-columns:minmax(260px,1fr) auto; }
    .rc-head { position:sticky; top:96px; }
    .rc-cols { justify-content:flex-end; }
  }
  @media (max-width:1059px){ .rc-col-3 { display:none; } }
  @media (max-width:740px){
    .rc-band { padding:80px 0 100px; }
    .rc-wrap { gap:40px; }
    .rc-col-2 { display:none; }
    .rc-col { width:100%; }
    .rc-cols { max-height:560px; }
    .rc-track { animation-duration:calc(var(--rc-dur,15s) * 2); }
    .rc-card { padding:28px 24px; }
    .rc-logo { width:104px; height:46px; }
    .rc-logo img { width:calc(var(--w) * .55); height:calc(var(--h) * .55); }
  }
  @media (prefers-reduced-motion:reduce){
    .rc-track { animation:none; will-change:auto; }
    .rc-track > [aria-hidden="true"] { display:none; }
    .rc-cols { max-height:none; -webkit-mask-image:none; mask-image:none; flex-wrap:wrap;
               align-items:flex-start; }
    .rc-col-2, .rc-col-3 { display:block; }
    .rc-pause { display:none; }
  }
  .m-tiles { padding:110px 0 130px; }
  .mt-row { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:56px; }
  .mt-card { background:var(--blue-card); border-radius:10px; padding:18px 18px 0;
             overflow:hidden; display:flex; flex-direction:column; min-height:280px; }
  .mt-card .chip { align-self:flex-start; background:#fff; color:var(--blue-bright);
                   font-family:var(--fm); font-size:10px; letter-spacing:0.10em;
                   padding:5px 9px; font-weight:500; }
  .mt-card h3 { margin:14px 0 8px; font-size:20px; font-weight:500; }
  .mt-card p { margin:0 0 16px; font-size:13px; line-height:1.55;
               color:rgba(255,255,255,0.92); flex:1; }
  .mt-fill { height:10px; margin:0 -18px; background:rgba(255,255,255,0.12);
             position:relative; }
  .mt-fill i { position:absolute; inset:0 auto 0 0; width:0%; background:var(--orange); }
  .mt-card.done .chip { background:var(--orange); color:#fff; }
  @media (max-width:960px){ .mt-row { grid-template-columns:repeat(2,1fr); } }
  @media (max-width:740px){ .mt-row { grid-template-columns:1fr; gap:12px; margin-top:40px; } .mt-card { min-height:0; }
                            .mt-card p { font-size:14px; } }
  .pi-rows { margin-top:52px; border-top:1px solid rgba(255,255,255,0.2); }
  .pi-r { display:grid; grid-template-columns:150px 220px 1fr 46px; gap:20px;
          align-items:center; padding:26px 8px; border-bottom:1px solid rgba(255,255,255,0.2);
          text-decoration:none; color:#fff; transition:background-color 150ms; }
  .pi-r { transition:background-color 150ms, opacity 700ms ease,
          transform 700ms cubic-bezier(0.22,0.61,0.2,1); }
  .pi-r:hover { background:rgba(255,255,255,0.06); }
  .pi-r .ix { font-family:var(--fm); font-size:12px; color:var(--orange); }
  .pi-r h3 { margin:0; font-size:clamp(28px,2.6vw,38px); font-weight:500; line-height:1.1; }
  .pi-r p { margin:0; font-size:13.5px; line-height:1.5; color:rgba(255,255,255,0.75); }
  .pi-r .go { width:38px; height:38px; background:#fff; border-radius:6px;
              display:flex; align-items:center; justify-content:center; }
  .pi-r .go svg path { fill:var(--blue-bright); }
  @media (max-width:960px){ .pi-r { grid-template-columns:50px 1fr 40px; }
                            .pi-r p { display:none; } }
  .contact { position:relative; background:#fff; color:var(--blue-bright);
             padding:120px 0 150px; }
  .contact .traces-svg path.tr-dim { stroke:rgba(4,74,179,0.15); }
  .contact .traces-svg path.tr-lit { stroke:var(--blue-bright); opacity:0.95; }
  .contact .traces-svg path.tr-pulse { stroke:var(--orange); stroke-width:2; }
  .ct-lab { font-family:var(--fm); font-size:12px; letter-spacing:0.12em; fill:var(--blue-bright); }
  .tflow { padding:96px 0 40px; }
  .tf-intro { max-width:var(--wrap); margin:0 auto 64px; padding:0 24px; }
  .tf-card { position:sticky; top:88px; display:grid; grid-template-columns:1fr 1.15fr;
             min-height:33rem; background:#fff; color:#0e1e46; border-radius:12px;
             overflow:hidden; margin:0 24px 10vh;
             box-shadow:0 -10px 34px rgba(2,16,50,0.28); }
  @media (min-width:1448px){ .tf-card { margin-left:auto; margin-right:auto; max-width:var(--wrap); } }
  .tf-card:last-of-type { margin-bottom:60px; }
  .tf-copy { padding:46px 44px; display:flex; flex-direction:column; justify-content:flex-start; }
  .tf-counter { align-self:flex-start; border:1px solid var(--orange); color:var(--orange);
                background:linear-gradient(180deg,#fff,rgba(251,74,2,0.10));
                font-family:var(--fm); font-size:12px; letter-spacing:2px;
                padding:5px 12px; }
  .tf-copy h3 { margin:22px 0 14px; font-size:clamp(28px,2.6vw,38px); line-height:1.1;
                letter-spacing:-0.012em; font-weight:500; }
  .tf-copy p { margin:0; font-size:15px; line-height:1.6; color:#5a6379; max-width:46ch; }
  .tf-shot { background:#F1F4FA; display:flex; align-items:center; justify-content:center;
             padding:34px; }
  .win { width:100%; max-width:530px; background:#fff; border:1px solid #dfe3ee;
         border-radius:8px; box-shadow:0 10px 28px rgba(2,16,50,0.10); overflow:hidden; }
  .win-bar { display:flex; gap:6px; padding:11px 13px; border-bottom:1px solid #e7eaf3; }
  .win-bar i { width:9px; height:9px; border-radius:50%; background:#d7dcea; }
  .wh { display:flex; justify-content:space-between; padding:12px 16px;
        font-family:var(--fm); font-size:10px; letter-spacing:0.10em; color:#5a6379;
        border-bottom:1px solid #eef1f8; }
  .wrow { display:flex; justify-content:space-between; align-items:center; gap:12px;
          padding:12px 16px; border-bottom:1px solid #f1f3fa; font-size:13.5px; }
  .wrow:last-child { border-bottom:0; }
  .wchip { font-family:var(--fm); font-size:9.5px; letter-spacing:0.08em; padding:4px 8px;
           background:rgba(4,74,179,0.08); color:var(--blue); white-space:nowrap; }
  .wchip.o { background:rgba(251,74,2,0.10); color:var(--orange); }
  .wfoot { padding:11px 16px; font-family:var(--fm); font-size:10px; letter-spacing:0.10em;
           color:#8a90a5; background:#fafbfe; }
  .bubwrap { padding:18px 16px; display:flex; flex-direction:column; gap:12px; }
  .bub { max-width:85%; padding:12px 14px; border-radius:10px; background:#eef1f8;
         font-size:13.5px; line-height:1.5; }
  .bub.me { align-self:flex-end; background:var(--blue); color:#fff; }
  .bub .who { font-family:var(--fm); font-size:9px; letter-spacing:0.10em; display:block;
              margin-bottom:5px; opacity:0.75; }
  .tc-band { background:var(--blue); color:#fff; padding:18px 16px; display:flex;
             justify-content:space-between; align-items:center; gap:10px; }
  .tc-band b { font-family:var(--fm); font-size:11px; letter-spacing:0.12em; font-weight:500; }
  .tc-req { background:var(--orange); color:#fff; font-size:12.5px; font-weight:500;
            padding:9px 14px; }
  .tc-chips { display:flex; flex-wrap:wrap; gap:8px; padding:16px; }
  .tc-chips span { border:1px solid #dfe3ee; font-family:var(--fm); font-size:10px;
                   letter-spacing:0.08em; padding:6px 10px; color:#0e1e46; }
  .rep-cover { padding:30px 24px 24px; position:relative; }
  .rep-cover .tag { position:absolute; top:14px; right:14px; font-family:var(--fm);
                    font-size:9px; letter-spacing:0.10em; color:var(--orange);
                    border:1px solid var(--orange); padding:3px 7px; }
  .rep-cover .k { font-family:var(--fm); font-size:10px; letter-spacing:0.12em; color:#8a90a5; }
  .rep-cover h4 { margin:10px 0 22px; font-size:24px; line-height:1.2; font-weight:500; }
  .rep-meta { border-top:1px solid #eef1f8; }
  .rep-meta div { display:flex; justify-content:space-between; padding:10px 0;
                  border-bottom:1px solid #eef1f8; font-family:var(--fm); font-size:10.5px;
                  letter-spacing:0.06em; color:#5a6379; }
  @media (max-width:960px){
    .tf-card { grid-template-columns:1fr; position:static; min-height:auto; margin-bottom:24px; }
    .tf-shot { padding:22px; }
  }
  .team { padding:96px 0 120px; }
  .team-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:52px; }
  .tm-card { background:rgba(255,255,255,0.10); border:1px solid rgba(255,255,255,0.14);
             padding:26px 24px; }
  .tm-card .mono-sq { width:56px; height:56px; border:1px solid rgba(255,255,255,0.5);
             display:flex; align-items:center; justify-content:center; font-family:var(--fm);
             font-size:16px; letter-spacing:0.05em; margin-bottom:18px; }
  .tm-card .nm { font-size:18px; font-weight:500; }
  .tm-card .rl { font-family:var(--fm); font-size:10px; letter-spacing:0.12em;
                 color:rgba(255,255,255,0.7); margin:6px 0 12px; text-transform:uppercase; }
  .tm-card p { margin:0; font-size:13.5px; line-height:1.55; color:rgba(255,255,255,0.85); }
  .team .note { margin-top:16px; font-family:var(--fm); font-size:10px; letter-spacing:0.10em;
                color:rgba(255,255,255,0.7); }
  @media (max-width:960px){ .team-grid { grid-template-columns:1fr; } }
  .ghost { background:#121212; overflow:hidden; padding:40px 0 0;
           border-top:1px solid rgba(255,255,255,0.06); }
  .ghost span { display:block; text-align:center; white-space:nowrap;
                font-size:clamp(64px,15.5vw,240px); line-height:0.9; font-weight:500;
                letter-spacing:-0.03em;
                background:linear-gradient(180deg,rgba(255,255,255,0.13),rgba(255,255,255,0));
                -webkit-background-clip:text; background-clip:text; color:transparent;
                padding-bottom:0.14em; user-select:none; }
  .cl-card.logo { background:rgba(255,255,255,0.06); }
  .cl-card.logo img { max-height:44px; max-width:72%; object-fit:contain; }
  img[data-logo] { filter:brightness(0) invert(1); opacity:0.9; }
  img[data-logo].noblend { filter:none; opacity:1; }
  .cl-card.logo:has(.noblend), .mo-c.logo:has(.noblend), .lg-chip:has(.noblend) { background:#fff; }
  .gal-track, .card, .tf-card { will-change:transform; transform:translateZ(0); }
  .foot { background:#121212; color:rgba(255,255,255,0.7); font-family:var(--fm);
          font-size:11px; letter-spacing:0.08em; }
  .foot .wrapx { display:flex; flex-wrap:wrap; gap:8px 40px; justify-content:space-between;
                 padding:28px 24px 40px; }
  .hero-funnel { display:none; }
  body[data-inst="shop"] .hero-funnel { display:block; position:absolute;
                left:0; right:0; top:545px; height:700px; z-index:1; }
  body[data-inst="shop"] .hero { background:var(--surface); height:1245px; }
  body[data-inst="shop"] .hero-inner { inset:clamp(150px,19vh,220px) 0 auto 0;
                padding-bottom:0; grid-template-columns:1fr; justify-items:center;
                text-align:center; align-items:start; z-index:3; }
  body[data-inst="shop"] .hero-copy2 { max-width:1000px; }
  body[data-inst="shop"] .hero-copy2 h1 { font-size:clamp(50px,6.7vw,106px); font-weight:400;
                margin:0 0 24px; letter-spacing:-0.015em; line-height:0.98; }
  body[data-inst="shop"] .hero-copy2 .sub { margin:0 auto 20px; max-width:54ch; }
  body[data-inst="shop"] .hero-cta, body[data-inst="shop"] .hero-facts { justify-content:center; }
  body[data-inst="shop"] .hero-facts { border-top:none; padding-top:0; margin-top:34px;
                text-align:center; }
  body[data-inst="shop"] .hero-facts span { align-items:center; }
  body[data-inst="shop"] .hero-copy2 h1 .rmask { overflow:visible; }
  @media (max-width:740px){
    .hero-funnel .fn-card { width:250px; height:54px; }
    .hero-funnel .fn-card .face { gap:9px; padding:0 12px; }
    .hero-funnel .fn-card .t { font-size:12.5px; }
    .hero-funnel .fn-card .ic { width:27px; height:27px; }
    .fn-card .st, .fn-card .dv { display:none; }
    .fn-card .face::after { box-shadow:0 3px 8px rgba(2,18,56,0.22); }
    #ct-svg { display:none; }
  }
  .fn-stage { position:absolute; inset:0; z-index:1; }
  .fn-layout { position:absolute; left:-30%; right:-4%; top:112px;
               container-type:inline-size; }
  .fn-track { display:flex; flex:none; align-items:center; }
  .fn-list { display:flex; flex:none; gap:12px; padding-right:12px;
             min-width:100cqw; justify-content:space-around; }
  .fn-card { flex:none; position:relative; width:clamp(178px,19.2vw,268px); height:clamp(44px,4.1vw,60px);
             will-change:transform; }
  .fn-card .face { position:absolute; inset:0; display:flex; align-items:center;
                   gap:13px; padding:0 16px; border-radius:13px; }
  .fn-card .face { background:#fff; }
  .fn-card .face::after { content:""; position:absolute; inset:0; z-index:-1;
                        border-radius:13px;
                        box-shadow:0 14px 30px rgba(2,18,56,0.30); }
  .fn-card .face.done { clip-path:inset(0 0 0 101%); }
  .fn-card .ic { flex:none; width:clamp(24px,2.65vw,38px); height:clamp(24px,2.65vw,38px); border-radius:9px; }
  .fn-card .ic img { display:block; width:100%; height:auto; }
  .face.done .ic { width:clamp(32px,3vw,44px); height:clamp(32px,3vw,44px); }
  .fn-card .bd { flex:1; min-width:0; }
  .fn-card .k  { font-family:var(--fm); font-size:clamp(10px,0.75vw,11px); letter-spacing:0.1em;
                 text-transform:uppercase; white-space:nowrap; }
  .fn-card .t  { font-size:clamp(11px,1.05vw,15px); font-weight:500; margin-top:4px;
                 line-height:1.2; letter-spacing:-0.01em; white-space:nowrap; }
  .fn-card .dv { flex:none; width:1px; align-self:stretch; margin:13px 0; }
  .fn-card .st { flex:none; font-family:var(--fm); font-size:clamp(10px,0.75vw,11px); letter-spacing:0.08em;
                 text-transform:uppercase; white-space:nowrap; }
  .face.done .k  { color:#0653CB; }
  .face.done .t  { color:#121212; }
  .face.done .dv { background:rgba(18,18,18,0.12); }
  .face.done .st { color:#0D7A57; }
  .face.raw .ic { display:flex; align-items:center; justify-content:center; }
  .face.raw .ic svg { width:22px; height:22px; display:block; }
  .sev-r .ic { background:#FBEFEC; }
  .sev-a .ic { background:#FAF3E2; }
  .face.raw .t  { color:#121212; }
  .face.raw .dv { background:rgba(18,18,18,0.12); }
  .sev-r .k, .sev-r .st { color:#B9331A; }
  .sev-a .k, .sev-a .st { color:#8F6400; }
  .fn-side { position:absolute; top:10px; font-family:var(--fm); font-size:15px;
             letter-spacing:0.14em; text-transform:uppercase; font-weight:700;
             color:rgba(255,255,255,0.95); z-index:5; }
  .fn-side.l { left:14%; } .fn-side.r { right:14%; }
  @media (max-width:900px) {
    body[data-inst="shop"] .hero { height:1200px; min-height:0; }
    body[data-inst="shop"] .hero-funnel { top:500px; }
  }
  .accr { padding:96px 0 120px; background:var(--ground); }
  .accr-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0;
               margin-top:48px; border-top:1px solid rgba(255,255,255,0.18);
               border-left:1px solid rgba(255,255,255,0.18); }
  .accr-c { border-right:1px solid rgba(255,255,255,0.18);
            border-bottom:1px solid rgba(255,255,255,0.18);
            padding:28px 26px 26px; min-height:168px; display:flex;
            flex-direction:column; justify-content:space-between; }
  .accr-c .v { font-size:clamp(22px,2vw,30px); font-weight:500; line-height:1.12;
               letter-spacing:-0.02em; color:#fff; }
  .accr-c .k { margin-top:14px; font-family:var(--fm); font-size:0.875rem;
               line-height:1.5; letter-spacing:0.04em; color:rgba(255,255,255,0.72); }
  .accr-c.slot { border-style:dashed; }
  .accr-c.slot .v { color:rgba(255,255,255,0.7); }
  .accr-note { margin-top:22px; font-family:var(--fm); font-size:13px;
               letter-spacing:0.05em; color:rgba(255,255,255,0.7); }
  @media (max-width:900px){ .accr-grid { grid-template-columns:1fr; } }
  .hero-copy2 h1 .rmask .rin { transform:none; transition:none; }
  .roll { display:block; overflow:hidden; height:1.4em; }
  .roll i { display:block; font-style:normal; line-height:1.4em;
            white-space:nowrap;
            transition:transform 950ms cubic-bezier(0.16,1,0.3,1);
            will-change:transform; }
  .roll i::after { content:attr(data-text); display:block; line-height:1.4em; }
  .has-roll:hover .roll i, .has-roll:focus-visible .roll i {
            transform:translateY(-1.4em); }
  .btn .a { position:relative; overflow:hidden; }
  .btn .a svg { position:relative; z-index:2;
                transition:transform 620ms cubic-bezier(0.22,1,0.36,1),
                           opacity 620ms cubic-bezier(0.22,1,0.36,1); }
  .btn .a svg.dup { position:absolute; left:50%; top:50%; z-index:1;
                    margin:-7px 0 0 -7px;
                    transform:translate(-24px,24px) scale(0.85); opacity:0; }
  .btn.has-roll:hover .a svg:not(.dup) {
                    transform:translate(24px,-24px) scale(0.85); opacity:0; }
  .btn.has-roll:hover .a svg.dup { transform:translate(0,0) scale(1); opacity:1; }
  .strip2 { background:var(--ground); padding:22px 0;
            border-top:1px solid rgba(255,255,255,0.14);
            border-bottom:1px solid rgba(255,255,255,0.14);
            display:flex; align-items:baseline; justify-content:center;
            gap:18px; flex-wrap:wrap; }
  .strip2 .lb { font-family:var(--fm); font-size:10.5px; letter-spacing:0.1em;
                text-transform:uppercase; color:rgba(255,255,255,0.7); }
  .strip2 .nm { font-size:clamp(16px,1.3vw,19px); font-weight:500;
                letter-spacing:-0.01em; color:#fff; }
  .strip2 .nm i { font-style:normal; color:rgba(255,255,255,0.45);
                  font-weight:400; padding:0 7px; }
  .stats2 { padding:88px 0 80px; }
  .stats2 .wrapx { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
  .st2 .v { font-size:clamp(38px,4.2vw,62px); font-weight:500;
            letter-spacing:-0.02em; line-height:0.95; }
  .st2 .k { margin-top:10px; font-family:var(--fm); font-size:11.5px;
            letter-spacing:0.07em; text-transform:uppercase;
            color:rgba(255,255,255,0.75); }
  .proc { padding:104px 0 112px; }
  .proc-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px;
               margin-top:48px; }
  .pstep { border-top:2px solid rgba(255,255,255,0.85); padding-top:18px; }
  .pstep .ix { font-family:var(--fm); font-size:10.5px; letter-spacing:0.12em;
               color:rgba(255,255,255,0.72); }
  .pstep .nm { margin:10px 0 8px; font-size:clamp(22px,2vw,30px); font-weight:500;
               letter-spacing:-0.015em; }
  .pstep p { margin:0; font-size:13px; line-height:1.55; color:rgba(255,255,255,0.85); }
  .proof2 { padding:96px 0 120px; background:var(--ground); }
  .proof2-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px;
                 margin-top:48px; }
  .pf2 { border:1px solid rgba(255,255,255,0.2); padding:24px 22px;
         background:var(--surface); }
  .pf2 .sec { font-family:var(--fm); font-size:10px; letter-spacing:0.1em;
              text-transform:uppercase; color:rgba(255,255,255,0.72); }
  .pf2 .met { display:block; margin:12px 0 10px; font-size:17px; font-weight:500;
              letter-spacing:-0.005em; color:var(--ok); font-family:var(--fm); }
  .pf2 p { margin:0; font-size:13.5px; line-height:1.55; color:rgba(255,255,255,0.88); }
  .pf2-note { margin-top:22px; font-family:var(--fm); font-size:11px;
              letter-spacing:0.05em; color:rgba(255,255,255,0.7); }
  .foot2 { background:var(--ground); border-top:1px solid rgba(255,255,255,0.16);
           padding:64px 0 28px; }
  .foot2-grid { display:grid; grid-template-columns:1.4fr repeat(4,1fr); gap:28px; }
  .f2-brand { font-family:var(--fm); font-weight:700; letter-spacing:0.04em;
              font-size:0.9375rem; }
  .f2-note { margin-top:12px; font-size:0.78125rem; line-height:1.6;
             color:rgba(255,255,255,0.75); max-width:26ch; }
  .f2-h { font-family:var(--fm); font-size:0.65625rem; letter-spacing:0.12em;
          text-transform:uppercase; color:rgba(255,255,255,0.7);
          margin-bottom:14px; }
  .f2-col a { display:block; color:rgba(255,255,255,0.88); text-decoration:none;
              font-size:0.8125rem; margin-bottom:9px; }
  .f2-col a:hover { color:#fff; }
  .f2-bar a { display:inline-block; }
  .f2-bar { margin-top:52px; padding-top:20px;
            border-top:1px solid rgba(255,255,255,0.14); display:flex;
            justify-content:space-between; gap:20px; flex-wrap:wrap;
            font-family:var(--fm); font-size:11px; letter-spacing:0.05em;
            color:rgba(255,255,255,0.7); }
  .f2-bar a { color:rgba(255,255,255,0.8); text-decoration:none; margin-left:18px; }
  @media (max-width:1000px){
    .stats2 .wrapx, .proc-grid { grid-template-columns:repeat(2,1fr); }
    .svc-grid, .proof2-grid { grid-template-columns:1fr; }
    .foot2-grid { grid-template-columns:1fr 1fr; }
  }
  @media (max-width:740px){
    .hero-copy2 { padding:0 20px 0; }
    .hero-copy2 h1 { font-size:clamp(40px,11.5vw,54px); }
    .hero-copy2 .sub { font-size:15px; }
    .hero-facts { gap:18px 26px; }
    .hero-facts b { font-size:24px; }
    .wrapx { padding:0 18px; }
    .fn-side { display:none; }
    .nav { padding:10px 14px; }
    .nav-brand { font-size:12.5px; letter-spacing:0.03em; }
    .nav .btn .t { padding:9px 13px; font-size:13px; }
    .nav .btn .a { display:none; }
  }
  .nav-dd { position:fixed; top:56px; left:50%; transform:translate(-50%,8px);
            visibility:hidden;
            background:#fff; color:var(--blue-bright); min-width:520px;
            box-shadow:0 24px 60px rgba(2,18,56,0.28); display:grid;
            grid-template-columns:1fr 1fr; gap:0 28px; padding:22px 26px 24px;
            opacity:0; pointer-events:none; z-index:59;
            transition:opacity 260ms cubic-bezier(0.16,1,0.3,1),
                       transform 260ms cubic-bezier(0.16,1,0.3,1); }
  .nav-dd.open { opacity:1; pointer-events:auto; transform:translate(-50%,0); visibility:visible; }
  .nav-dd .col h5 { margin:0 0 0.625rem; font-size:0.65625rem; letter-spacing:0.12em;
            text-transform:uppercase; color:rgba(11,85,220,0.55); font-weight:500; }
  .nav-dd .col a { display:block; padding:0.4375rem 0; font-size:0.90625rem; font-weight:500;
            color:var(--blue-bright); text-decoration:none; }
  .nav-dd .col a:hover { text-decoration:underline; }
  .nav-dd .all { grid-column:1/-1; margin-top:12px; padding-top:14px;
            border-top:1px solid rgba(11,85,220,0.14); font-size:13.5px; }
  @media (max-width:960px){ .nav-dd { display:none; } }
  .bk-overlay { position:fixed; inset:0; z-index:400; background:rgba(2,18,56,0.55);
            opacity:0; pointer-events:none; visibility:hidden;
            transition:opacity 280ms, visibility 280ms; }
  .bk-overlay.open { opacity:1; pointer-events:auto; visibility:visible; }
  .bk-panel { position:fixed; z-index:401; top:50%; left:50%;
            transform:translate(-50%,-46%) scale(0.97); width:min(1000px,96vw);
            max-height:calc(100vh - 32px); max-height:calc(100dvh - 32px); overflow:auto; overscroll-behavior:contain;
            background:#fff; color:#12203a;
            display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);
            opacity:0; pointer-events:none; visibility:hidden;
            transition:opacity 300ms, transform 300ms cubic-bezier(0.16,1,0.3,1),
                       visibility 300ms; }
  .bk-panel.open { opacity:1; pointer-events:auto; visibility:visible; transform:translate(-50%,-50%) scale(1); }
  .bk-left { background:var(--blue); color:#fff; padding:34px 30px; }
  .bk-left h3 { margin:0 0 14px; font-weight:400; font-size:30px; line-height:1.02;
            letter-spacing:-0.015em; }
  .bk-left p { margin:0 0 18px; font-size:14px; line-height:1.55;
            color:rgba(255,255,255,0.88); }
  .bk-left ul { margin:0; padding:0 0 0 18px; font-size:13.5px; line-height:1.9; }
  .bk-right { padding:30px; }
  .bk-right .cal-note { font-size:11.5px; letter-spacing:0.05em; color:#5a6379;
            margin-bottom:14px; }
  .bk-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:6px; }
  .bk-grid span { display:flex; align-items:center; justify-content:center;
            height:40px; font-size:13px; background:#F2F5FA; color:#33415c;
            cursor:pointer; }
  .bk-grid span.hd { background:none; color:#5a6379; font-size:10.5px;
            letter-spacing:0.08em; cursor:default; }
  .bk-grid span.on { background:var(--blue-bright); color:#fff; }
  .bk-grid span.mut { color:#9aa4b8; cursor:default; text-decoration:line-through; }
  .bk-x { position:absolute; top:14px; right:16px; width:34px; height:34px;
            background:none; border:0; cursor:pointer; font-size:20px; color:#33415c; }
  .bk-panel .bk-x { color:#fff; }
  @media (max-width:760px){ .bk-panel { grid-template-columns:1fr; } }
  .agent { position:fixed; right:22px; bottom:22px; z-index:70; }
  .agent-btn { width:58px; height:58px; border-radius:50%; border:0; cursor:pointer;
            background:#fff; color:var(--blue-bright);
            box-shadow:0 12px 30px rgba(2,18,56,0.35); display:flex;
            align-items:center; justify-content:center;
            transition:transform 240ms cubic-bezier(0.16,1,0.3,1); }
  .agent-btn:hover { transform:scale(1.07); }
  .agent-panel { position:absolute; right:0; bottom:72px; width:300px; background:#fff; visibility:hidden;
            color:#12203a; box-shadow:0 24px 60px rgba(2,18,56,0.3); padding:20px;
            opacity:0; pointer-events:none; transform:translateY(10px);
            transition:opacity 260ms, transform 260ms cubic-bezier(0.16,1,0.3,1); }
  .agent.open .agent-panel { opacity:1; pointer-events:auto; transform:none; visibility:visible; }
  .agent-panel h4 { margin:0 0 8px; font-size:16px; font-weight:500; }
  .agent-panel p { margin:0 0 14px; font-size:12.5px; line-height:1.55; color:#54627e; }
  .agent-panel a { display:block; padding:9px 0; font-size:13.5px; font-weight:500;
            color:var(--blue-bright); text-decoration:none;
            border-top:1px solid rgba(11,85,220,0.12); }
  .nav-burger { display:none; }
  @media (max-width:960px){
    .m-menu { display:flex; }
    .nav-burger { display:flex; flex-direction:column; gap:5px; width:44px; height:44px;
        align-items:center; justify-content:center; background:none; border:0;
        cursor:pointer; padding:0;
        position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); }
  }
  .nav-burger i { display:block; width:22px; height:2px; background:#fff;
      transition:transform 300ms cubic-bezier(0.16,1,0.3,1), opacity 220ms; }
  body.on-light .nav-burger i { background:var(--blue-bright); }
  body.menu-open .nav-burger i:nth-child(1){ transform:translateY(7px) rotate(45deg); }
  body.menu-open .nav-burger i:nth-child(2){ opacity:0; }
  body.menu-open .nav-burger i:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
  body.menu-open .nav-burger i { background:#fff; }
  .m-menu { position:fixed; inset:0; z-index:58; background:var(--blue);
      padding:92px 24px 36px; display:none; flex-direction:column;
      opacity:0; pointer-events:none; transform:translateY(-14px);
      transition:opacity 320ms, transform 320ms cubic-bezier(0.16,1,0.3,1); }
  body.menu-open .m-menu { opacity:1; pointer-events:auto; transform:none; }
  body.menu-open { overflow:hidden; }
  .m-menu a { color:#fff; text-decoration:none; font-size:1.8125rem; font-weight:400;
      letter-spacing:-0.01em; padding:14px 0;
      border-bottom:1px solid rgba(255,255,255,0.16); }
  .mm-foot { margin-top:auto; font-size:13px; line-height:1.7;
      color:rgba(255,255,255,0.75); }
  .fn-static { position:absolute; inset:0; z-index:3; }
  @media (max-width:740px){ .fn-stage { position:absolute; inset:0; z-index:3; } }
  .fs-lbl { position:absolute; top:24px; font-family:var(--fm); font-size:12px;
            letter-spacing:0.14em; text-transform:uppercase; font-weight:500;
            color:rgba(255,255,255,0.95); }
  .fs-lbl.l { left:18px; } .fs-lbl.r { right:18px; }
  .fs-slot { position:absolute; }
  .fs-slot .fn-card { position:relative; width:284px; height:58px; }
  .fs-slot .fn-card .st, .fs-slot .fn-card .dv { display:block; }
  .fs-slot.sv-done .face.done { clip-path:none !important; }
  .fs-slot.sv-done .face.raw { display:none; }
  .g0 { top:88px;  left:6px;  transform:rotate(-3deg); }
  .p0 { top:178px; right:6px; transform:rotate(2.5deg); }
  .g1 { top:258px; left:10px; transform:rotate(2deg); }
  .p1 { top:428px; right:8px; transform:rotate(-2.5deg); }
  .g2 { top:518px; left:6px;  transform:rotate(-2deg); }
  .p2 { top:608px; right:6px; transform:rotate(2deg); }
  .cta-band { border-top:1px solid rgba(255,255,255,0.18);
              border-bottom:1px solid rgba(255,255,255,0.18);
              background:rgba(255,255,255,0.04); }
  .cta-band .inner { display:flex; align-items:center; justify-content:space-between;
              gap:28px; padding-top:34px; padding-bottom:34px; flex-wrap:wrap; }
  .cta-band .t1 { font-family:var(--fm); font-size:0.75rem; letter-spacing:0.1em;
              text-transform:uppercase; color:rgba(255,255,255,0.72); }
  .cta-band .t2 { margin-top:6px; font-size:clamp(19px,1.9vw,27px); font-weight:400;
              letter-spacing:-0.01em; }
  .creds { padding:96px 0 120px; }
  .creds .pi-r { grid-template-columns:70px 1fr 260px; align-items:center; }
  .creds .pi-r .ix { color:rgba(255,255,255,0.78); }
  .creds .pi-tag { font-family:var(--fm); font-size:11px; letter-spacing:0.1em;
              color:rgba(255,255,255,0.82); }
  .creds .ar { display:none; }
  @media (max-width:900px){ .creds .pi-r { grid-template-columns:44px 1fr; }
    .creds .pi-tag, .creds .ar { display:none; } }
  .skip { position:fixed; left:-9999px; top:12px; z-index:120; background:#fff;
          color:var(--blue-bright); padding:11px 18px; font-weight:500;
          text-decoration:none; }
  .skip:focus { left:12px; }
  #ct-form .fld[aria-invalid="true"] { outline:2px solid #B9331A !important; outline-offset:1px; }
  a:focus-visible, button:focus-visible { outline:2px solid currentColor; outline-offset:3px; }
  .fn-layout { pointer-events:none; }
  @media (max-width:740px){
    .nav .btn .t { padding:13px 14px; }
    .f2-col a { padding:5px 0; margin-bottom:3px; }
  }
  html { font-size:clamp(13px, 1.1111vw, 17px); }
  body.menu-open .m-menu { display:flex; }
  .nav-pill, .nav-burger { display:none !important; }
  .nav-menu-btn { display:inline-flex; align-items:center; gap:0.625rem; background:none; border:0;
    color:#fff; font-family:var(--fd); font-size:0.875rem; font-weight:500; cursor:pointer;
    padding:0.5rem 0.25rem; letter-spacing:0.02em; }
  body.on-light .nav-menu-btn { color:var(--blue-bright); }
  .px-ic { display:grid; grid-template-columns:0.375rem 0.375rem; grid-auto-rows:0.375rem; gap:2px; }
  .px-ic b { background:currentColor; transition:transform 240ms ease; }
  .nav-menu-btn:hover .px-ic b:nth-child(1) { transform:translate(-1.5px,-1.5px); }
  .nav-menu-btn:hover .px-ic b:nth-child(2) { transform:translate(1.5px,-1.5px); }
  .nav-menu-btn:hover .px-ic b:nth-child(3) { transform:translate(-1.5px,1.5px); }
  .nav-menu-btn:hover .px-ic b:nth-child(4) { transform:translate(1.5px,1.5px); }
  .mx { position:fixed; inset:0; z-index:220; background:#121212; display:flex; flex-direction:column;
    visibility:hidden; opacity:0; transition:opacity 300ms ease, visibility 0s 300ms; }
  .mx.open { visibility:visible; opacity:1; transition:opacity 300ms ease; }
  body.mx-open { overflow:hidden; }
  .mx-bar, .mx-foot { display:flex; justify-content:space-between; align-items:center;
    padding:0.9rem max(24px, calc((100% - var(--wrap)) / 2 + 24px)); flex:0 0 auto; }
  .mx-brand { font-family:var(--fd); font-weight:700; letter-spacing:0.08em; color:#fff; font-size:1rem; }
  .mx-cap { font-family:var(--fm); font-size:0.6875rem; letter-spacing:0.14em; color:rgba(255,255,255,0.6); }
  .mx-close { min-height:44px; padding:0 16px; border:1px solid rgba(255,255,255,0.4); background:none; cursor:pointer;
    display:inline-flex; align-items:center; gap:12px; color:#fff; font-family:var(--fm); font-size:11px;
    letter-spacing:0.12em; text-transform:uppercase; transition:background .18s ease, color .18s ease; }
  .mx-close:hover, .mx-close:focus-visible { background:#fff; color:#121212; border-color:#fff; }
  .mx-brand { text-decoration:none; }
  .px-x { position:relative; width:14px; height:14px; display:block; }
  .px-x b { position:absolute; width:4px; height:4px; background:currentColor; }
  .px-x b:nth-child(1){ left:0; top:0; } .px-x b:nth-child(2){ right:0; top:0; }
  .px-x b:nth-child(3){ left:5px; top:5px; } .px-x b:nth-child(4){ left:0; bottom:0; }
  .px-x b:nth-child(5){ right:0; bottom:0; }
  .mx-close:hover .px-x b:nth-child(3){ transform:scale(1.5); }
  .mx-grid { flex:1 1 auto; display:grid; grid-template-columns:1fr 1fr; grid-auto-rows:1fr;
    gap:2px; padding:0 2px; overflow:auto; min-height:0; }
  .mx-tile { position:relative; background:linear-gradient(180deg, #0B55DC 0%, #0839A6 100%);
    padding:clamp(18px, 2.4vw, 36px); display:flex; flex-direction:column; min-height:0; }
  .mx-tag { align-self:flex-start; font-family:var(--fm); font-size:0.6875rem; letter-spacing:0.14em;
    color:#fff; background:rgba(255,255,255,0.14); padding:0.375rem 0.625rem; }
  .mx-go { position:absolute; top:clamp(18px,2.4vw,36px); right:clamp(18px,2.4vw,36px);
    width:2.125rem; height:2.125rem; background:#fff; display:grid; place-items:center; }
  .mx-go svg { width:0.875rem; height:0.875rem; fill:var(--blue-bright); transition:transform 200ms; }
  .mx-go:hover svg { transform:translate(2px,-2px); }
  .mx-tile .mx-h { font-weight:400; font-size:clamp(26px, 2.7vw, 42px); line-height:0.98;
    letter-spacing:-0.015em; color:#fff; margin:0.7em 0 0.15em; }
  .mx-tile .d { font-size:0.85rem; line-height:1.5; color:rgba(255,255,255,0.75);
    margin:0 0 1rem; max-width:44ch; }
  .mx-links { display:flex; flex-wrap:wrap; gap:0.125rem 1.375rem; margin-top:auto; }
  .mx-links a { color:#fff; text-decoration:none; font-size:0.9375rem; font-weight:500;
    padding:0.25rem 0; opacity:0.92; border-bottom:1px solid transparent; }
  .mx-links a:hover { opacity:1; border-bottom-color:rgba(255,255,255,0.7); }
  @media (max-width:900px) {
    .mx-bar, .mx-foot { padding:0.9rem 1.25rem; }
    .mx-grid { grid-template-columns:1fr; grid-auto-rows:auto; }
    .mx-tile { min-height:260px; }
    .mx-foot { gap:12px; }
    .mx-cap { display:none; }
  }
  .nav-brand { pointer-events:none; }
  .nav-menu-btn { min-height:44px; }
  .nav { pointer-events:none; }
  .nav .nav-right, .nav .nav-pill { pointer-events:auto; }
  .fn-stage { pointer-events:none; }
  .mx-links .mx-all { flex-basis:100%; margin-top:0.5rem; font-family:var(--fm);
    font-size:0.75rem; letter-spacing:0.1em; text-transform:uppercase; opacity:1;
    border-bottom:0; }
  .mx-links .mx-all:hover { color:var(--orange); }
.fn-side { display:none !important; }
.fn-card .bd { overflow:hidden; }
.fn-card .bd .k, .fn-card .bd .t { white-space:nowrap; display:block; }
.fn-card .st { flex:none; white-space:nowrap; }
.fn-card { width:clamp(300px,22vw,326px) !important; }
.fn-card .t { font-size:clamp(11px,1vw,14px) !important; }
@media (max-width:740px) {
  .hero-funnel .fn-card { width:250px !important; height:54px !important; }
  .hero-funnel .fn-card .t { font-size:12.5px !important; }
  .fs-slot .fn-card { width:284px !important; height:58px !important; }
  .fn-card .bd { overflow:visible !important; }
  .fn-card .bd .k, .fn-card .bd .t { white-space:normal !important; }
}
.face.done .st .stick { width:10px; height:10px; display:inline-block;
                        vertical-align:-1px; margin-right:4px; }
.face.done .ic { width:clamp(24px,2.65vw,38px); height:clamp(24px,2.65vw,38px);
                 display:flex; align-items:center; justify-content:center; background:#E6F4EC; }
.face.done .ic svg { width:22px; height:22px; display:block; }
.face.done .k { color:#0D7A57; }
@media (max-width:740px) { .hero-funnel .fn-card .face.done .ic { width:27px; height:27px; } }
.sco { position:relative; overflow:hidden; padding:96px 0 92px; }
.sco-head { max-width:none; }
.sco-ruled { position:relative; margin-top:clamp(44px,5vw,66px); }
.sco-rules { position:absolute; inset:0; display:grid;
             grid-template-columns:repeat(4,1fr); gap:clamp(20px,3vw,44px);
             pointer-events:none; z-index:0; }
.sco-rules span { width:1px; height:100%; background:rgba(255,255,255,0.10); }
.sco-rules span:nth-child(5) { grid-column:4; justify-self:end; }
.sco-grid { position:relative; z-index:1; display:grid;
            grid-template-columns:repeat(4,1fr); gap:clamp(20px,3vw,44px); }
.sco-c { padding-top:22px; padding-bottom:26px; }
.sco-v { font-variant-numeric:tabular-nums;
         font-size:clamp(38px,4.2vw,62px); font-weight:500;
         letter-spacing:-0.02em; line-height:0.95; }
.sco-k { margin-top:12px; font-family:var(--fm); font-size:11.5px;
         letter-spacing:0.07em; text-transform:uppercase;
         color:rgba(255,255,255,0.82); max-width:22ch; }
.sco-note { margin:clamp(40px,4vw,56px) 0 0; max-width:66ch;
            font-size:14px; line-height:1.6; color:rgba(255,255,255,0.78); }
@media (max-width:1000px) { .sco-grid { grid-template-columns:repeat(2,1fr); }
                            .sco-rules { display:none; } }
@media (max-width:560px)  { .sco-grid { grid-template-columns:1fr; } }
.gw { position:relative; }
.ghost .gw-base, .ghost .gw-lit { display:block; text-align:center; white-space:nowrap;
  font-size:clamp(64px,15.5vw,240px); line-height:0.9; font-weight:500;
  letter-spacing:-0.03em; padding-bottom:0.14em; user-select:none;
  -webkit-background-clip:text; background-clip:text; color:transparent; }
.ghost .gw-base { background-image:linear-gradient(180deg,rgba(255,255,255,0.13),rgba(255,255,255,0)); }
.ghost .gw-lit { position:absolute; inset:0; pointer-events:none; opacity:0;
  transition:opacity 420ms ease;
  background-color:rgba(255,255,255,0.62);
  background-image:url(DATA)' opacity='0.55'/%3E%3C/svg%3E");
  background-repeat:repeat; background-size:160px 160px;
  -webkit-mask-image:radial-gradient(circle 420px at -9999px -9999px, rgba(0,0,0,0.95), rgba(0,0,0,0.34) 55%, transparent 78%);
  mask-image:radial-gradient(circle 420px at -9999px -9999px, rgba(0,0,0,0.95), rgba(0,0,0,0.34) 55%, transparent 78%); }
.ghost .gw.lit .gw-lit { opacity:1; }
@media (hover:none), (max-width:900px) { .ghost .gw-lit { display:none; } }
@media (prefers-reduced-motion:reduce) { .ghost .gw-lit { display:none; } }
@media (forced-colors: active) { .ghost { display:none; } }
  .cq-bar { position:fixed; left:16px; bottom:16px; z-index:340; width:min(430px, calc(100% - 32px));
    background:#121212; color:#fff; border:1px solid rgba(255,255,255,0.22);
    padding:20px 20px 16px; display:none; }
  .cq-bar.on { display:block; }
  .cq-k { font-family:var(--fm); font-size:0.6875rem; letter-spacing:0.14em;
    color:rgba(255,255,255,0.65); }
  .cq-k::before { content:"■ "; font-size:0.5rem; vertical-align:2px; }
  .cq-bar p { margin:0.6rem 0 1rem; font-size:0.84375rem; line-height:1.55;
    color:rgba(255,255,255,0.88); }
  .cq-bar p a { color:#fff; }
  .cq-row { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
  .cq-btn { border:0; cursor:pointer; font:inherit; font-weight:500; font-size:0.84375rem; min-height:44px;
    padding:0.625rem 1rem; }
  .cq-ok { background:#fff; color:#121212; }
  .cq-yes, .cq-no { background:#fff; color:#121212; min-width:96px; }
.fn-core-slot { position:absolute; left:50%; top:calc(112px + clamp(44px,4.1vw,60px) / 2);
                width:clamp(132px,12.2vw,176px); height:clamp(132px,12.2vw,176px);
                transform:translate(-50%,-50%); z-index:4; pointer-events:none;
                will-change:transform; }
.tq-seal { display:block; width:100%; height:100%; overflow:visible; }
.tq-seal .disc { fill:var(--surface); }
.tq-seal .ring { stroke:rgba(255,255,255,0.32); stroke-width:1; }
.tq-dash { position:absolute; inset:0; width:100%; height:100%; overflow:visible; will-change:transform;
           animation:tq-orbit 2.6s linear infinite; }
.tq-dash .dash { stroke:var(--orange); stroke-width:2.6; stroke-linecap:round; stroke-dasharray:.14 .86; }
body.fn-off .tq-dash { animation-play-state:paused; }
.tq-seal .full { stroke:#fff; stroke-width:2.2; opacity:0; transition:opacity .42s ease-out; }
.fn-core-slot.hit .tq-seal .full { opacity:1; transition:opacity .06s; }
@keyframes tq-orbit { to { transform:rotate(360deg); } }
@media (max-width:740px) {
  .fn-core-slot { top:360px; width:clamp(88px,8.6vw,122px); height:clamp(88px,8.6vw,122px); }
}
@media (prefers-reduced-motion:reduce) {
  .tq-dash { animation:none; } .tq-dash .dash { stroke-dasharray:none; opacity:.55; }
  .tq-seal .full { transition:none; }
}
@media (max-width:360px) { .nav-right { gap:10px; } .nav .btn .t { padding:9px 9px; font-size:12.5px; } }
.fwc { --rule:rgba(11,85,220,.16); --ink2:rgba(18,18,18,.76); --ink3:rgba(18,18,18,.64); --hov:#E6EDFA; --fwc-bg:#F2F5FB;
       background:#F2F5FB; color:var(--black); padding:110px 0 104px; scroll-margin-top:0; }
.fwc .eyebrow { color:var(--blue-bright); }
.fwc .h2 { color:var(--black); }
.fwc-head { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); }
.fwc-hl { padding:0 40px 8px 0; border-right:1px solid var(--rule); }
.fwc-hr { padding:18px 0 8px 64px; max-width:600px; }
.fwc-hr p { margin:0 0 24px; font-size:17px; line-height:1.6; color:var(--ink2); }
.fwc-all { display:inline-flex; align-items:center; gap:8px; min-height:44px; font-size:16px; font-weight:500; color:var(--black); text-decoration:none; }
.fwc-all i { font-style:normal; transition:transform .25s; } .fwc-all:hover i { transform:translateX(3px); }
.fwc-all:hover { color:var(--blue-bright); }
.fwc-grid { list-style:none; margin:64px 0 0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
            gap:1px; background:var(--rule); border:1px solid var(--rule); }
.fwc-card { position:relative; min-width:0; display:flex; flex-direction:column; min-height:400px; padding:34px 32px 26px;
            background:var(--fwc-bg); transition:background .3s; }
.fwc-proof { margin:0 0 22px; font-family:var(--fm); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink3); }
.fwc-n { margin:0 0 16px; font-size:clamp(28px,2.4vw,36px); font-weight:400; line-height:1.05; letter-spacing:-.02em; }
.fwc-v { flex:1; margin:0; max-width:42ch; font-size:15.5px; line-height:1.6; color:var(--ink2); }
.fwc-foot { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-top:30px; }
.fwc-mark { flex:none; display:flex; align-items:flex-end; height:88px; }
.fwc-mk { flex:none; display:block; width:var(--w); height:var(--h); object-fit:contain; }
.fwc-seal { display:block; width:84px; height:84px; overflow:visible; }
.fwc-seal circle { fill:none; stroke:var(--blue-bright); }
.fwc-seal .r1 { stroke-width:2.4; } .fwc-seal .r2 { stroke-width:1.1; }
.fwc-seal .dot { fill:var(--blue-bright); stroke:none; }
.fwc-seal .rule { stroke:var(--blue-bright); stroke-width:1.1; }
.fwc-seal text { text-anchor:middle; fill:var(--blue-bright); }
.fwc-seal text.ring { font-family:var(--fm); font-size:6.6px; font-weight:600; letter-spacing:.09em; }
.fwc-seal text.a { font-family:var(--fd); font-size:21px; font-weight:600; letter-spacing:-.01em; }
.fwc-seal text.b { font-family:var(--fm); font-size:7.4px; font-weight:600; letter-spacing:.2em; }
.fwc-go { display:inline-flex; align-items:center; gap:8px; min-height:44px; margin-left:auto; font-size:16px; color:var(--black); text-decoration:none; white-space:nowrap; }
.fwc-go::after { content:""; position:absolute; inset:0; }
.fwc-go span { border-bottom:1px solid transparent; transition:border-color .25s; }
.fwc-go i { font-style:normal; transition:transform .25s; }
.fwc-more .fwc-go { color:var(--blue-bright); font-weight:500; }
.fwc-card:focus-within { outline:2px solid var(--blue-bright); outline-offset:-2px; }
.fwc-go:focus-visible { outline:none; }
@media (hover:hover) {
  .fwc-card:hover { background:var(--hov); }
  .fwc-card:hover .fwc-go span { border-bottom-color:currentColor; }
  .fwc-card:hover .fwc-go i { transform:translateX(3px); }
}
.fwc-note { margin:22px 0 0; max-width:64ch; font-size:13px; line-height:1.55; color:var(--ink3); }
.fwc ::selection { background:var(--blue-bright); color:#fff; }
.fwc.on-blue { --rule:rgba(255,255,255,.2); --ink2:rgba(255,255,255,.86); --ink3:rgba(255,255,255,.7); --hov:#0848BA; --fwc-bg:var(--ground);
               background:var(--ground); color:#fff; }
.fwc.on-blue .eyebrow, .fwc.on-blue .h2, .fwc.on-blue .fwc-all, .fwc.on-blue .fwc-go { color:#fff; }
.fwc.on-blue .fwc-mk { filter:brightness(0) invert(1); }
.fwc.on-blue .fwc-seal circle, .fwc.on-blue .fwc-seal .rule { stroke:#fff; } .fwc.on-blue .fwc-seal .dot, .fwc.on-blue .fwc-seal text { fill:#fff; }
@media (max-width:1100px) {
  .fwc-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fwc-more { grid-column:1 / -1; min-height:0; }
  .fwc-head { grid-template-columns:1fr; }
  .fwc-hl { border-right:0; padding:0 0 8px; }
  .fwc-hr { padding:18px 0 0; }
}
@media (max-width:740px) {
  .fwc { padding:88px 0 92px; }
  .fwc-grid { margin-top:40px; }
  .fwc-card { min-height:0; padding:18px 16px 14px; }
  .fwc-proof { margin:0 0 10px; font-size:9.5px; letter-spacing:.1em; line-height:1.45; }
  .fwc-n { margin:0; font-size:21px; }
  .fwc-v { display:none; }
  .fwc-foot { margin-top:16px; gap:8px; }
  .fwc-mark { height:52px; }
  .fwc-mk { width:calc(var(--w) * .6); height:calc(var(--h) * .6); }
  .fwc-seal { width:56px; height:56px; }
  .fwc-go { font-size:15px; }
  .fwc-go span { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
  .fwc-more .fwc-n { font-size:19px; }
}
@media (prefers-reduced-motion:reduce) { .fwc-card, .fwc-go i, .fwc-all i { transition:none; } }
.svd { background:#fff; color:var(--black); padding:110px 0 120px; }
.svd .eyebrow { color:var(--blue-bright); }
.svd .h2 { color:var(--black); }
.svd-key { display:flex; flex-wrap:wrap; gap:8px 22px; margin:26px 0 40px; font-family:var(--fm); font-size:11px; letter-spacing:.1em;
           text-transform:uppercase; color:rgba(18,18,18,.66); }
.svd-key span { display:flex; align-items:center; gap:8px; }
.svd-key i { width:12px; height:12px; border-radius:3px; display:block; }
.svd-key .k-off i { background:#0B55DC; } .svd-key .k-ass i { background:#044AB3; }
.svd-key .k-adv i { background:#EEF3FC; box-shadow:inset 0 0 0 1px rgba(11,85,220,.35); }
.svd-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); grid-auto-rows:minmax(160px,auto); gap:12px; }
.svd .bx { position:relative; display:flex; flex-direction:column; min-height:212px; padding:18px 20px 20px; border-radius:12px;
           overflow:hidden; text-decoration:none; transition:transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s; }
.svd .bx.off { background:#0B55DC; color:#fff; }
.svd .bx.ass { background:#044AB3; color:#fff; }
.svd .bx.adv { background:#EEF3FC; color:var(--black); box-shadow:inset 0 0 0 1px rgba(11,85,220,.18); }
.svd .bx.lead { grid-column:span 6; grid-row:span 2; }
.svd .bx.s6 { grid-column:span 6; } .svd .bx.s3 { grid-column:span 3; }
.svd .bx .chip { align-self:flex-start; font-family:var(--fm); font-size:10.5px; letter-spacing:.1em; text-transform:uppercase;
                 padding:4px 8px; border-radius:4px; background:rgba(255,255,255,.16); }
.svd .bx.adv .chip { background:rgba(11,85,220,.1); color:#044AB3; }
.svd .bx .go { position:absolute; top:12px; right:12px; width:38px; height:38px; border-radius:6px; display:grid; place-items:center;
               background:#fff; color:var(--blue-bright); transition:transform .35s cubic-bezier(.2,.7,.2,1); }
.svd .bx.adv .go { background:var(--blue-bright); color:#fff; }
.svd .bx .go svg { width:14px; height:14px; } .svd .bx .go path { fill:currentColor; }
.svd .bx svg.il { display:block; width:100%; height:120px; flex:none; margin:12px 0 8px; }
.svd .bx.lead svg.il { height:0; flex:1 1 auto; min-height:200px; }
.svd .bx svg.il path, .svd .bx svg.il rect { fill:none; stroke:rgba(255,255,255,.85); stroke-width:1.3; }
.svd .bx svg.il rect.pad { fill:rgba(255,255,255,.85); stroke:none; }
.svd .bx.adv svg.il path, .svd .bx.adv svg.il rect { stroke:#0B55DC; } .svd .bx.adv svg.il rect.pad { fill:#0B55DC; }
.svd .bx .n { margin:6px 0 6px; font-size:21px; font-weight:500; letter-spacing:-.01em; line-height:1.15; }
.svd .bx .s { margin:0; font-size:14px; line-height:1.5; max-width:52ch; color:rgba(255,255,255,.92); }
.svd .bx.adv .s { color:rgba(18,18,18,.78); }
.svd .bx .i { margin-top:12px; font-family:var(--fm); font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.74); }
.svd .bx.adv .i { color:rgba(18,18,18,.66); }
.svd .bx.lead .n { font-size:clamp(28px,2.6vw,38px); font-weight:400; letter-spacing:-.02em; }
.svd .bx.lead .s { font-size:16px; }
.svd .bx:focus-visible { outline:2px solid var(--blue-bright); outline-offset:3px; }
@media (hover:hover) {
  .svd .bx:hover { transform:translateY(-4px); box-shadow:0 18px 40px rgba(4,74,179,.18); }
  .svd .bx.adv:hover { box-shadow:inset 0 0 0 1px rgba(11,85,220,.3), 0 18px 40px rgba(4,74,179,.12); }
  .svd .bx:hover .go { transform:translate(2px,-2px); }
}
@media (max-width:1100px) {
  .svd .bx.lead { grid-column:span 12; grid-row:auto; } .svd .bx.s6 { grid-column:span 12; } .svd .bx.s3 { grid-column:span 6; }
  .svd .bx.lead svg.il { height:230px; flex:none; min-height:0; }
}
@media (max-width:740px) {
  .svd { padding:88px 0 96px; }
  .svd-key { margin:20px 0 28px; }
  .svd .bx.s3, .svd .bx.s6 { grid-column:span 12; }
  .svd .bx { min-height:0; padding:16px 18px 18px; }
  .svd .bx:not(.lead) svg.il { display:none; }
  .svd .bx:not(.lead) .n { margin-top:14px; padding-right:48px; }
  .svd .bx.lead svg.il { height:150px; }
}
@media (prefers-reduced-motion:reduce) { .svd .bx, .svd .bx .go { transition:none; } .svd .bx:hover { transform:none; } }
.fn-spout { position:absolute; inset:0; z-index:2; pointer-events:none; will-change:transform; }
.fn-spout svg { display:block; width:100%; height:100%;
                -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 130px);
                mask-image:linear-gradient(to bottom,transparent 0,#000 130px); }
@media (max-width:900px){ .fn-spout svg { width:150%; margin-left:-25%; } }
@media (max-width:740px){ .fn-spout svg { width:240%; margin-left:-70%; }
                          .p-halo, .p-feather { display:none; }
                          .fn-spout svg { -webkit-mask-image:none; mask-image:none; } }
.fn-spout { transform:none; }
@media (min-width:741px) {
  .fn-spout svg {
    -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 28px) !important;
            mask-image:linear-gradient(to bottom,transparent 0,#000 28px) !important;
  }
}
@media (max-width:740px) { .fn-spout { transform:none !important; } }
@media (max-width:740px) { body[data-inst="shop"] .hero-funnel { height:920px; } body[data-inst="shop"] .hero { height:1420px; } }
.approach { padding:110px 0 120px; background:var(--surface); color:#fff; }
.approach .eyebrow { color:#fff; } .approach .h2 { color:#fff; margin-bottom:34px; }
.ap-grid { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:48px 72px; align-items:start; }
.ap-body { font-size:17px; line-height:1.55; color:rgba(255,255,255,.9); margin:0 0 18px; max-width:52ch; }
.ap-left .btn { margin-top:14px; }
.ap-rows { border-top:1px solid rgba(255,255,255,.3); }
.ap-row { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:0 36px; align-items:start; padding:26px 0; border-bottom:1px solid rgba(255,255,255,.18); }
.ap-plate { height:108px; overflow:hidden; opacity:.4; filter:grayscale(.55); transition:height .5s cubic-bezier(.2,.7,.2,1), opacity .35s, filter .35s; }
.ap-row.on .ap-plate { height:440px; opacity:1; filter:none; }
.ap-row:not(.on) .ap-plate { cursor:pointer; }
@media (hover:hover) { .ap-row:not(.on) .ap-plate:hover { opacity:.62; filter:grayscale(.25); } }
.ap-plate picture, .ap-plate img { display:block; width:100%; height:100%; object-fit:cover; }
.ap-h3 { margin:0; font:inherit; }
.ap-h { width:100%; display:grid; gap:12px; padding:2px 0 0; background:none; border:0; color:#fff; font-family:var(--fd); text-align:left; cursor:pointer; }
.ap-h:focus-visible { outline:2px solid #fff; outline-offset:4px; }
.ap-k { font-size:15px; color:rgba(255,255,255,.7); display:flex; align-items:center; gap:10px; }
.ap-k::before { content:""; width:9px; height:9px; border:1px solid currentColor; transform:rotate(45deg); }
.ap-row.on .ap-k { color:#fff; }
.ap-t { font-size:clamp(24px,2.2vw,32px); line-height:1.15; letter-spacing:-.015em; font-weight:500; color:rgba(255,255,255,.78); transition:color .25s; }
.ap-row.on .ap-t { color:#fff; }
@media (hover:hover) { .ap-h:hover .ap-t { color:#fff; } }
.ap-b { display:grid; grid-template-rows:0fr; transition:grid-template-rows .45s cubic-bezier(.2,.7,.2,1); }
.ap-row.on .ap-b { grid-template-rows:1fr; }
.ap-b > div { overflow:hidden; visibility:hidden; transition:visibility 0s .45s; }
.ap-row.on .ap-b > div { visibility:visible; transition-delay:0s; }
.ap-b p { margin:18px 0 0; font-size:16px; line-height:1.6; color:rgba(255,255,255,.88); max-width:48ch; }
@media (max-width:1100px) { .ap-grid { grid-template-columns:1fr; } .ap-body { max-width:64ch; } }
@media (max-width:740px) {
  .ap-row { grid-template-columns:1fr; gap:16px 0; padding:20px 0; }
  .ap-plate { height:72px; } .ap-row.on .ap-plate { height:260px; }
}
@media (prefers-reduced-motion:reduce) { .ap-plate, .ap-b, .ap-b > div, .ap-t { transition:none; } }
.resources { padding:110px 0 120px; background:var(--ground); color:#fff; overflow:hidden; }
.resources .eyebrow { color:#fff; justify-content:center; }
.resources .h2 { color:#fff; text-align:center; margin-bottom:22px; }
.rs-head { text-align:center; display:flex; flex-direction:column; align-items:center; }
.rs-lede { max-width:52ch; margin:0 0 26px; font-size:17px; line-height:1.55; color:rgba(255,255,255,.88); }
.rs-strip { display:flex; gap:28px; margin-top:64px; padding:0 max(24px, calc((100% - var(--wrap)) / 2 + 24px)) 12px;
            scroll-padding-inline:max(24px, calc((100% - var(--wrap)) / 2 + 24px));
            overflow-x:auto; scroll-snap-type:x proximity; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.rs-strip::-webkit-scrollbar { display:none; }
.rs-nav { display:flex; justify-content:flex-end; gap:10px; margin-top:34px; }
.rs-btn { width:48px; height:48px; border:1px solid rgba(255,255,255,.4); background:none; color:#fff; font-family:var(--fd); font-size:20px; cursor:pointer; transition:border-color .2s, background-color .2s; }
.rs-btn:hover { border-color:#fff; background:rgba(255,255,255,.08); }
.rs-btn:focus-visible { outline:2px solid #fff; outline-offset:2px; }
.rs-btn[aria-disabled="true"] { opacity:.35; cursor:default; }
.rs-strip { margin-top:22px !important; }
.rs-card { flex:0 0 440px; scroll-snap-align:start; color:#fff; text-decoration:none; display:flex; flex-direction:column; }
.rs-card:focus-visible { outline:2px solid #fff; outline-offset:4px; }
.rs-cover { position:relative; height:340px; background:var(--navy-2); display:grid; place-items:center; padding:38px 34px; }
.rs-cover::before { content:""; position:absolute; inset:0; background:
  linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px) 0 0 / 100% 34px,
  linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px) 0 0 / 34px 100%; pointer-events:none; }
.rs-cover::after { content:""; position:absolute; left:50%; bottom:0; width:24px; height:24px; background:var(--ground); transform:translate(-50%,50%) rotate(45deg); }
.rs-sheet { position:relative; width:100%; max-width:250px; background:#fff; color:var(--black); padding:20px 18px 18px; display:flex; flex-direction:column; gap:18px; box-shadow:0 18px 40px rgba(2,18,56,.35); transition:transform .4s cubic-bezier(.2,.7,.2,1); }
.rs-st { font-size:19px; line-height:1.15; font-weight:500; letter-spacing:-.01em; }
.rs-g { display:flex; gap:8px; align-items:flex-end; height:64px; }
.rs-check { flex-direction:column; align-items:stretch; justify-content:flex-end; gap:8px; }
.rs-check span { height:9px; background:rgba(18,18,18,.18); position:relative; }
.rs-check span::before { content:""; position:absolute; left:0; top:0; bottom:0; width:9px; background:var(--ok); }
.rs-bars span { flex:1; height:var(--h); background:var(--navy-2); position:relative; }
.rs-bars span::after { content:""; position:absolute; left:50%; top:0; width:14px; height:14px; border-radius:50%; background:var(--ok); transform:translate(-50%,-50%); }
.rs-form { flex-direction:column; align-items:stretch; justify-content:flex-end; gap:9px; }
.rs-form span { height:8px; background:rgba(18,18,18,.16); width:100%; } .rs-form span.w { width:62%; }
.rs-doc { flex-direction:column; align-items:stretch; justify-content:flex-end; gap:7px; }
.rs-doc span { height:6px; background:rgba(18,18,18,.16); } .rs-doc span.h { height:12px; width:56%; background:var(--navy-2); } .rs-doc span.s { width:78%; }
.rs-rings { justify-content:center; align-items:center; }
.rs-rings span { position:absolute; border:1px solid var(--navy-2); border-radius:50%; }
.rs-rings { position:relative; } .rs-rings span:nth-child(1) { width:24px; height:24px; background:var(--blue-bright); border:0; }
.rs-rings span:nth-child(2) { width:46px; height:46px; } .rs-rings span:nth-child(3) { width:64px; height:64px; opacity:.55; }
.rs-meta { padding:30px 4px 0; display:flex; flex-direction:column; gap:14px; flex:1; }
.rs-kicker { font-family:var(--fm); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.72); display:flex; align-items:center; gap:10px; }
.rs-kicker::before { content:""; width:7px; height:7px; background:currentColor; transform:rotate(45deg); }
.rs-title { margin:0; font-size:24px; line-height:1.2; letter-spacing:-.015em; font-weight:500; }
.rs-more { margin-top:auto; padding-top:16px; display:flex; justify-content:space-between; align-items:center; font-size:15px; border-top:1px solid rgba(255,255,255,.18); }
.rs-arrow { transition:transform .3s; }
@media (hover:hover) { .rs-card:hover .rs-sheet { transform:translateY(-6px); } .rs-card:hover .rs-arrow { transform:translateX(6px); } }
@media (max-width:740px) { .resources { padding:80px 0 90px; } .rs-strip { gap:16px; margin-top:44px; padding:0 18px 12px; scroll-padding-inline:18px; scroll-snap-type:x mandatory; } .rs-card { flex-basis:300px; } .rs-cover { height:280px; padding:28px 24px; } .rs-sheet { max-width:220px; } .rs-title { font-size:20px; } }
@media (prefers-reduced-motion:reduce) { .rs-sheet, .rs-arrow { transition:none; } }
.proof-cols { display:block; }
.clients.lw { position:relative; padding:110px 0 120px; background:var(--surface); color:#fff; overflow:hidden; }
.clients.lw .eyebrow { color:#fff; }
.clients.lw .h2 { color:#fff; margin-bottom:14px; }
.lw-lede { max-width:56ch; font-size:17px; line-height:1.55; color:rgba(255,255,255,.85); margin:0; }
.lw-wall { position:relative; margin-top:56px; display:grid; gap:14px; }
.lw-wall::before, .lw-wall::after { content:""; position:absolute; top:0; bottom:0; width:12%; z-index:2; pointer-events:none; }
.lw-wall::before { left:0;  background:linear-gradient(90deg, var(--surface), rgba(4,74,179,0)); }
.lw-wall::after  { right:0; background:linear-gradient(270deg, var(--surface), rgba(4,74,179,0)); }
.lw-row { display:flex; overflow:hidden; }
.lw-track { display:flex; flex:0 0 auto; list-style:none; margin:0; padding:0; will-change:transform; animation:lw-glide var(--lw-dur, 46s) linear infinite; }
.lw-row.rev .lw-track { animation-direction:reverse; }
.lw-wall.paused .lw-track { animation-play-state:paused; }
.lw-pause { margin-top:20px; background:none; border:1px solid rgba(255,255,255,.4); color:#fff; font-family:var(--fm); font-size:11px; letter-spacing:.1em; text-transform:uppercase; padding:11px 14px; cursor:pointer; min-height:44px; }
.lw-pause[aria-pressed="true"] { background:#fff; color:var(--surface); }
@media (hover:hover) { .lw-row:hover .lw-track { animation-play-state:paused; } }
.lw-row:focus-within .lw-track, .lw-wall.off .lw-track { animation-play-state:paused; }
.lw-row:focus-visible { outline:2px solid #fff; outline-offset:2px; }
@keyframes lw-glide { to { transform:translateX(-100%); } }
.lw-tile { flex:0 0 auto; width:224px; height:96px; margin-right:14px; background:rgba(255,255,255,.08); display:grid; place-items:center; padding:16px 18px; }
.lw-tile img { width:var(--w); height:var(--h); display:block; }
@media (max-width:740px) { .clients.lw { padding:80px 0 90px; } .lw-wall { margin-top:36px; } .lw-tile { width:172px; height:78px; margin-right:10px; padding:14px 18px; } .lw-tile img { width:calc(var(--w) * .8); height:calc(var(--h) * .8); } .lw-track { animation-duration:calc(var(--lw-dur, 46s) * .76); } }
@media (prefers-reduced-motion:reduce) {
  .lw-row { overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; scrollbar-width:thin; padding:0 24px 6px; }
  .lw-track { animation:none; will-change:auto; }
  .lw-track[aria-hidden="true"], .lw-wall::before, .lw-wall::after, .lw-pause { display:none; }
}
.foot2-grid { grid-template-columns:1.3fr repeat(5, minmax(0,1fr)); gap:28px 24px; }
.foot2 .f2-note a { color:inherit; text-decoration:none; }
.foot2 .f2-note a:hover { text-decoration:underline; }
.foot2 .f2-note { max-width:none; }
@media (max-width:1100px) { .foot2-grid { grid-template-columns:1.3fr repeat(3, minmax(0,1fr)); } }
@media (max-width:1000px) { .foot2-grid { grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width:740px) {
  .foot2-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); } .foot2-grid a { font-size:13px; }
  .foot2-grid .roll { height:auto; } .foot2-grid .roll i { white-space:normal; transition:none; } .foot2-grid .roll i::after { display:none; }
}
.ct-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.12fr); gap:44px; align-items:start; }
.ct-left { min-width:0; }
.ct-left h2 { margin:12px 0 12px; font-size:clamp(36px,4.3vw,68px); line-height:.96; letter-spacing:-.015em; font-weight:400; }
.ct-lede { margin:0 0 18px; max-width:none; font-size:15px; line-height:1.6; color:rgba(18,18,18,.82); }
.ct-lede .ct-jump { display:inline-block; padding:10px 0; margin:-10px 0; color:var(--blue-bright); font-weight:500;
                    text-decoration:underline; text-decoration-thickness:1.5px; text-underline-offset:4px; }
.ct-form { display:block; }
.ct-plate { border:1px solid rgba(4,74,179,.22); background:#fff; padding:24px; }
.ct-ph { margin:0 0 14px; font-size:22px; line-height:1.15; font-weight:500; letter-spacing:-.01em; color:var(--blue-bright); }
.fgroup { display:grid; gap:10px; }
.fgroup + .fgroup { margin-top:14px; }
.fstep { display:flex; align-items:baseline; gap:10px; margin-bottom:0; font-size:14px; font-weight:500; color:var(--navy); }
.fstep .fno { font-family:var(--fm); font-size:11px; letter-spacing:.14em; color:var(--blue-bright); }
.frow { display:grid; grid-template-columns:1fr 1fr; gap:10px 12px; margin:0; }
.fcell { display:grid; gap:6px; align-content:start; min-width:0; }
.flab { display:flex; align-items:baseline; gap:6px; font-family:var(--fm); font-size:11px; letter-spacing:.12em;
        text-transform:uppercase; font-weight:500; color:var(--blue-bright); }
.flab b { font-weight:500; color:#B9331A; }
.flab i { font-style:normal; text-transform:none; letter-spacing:.04em; font-size:11.5px; color:rgba(18,18,18,.6); }
.fld { background:var(--navy); border:0; color:#fff; padding:12px 14px; font-size:14px; line-height:1.5;
       font-family:var(--fd); width:100%; border-radius:2px; min-height:45px; }
.fld::placeholder { color:rgba(255,255,255,.66); }
.fld:focus-visible { outline:2px solid var(--orange); outline-offset:1px; }
textarea.fld { display:block; min-height:84px; resize:vertical; }
.ferr { display:none; font-size:13px; line-height:1.4; font-weight:500; color:#B9331A; }
.ferr.on { display:block; }
#ct-form .fld, #ct-form .psel-ctl, #ct-form .pchk, #ct-cal { scroll-margin-top:96px; }
.hp { position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }
.psel { position:relative; }
.psel-ctl { display:flex; flex-wrap:wrap; align-items:center; gap:6px; padding:7px 10px 7px 14px; cursor:pointer; }
.psel-ctl:focus-within { outline:2px solid var(--blue-bright); outline-offset:1px; }
.psel-tags { display:contents; }
.ptag { display:inline-flex; align-items:center; gap:2px; height:30px; padding:0 0 0 10px; background:#fff; color:var(--navy);
        font-size:13px; font-weight:500; line-height:1; border-radius:2px; }
.ptag-x { width:30px; height:30px; display:grid; place-items:center; background:none; border:0; padding:0; cursor:pointer;
          color:var(--navy); font-size:18px; line-height:1; border-radius:2px; }
.ptag-x:focus-visible { outline:2px solid var(--orange); outline-offset:-2px; }
.psel-btn { flex:1 1 150px; min-width:0; min-height:30px; display:flex; align-items:center; justify-content:space-between; gap:10px;
            background:none; border:0; padding:0; color:#fff; font:inherit; font-size:14px; text-align:left; cursor:pointer; }
.psel-btn:focus-visible { outline:none; }
.psel-ph { color:rgba(255,255,255,.72); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.psel-chev { width:14px; height:14px; flex:0 0 auto; fill:none; stroke:#fff; stroke-width:1.8; stroke-linecap:square; transition:transform 180ms; }
.psel.open .psel-chev { transform:rotate(180deg); }
.psel-panel { border:1px solid rgba(4,74,179,.35); border-top:0; background:#fff; padding:12px 14px; display:grid; gap:10px; }
.psel-panel[hidden] { display:none; }
.psel-hint { margin:0; font-size:13.5px; line-height:1.5; color:rgba(18,18,18,.74); }
.psel-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 10px; }
.pchk { position:relative; display:flex; align-items:center; gap:10px; min-height:40px; padding:4px 8px; margin:0 -8px; cursor:pointer;
        color:var(--navy); font-size:14px; font-weight:500; line-height:1.3; border-radius:2px; }
.pchk input { position:absolute; opacity:0; width:1px; height:1px; margin:0; pointer-events:none; }
.pbox { width:14px; height:14px; flex:0 0 auto; border:1px solid var(--navy); background:#fff; display:grid; place-items:center;
        border-radius:1px; transition:background-color 120ms; }
.pbox::after { content:""; width:8px; height:4px; border:2px solid #fff; border-top:0; border-right:0; transform:translateY(-1px) rotate(-45deg); opacity:0; }
.pchk input:checked ~ .pbox { background:var(--navy); }
.pchk input:checked ~ .pbox::after { opacity:1; }
.pchk.on { background:rgba(4,74,179,.07); }
.pchk input:focus-visible ~ .pbox { outline:2px solid var(--blue-bright); outline-offset:2px; }
.psel-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid rgba(4,74,179,.14); padding-top:10px; }
.psel-count { font-family:var(--fm); font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--blue-bright); }
.psel-done { min-height:44px; padding:0 18px; background:var(--navy); color:#fff; border:0; font:inherit; font-size:14px; font-weight:500;
             cursor:pointer; border-radius:2px; }
.psel-done:focus-visible { outline:2px solid var(--orange); outline-offset:2px; }
@media (hover:hover) {
  .pchk:hover { background:rgba(4,74,179,.06); }
  .ptag-x:hover { background:rgba(4,74,179,.1); }
  .psel-done:hover { background:var(--navy-2); }
}
.ct-sum { font-size:14px; line-height:1.5; min-height:22px; color:rgba(18,18,18,.82); }
.ct-sum b { font-weight:500; color:var(--navy); }
.ct-sum-pick { background:none; border:0; padding:12px 0; margin:-12px 0; font:inherit; font-size:14px; font-weight:500;
               color:var(--blue-bright); text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.fsend { display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin:0; }
.fsend .btn { max-width:100%; }
.f-consent { margin:0; font-size:12.5px; line-height:1.5; color:rgba(18,18,18,.66); }
.f-consent a { color:var(--blue-bright); display:inline-block; padding:13px 0; margin:-13px 0; }
.f-note { margin-top:10px; min-height:0; font-family:var(--fd); font-size:13px; letter-spacing:0; color:var(--blue-bright); }
.f-note:empty { display:none; }
.f-note.ok { color:#0D7A57; font-weight:500; }
.f-note.err { color:#B9331A; font-weight:500; }
.ct-thanks { padding:26px 24px; border:1px solid rgba(4,74,179,.25); background:#fff; display:grid; gap:12px; }
.ct-thanks b { font-size:22px; font-weight:500; color:var(--blue-bright); }
.ct-thanks span { font-size:15px; line-height:1.55; color:rgba(18,18,18,.82); }
.ct-thanks span strong { font-weight:500; color:var(--navy); }
.ct-thanks .btn { width:fit-content; margin-top:6px; }
.contact .btn { min-height:44px; } .contact .btn .t { display:flex; align-items:center; }
.ct-row { display:flex; flex-wrap:wrap; gap:6px 32px; margin:0 0 24px; }
.ct-row a { display:inline-flex; flex-direction:column; justify-content:center; gap:3px; min-height:44px; padding:4px 0;
            color:var(--navy); text-decoration:none; font-size:19px; font-weight:500; letter-spacing:-.01em; line-height:1.1; }
.ct-row a:hover { text-decoration:underline; text-decoration-thickness:1.5px; text-underline-offset:5px; }
.ct-row .ct-bk { font-family:var(--fm); font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; font-weight:500; color:var(--blue-bright); }
.ct-book { border:1px solid rgba(4,74,179,.22); background:#fff; min-width:0; }
.ct-book-h { padding:22px 24px 20px; display:grid; gap:10px; border-bottom:1px solid rgba(4,74,179,.14); }
.ct-book-k { font-family:var(--fm); font-size:11px; letter-spacing:.14em; text-transform:uppercase; font-weight:500; color:var(--blue-bright); }
.ct-book-h b { font-size:20px; line-height:1.2; font-weight:500; color:var(--blue-bright); }
.ct-book-h > span:not(.ct-book-k) { font-size:15px; line-height:1.55; color:rgba(18,18,18,.82); }
.ct-pick { display:none; width:fit-content; margin-top:4px; }
.ct-cal { position:relative; height:660px; min-width:0; background:#fff; }
.ct-cal-host { position:absolute; inset:0; }
@media (min-width:1101px) { .ct-cal-host { max-width:647px; margin:0 auto; } }
@media (min-width:1751px) { .ct-grid { grid-template-columns:minmax(0,1fr) min(763px, calc((100% - 44px) * 1.12 / 2.12)); } }
.cal-fb { position:absolute; inset:0; display:grid; align-content:center; justify-items:center; gap:10px; padding:24px; text-align:center; background:#fff; }
.cf-k { font-family:var(--fm); font-size:11px; letter-spacing:.14em; font-weight:500; color:var(--blue-bright); }
.cal-fb p, .bk-fb p { margin:0; max-width:34ch; font-size:15px; line-height:1.5; color:rgba(18,18,18,.82); }
.cf-btn { display:inline-flex; align-items:center; min-height:44px; padding:0 20px; background:var(--navy); color:#fff; text-decoration:none;
          font-size:15px; font-weight:500; border-radius:2px; }
.cf-btn:hover { background:var(--navy-2); }
.cal-fb .cf-alt, .bk-fb .cf-alt { font-size:13.5px; }
.cf-alt a { display:inline-block; padding:12px 0; color:var(--blue-bright); text-decoration:none; font-weight:500; }
.cf-alt a:hover { text-decoration:underline; }
.bk-fb { position:absolute; inset:0; display:grid; align-content:center; justify-items:center; gap:10px; padding:24px; text-align:center; background:#fff; }
body:has(.bk-panel.open) .cq-bar, body.bk-open .cq-bar, body.ct-on .cq-bar { display:none; }
body.ct-on:not(.mx-open):not(.bk-open):not(:has(.bk-panel.open)) .cq-bar.on.cq-asked { display:block; }
.agent { transition:opacity 240ms, transform 240ms cubic-bezier(.16,1,.3,1), visibility 0s; }
.agent.parked { opacity:0; transform:translateY(24px); pointer-events:none; visibility:hidden;
                transition:opacity 240ms, transform 240ms cubic-bezier(.16,1,.3,1), visibility 0s 240ms; }
.agent-panel h4 { margin-bottom:10px; }
.agent-panel a span { display:block; margin-bottom:2px; font-family:var(--fm); font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:#54627e; }
@media (prefers-reduced-motion:reduce) { .agent, .agent.parked, .psel-chev, .pbox { transition:none; } }
@media (max-width:1100px) {
  .ct-grid { grid-template-columns:1fr; gap:36px; }
  .ct-pick { display:inline-flex; }
  .ct-grid { display:flex; flex-direction:column; gap:0; }
  .ct-left { display:contents; }
  .ct-book { order:1; margin-top:32px; }
  .ct-form { order:2; margin-top:36px; }
}
@media (max-width:740px) {
  .contact { padding:80px 0 90px; }
  .frow { grid-template-columns:1fr; gap:10px; }
  .ct-plate { padding:18px; }
  .ct-ph { font-size:20px; }
  .psel-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pchk { min-height:44px; }
  .ptag { height:36px; padding-left:12px; } .ptag-x { width:44px; height:44px; margin:-4px; }
  .psel-btn { min-height:36px; }
  .fsend .btn { width:100%; }
  .fsend .btn .t { flex:1; white-space:normal; padding:12px 14px; font-size:15px; line-height:1.3; }
  .fsend .btn .a { width:44px; flex:0 0 44px; }
  .ct-pick .t { padding:13px 18px; font-size:15px; }
  .ct-row { gap:4px 24px; } .ct-row a { font-size:18px; }
  .ct-book-h { padding:18px; }
  .cq-bar { left:12px; right:12px; bottom:12px; width:auto; padding:11px 14px 11px; }
  .cq-bar p { margin:.3rem 0 .55rem; font-size:.8125rem; line-height:1.45; }
  .cq-bar .cq-more { display:none; }
  .cq-btn { font-size:.8125rem; padding:.5rem .7rem; }
}
@media (max-width:360px) { .psel-grid { grid-template-columns:1fr; } }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
::selection { background:#fff; color:#044AB3; }
.rc-band ::selection, .contact ::selection, .rs-sheet ::selection, .agent-panel ::selection,
.fn-card ::selection, .bk-panel ::selection, .win ::selection, .mt-card .chip::selection { background:#0B55DC; color:#fff; }
.fld::selection, .fld ::selection, .psel-ctl ::selection { background:#fff; color:#0A3D99; }
.ct-dir { display:inline-block; }
@media (max-width:1100px) { .ct-dir { transform:rotate(90deg); } }
:root { --pale:#F2F5FB; --rule-l:rgba(11,85,220,.16); --edge-l:rgba(11,85,220,.32); --rule-d:rgba(255,255,255,.18);
        --edge-d:rgba(255,255,255,.40); --lab:11px; --lab-ls:.12em; --float:0 12px 30px rgba(2,18,56,.30); }
.svd .bx, .svd .bx .chip, .svd .bx .go, .svd-key i, .mt-card, .rc-card, .rc-pause, .fld, .psel-ctl, .ptag, .pchk,
.psel-done, .cf-btn, .rs-bars span::after { border-radius:0; }
.rc-card, .rs-sheet { box-shadow:none; }
@media (hover:hover) { .svd .bx:hover, .svd .bx.adv:hover { transform:none; box-shadow:none; }
                       .rs-card:hover .rs-sheet { transform:none; } }
.agent-btn { border-radius:0; width:56px; height:56px; box-shadow:var(--float); }
.btn { min-height:44px; } .btn .t { display:flex; align-items:center; }
body.on-light .nav .btn, .fwc .btn, .svd .btn, .rc-band .btn, .contact .btn:not(.orange) { box-shadow:inset 0 0 0 1px var(--edge-l); }
.contact .btn.orange .a, .cal-fb .btn.orange .a { box-shadow:inset 0 0 0 1px var(--orange); }
.btn.cf-btn { padding:0; background:none; }
.btn.fwc-all { gap:0; }
.px { display:inline-block; flex:none; width:10px; height:10px; margin-left:8px; vertical-align:0; transition:transform .25s; }
.px path { fill:currentColor; }
.fwc-go .px { margin-left:6px; }
@media (hover:hover) { .fwc-card:hover .fwc-go .px, .rs-card:hover .rs-arrow .px, .ghost-link:hover .px { transform:translate(2px,-2px); }
                       .rs-card:hover .rs-arrow { transform:none; } .ghost-link:hover .px { transform:translateY(2px); } }
.rs-arrow .px { margin-left:0; width:12px; height:12px; }
.rs-btn .px { width:14px; height:14px; margin:0; }
.ct-dir .px { margin-left:2px; width:11px; height:11px; }
.ghost-link .px { width:10px; height:10px; }
.h2 { display:flow-root; }
.contact .h2 { color:var(--black); margin:16px 0 22px; }
.approach .h2 { margin-bottom:22px; }
.eyebrow, .fwc-proof, .sco-k, .svd-key, .svd .bx .chip, .svd .bx .i, .mt-card .chip, .mx-tag, .rs-kicker, .ct-bk,
.ct-row .ct-bk, .ct-book-k, .flab, .f2-h, .rc-g2, .rc-pause, .lw-pause, .ap-k { font-size:var(--lab); letter-spacing:var(--lab-ls); text-transform:uppercase; }
.ap-k::before, .rs-kicker::before { width:6px; height:6px; border:0; background:currentColor; transform:none; }
@media (max-width:740px) { .fwc-proof { font-size:10px; letter-spacing:.06em; } }
.fwc { --rule:var(--rule-l); }
.ct-plate, .ct-book, .rc-card, .rc-logo { border-color:var(--rule-l); }
.ct-book-h { border-bottom-color:var(--rule-l); }
.rc-pause { border-color:var(--edge-l); padding:0 16px; }
.rc-pause:hover { background:var(--blue-bright); border-color:var(--blue-bright); color:#fff; }
.sco-c, .ap-rows, .ap-row, .cta-band, .rs-more, .f2-bar { border-color:var(--rule-d); }
.lw-pause, .rs-btn { border-color:var(--edge-d); }
.lw-pause:hover { border-color:#fff; background:rgba(255,255,255,.08); }
.m-tiles, .clients.lw { border-top:1px solid var(--rule-d); }
.svd { border-top:1px solid var(--rule-l); }
.contact { border-top:1px solid var(--rule-l); }
.svd-grid { gap:1px; background:var(--rule-l); border:1px solid var(--rule-l); }
.svd .bx { transition:background-color .25s; }
.svd .bx.adv { background:var(--pale); box-shadow:none; }
.svd-key .k-adv i { background:var(--pale); box-shadow:inset 0 0 0 1px var(--edge-l); }
.svd .bx .chip { padding:5px 8px; }
.svd .bx .go { width:34px; height:34px; top:18px; right:20px; }
@media (hover:hover) { .svd .bx.off:hover { background:#0A4CC8; } .svd .bx.ass:hover { background:#0442A0; } .svd .bx.adv:hover { background:#E6EDFA; } }
.svd .bx:focus-visible { outline:2px solid #fff; outline-offset:-6px; } .svd .bx.adv:focus-visible { outline-color:var(--blue-bright); }
.svd .bx.off .i, .svd .bx.ass .i { color:rgba(255,255,255,.86); }
@media (min-width:741px) { .mt-row { gap:1px; background:var(--rule-d); border:1px solid var(--rule-d); } }
.mt-card .chip { padding:5px 8px; }
.mt-card h3 { font-size:22px; line-height:1.2; letter-spacing:-.01em; }
.mt-card p { font-size:14px; }
.cta-band .t1 { font-family:var(--fd); font-size:clamp(19px,1.9vw,27px); letter-spacing:-.01em; text-transform:none; color:#fff; }
.cta-band .t2 { margin-top:6px; font-size:15px; letter-spacing:0; color:rgba(255,255,255,.8); }
.ap-t { font-size:clamp(26px,2.4vw,36px); font-weight:400; letter-spacing:-.02em; line-height:1.05; }
.rc-who span.rc-tag { font-size:10.5px; letter-spacing:.06em; text-transform:uppercase; color:var(--blue-bright); margin-top:3px; }
.rs-head { text-align:left; align-items:flex-start; }
.resources .eyebrow { justify-content:flex-start; }
.resources .h2 { text-align:left; }
.rs-lede { margin-left:0; text-align:left; }
.ct-ph, .ct-book-h b { color:var(--black); }
.nav { padding-left:max(24px, calc((100% - var(--wrap)) / 2 + 24px)); padding-right:max(24px, calc((100% - var(--wrap)) / 2 + 24px));
       transition:background-color .25s, box-shadow .25s; }
@media (max-width:740px) { .nav { padding:10px 18px; } }
body.nav-solid .nav { background:rgba(4,74,179,.94); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); box-shadow:0 1px 0 var(--rule-d); }
body.nav-solid.on-light .nav { background:rgba(255,255,255,.94); box-shadow:0 1px 0 var(--rule-l); }
body.on-light .nav a:focus-visible, body.on-light .nav button:focus-visible { outline-color:var(--blue-bright); }
@media (max-width:740px) { .sco { padding:80px 0 80px; } .approach, .m-tiles { padding:88px 0 96px; } }
@media (prefers-reduced-motion:reduce) { .px, .svd .bx, .nav { transition:none; } }
body.nav-solid .nav { pointer-events:auto; }
.nav-brand { pointer-events:auto; color:#fff; text-decoration:none; }
body.nav-solid .nav-brand, body.nav-solid .nav-right .lnk, body.nav-solid .nav-menu-btn { transition:none; }
.nav-brand:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
html { scroll-padding-top:88px; }
@media (max-width:740px) { html { scroll-padding-top:76px; } }
.btn.fwc-all, .btn.cf-btn { align-items:stretch; }
.fwc-go .px { margin-left:0; }
.fn-side .px, .fs-lbl .px { width:9px; height:9px; margin:0 4px; vertical-align:-1px; }
.ct-sum-pick .px, .mx-all .px, .nav-dd .all .px { width:9px; height:9px; }
.rc-who span.rc-tag, .cf-k, .psel-count, .mx-cap, .agent-panel a > span, .cq-k { font-size:var(--lab); letter-spacing:var(--lab-ls); }
.sco-rules span { background:var(--rule-d); }
.foot2, .ghost { border-color:var(--rule-d); }
.agent-panel a, .psel-foot { border-color:var(--rule-l); }
.psel-panel { border-color:var(--edge-l); }
.hero-cta .ghost-link { border-color:var(--edge-d); }
.clients .h2 { margin-bottom:22px; }
.rc-band .rc-lede { margin-top:22px; }
.mx-tile { background:var(--blue-bright); }
.pbox { border-radius:0; }
.nav-dd, .agent-panel { box-shadow:var(--float); }
@media (max-width:1100px) { .ct-grid { align-items:stretch; } }
.cq-btn:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.hero-copy2 h1 .stop { color:var(--orange); }
.hero-copy2 h1 .lig { letter-spacing:0; margin-right:-.05em; }
@media (min-width:741px) {
  body[data-inst="shop"] .hero-inner { inset:clamp(130px,17vh,190px) 0 auto 0; justify-items:stretch; text-align:left;
                max-width:var(--wrap); margin:0 auto; padding:0 24px; container-type:inline-size; }
  body[data-inst="shop"] .hero-copy2 { max-width:none; width:100%; display:grid; grid-template-columns:minmax(0,1fr) auto;
                column-gap:4vw; align-items:start; }
  body[data-inst="shop"] .hero-copy2 h1 { grid-column:1/-1; font-size:10.9vw; font-size:11.55cqw; letter-spacing:-.05em;
                line-height:.95; white-space:nowrap; margin:0 0 clamp(18px,2vw,32px); }
  body[data-inst="shop"] .hero-copy2 h1 .rmask, body[data-inst="shop"] .hero-copy2 h1 .rin { display:inline; }
  body[data-inst="shop"] .hero-copy2 .sub { grid-column:1; margin:0; max-width:58ch; text-align:left; }
  body[data-inst="shop"] .hero-cta { grid-column:2; justify-content:flex-end; align-self:start; }
}
@media (max-width:740px) {
  body[data-inst="shop"] .hero-inner { justify-items:stretch; text-align:left; }
  body[data-inst="shop"] .hero-inner { padding:0 18px; }
  body[data-inst="shop"] .hero-copy2 { max-width:none; width:100%; padding:0; }
  body[data-inst="shop"] .hero-copy2 h1 { font-size:15.5vw; letter-spacing:-.045em; line-height:.9; margin:0 0 20px; text-align:left; }
  body[data-inst="shop"] .hero-copy2 h1 .lig { margin-right:-.045em; }
  body[data-inst="shop"] .hero-copy2 .sub { margin:0 0 22px; max-width:none; text-align:left; }
  body[data-inst="shop"] .hero-cta { justify-content:flex-start; }
  body[data-inst="shop"] .hero-funnel { top:570px; }
  body[data-inst="shop"] .hero { height:1490px; }
}
.hero-cta .ghost-link { display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }
.cta-band.ph { background:none; border-top:1px solid var(--rule-d); border-bottom:1px solid var(--rule-d); }
.cta-band.ph .ph-grid { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); max-width:var(--wrap); margin:0 auto; }
.cta-band.ph .ph-img, .cta-band.ph .ph-img img { display:block; width:100%; height:100%; }
.cta-band.ph .ph-img img { object-fit:cover; object-position:62% 30%; min-height:320px; }
.cta-band.ph .inner { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; flex-wrap:nowrap;
                gap:26px; padding:48px clamp(24px,4vw,64px); border-left:1px solid var(--rule-d); }
@media (max-width:740px) {
  .cta-band.ph .ph-grid { grid-template-columns:1fr; }
  .cta-band.ph .ph-img img { min-height:0; height:auto; aspect-ratio:4 / 3; }
  .cta-band.ph .inner { border-left:0; padding:32px 18px 40px; gap:22px; }
}
.rs-nav { margin-top:0; }
.rs-bar { display:flex; align-items:center; gap:22px; margin-top:40px; }
.rs-count { flex:none; font-family:var(--fm); font-size:var(--lab, 11px); letter-spacing:var(--lab-ls, .12em); text-transform:uppercase;
  color:rgba(255,255,255,.72); font-variant-numeric:tabular-nums; white-space:nowrap; }
.rs-count b { font-weight:500; color:#fff; }
.rs-rail { flex:1 1 auto; position:relative; height:1px; background:var(--rule-d, rgba(255,255,255,.18)); min-width:60px; }
.rs-rail i { position:absolute; left:0; top:-1px; height:3px; width:var(--tw, 40%); background:#fff; transform:translateX(var(--tx, 0px));
  transition:transform .25s cubic-bezier(.2,.7,.2,1), width .25s ease; }
.rs-cue { flex:none; font-family:var(--fm); font-size:var(--lab, 11px); letter-spacing:var(--lab-ls, .12em); text-transform:uppercase; color:rgba(255,255,255,.72); }
.rs-cue .rs-cue-t { display:none; }
.rs-nav { display:flex; gap:10px; }
.rs-btn { width:48px; height:48px; display:grid; place-items:center; }
.rs-btn[aria-disabled="false"][data-dir="1"] { background:#fff; border-color:#fff; color:var(--blue-bright, #0B55DC); }
.rs-btn[aria-disabled="false"][data-dir="1"]:hover { background:rgba(255,255,255,.88); }
.rs-btn svg { width:14px; height:14px; fill:currentColor; }
.rs-card { flex:0 0 clamp(300px, calc((100% - 56px) / 2.6), 520px); }
.rs-strip { --fl:0px; --fr:0px;
  -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 var(--fl), #000 calc(100% - var(--fr)), transparent 100%);
          mask-image:linear-gradient(90deg, transparent 0, #000 var(--fl), #000 calc(100% - var(--fr)), transparent 100%); }
.rs-strip.more-r { --fr:clamp(48px, 7vw, 120px); }
.rs-strip.more-l { --fl:clamp(24px, 3vw, 56px); }
.rs-strip:focus-within { --fl:0px; --fr:0px; scroll-padding-inline:24px; }
@media (pointer:fine) { .rs-strip { cursor:grab; } .rs-strip.dragging { cursor:grabbing; scroll-snap-type:none; } .rs-strip.dragging .rs-card { pointer-events:none; } }
@media (max-width:740px) {
  .rs-bar { gap:14px; margin-top:32px; }
  .rs-cue .rs-cue-f { display:none; } .rs-cue .rs-cue-t { display:inline; }
  .rs-card { flex-basis:78vw; }
  .rs-strip { margin-top:18px !important; }
  .rs-strip.more-r { --fr:36px; }
}
@media (prefers-reduced-motion:reduce) { .rs-rail i { transition:none; } }
@media (max-width:340px) {
  .nav-menu-btn .t, .nav-menu-btn .roll { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
}
@media (max-width:740px) and (pointer:coarse) { .rs-nav { display:none; } }
.btn .t { font-size:max(15px, .9375rem); }
.btn .a { width:44px; flex:0 0 44px; }
.f2-note { font-size:max(13px, .78125rem); }
.foot2 .f2-col a { font-size:max(14px, .8125rem); }
.f2-bar { font-size:12px; }
.cq-bar p { font-size:13px; }
.mx-tile .d { font-size:max(13px, .85rem); color:rgba(255,255,255,.9); }
.mx-links .mx-all { font-size:var(--lab, 11px); letter-spacing:var(--lab-ls, .12em); }
.nav-menu-btn { font-size:max(13px, .875rem); }
.fld, textarea.fld, .psel-btn { font-size:16px; }
@media (max-width:740px) {
  .rc-who span:not(.rc-logo):not(.rc-tag) { font-size:13.5px; }
  .f-consent, .fwc-note { font-size:14px; }
  .fwc-proof { font-size:11px; letter-spacing:.12em; }
}
.sco-rules { display:none; }
.sco-rules span { grid-row:1; }
.sco-rules span:nth-child(1) { grid-column:1; } .sco-rules span:nth-child(2) { grid-column:2; }
.sco-rules span:nth-child(3) { grid-column:3; } .sco-rules span:nth-child(4) { grid-column:4; }
.sco-rules span:nth-child(5) { grid-column:4; justify-self:end; }
h1, h2, h3, .ap-t, .rs-title, .rs-st, .mx-h { text-wrap:balance; }
p, blockquote { text-wrap:pretty; }
.cq-k::before { content:""; display:inline-block; width:6px; height:6px; margin-right:8px; background:currentColor; vertical-align:1px; font-size:0; }
.cq-bar { border-color:var(--rule-d); }
.cq-bar p a { text-decoration:underline; text-underline-offset:3px; }
body.mx-open .cq-bar { display:none; }
.nb { white-space:nowrap; }
@media (max-width:360px) {
  .cq-bar { padding:10px 12px; }
  .cq-bar p { margin:.25rem 0 .5rem; }
}
@media (max-height:500px) {
  .cq-bar .cq-more { display:none; }
  .cq-bar p { margin:.2rem 0 .5rem; }
}
html { scroll-padding-bottom:96px; }
html:has(.cq-bar.on) { scroll-padding-bottom:240px; }
@media (max-width:740px) { html:has(.cq-bar.on) { scroll-padding-bottom:160px; } }
.cq-footer-btn { background:none; border:0; color:rgba(255,255,255,.8); font:inherit; letter-spacing:inherit; cursor:pointer;
  text-decoration:underline; text-underline-offset:3px; padding:0; margin-left:18px; }
.cq-footer-btn:hover { color:#fff; text-decoration-thickness:2px; }
.cq-footer-btn:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.bk-left { position:relative; }
.bk-panel .bk-x { top:12px; right:12px; width:44px; height:44px; display:grid; place-items:center; font-size:0; color:#fff;
  background:transparent; border:1px solid var(--edge-d); cursor:pointer; }
.bk-panel .bk-x .px-x { width:14px; height:14px; }
.bk-panel .bk-x:hover { background:rgba(255,255,255,.08); border-color:#fff; }
.bk-panel .bk-x:focus-visible { outline:2px solid #fff; outline-offset:2px; }
.bk-left h3 { padding-right:52px; }
body.bk-open { overflow:hidden; }
.bk-left ul { padding:0; list-style:none; }
.bk-left li { display:flex; gap:10px; align-items:baseline; }
.bk-left li::before { content:""; flex:none; width:6px; height:6px; background:currentColor; transform:translateY(-2px); }
.bk-fb .btn.orange .a { box-shadow:inset 0 0 0 1px var(--orange); }
.cf-btn:focus-visible, .bk-fb .btn:focus-visible { outline:2px solid var(--blue-bright); outline-offset:3px; }
.fld:focus-visible, .psel-ctl:focus-visible, .psel-btn:focus-visible, .ptag-x:focus-visible, .pchk:focus-visible, .psel-done:focus-visible {
  outline:2px solid var(--blue-bright); outline-offset:1px; }
.psel-chev { fill:#fff; stroke:none; }
.mt-card.done .chip { color:#121212; }
.rs-bars span::after { background:var(--blue-bright); }
.rc-who:has(.rc-logo) { flex-direction:column; align-items:flex-start; gap:12px; }
.rc-col.rc-t2, .rc-col.rc-p1 { display:none; }
@media (min-width:741px) and (max-width:1059px) { .rc-col.rc-d3 { display:none !important; } .rc-col.rc-t2 { display:block; } }
@media (max-width:740px) { .rc-col.rc-d3, .rc-col.rc-t2 { display:none !important; } .rc-col.rc-p1 { display:block; } }
@media (max-width:1379px) { .rc-cols { justify-content:flex-start; } .rc-col { flex:1 1 0; width:auto; min-width:0; } }
@media (min-width:1751px) {
  .rc-wrap { grid-template-columns:auto minmax(0,1fr); }
  .rc-col { flex:1 1 0; width:auto; min-width:0; }
}
.rc-pause, .rc-g2 { font-weight:500; }
.rc-pause { border-radius:0; }
@media (hover:none) {
  .rc-pause:hover { background:none; color:var(--black); border-color:rgba(18,18,18,.18); }
  .agent-btn:hover { transform:none; }
}
.rc-g2:hover, .ct-jump:hover, .ct-sum-pick:hover, .f-consent a:hover { text-decoration-thickness:2px; }
.fn-pause { display:none; }
.js .fn-pause { display:block; position:absolute; z-index:6; right:max(24px, calc((100% - var(--wrap)) / 2 + 24px)); bottom:22px;
  background:none; border:1px solid var(--edge-d); color:#fff; font-family:var(--fm); font-size:var(--lab, 11px);
  letter-spacing:var(--lab-ls, .12em); text-transform:uppercase; padding:11px 14px; min-height:44px; cursor:pointer; }
.fn-pause:hover { border-color:#fff; background:rgba(255,255,255,.08); }
.fn-pause:focus-visible { outline:2px solid #fff; outline-offset:2px; }
body.fn-paused .tq-dash { animation-play-state:paused; }
@media (max-width:740px) { .fn-pause { right:18px; bottom:16px; } }
@media (prefers-reduced-motion:reduce) { .fn-pause { display:none; } }
@media (min-width:741px) and (max-width:960px) {
  body[data-inst="shop"] .hero-copy2 { grid-template-columns:minmax(0,1fr); }
  body[data-inst="shop"] .hero-cta { grid-column:1; justify-content:flex-start; margin-top:22px; }
}
@media (max-width:740px) { .fs-slot.g0, .fs-slot.g2 { left:16px; } .fs-slot.g1 { left:18px; } .fs-slot.p0, .fs-slot.p1, .fs-slot.p2 { right:16px; } }
.cta-band.ph .ph-grid { max-width:none; }
.cta-band.ph .inner { padding-right:max(clamp(24px,4vw,64px), calc((100% * 12 / 7 - var(--wrap)) / 2 + 64px)); }
@media (max-width:740px) { .cta-band.ph .inner { padding-right:18px; } }
.ap-h { position:relative; padding-right:32px; }
.ap-h::after { content:""; position:absolute; right:0; top:6px; width:12px; height:12px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath fill='%23fff' d='M6 1h2v9H6zM3 8h2v2H3zM9 8h2v2H9zM5 10h4v2H5z'/%3E%3C/svg%3E") center / 12px no-repeat;
  transition:transform .2s; }
.ap-h[aria-expanded="true"]::after { transform:rotate(180deg); }
@media (prefers-reduced-motion:reduce) { .ap-h::after { transition:none; } }
.fwc-foot { flex-wrap:wrap; row-gap:12px; }
@media (min-width:1001px) and (max-width:1100px) { .foot2-grid { grid-template-columns:repeat(3, minmax(0,1fr)); } }
.f2-bar > span { display:inline-flex; flex-wrap:wrap; align-items:center; column-gap:18px; }
.f2-bar > span a, .f2-bar > span .cq-footer-btn { margin-left:0; }
.f2-bar a, .cq-footer-btn { display:inline-flex; align-items:center; min-height:44px; }
.foot2 .f2-note a { display:inline-block; padding-block:5px; }
.hero-cta .ghost-link { min-height:44px; }
.mx-go { width:44px; height:44px; }
@media (max-width:740px) { .foot2 .f2-col a { padding:8px 0; margin-bottom:0; } }
@media (max-width:360px) { .nav-menu-btn { min-width:44px; } }
.agent-panel { width:min(300px, calc(100vw - 36px)); }
@media (max-width:900px) { .mx-grid { grid-auto-rows:auto; align-content:start; } .mx-tile { min-height:auto; } }
@media (min-width:600px) and (max-width:900px) { .mx-grid { grid-template-columns:1fr 1fr; } }
@media (prefers-reduced-motion:reduce) {
  .lw-row { overflow:visible; padding:0; }
  .lw-track:not([aria-hidden="true"]) { flex:1 1 100%; min-width:0; flex-wrap:wrap; gap:14px 0; }
}
.roll i::after { content:attr(data-text); content:attr(data-text) / ""; }
@media (forced-colors:active) {
  .btn, .fld, .psel-btn, .psel-ctl, .cq-btn, .bk-x, .fn-pause, .lw-pause, .rc-pause { border:1px solid CanvasText; }
  .eyebrow::before, .cq-k::before, .bk-left li::before { forced-color-adjust:none; background:CanvasText; }
}
@media print {
  .nav, .cq-bar, .cq-wrap, .agent, .bk-overlay, .bk-panel, .fn-pause, .px-seam, .ghost, .mx, .hero-funnel { display:none !important; }
  .fade, .rmask .rin { opacity:1 !important; transform:none !important; }
  html, body { background:#fff !important; }
}
.cq-btn { font-size:max(13px, .8125rem); }
@media (max-width:360px) { .cq-bar .cq-k { display:none; } .cq-bar p { margin-top:0; } }
@media (max-height:500px) { .cq-bar .cq-k { display:none; } .cq-bar { padding:8px 12px; } .cq-bar p { margin:0 0 .4rem; } }
@media (max-width:740px) {
  body:has(.cq-bar.on) .agent { visibility:hidden; }
  html:has(.cq-bar.on) .foot2 { padding-bottom:200px; }
}
.cf-alt { display:grid; justify-items:center; gap:0; }
.rc-card:has(.rc-logo) .rc-mark { display:none; }
.psel-btn:hover, .psel-ctl:hover { background:#0A4CC8; }
.nav-brand, .mx-brand { display:inline-flex; align-items:center; min-height:44px; gap:10px; }
.tq-mark { display:block; flex:none; width:34px; height:22px; background-color:currentColor;
           -webkit-mask:url('/brand/tq-mark-white.png') center / contain no-repeat;
           mask:url('/brand/tq-mark-white.png') center / contain no-repeat; }
@media (max-width:740px) { .nav-brand { gap:8px; } .nav-brand .tq-mark { width:28px; height:18px; } }
@media (max-width:420px) { .nav-brand { gap:0; min-width:44px; } .nav-brand .tq-mark { width:34px; height:22px; }
  .nav-brand .tq-word { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; } }
@media (max-width:420px) and (forced-colors:active) { .nav-brand { gap:8px; }
  .nav-brand .tq-word { position:static; width:auto; height:auto; overflow:visible; clip:auto; } }
@media (forced-colors:active) { .tq-mark { forced-color-adjust:none; background-color:CanvasText; } }
@media (max-width:740px) {
  .mx-links a { padding-block:10px; }
  .foot2 .f2-col a { padding:12px 0; }
  .foot2-grid > :first-child { grid-column:1 / -1; }
}
.foot2 .f2-note a { padding-block:10px; }
@media print {
  body * { color:#121212 !important; }
  .hero { height:auto !important; }
  .clients { display:none !important; }
}
@media (min-width:741px){ .contact { padding-bottom:250px; } }
.rc-g2 { gap:8px; text-decoration:none; }
.rc-g2 span { text-decoration:underline; text-underline-offset:2px; }
.rc-g2:hover { text-decoration:none; }
.rc-g2:hover span { text-decoration-thickness:2px; }
.rc-g2-mark { width:18px; height:18px; flex:none; }
@media (min-width:1751px) {
  body[data-inst="shop"] .hero { height:calc(1245px + 700 * (var(--fnu) - 1px)); }
  body[data-inst="shop"] .hero-funnel { height:calc(700 * var(--fnu)); }
  .fn-layout { top:calc(112 * var(--fnu)); }
  .fn-list { gap:calc(12 * var(--fnu)); padding-right:calc(12 * var(--fnu)); }
  .fn-card { width:calc(clamp(300px,22vw,326px) + 326 * (var(--fnu) - 1px)) !important;
             height:calc(clamp(44px,4.1vw,60px) + 60 * (var(--fnu) - 1px)); }
  .fn-card .face { gap:calc(13 * var(--fnu)); padding:0 calc(16 * var(--fnu)); border-radius:calc(13 * var(--fnu)); }
  .fn-card .face::after { border-radius:calc(13 * var(--fnu)); }
  .fn-card .ic { width:calc(clamp(24px,2.65vw,38px) + 38 * (var(--fnu) - 1px)); height:calc(clamp(24px,2.65vw,38px) + 38 * (var(--fnu) - 1px));
                 border-radius:calc(9 * var(--fnu)); }
  .face.done .ic { width:calc(clamp(32px,3vw,44px) + 44 * (var(--fnu) - 1px)); height:calc(clamp(32px,3vw,44px) + 44 * (var(--fnu) - 1px)); }
  .face.raw .ic svg { width:calc(22 * var(--fnu)); height:calc(22 * var(--fnu)); }
  .fn-card .k, .fn-card .st { font-size:calc(clamp(10px,0.75vw,11px) + 11 * (var(--fnu) - 1px)); }
  .fn-card .t { font-size:calc(clamp(11px,1vw,14px) + 14 * (var(--fnu) - 1px)) !important; margin-top:calc(4 * var(--fnu)); }
  .fn-card .dv { margin:calc(13 * var(--fnu)) 0; }
  .fn-core-slot { top:calc(112 * var(--fnu) + (clamp(44px,4.1vw,60px) + 60 * (var(--fnu) - 1px)) / 2);
                  width:calc(clamp(132px,12.2vw,176px) + 176 * (var(--fnu) - 1px));
                  height:calc(clamp(132px,12.2vw,176px) + 176 * (var(--fnu) - 1px)); }
}
.st-band { background:var(--pale); color:var(--black); padding:104px 0 112px; }
.st-band .eyebrow { color:var(--blue-bright); }
.st-band .h2 { color:var(--black); }
.st-lede { max-width:56ch; margin:22px 0 0; font-size:17px; line-height:1.55; color:rgba(18,18,18,.72); }
.st-grid { margin-top:56px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--rule-l); border:1px solid var(--rule-l); }
.st-card { background:#fff; display:flex; flex-direction:column; min-width:0; }
.st-mark { background:#0b55dc; height:112px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 28px; }
.st-mark img { display:block; height:auto; flex:none; }
.st-k { margin:0; font-family:var(--fm); font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.88); text-align:right; max-width:18ch; line-height:1.5; }
.st-body { padding:28px; display:flex; flex-direction:column; flex:1; }
.st-fig { display:flex; align-items:baseline; gap:12px; padding-bottom:18px; margin:0 0 20px; border-bottom:1px solid var(--rule-l); }
.st-fig b { font-size:clamp(40px,3.6vw,56px); font-weight:400; letter-spacing:-.03em; line-height:.95; color:#0b55dc; white-space:nowrap; }
.st-fig span { font-size:.875rem; line-height:1.4; color:rgba(18,18,18,.7); max-width:20ch; }
.st-card h3 { margin:0 0 .8rem; font-size:clamp(20px,1.6vw,24px); font-weight:500; letter-spacing:-.01em; line-height:1.22; color:var(--black); text-wrap:balance; }
.st-body > p { margin:0 0 .9rem; font-size:.975rem; line-height:1.64; color:rgba(18,18,18,.82); }
.st-scope { list-style:none; margin:.4rem 0 1.4rem; padding:0; display:flex; flex-wrap:wrap; gap:6px; }
.st-scope li { font-family:var(--fm); font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; padding:6px 8px; background:var(--pale); color:#0a3d99; }
.st-card blockquote { margin:auto 0 0; padding:20px 0 0; border-top:1px solid var(--rule-l); }
.st-card blockquote p { font-size:1rem; line-height:1.55; color:#121212; margin:0 0 .8rem; }
.st-card blockquote footer { font-family:var(--fm); font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:rgba(18,18,18,.62); }
.st-go, .st-all { display:inline-flex; align-items:center; gap:2px; min-height:44px; font-size:15px; font-weight:500; text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:1px; }
.st-go { align-self:flex-start; margin-top:14px; color:#0b55dc; }
.st-scope + .st-go { margin-top:auto; }
.st-all { margin-top:28px; color:var(--black); }
.st-go .px, .st-all .px { width:9px; height:9px; margin-left:6px; }
.st-go .px path, .st-all .px path { fill:currentColor; }
.st-go:hover, .st-all:hover { text-decoration-thickness:2px; }
.st-go:focus-visible, .st-all:focus-visible { outline:2px solid var(--blue-bright); outline-offset:3px; }
@media (max-width:1100px) { .st-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:740px) {
  .st-band { padding:80px 0 88px; }
  .st-grid { grid-template-columns:minmax(0,1fr); margin-top:36px; }
  .st-mark { height:auto; min-height:96px; padding:20px 22px; }
  .st-body { padding:24px 22px; }
}
.cal-stage { position:relative; }
.cal-ld { position:absolute; inset:0; z-index:0; display:none; align-content:center; justify-items:center; gap:14px; padding:24px;
          text-align:center; background:#fff; }
.cal-stage .ct-cal-host, .cal-stage .bk-cal { z-index:1; }
.cal-stage .cal-fb, .cal-stage .bk-fb { z-index:2; }
.cal-px { display:flex; gap:6px; }
.cal-px i { display:block; width:6px; height:6px; background:var(--blue-bright); opacity:.18; animation:cal-px 1.2s steps(1,end) infinite; }
.cal-px i:nth-child(2) { animation-delay:.3s; } .cal-px i:nth-child(3) { animation-delay:.6s; }
.cal-ld-t { font-family:var(--fm); font-size:var(--lab); letter-spacing:var(--lab-ls); text-transform:uppercase; font-weight:500;
            color:var(--blue-bright); }
@keyframes cal-px { 0% { opacity:1; } 25% { opacity:.18; } }
.cal-js .cal-stage .cal-ld { display:grid; }
.cal-js .cal-stage.cal-shown .cal-ld, .cal-js .cal-stage.cal-fail .cal-ld { display:none; }
.cal-js .cal-stage .cal-fb, .cal-js .cal-stage .bk-fb { display:none; }
.cal-stage.cal-live .cal-fb, .cal-stage.cal-live .bk-fb { display:none; }
.cal-js .cal-stage.cal-fail .cal-fb, .cal-js .cal-stage.cal-fail .bk-fb { display:grid; }
.bk-fb .cf-alt { font-size:13.5px; }
.cal-alt { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; column-gap:16px; margin:0; padding:0 12px;
           border-top:1px solid var(--rule-l); font-size:13px; line-height:1.35; color:rgba(18,18,18,.66); text-align:center; }
.cal-alt .cs-g { display:inline-flex; flex-wrap:wrap; justify-content:center; align-items:center; column-gap:16px; }
.cal-alt .cs-n { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
.cal-alt a { position:relative; display:inline-flex; align-items:center; justify-content:center; min-height:44px; min-width:44px; color:var(--blue-bright); font-weight:500;
             text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.cal-alt a:hover { text-decoration-thickness:2px; }
.cal-alt a:focus-visible { outline:2px solid var(--blue-bright); outline-offset:2px; }
.ct-book .cal-alt { background:#fff; }
.bk-right { display:flex; flex-direction:column; min-width:0; min-height:640px; min-height:min(640px, calc(100vh - 32px)); min-height:min(640px, calc(100dvh - 32px));
            padding:20px 24px 0; background:#fff; }
.bk-stage { flex:1 0 auto; height:clamp(480px, calc(100vh - 97px), 680px); height:clamp(480px, calc(100dvh - 97px), 680px); }
.bk-cal { position:absolute; inset:0; }
.bk-cal iframe, .ct-cal-host iframe { display:block; }
.bk-right .cal-alt { flex:none; padding:0; }
body.bk-open { padding-right:var(--bk-sbw, 0px); }
body.bk-open .nav { right:var(--bk-sbw, 0px); }
@media (min-width:741px) {
  body.bk-open .nav { padding-left:max(24px, calc((100% - var(--bk-sbw, 0px) - var(--wrap)) / 2 + 24px));
                      padding-right:max(24px, calc((100% - var(--bk-sbw, 0px) - var(--wrap)) / 2 + 24px)); }
}
body.bk-open .agent { margin-right:var(--bk-sbw, 0px); }
@media (max-width:760px), (max-height:520px) {
  .bk-panel { top:0; left:0; width:100%; height:100vh; height:100dvh; max-height:none; overflow:hidden;
              display:flex; flex-direction:column; transform:translateY(24px); }
  .bk-panel.open { transform:none; }
  .bk-left { flex:none; display:flex; align-items:center; min-height:64px; padding:10px 68px 10px 16px; }
  .bk-left h3 { margin:0; padding-right:0; font-size:18px; line-height:1.2; letter-spacing:-.01em; }
  .bk-left p, .bk-left ul { display:none; }
  .bk-panel .bk-x { top:10px; right:12px; }
  .bk-right { flex:1 1 auto; min-height:0; padding:0; }
  .bk-stage { flex:1 1 auto; height:auto; min-height:0; }
  .bk-right .cal-alt { padding:0 12px env(safe-area-inset-bottom); }
  .cal-alt, .cal-alt .cs-g { column-gap:14px; }
}
@media (prefers-reduced-motion:reduce) {
  .bk-overlay, .bk-panel { transition:none; }
  .cal-px i { animation:none; } .cal-px i:first-child { opacity:1; }
}
@media (forced-colors:active) { .cal-px i { forced-color-adjust:none; background:CanvasText; } }
.sw-bar { display:none; }
@media (max-width:740px) {
  .sw-x, [data-sw] { --sw-w:min(calc(100vw - 58px), 440px); --sw-col:min(calc((100vw - 58px) / 2), 220px); }
  [data-sw], .rc-col.rc-p1[data-sw] { display:flex; margin:32px -18px 0; padding:0 0 0 18px; scroll-padding-inline:18px; overflow-x:auto; overflow-y:hidden;
              scroll-snap-type:x mandatory; overscroll-behavior-x:contain; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
  [data-sw]::-webkit-scrollbar { display:none; }
  [data-sw]::after { content:""; flex:0 0 18px; }
  [data-sw] > * { flex:none; }
  [data-sw]:focus-visible { outline:2px solid var(--blue-bright); outline-offset:-2px; }
  .sw-bar { display:flex; align-items:center; gap:14px; margin-top:18px; }
  .sw-count { flex:none; font-family:var(--fm); font-size:var(--lab); letter-spacing:var(--lab-ls); text-transform:uppercase;
              color:rgba(18,18,18,.66); font-variant-numeric:tabular-nums; white-space:nowrap; }
  .sw-count b { font-weight:500; color:var(--black); }
  .sw-rail { flex:1 1 auto; position:relative; height:1px; min-width:32px; background:var(--edge-l); }
  .sw-rail i { position:absolute; left:0; top:-1px; height:3px; width:var(--tw, var(--tw0, 20%)); background:var(--blue-bright);
               transform:translateX(var(--tx, 0px)); transition:transform .25s cubic-bezier(.2,.7,.2,1), width .25s ease; }
  .sw-nav { flex:none; display:flex; gap:8px; }
  .sw-btn { width:44px; height:44px; padding:0; display:grid; place-items:center; border:1px solid var(--edge-l); border-radius:0;
            background:none; color:var(--blue-bright); cursor:pointer; transition:background-color .2s, border-color .2s, color .2s; }
  .sw-btn .px { width:14px; height:14px; margin:0; }
  .sw-btn[aria-disabled="false"][data-dir="1"] { background:var(--blue-bright); border-color:var(--blue-bright); color:#fff; }
  .sw-btn[aria-disabled="true"] { opacity:.35; cursor:default; }
  .sw-btn:focus-visible { outline:2px solid var(--blue-bright); outline-offset:2px; }
  .st-grid > .st-card, .fwc-grid > .fwc-card, .svd-grid > .bx { scroll-snap-align:start; scroll-margin-inline-start:1px; }
  .st-grid { display:flex; margin-top:0; }
  .st-grid > .st-card { width:var(--sw-w); flex:none; }
  .st-grid .st-fig { flex-wrap:wrap; row-gap:6px; }
  .st-grid .st-fig span { flex:1 1 9ch; }
  .st-grid .st-mark { flex-wrap:wrap; row-gap:10px; }
  .st-grid .st-k { flex:1 1 0; min-width:min-content; margin-left:auto; }
  .fwc-grid { grid-auto-flow:column; grid-template-columns:none; grid-template-rows:auto auto; grid-auto-columns:var(--sw-col); margin-top:0; }
  .fwc-grid > .fwc-more { grid-column:auto; grid-row:span 2; }
  .fwc-more .fwc-v { display:block; margin-top:14px; font-size:14px; line-height:1.5; }
  .fwc-grid > .fwc-card > .fwc-foot { margin-top:auto; padding-top:16px; }
  .fwc-grid > .fwc-more > .fwc-v { flex:none; }
  .svd-grid { display:flex; }
  .svd-grid > .bx { width:var(--sw-w); flex:none; min-height:0; }
  .svd .svd-grid > .bx:not(.lead) svg.il { display:block; height:120px; }
  .svd .svd-grid > .bx:not(.lead) .n { margin-top:6px; }
  .svd .svd-grid > .bx.lead svg.il { height:120px; }
  .svd-key { margin-bottom:0; }
  .rc-wrap { grid-template-columns:minmax(0,1fr); }
  .rc-cols { display:block; min-width:0; max-height:none; overflow:visible; -webkit-mask-image:none; mask-image:none; }
  .rc-col.rc-p1[data-sw] { width:auto; margin-top:0; }
  .rc-p1 .rc-track { flex-direction:row; gap:12px; padding-bottom:0; animation:none; transform:none; will-change:auto; }
  .rc-p1 .rc-track > [aria-hidden="true"] { display:none; }
  .rc-p1 .rc-card { width:var(--sw-w); flex:none; display:flex; flex-direction:column; scroll-snap-align:start; }
  .rc-p1 .rc-card .rc-who { margin-top:auto; padding-top:20px; }
  .rc-wrap > .sw-bar { margin-top:-22px; }
  .rc-ctl .rc-pause { display:none; }
}
@media (max-width:740px) and (prefers-reduced-motion:reduce) { .sw-rail i, .sw-btn { transition:none; } }
@media (max-width:740px) and (hover:hover) {
  .sw-btn[aria-disabled="false"]:hover { border-color:var(--blue-bright); }
  .sw-btn[aria-disabled="false"][data-dir="1"]:hover { background:#0A4CC8; }
}
@media (forced-colors:active) { .sw-rail i { forced-color-adjust:none; background:CanvasText; } }
.hm-artifact{--fd:var(--v3-font),"OverusedGrotesk","Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;--fm:var(--v3-font),"OverusedGrotesk","Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;font-family:var(--fd);}
.hm-artifact h1,.hm-artifact h2,.hm-artifact h3,.hm-artifact h4,.hm-artifact h5,.hm-artifact h6{font-family:var(--fd);}
body.js{--fd:var(--v3-font),"Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;--fm:var(--v3-font),"Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;}
body.js .cq-wrap h2,body.js .cq-bar h2{font-family:var(--fd);}
body > a[href="#main-content"]{display:none;}
html body.v3-page{background:var(--blue);}
.vbar,.pbar,.cvw{display:none !important;}
