/* Inter, self-hosted (SIL Open Font License). Latin + Latin Extended, variable weight. No outside font requests. */
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
  :root{
    --navy:#0B1F3A; --navy-2:#13305A; --ink:#14213a; --muted:#5a6578; --line:#e3e7ee;
    --bg:#ffffff; --soft:#f5f7fa; --accent:#2563EB; --accent-dk:#1D4ED8; --accent-soft:#EFF4FF;
    --green:#0b6b49; --green-soft:#e8f6f0; --note:#1D4ED8; --note-soft:#EFF4FF;
    --radius:16px; --shadow:0 1px 2px rgba(11,31,58,.06),0 8px 24px rgba(11,31,58,.08);
  }
  *{box-sizing:border-box}
  html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}
  body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:16.5px;line-height:1.6;-webkit-font-smoothing:antialiased}
  a{color:var(--navy-2)}
  .wrap{max-width:1120px;margin:0 auto;padding:0 20px}
  .narrow{max-width:760px}
  h1,h2,h3{color:var(--navy);letter-spacing:-.02em;line-height:1.15;margin:0}
  h1{font-size:38px;font-weight:800}
  h2{font-size:28px;font-weight:800;margin-bottom:10px}
  h3{font-size:18px;font-weight:700}
  .kicker{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
  .sub{color:var(--muted);font-size:17.5px;max-width:640px;margin:8px 0 0}
  section{padding:64px 0}
  .soft{background:var(--soft)}
  .center{text-align:center}.center .sub{margin-left:auto;margin-right:auto}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:14px 22px;font:600 16.5px/1.2 inherit;font-family:inherit;cursor:pointer;text-decoration:none;transition:transform .08s,background .15s,box-shadow .15s}
  .btn-accent{background:var(--accent);color:#fff;box-shadow:0 6px 16px rgba(37,99,235,.28)}
  .btn-accent:hover{background:var(--accent-dk)}
  .btn-navy{background:var(--navy);color:#fff}
  .btn-navy:hover{background:var(--navy-2)}
  .btn-ghost{background:#fff;color:var(--navy);border:1.5px solid var(--line)}
  .btn-ghost:hover{border-color:#c4ccd8}
  .btn:active{transform:translateY(1px)}
  .btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}
  .btn-block{width:100%}

  /* Header */
  header.site{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
  header.site .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
  .logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);font-weight:800;font-size:19px;letter-spacing:-.02em}
  .logo span span{color:var(--accent)}
  .nav{display:flex;align-items:center;gap:22px}
  .nav a{color:var(--muted);text-decoration:none;font-size:15px;font-weight:500}
  .nav a:hover{color:var(--navy)}
  .nav .btn{padding:10px 16px;font-size:15px;color:#fff}
  @media (max-width:760px){.nav a:not(.btn){display:none}}

  /* Hero */
  .hero{background:radial-gradient(1200px 500px at 85% -10%,#1d3f73 0,transparent 60%),linear-gradient(180deg,var(--navy),#0e2748);color:#fff;padding:56px 0 64px}
  .hero h1{color:#fff}
  .hero h1 em{font-style:normal;color:#93C5FD}
  .hero .sub{color:#c8d3e6}
  .hero-grid{display:grid;gap:36px;align-items:center}
  .hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
  .hero .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
  .hero-note{margin-top:14px;font-size:14px;color:#9fb0cc}
  .save-card{background:#fff;color:var(--ink);border-radius:20px;padding:22px;box-shadow:0 20px 50px rgba(0,0,0,.25);max-width:420px}
  .save-card .row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px dashed var(--line);font-size:15px}
  .save-card .row s{color:#5a6578}
  .save-card .total{display:flex;justify-content:space-between;align-items:center;margin-top:14px;background:var(--green-soft);color:var(--green);border-radius:12px;padding:12px 14px;font-weight:700}
  .save-card .total b{font-size:22px}
  .save-card .cap{font-size:12.5px;color:var(--muted);margin-top:10px}
  .save-card .label{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
  .tag{display:inline-block;font-size:12px;font-weight:700;border-radius:999px;padding:3px 9px}
  .tag-green{background:var(--green-soft);color:var(--green)}
  .tag-red{background:#e6ecf5;color:#13305A}
  @media (min-width:900px){.hero-grid{grid-template-columns:1.25fr 1fr}h1{font-size:54px}.hero{padding:84px 0 92px}.save-card{margin-left:auto}}

  /* Trust strip */
  .trust{border-bottom:1px solid var(--line);background:#fff}
  .trust .wrap{display:grid;grid-template-columns:1fr;gap:14px;padding-top:20px;padding-bottom:20px}
  .trust-item{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--ink);font-weight:500}
  .trust-item svg{flex:0 0 36px}
  .trust-item small{display:block;color:var(--muted);font-weight:400;font-size:13.5px}
  @media (min-width:760px){.trust .wrap{grid-template-columns:repeat(4,1fr)}}

  /* Quiz */
  .quiz-shell{max-width:720px;margin:28px auto 0}
  .card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:24px}
  @media (min-width:760px){.card{padding:34px}}
  .progress-top{display:flex;justify-content:space-between;font-size:13.5px;color:var(--muted);font-weight:600;margin-bottom:8px}
  .progress{height:8px;background:#edf0f5;border-radius:999px;overflow:hidden;margin-bottom:24px}
  .progress div{height:100%;width:0;background:linear-gradient(90deg,var(--accent),#60A5FA);border-radius:999px;transition:width .3s ease}
  .q-title{font-size:22px;font-weight:700;color:var(--navy);margin:0 0 4px;letter-spacing:-.01em}
  .q-hint{font-size:15px;color:var(--muted);margin:0 0 18px}
  .options{display:grid;gap:10px;margin:18px 0 22px}
  @media (min-width:640px){.options.two{grid-template-columns:1fr 1fr}}
  .opt{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:15px 16px;font:500 16.5px/1.3 inherit;font-family:inherit;color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s}
  .opt:hover{border-color:#b8c2d1;background:#fbfcfe}
  .opt .ico{flex:0 0 36px;height:36px;border-radius:10px;background:var(--soft);display:grid;place-items:center;font-size:18px}
  .opt .box{margin-left:auto;flex:0 0 22px;height:22px;border:2px solid #c4ccd8;border-radius:50%}
  .opt.multi .box{border-radius:6px}
  .opt.selected{border-color:var(--navy);background:#f3f6fb}
  .opt.selected .box{border-color:var(--navy);background:var(--navy);box-shadow:inset 0 0 0 4px #fff}
  .quiz-nav{display:flex;justify-content:space-between;gap:12px}

  /* Result */
  .res-top{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:.06em}
  .pick{display:flex;gap:16px;align-items:flex-start;margin:12px 0 0;padding:20px;border-radius:16px;background:linear-gradient(180deg,#f5f8fd,#fff);border:1.5px solid #d8e1ef}
  .pick .name{font-size:23px;font-weight:800;color:var(--navy);margin:0;line-height:1.2}
  .pick .price{font-weight:700;color:var(--navy-2);margin:4px 0 8px}
  .pick p{margin:0;color:var(--muted)}
  .savings{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--green-soft);border-radius:14px;padding:14px 16px;color:var(--green)}
  .savings b{font-size:26px;letter-spacing:-.02em}
  .savings small{display:block;color:#245c47;font-size:12.5px;font-weight:500}
  .savings.neutral{background:var(--soft);color:var(--navy)}
  .savings.neutral small{color:var(--muted)}
  .res-h{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin:22px 0 10px}
  .cancel-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
  .cancel-list li{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;font-weight:500}
  .cancel-list li small{color:var(--muted);font-weight:400;display:block;font-size:13.5px}
  .steps{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;gap:10px}
  .steps li{counter-increment:s;display:flex;gap:12px;align-items:flex-start}
  .steps li::before{content:counter(s);flex:0 0 28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;font-size:14px;display:grid;place-items:center;margin-top:1px}
  .kit-nudge{margin-top:24px;border-radius:16px;background:var(--accent-soft);border:1.5px solid #C7D7FE;padding:18px}
  .kit-nudge h4{margin:0 0 4px;color:var(--navy);font-size:17px}
  .kit-nudge p{margin:0 0 14px;color:#2B3A63;font-size:15px}
  .upgrade-note{font-size:14px;color:var(--muted);margin-top:14px}

  /* Badges */
  .badge{flex:0 0 auto;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);padding:8px}
  .badge.sm{width:32px;height:32px;border-radius:9px;padding:5px}
  .badge img{width:100%;height:100%;object-fit:contain;display:block}

  /* How we pick */
  .how-grid{display:grid;gap:16px;margin-top:28px}
  @media (min-width:760px){.how-grid{grid-template-columns:repeat(4,1fr)}}
  .how{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px}
  .how .num{width:34px;height:34px;border-radius:10px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:800;margin-bottom:12px}
  .how p{margin:6px 0 0;color:var(--muted);font-size:15px}

  /* Compare */
  .brand-block{background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-top:16px;overflow:hidden}
  .brand-head{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line);background:#fbfcfd}
  .brand-head h3{font-size:18px}
  .plan-row{display:grid;grid-template-columns:1fr;gap:4px;padding:14px 18px;border-bottom:1px solid var(--line)}
  .plan-row:last-child{border-bottom:0}
  .plan-row .pn{font-weight:700;color:var(--navy);display:flex;justify-content:space-between;gap:12px;align-items:baseline}
  .plan-row .pp{font-weight:700;color:var(--navy-2);white-space:nowrap;text-align:right}
  .plan-row .pp small{display:block;font-weight:500;color:var(--muted);font-size:12.5px}
  .plan-row .meta{font-size:14.5px;color:var(--muted)}
  .plan-row .meta b{color:var(--ink);font-weight:600}
  .col-head{display:none}
  .check{display:inline-block;font-size:11.5px;font-weight:700;color:var(--note);background:var(--note-soft);border-radius:6px;padding:2px 7px;margin-top:3px;white-space:nowrap}
  @media (min-width:860px){
    .col-head{display:grid;grid-template-columns:1.1fr .9fr 1.5fr 1.4fr;gap:16px;padding:10px 18px;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}
    .plan-row{grid-template-columns:1.1fr .9fr 1.5fr 1.4fr;gap:16px;align-items:start}
    .plan-row .pn{display:block}
    .plan-row .pn .pp{display:none}
    .plan-row .pp-col{display:block!important;font-weight:700;color:var(--navy-2)}
    .plan-row .pp-col small{display:block;font-weight:500;color:var(--muted);font-size:12.5px}
    .plan-row .meta .lbl{display:none}
    .plan-row .meta{color:var(--ink)}
  }
  .pp-col{display:none}
  .sources{font-size:13.5px;color:var(--muted);margin-top:18px}

  /* Pricing */
  .price-grid{display:grid;gap:16px;margin-top:30px}
  @media (min-width:640px){.price-grid{grid-template-columns:1fr 1fr}}
  @media (min-width:1000px){.price-grid{grid-template-columns:repeat(4,1fr)}}
  .tier{position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;display:flex;flex-direction:column}
  .tier .ribbon{position:absolute;top:-12px;left:24px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px}
  .tier h3{font-size:18px}
  .tier .amt{font-size:38px;font-weight:800;color:var(--navy);letter-spacing:-.03em;margin:10px 0 0}
  .tier .amt small{font-size:15px;font-weight:600;color:var(--muted);letter-spacing:0}
  .tier .desc{color:var(--muted);font-size:14.5px;margin:4px 0 16px;min-height:44px}
  .tier ul{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:9px;font-size:15px;flex:1}
  .tier li{display:flex;gap:9px;align-items:flex-start}
  .tier li::before{content:"";flex:0 0 18px;height:18px;margin-top:3px;border-radius:50%;background:var(--green-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='%230b6b49' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
  .preview-pill{display:inline-block;margin-left:8px;vertical-align:middle;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--soft);color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 9px}

  /* Email */
  .email-band{background:var(--navy);color:#fff;border-radius:24px;padding:32px 24px;display:grid;gap:20px;align-items:center}
  .email-band h2{color:#fff}
  .email-band p{color:#c8d3e6;margin:6px 0 0}
  .email-form{display:flex;flex-direction:column;gap:10px}
  .email-form input{padding:15px 16px;border-radius:12px;border:0;font:500 16.5px inherit;font-family:inherit;width:100%}
  .email-form small{color:#9fb0cc;font-size:13px}
  @media (min-width:860px){.email-band{grid-template-columns:1.2fr 1fr;padding:44px}.email-form{flex-direction:row;flex-wrap:wrap}.email-form input{flex:1;min-width:200px}.email-form small{flex-basis:100%}}

  /* FAQ */
  details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin-top:10px}
  summary{cursor:pointer;font-weight:700;color:var(--navy);list-style:none;display:flex;justify-content:space-between;gap:16px}
  summary::-webkit-details-marker{display:none}
  summary::after{content:"+";color:var(--accent);font-size:22px;line-height:1;font-weight:600}
  details[open] summary::after{content:"–"}
  details p{margin:10px 0 0;color:var(--muted)}

  footer{background:var(--navy);color:#9fb0cc;font-size:14px;padding:44px 0}
  footer .logo{color:#fff}
  footer .logo span span{color:#FFFFFF}  /* dark lockup: white wordmark, lime star (final-v2) */
  footer a{color:#c8d3e6}
  footer .fgrid{display:grid;gap:22px}
  @media (min-width:860px){footer .fgrid{grid-template-columns:1fr 1.6fr}}

  /* Modal */
  .modal-bg{position:fixed;inset:0;background:rgba(11,31,58,.55);display:none;align-items:center;justify-content:center;padding:20px;z-index:50}
  .modal-bg.open{display:flex}
  .modal{background:#fff;border-radius:20px;max-width:380px;width:100%;padding:26px;text-align:center;box-shadow:0 30px 60px rgba(0,0,0,.3)}
  .modal .mi{width:52px;height:52px;border-radius:14px;background:var(--accent-soft);display:grid;place-items:center;margin:0 auto 12px}
  .modal h3{font-size:20px;margin-bottom:6px}
  .modal p{color:var(--muted);margin:0 0 18px;font-size:15px}

  /* ---- v4 additions ---- */
  .chip{display:inline-block;border:1px solid var(--line);background:#fff;color:var(--navy);font-weight:600;font-size:14px;border-radius:999px;padding:6px 12px}
  .brand-head .bname{display:inline-block;background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:4px 10px;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
  .safe-grid{display:grid;gap:14px;margin-top:24px}
  @media (min-width:760px){.safe-grid{grid-template-columns:1fr 1fr}}
  .safe{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px}
  .safe h3{font-size:17px;margin-bottom:8px}
  .safe dl{margin:0;display:grid;gap:8px;font-size:14.5px}
  .safe dt{font-weight:700;color:var(--navy);font-size:12.5px;text-transform:uppercase;letter-spacing:.05em}
  .safe dd{margin:0;color:var(--ink)}
  .safe ul{margin:6px 0 0;padding-left:20px;font-size:14.5px}
  .safe li{margin-bottom:5px}
  .safe .src,.switches .src,.hipaa .src{font-size:12.5px;color:var(--muted);margin-top:10px}
  .safe .src a,.switches .src a,.hipaa .src a{color:var(--navy-2);font-weight:600}
  .safe.wide{grid-column:1/-1}
  .disclaim{font-size:13.5px;color:var(--muted);margin-top:18px;border-left:3px solid var(--line);padding-left:12px}
  .switches{margin:0;padding:0;list-style:none;display:grid;gap:8px}
  .switches li{border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:15px}
  .hipaa{margin-top:16px;border:1.5px solid #C7D7FE;background:#f5f8ff;border-radius:14px;padding:16px}
  .hipaa h4{margin:0 0 6px;color:var(--navy);font-size:16px}
  .hipaa ul{margin:6px 0 0;padding-left:20px;font-size:14.5px}
  .hipaa li{margin-bottom:6px}
  .perks{list-style:none;padding:0;margin:20px auto 0;display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:center;font-size:15px;color:var(--ink);font-weight:500}
  .perks li::before{content:"✓ ";color:#0b6b49;font-weight:700}
  .sample-link{display:block;text-align:center;margin-top:10px;font-size:14.5px;font-weight:600;background:none;border:0;color:var(--navy-2);text-decoration:underline;cursor:pointer;font-family:inherit;width:100%}
  .modal.sample{text-align:left;max-width:560px;max-height:86vh;overflow:auto}
  .sample-page{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fbfcfe;font-size:14.5px}
  .sample-page h4{margin:0 0 6px;color:var(--navy)}
  .sample-page ol{padding-left:20px;margin:8px 0}
  .tier ul{align-content:start}
  .tier .license{font-size:13.5px;color:var(--ink);background:var(--soft);border-radius:10px;padding:8px 10px;margin:-6px 0 16px}
  .modal.checkout{text-align:left;max-width:440px}
  .who{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 14px}
  .who button{border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:14px 10px;font:600 15.5px inherit;font-family:inherit;color:var(--navy);cursor:pointer}
  .who button.on{border-color:var(--navy);background:#f3f6fb}
  .kit-sum{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:12px;font-size:15px}
  .kit-sum b{color:var(--navy)}
  .agree{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;margin-bottom:14px;cursor:pointer}
  .agree input{width:18px;height:18px;margin-top:2px;flex:0 0 18px}
  .co-step{display:none}.co-step.show{display:block}
  @media (min-width:1000px){.price-grid{grid-template-columns:repeat(3,1fr);max-width:980px;margin-left:auto;margin-right:auto}}
  .plan-row .mobile-src{display:block}
  @media (min-width:860px){.plan-row .mobile-src{display:none}}
  .text-link{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px;align-self:center}
  .logo-band{background:#fff;border-bottom:1px solid var(--line);padding:22px 0}
  .logo-band .wrap{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
  .logo-band .lbl{font-size:13.5px;color:var(--muted);font-weight:600}
  .logo-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
  .indep{display:flex;align-items:flex-start;gap:8px;font-size:14px;color:var(--muted);line-height:1.45}
  .indep svg{flex:0 0 16px;margin-top:2px}
  .indep b{color:var(--ink);font-weight:600}
  .optional-box{margin-top:22px;border:1px solid var(--line);background:var(--soft);border-radius:16px;padding:18px}
  .optional-box h4{margin:0 0 4px;color:var(--navy);font-size:16.5px}
  .optional-box p{margin:0 0 12px;color:var(--muted);font-size:15px}
  .optional-box .row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
  .optional-box .free-note{font-size:13.5px;color:var(--muted)}
  .res-foot{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);display:grid;gap:12px}
  .res-foot a{font-weight:600}
  .how-detail{display:grid;gap:16px;margin-top:28px}
  @media (min-width:760px){.how-detail{grid-template-columns:1fr 1fr}}
  .how-detail .how ul{margin:8px 0 0;padding-left:20px;color:var(--muted);font-size:15px}
  .how-detail .how li{margin-bottom:4px}
  .plan-row .src{font-size:12.5px;color:var(--muted);margin-top:4px}
  .plan-row .src a{color:var(--navy-2);font-weight:600}
  .tier .fine{font-size:13px;color:var(--muted);margin:-12px 0 16px}
  .email-band .fine{color:#9fb0cc;font-size:13px}
  .first-users{display:grid;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px}
  @media (min-width:860px){.first-users{grid-template-columns:1.4fr 1fr;padding:34px}}
  .about{display:grid;gap:24px;align-items:center}
  @media (min-width:760px){.about{grid-template-columns:220px 1fr}}
  .photo-ph{width:180px;height:180px;border-radius:20px;border:2px dashed #b9c3d3;background:#f8fafc;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:13.5px;font-weight:600;padding:16px}
  .ph{background:#EFF4FF;border-radius:4px;padding:0 4px}
  .privacy-list{margin:14px 0 0;padding-left:20px;color:var(--ink)}
  .privacy-list li{margin-bottom:8px}
  .draft-tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--soft);color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 9px;vertical-align:middle;margin-left:8px}
  footer nav a{margin-right:16px}
  /* v7: small brand logos next to plan names */
  .blogo{width:20px;height:20px;object-fit:contain;vertical-align:-4px;margin-right:8px;flex:none;display:inline-block}
  .blogo.sm{width:16px;height:16px;vertical-align:-3px;margin-right:0}
  .opt .ico .blogo{margin:0;width:20px;height:20px;vertical-align:middle}
  .opt .ico.logo-ico{background:#fff;border:1px solid var(--line)}
  .save-card .row .blogo{margin-right:0;width:18px;height:18px}
  .brand-head h3{display:flex;align-items:center}
  .pick .name .blogo{width:22px;height:22px;vertical-align:-3px}
  .safe h3{display:flex;align-items:center}
  /* v7: tool search (type-ahead) */
  .ts{margin:-6px 0 22px;padding:14px;border:1.5px dashed #c9d3e2;border-radius:14px;background:#fbfcfe}
  .ts-label{display:block;font-weight:700;color:var(--navy);font-size:15.5px;margin:0 0 2px}
  .ts-sub{font-size:13.5px;color:var(--muted);margin:0 0 10px}
  .ts-field{position:relative}
  .ts-input{width:100%;font:500 16px/1.3 inherit;font-family:inherit;padding:13px 14px 13px 40px;border:1.5px solid var(--line);border-radius:12px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='9' cy='9' r='6' fill='none' stroke='%235a6578' stroke-width='2'/%3E%3Cpath d='M13.5 13.5L17 17' stroke='%235a6578' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") 13px center/18px no-repeat;color:var(--ink)}
  .ts-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
  .ts-list{list-style:none;margin:6px 0 0;padding:6px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow);max-height:330px;overflow:auto}
  .ts-list[hidden]{display:none}
  .ts-opt{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;cursor:pointer;min-height:44px}
  .ts-opt[aria-selected="true"],.ts-opt:hover{background:var(--accent-soft)}
  .ts-opt .tl{flex:0 0 28px;height:28px;border:1px solid var(--line);border-radius:8px;background:#fff;display:grid;place-items:center}
  .ts-opt .tl img{width:18px;height:18px;object-fit:contain}
  .ts-opt .tn{font-weight:600;color:var(--ink);line-height:1.25;font-size:15.5px}
  .ts-opt .tn small{display:block;font-weight:400;color:var(--muted);font-size:13px}
  .ts-opt.free .tl{background:var(--soft);color:var(--muted);font-weight:700}
  .ts-empty{padding:9px 10px;color:var(--muted);font-size:14px}
  .ts-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}
  .ts-chips:empty{display:none}
  .ts-chip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #c9d3e2;border-radius:999px;padding:4px 4px 4px 8px;font-size:14px;font-weight:600;color:var(--navy)}
  .ts-chip img{width:16px;height:16px;object-fit:contain}
  .ts-chip button{border:0;background:var(--soft);color:var(--muted);width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:16px;line-height:1;display:grid;place-items:center}
  .ts-chip button:hover,.ts-chip button:focus-visible{background:#e3e9f3;color:var(--navy)}
  .ts-help{font-size:12.5px;color:var(--muted);margin:8px 0 0}
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
  .tools-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
  .tools-list li{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;font-size:15px}
  .tools-list li .tl{flex:0 0 24px;height:24px;display:grid;place-items:center;margin-top:1px}
  .tools-list li .tl img{width:18px;height:18px;object-fit:contain}
  .tools-list li small{display:block;color:var(--muted);font-size:13.5px}
  .tools-list .ov{color:var(--navy-2);font-weight:600}

/* ---- v8 additions ---- */
/* Accessibility: bigger tap targets for small source links (WCAG 2.2 target size 24px) */
.src a,.plan-row .src a,.safe .src a,.switches .src a,.hipaa .src a,.hipaa li a,.sources a,footer a,.res-foot a,.why a{display:inline-block;min-height:24px;padding:3px 0;line-height:18px}
footer nav a{padding:3px 0;min-height:24px}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.q-title:focus,.res-heading:focus{outline:none}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:#fff;color:var(--navy);padding:10px 14px;border-radius:10px;font-weight:700}
.skip:focus{left:12px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.nav a[aria-current="page"]{color:var(--navy);font-weight:700}

/* Logo row: six AI logos, self-hosted */
.logo-row .lchip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;color:var(--navy);font-weight:600;font-size:14px;border-radius:999px;padding:6px 12px 6px 9px}
.logo-row .lchip img{width:18px;height:18px;object-fit:contain}
.logo-band .owners{font-size:12.5px;color:var(--muted);margin:0;max-width:640px}

/* Homepage "explore" cards */
.explore{display:grid;gap:14px;margin-top:24px}
@media (min-width:760px){.explore{grid-template-columns:repeat(3,1fr)}}
.explore a{display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;text-decoration:none;color:var(--ink)}
.explore a:hover{border-color:#b8c2d1}
.explore h3{font-size:17px;margin-bottom:4px}
.explore p{margin:0;color:var(--muted);font-size:15px}
.explore .go{display:inline-block;margin-top:8px;color:var(--accent-dk);font-weight:600;font-size:14.5px}

/* Result: why it fits, runner-up, $0 option, helpers, save/share */
.why{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:8px}
.why li{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--ink)}
.why li::before{content:"";flex:0 0 18px;height:18px;margin-top:3px;border-radius:50%;background:var(--accent-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='%231D4ED8' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.alts{display:grid;gap:8px;margin-top:4px}
.alt{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font-size:15px}
.alt .k{flex:0 0 auto;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--navy-2);background:var(--accent-soft);border-radius:6px;padding:2px 7px;margin-top:2px}
.alt b{color:var(--navy)}
.alt small{display:block;color:var(--muted);font-size:13.5px}
.helpers{display:grid;gap:10px}
.helper{border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:15px}
.helper h4{margin:0 0 4px;font-size:15px;color:var(--navy)}
.helper p{margin:0;color:var(--ink)}
.helper .src{font-size:12.5px;color:var(--muted);margin-top:6px}
.gloss{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:14.5px}
.gloss dt{font-weight:700;color:var(--navy)}
.gloss dd{margin:0;color:var(--ink)}
.share{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.share .btn{padding:11px 16px;font-size:15px}
.share-note{font-size:13.5px;color:var(--muted);margin:8px 0 0}
.share-out{width:100%;margin-top:8px;padding:10px 12px;border:1.5px solid var(--line);border-radius:10px;font:500 14px/1.3 inherit;font-family:inherit;color:var(--ink)}

/* Compare: tap to open each company on mobile */
details.brand-block{padding:0}
details.brand-block>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:#fbfcfd;cursor:pointer}
details.brand-block>summary::-webkit-details-marker{display:none}
details.brand-block>summary::after{content:"+";color:var(--accent);font-size:22px;font-weight:600}
details.brand-block[open]>summary{border-bottom:1px solid var(--line)}
details.brand-block[open]>summary::after{content:"–"}
details.brand-block>summary h3{display:flex;align-items:center}
details.brand-block>summary .by{font-size:13.5px;color:var(--muted);font-weight:500}
details.brand-block p{margin:0}

/* Sub-pages, kit pages and legal drafts */
.page-hero{background:linear-gradient(180deg,var(--navy),#0e2748);color:#fff;padding:44px 0 40px}
.page-hero h1{color:#fff;font-size:34px}
.page-hero .sub{color:#c8d3e6}
.page-hero .crumbs{font-size:14px;color:#9fb0cc;margin-bottom:10px}
.page-hero .crumbs a{color:#c8d3e6}
@media (min-width:900px){.page-hero h1{font-size:42px}}
.draft-banner{background:var(--accent-soft);border:1.5px solid #C7D7FE;color:var(--navy);border-radius:12px;padding:12px 14px;font-weight:600;font-size:15px;margin:0 0 22px}
.legal h2{font-size:22px;margin-top:28px}
.legal p,.legal li{color:var(--ink)}
.legal ul{padding-left:20px}
.todo{background:var(--accent-soft);border-radius:4px;padding:0 4px;font-weight:600;color:var(--navy-2)}
.kit-grid{display:grid;gap:24px;margin-top:8px}
@media (min-width:900px){.kit-grid{grid-template-columns:1.4fr 1fr;align-items:start}}
.kit-box{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow)}
.kit-box .amt{font-size:40px;font-weight:800;color:var(--navy);letter-spacing:-.03em}
.kit-box .amt small{font-size:15px;font-weight:600;color:var(--muted);letter-spacing:0}
.kit-facts{list-style:none;padding:0;margin:14px 0;display:grid;gap:8px;font-size:15px}
.kit-facts li{display:flex;gap:10px}
.kit-facts b{color:var(--navy);min-width:92px;display:inline-block}
.refund-line{font-size:14px;color:var(--ink);margin:10px 0 0;text-align:center}
.secure{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;font-size:13.5px;color:var(--muted);margin-top:12px}
.secure .lock{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--navy)}
.cards{display:inline-flex;gap:6px;flex-wrap:wrap}
.cards span{border:1px solid var(--line);border-radius:5px;padding:1px 6px;font-size:11.5px;font-weight:700;color:var(--navy-2);background:#fff;letter-spacing:.02em}
.included{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:9px;font-size:15.5px}
.included li{display:flex;gap:9px;align-items:flex-start}
.included li::before{content:"";flex:0 0 18px;height:18px;margin-top:3px;border-radius:50%;background:var(--green-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='%230b6b49' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.tier .more{display:block;text-align:center;margin-top:10px;font-size:14.5px;font-weight:600;color:var(--navy-2)}

/* Print / save as PDF: just the result */
@media print{
  header.site,footer,.hero,.logo-band,.trust,section:not(#quiz),#quiz>.wrap.center,.progress-top,.progress,.share,.optional-box,#q-restart,.quiz-nav,.skip,.modal-bg{display:none!important}
  body{font-size:12pt}
  #quiz{padding:0;background:#fff}
  .card{box-shadow:none;border:0;padding:0}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:9pt;color:#5a6578;word-break:break-all}
  .print-head{display:block!important}
}
.print-head{display:none;font-size:12pt;color:#0B1F3A;margin-bottom:8px}
details.safe-fold>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px}
details.safe-fold>summary::-webkit-details-marker{display:none}
details.safe-fold>summary::after{content:"+";color:var(--accent);font-size:22px;font-weight:600}
details.safe-fold[open]>summary::after{content:"–"}
details.safe-fold>summary h3{margin-bottom:0}
details.safe-fold[open]>summary{margin-bottom:8px}
details.helper>summary{cursor:pointer;font-weight:700;color:var(--navy);font-size:15px}
details.helper>summary::after{font-size:18px}
details.helper{margin-top:0;padding:12px 14px}
.kit-grid>*{min-width:0}
.kit-facts span,.legal a,footer a{overflow-wrap:anywhere}
.sample-link,.tier .more{min-height:28px;padding:5px 0}
.page-hero .crumbs a,.tier .license a,.email-form small a,.first-users a,.about a,.kit-box a,.legal a,.refund-line a{display:inline-block;min-height:24px;padding:3px 0;line-height:18px}
/* v9: About is company-only (no personal photo box) */
.about.about-co{display:block}

/* ===== v9: sections that are easy to tell apart =====
   light blue-gray (mist) · white · soft navy tint · dark navy with white text for key blocks.
   Lime is an accent only: small highlights on dark navy, never text on white. */
:root{--mist:#EEF3F9;--tint:#E3EAF6;--lime:#A3E635}
.bg-white{background:#fff}
.bg-mist{background:var(--mist)}
.bg-tint{background:var(--tint)}
.bg-navy{background:var(--navy);color:#fff}
.trust.bg-mist{border-bottom:0}
/* blue text is a little light on tinted backgrounds, so use the darker blue there (WCAG AA) */
.bg-mist .kicker,.bg-tint .kicker,.bg-mist a:not(.btn),.bg-tint a:not(.btn){color:var(--accent-dk)}
.bg-tint .explore a,.bg-mist .explore a{color:var(--ink)}
.bg-navy h2,.bg-navy>.wrap>h3{color:#fff}
.bg-navy .sub,.bg-navy .sources,.bg-navy .perks{color:#d5deec}
.bg-navy .kicker{color:var(--lime)}
.bg-navy .sources a,.bg-navy .perks a{color:#fff;text-decoration:underline}
.bg-navy .perks li::before{color:var(--lime)}
.bg-navy .preview-pill{background:transparent;color:var(--lime);border-color:var(--lime)}
.bg-navy .tier{color:var(--ink)}
.bg-navy .tier a:not(.btn){color:var(--accent-dk)}
.hero .kicker,.page-hero .kicker{color:var(--lime)}
.cta-band h2{margin-bottom:6px}
.cta-band .sub{margin:0 auto 18px}
.buy-terms{font-size:13px;color:var(--muted);margin:8px 0 0;line-height:1.45}
.buy-terms a{color:var(--accent-dk)}
.link-note{background:var(--accent-soft);border-radius:10px;padding:10px 12px;margin:0 0 14px;font-size:14.5px;color:var(--navy)}
.table-wrap{overflow-x:auto;margin:10px 0 16px}
.legal table{border-collapse:collapse;width:100%;font-size:14.5px}
.legal th,.legal td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.legal th{background:var(--mist);color:var(--navy)}
.legal .todo{background:#E3EAF6;color:var(--navy);border:1px dashed #6b7fa3;border-radius:4px;padding:0 4px;font-weight:600}

/* ===== v9: keep-or-skip list, school choices, parent tips (navy/blue only) ===== */
.ks-row>div{flex:1}.ks-name{font-weight:700}.ks-price{color:var(--muted);font-weight:500}
.ks-tag{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:999px;font-size:12.5px;font-weight:800;letter-spacing:.02em;vertical-align:1px}
.ks-keep{background:#0B1F3A;color:#fff}.ks-could{background:#EFF4FF;color:#13305A;border:1px solid #9db4dc}.ks-cancel{background:#1D4ED8;color:#fff}
.ks-link{display:inline-block;margin-top:4px;font-size:14px;font-weight:600;padding:3px 0}
.deal-box{margin:14px 0 0;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#f5f7fa;font-size:14.5px}.deal-box ul{margin:6px 0 4px;padding-left:18px}.deal-box small{color:var(--muted)}
.parent-tips ul{margin:6px 0 0;padding-left:18px;font-size:15px;line-height:1.5}.parent-tips li{margin:4px 0}
/* ===== v9: Scout, the shield mascot (static image, nothing animated) ===== */
.scout-pick{float:right;margin:-6px -4px 6px 12px}.scout-pick img,.scout-wave img,.scout-404 img{display:block;height:auto}
.scout-wave{display:block;width:88px;margin:0 auto 6px}
.scout-404{display:block;width:160px;margin:0 auto 10px}
.nf-ctas{display:flex;flex-wrap:wrap;gap:12px 18px;justify-content:center;align-items:center;margin-top:22px}
.nf-home{color:var(--navy-2);font-weight:600;text-decoration:underline;text-underline-offset:3px;padding:6px 2px}
@media (min-width:760px){.scout-pick img{width:64px}}
@media print{.scout-pick,.scout-wave{display:none}}
/* ===== v9: results that are very easy to follow ===== */
.pick-hero{background:var(--navy);color:#fff;border-radius:18px;padding:22px 20px 20px;margin:0 0 6px}
.pick-eyebrow{margin:0 0 8px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--lime)}
.pick-name{display:flex;align-items:center;gap:12px;margin:0;font-size:30px;line-height:1.15;font-weight:800;color:#fff}
.pick-name .blogo{flex:0 0 auto;width:36px;height:36px;padding:6px;background:#fff;border-radius:10px}
.pick-price{margin:12px 0 0;font-size:20px;font-weight:700;color:#fff}
.pick-meta{margin:4px 0 0;font-size:14.5px;color:#d5deec}
.pick-why{margin:12px 0 0;font-size:15.5px;color:#dbe4f3;line-height:1.5}
@media (min-width:760px){.pick-hero{padding:28px 30px}.pick-name{font-size:36px}}
.res-block{padding:20px 2px 4px}
.res-block .res-h,.res-more .res-h{font-size:19px;font-weight:800;color:var(--navy);text-transform:none;letter-spacing:0;margin:0 0 12px}
.res-more .res-h{font-size:17px;margin:24px 0 10px}
.res-block .why{margin:0;gap:12px}
.res-block .why li{font-size:16px;line-height:1.5}
.res-block .steps{gap:14px}
.res-block .steps li{font-size:16px;line-height:1.5}
.based{margin:12px 0 0;font-size:13.5px;color:var(--muted)}
.res-more{margin-top:26px;background:var(--mist);border-radius:18px;padding:18px 16px 20px}
.res-more-h{margin:0;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--navy-2)}
.res-more .alt,.res-more .helper,.res-more .optional-box{background:#fff}
.res-more .savings.neutral{background:#fff}
.hipaa.client{border-color:#c9d5ea}
.res-more>.res-h:first-of-type{margin-top:14px}
@media (min-width:760px){.res-more{padding:22px 24px 24px}}
@media print{.pick-hero{background:none!important;color:#000;border:2px solid #000}.pick-name,.pick-price,.pick-eyebrow,.pick-meta,.pick-why{color:#000!important}.res-more{background:none;padding:0}}
@media (max-width:559px){.res-more .alt{flex-direction:column;gap:6px}}
/* v9: Checkup-list signup test */
.checkup{margin-top:22px;background:#fff;border:1px solid #c9d5ea;border-radius:16px;padding:16px 16px 18px}
.checkup .res-h{margin-top:0!important}
.ck-intro{margin:0 0 10px;font-size:14.5px;color:var(--muted)}
.ck-check{display:flex;gap:10px;align-items:flex-start;font-size:15.5px;font-weight:600;color:var(--ink);cursor:pointer;min-height:24px}
.ck-check input{width:20px;height:20px;margin-top:2px;flex:0 0 auto;accent-color:var(--navy)}
.ck-label{display:block;margin:14px 0 6px;font-weight:600;font-size:14.5px}
.opt-tag{font-weight:400;color:var(--muted)}
.ck-input{width:100%;max-width:420px;font:inherit;padding:11px 12px;border:1.5px solid #8593ab;border-radius:10px}
.ck-consent,.ck-yearly{font-size:13.5px;color:var(--muted);margin:10px 0 0;line-height:1.5}
.ck-consent a{color:var(--accent-dk)}
.ck-consent .todo{background:var(--tint);color:var(--navy);border:1px dashed #6b7fa3;border-radius:4px;padding:0 4px;font-weight:600}
.checkup .btn{margin-top:12px}
.ck-status{margin:10px 0 0;font-size:14.5px;font-weight:600;color:var(--navy)}
.ck-status.show{background:var(--accent-soft);border-radius:10px;padding:10px 12px}
@media print{.checkup{display:none!important}}
details.safe-fold>summary{min-height:28px}
.ck-check input{width:24px;height:24px;margin-top:0}
/* v9 mockups: marks things that LIVE mode hides */
.launch-label{display:inline-block;margin:0 0 10px;font-size:12.5px;font-weight:700;color:var(--navy);background:#fff;border:1px dashed #6b7fa3;border-radius:6px;padding:3px 8px}
  /* Tester 1 (Oct 18): family one-person warning, "Coming soon" kit buttons, keyboard-scrollable privacy table */
  .family-note{margin:0 0 14px;padding:12px 14px;border:1px solid #c9d3e2;border-left:4px solid var(--navy);border-radius:12px;background:#f3f6fb;color:var(--ink);font-size:15px;line-height:1.5}
  .btn.btn-soon[disabled]{cursor:not-allowed;opacity:1;background:#e3e9f3;color:#1f2d44;border-color:#c9d3e2}
  .table-wrap:focus-visible{outline:3px solid var(--navy);outline-offset:3px}

/* Oct 18: inline kit sample heading (h3) looks like the modal h4 */
.sample-page h3.sample-h{margin:0 0 6px;color:var(--navy);font-size:1em}

/* Live bug 4 (Oct 18): result screen hides the quiz intro (heading kept for screen readers) and the header quiz button */
body.on-result #quiz > .wrap.center > :not(h2){display:none}
body.on-result #quiz > .wrap.center > h2{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.on-result #quiz > .wrap.center{padding:0;margin:0}
body.on-result .nav a.btn[href$="#quiz"]{display:none}

/* Live bug 4 (Oct 18) */
.ks-downgrade{background:#EFF4FF;color:#13305A;border:1px solid #9db4dc}
/* Live bug 1 (Oct 18): long unbroken entries never widen the page */
.ts-chip,.ts-chip span,.ts-opt .tn,.tools-list b,.tools-list div,#quiz-result,.ks-name,.pick-name span{overflow-wrap:anywhere;word-break:break-word;min-width:0}
.ts-chip{max-width:100%}
.tools-list li > div{min-width:0}

/* Live low items (Oct 18): no lone word on the kit price line; long plan names fit better on phones */
.amt small,.free-note{text-wrap:balance}
@media (max-width:480px){.pick-name{font-size:23px}}

/* FT B1 (Oct 18): compare rows never overflow their card on phones */
.plan-row{min-width:0}
.plan-row > *{min-width:0;overflow-wrap:anywhere}
.plan-row .pn{flex-wrap:wrap}
.plan-row .pp{white-space:normal}
@media (max-width:859px){.plan-row{grid-template-columns:minmax(0,1fr)!important}}
/* FT B11 (Oct 18): tap targets at least 44px tall on phones and touch screens. Standalone links and buttons only;
   links inside a sentence are exempt (WCAG 2.5.8 inline exception), so paragraphs keep their normal line spacing. */
@media (pointer:coarse), (max-width:759px){
  .src a,.plan-row .src a,.safe .src a,.switches .src a,.hipaa .src a,.mobile-src a,.ks-link,footer nav a,.crumbs a,.page-hero .crumbs a,a.logo,.tier a.more,a.text-link,a.nf-home,.perks li > a,a[href^="mailto:"]:only-child{min-height:44px!important;display:inline-flex;align-items:center}
  .tier a.more{display:flex;justify-content:center}
  .btn,.opt,.go,.sample-link,details > summary{min-height:44px!important}
  .sample-link{display:inline-flex;align-items:center}
  .ts-chip button{min-width:44px;min-height:44px}
  label.ck-check{min-height:44px;align-items:center}
}

main[tabindex="-1"]:focus,.modal[tabindex="-1"]:focus{outline:none}
