/* ============================================================
   KlaroNail — theklaronaiil.com
   "Keratin Chart" design system. Original, prefix: kn-
   Palette sampled from the bottle label: leaf green, deep blue,
   amber glass.
   ============================================================ */

:root{
  --kn-green:#2E9E5B;
  --kn-green-d:#1F7743;
  --kn-green-l:#85C786;
  --kn-green-tint:#E7F5EC;
  --kn-blue:#123A6B;
  --kn-blue-2:#1B558F;
  --kn-blue-3:#4A6E9E;
  --kn-ink:#132234;
  --kn-slate:#5A6B80;
  --kn-amber:#8A4A22;
  --kn-amber-tint:#FBF0E6;
  --kn-white:#FFFFFF;
  --kn-paper:#F6F9F7;
  --kn-mist:#EAF0EE;
  --kn-line:#D5E0DA;
  --kn-red:#C0392B;
  --kn-red-tint:#FCEEEC;

  --kn-display:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --kn-body:"Newsreader",Georgia,"Times New Roman",serif;
  --kn-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;

  --kn-wrap:1180px;
  --kn-narrow:750px;
  --kn-r:10px;
  --kn-sh:0 1px 2px rgba(18,58,107,.05),0 12px 30px -12px rgba(18,58,107,.20);
  --kn-sh-lg:0 2px 6px rgba(18,58,107,.08),0 28px 60px -22px rgba(18,58,107,.30);
  --kn-ring:0 0 0 3px rgba(46,158,91,.42);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
}

body{
  margin:0;background:var(--kn-white);color:var(--kn-ink);
  font-family:var(--kn-body);font-size:17px;line-height:1.72;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}

/* ── FORCE-CENTRE BLOCK (standing rule) ───────────────────── */
img{max-width:100%;height:auto}
img,figure img,section img,.kn-card img,.kn-panel img{
  display:block!important;margin-left:auto!important;margin-right:auto!important;
}
figure{margin:0;text-align:center}
.kn-center{text-align:center}
.mx-auto{margin-left:auto!important;margin-right:auto!important}
.d-block{display:block!important}

a{color:var(--kn-green-d);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--kn-blue)}
:focus-visible{outline:none;box-shadow:var(--kn-ring);border-radius:3px}

h1,h2,h3,h4{
  font-family:var(--kn-display);font-weight:700;line-height:1.16;
  letter-spacing:-.028em;margin:0 0 .55em;color:var(--kn-blue);
}
h1{font-size:clamp(2rem,5.4vw,3.5rem);font-weight:800}
h2{font-size:clamp(1.58rem,3.9vw,2.4rem)}
h3{font-size:clamp(1.1rem,2.4vw,1.38rem)}
h4{font-size:1rem;letter-spacing:0}
p{margin:0 0 1.15em}

.kn-wrap{width:min(100% - 2.4rem,var(--kn-wrap));margin-inline:auto}
.kn-narrow{width:min(100% - 2.4rem,var(--kn-narrow));margin-inline:auto}
section{padding:4.4rem 0}
@media(max-width:640px){section{padding:2.9rem 0}}

/* ── Labels ───────────────────────────────────────────────── */
.kn-eyebrow{
  font-family:var(--kn-mono);font-size:.71rem;letter-spacing:.19em;
  text-transform:uppercase;color:var(--kn-green-d);
  display:block;margin-bottom:.9rem;font-weight:500;
}
.kn-eyebrow--blue{color:var(--kn-blue-3)}
.kn-eyebrow--light{color:var(--kn-green-l)}
.kn-lede{font-size:clamp(1.04rem,2vw,1.2rem);color:var(--kn-slate);max-width:64ch;line-height:1.68}

/* ── Buttons ──────────────────────────────────────────────── */
.kn-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  font-family:var(--kn-display);font-weight:700;font-size:1rem;
  padding:.95rem 1.8rem;border-radius:var(--kn-r);border:2px solid transparent;
  cursor:pointer;text-decoration:none;text-align:center;line-height:1.25;
  transition:transform .16s ease,background .16s ease,box-shadow .16s ease,color .16s ease;
}
.kn-btn--primary{background:var(--kn-green);color:#fff;box-shadow:0 8px 20px -8px rgba(46,158,91,.7)}
.kn-btn--primary:hover{background:var(--kn-green-d);color:#fff;transform:translateY(-2px)}
.kn-btn--blue{background:var(--kn-blue);color:#fff}
.kn-btn--blue:hover{background:var(--kn-blue-2);color:#fff;transform:translateY(-2px)}
.kn-btn--ghost{background:transparent;color:var(--kn-blue);border-color:var(--kn-line)}
.kn-btn--ghost:hover{border-color:var(--kn-blue);background:var(--kn-mist)}
.kn-btn--light{background:#fff;color:var(--kn-blue)}
.kn-btn--light:hover{background:var(--kn-mist);transform:translateY(-2px)}
.kn-btn--full{width:100%}
.kn-btn--sm{padding:.6rem 1.1rem;font-size:.9rem}

/* ── Header ───────────────────────────────────────────────── */
.kn-head{
  position:sticky;top:0;z-index:60;background:rgba(255,255,255,.95);
  backdrop-filter:blur(12px);border-bottom:1px solid var(--kn-line);
}
.kn-head__in{display:flex;align-items:center;gap:1.2rem;padding:.75rem 0}
.kn-brand{display:flex;align-items:center;gap:.55rem;text-decoration:none;flex:none}
.kn-brand svg{width:38px;height:38px;flex:none;display:block!important;margin:0!important}
.kn-brand span{font-family:var(--kn-display);font-size:1.3rem;font-weight:800;color:var(--kn-blue);letter-spacing:-.04em;line-height:1}
.kn-brand span em{font-style:normal;color:var(--kn-green)}
.kn-nav{display:flex;gap:.2rem;margin-left:auto;align-items:center}
.kn-nav a{
  font-family:var(--kn-display);font-size:.95rem;font-weight:600;color:var(--kn-slate);
  text-decoration:none;padding:.5rem .8rem;border-radius:var(--kn-r);
}
.kn-nav a:hover,.kn-nav a[aria-current="page"]{background:var(--kn-mist);color:var(--kn-blue)}
.kn-nav .kn-btn{margin-left:.5rem}
.kn-burger{
  display:none;margin-left:auto;background:none;border:1px solid var(--kn-line);
  border-radius:var(--kn-r);width:44px;height:44px;cursor:pointer;
  align-items:center;justify-content:center;padding:0;
}
.kn-burger i{display:block;width:19px;height:2px;background:var(--kn-blue);position:relative}
.kn-burger i::before,.kn-burger i::after{content:"";position:absolute;left:0;width:19px;height:2px;background:var(--kn-blue)}
.kn-burger i::before{top:-6px}.kn-burger i::after{top:6px}
@media(max-width:900px){
  .kn-burger{display:flex}
  .kn-nav{
    position:fixed;inset:62px 0 auto;flex-direction:column;align-items:stretch;
    background:#fff;border-bottom:1px solid var(--kn-line);
    padding:.9rem 1.2rem 1.4rem;gap:.1rem;margin:0;
    transform:translateY(-140%);transition:transform .28s cubic-bezier(.4,0,.2,1);
    box-shadow:var(--kn-sh);max-height:calc(100vh - 62px);overflow-y:auto;
  }
  .kn-nav[data-open="true"]{transform:translateY(0)}
  .kn-nav a{padding:.78rem .6rem;font-size:1rem}
  .kn-nav .kn-btn{margin:.6rem 0 0}
}

/* ── Hero ─────────────────────────────────────────────────── */
.kn-hero{
  position:relative;overflow:hidden;padding:3.6rem 0 3.2rem;
  background:
    radial-gradient(90% 70% at 86% 6%,rgba(46,158,91,.14),transparent 62%),
    radial-gradient(85% 65% at 4% 94%,rgba(18,58,107,.10),transparent 62%),
    var(--kn-paper);
  border-bottom:1px solid var(--kn-line);
}
.kn-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;
  background-image:linear-gradient(var(--kn-line) 1px,transparent 1px),
                   linear-gradient(90deg,var(--kn-line) 1px,transparent 1px);
  background-size:46px 46px;
  -webkit-mask-image:radial-gradient(80% 60% at 50% 40%,#000,transparent 76%);
  mask-image:radial-gradient(80% 60% at 50% 40%,#000,transparent 76%);
}
.kn-hero__grid{display:grid;grid-template-columns:1.04fr .96fr;gap:2.8rem;align-items:center;position:relative}
@media(max-width:900px){.kn-hero__grid{grid-template-columns:1fr;gap:2rem}}
.kn-hero__grid > *{min-width:0}
.kn-hero h1 em{font-style:normal;color:var(--kn-green-d)}
.kn-hero__cta{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.5rem 0 1.3rem}
.kn-hero__cta .kn-btn{flex:1 1 auto;min-width:210px}
@media(max-width:560px){
  .kn-hero__cta{display:grid;grid-template-columns:1fr;gap:.6rem}
  .kn-hero__cta .kn-btn{min-width:0;width:100%}
}
.kn-hero__img{width:100%;max-width:420px;filter:drop-shadow(0 24px 38px rgba(18,58,107,.24))}
@media(max-width:560px){.kn-hero__img{max-width:100%}.kn-hero figure{max-width:100%;overflow:hidden}}
.kn-hero__seal{
  display:inline-flex;align-items:center;gap:.5rem;background:var(--kn-blue);
  color:#fff;font-family:var(--kn-mono);font-size:.67rem;letter-spacing:.1em;
  text-transform:uppercase;padding:.45rem .95rem;border-radius:999px;margin-top:.9rem;
}

/* ── Spec rail ────────────────────────────────────────────── */
.kn-rail{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--kn-green);margin-top:1.3rem}
.kn-rail > div{padding:.8rem .6rem;border-right:1px solid var(--kn-line);min-width:0}
.kn-rail > div:last-child{border-right:none}
.kn-rail dt{font-family:var(--kn-mono);font-size:.61rem;letter-spacing:.12em;text-transform:uppercase;color:var(--kn-slate);margin-bottom:.2rem;overflow-wrap:anywhere}
.kn-rail dd{margin:0;font-family:var(--kn-display);font-size:1.14rem;font-weight:700;line-height:1.2;color:var(--kn-blue);overflow-wrap:anywhere}
@media(max-width:560px){.kn-rail{grid-template-columns:repeat(2,1fr)}.kn-rail > div:nth-child(2){border-right:none}}

/* ── Ticker ───────────────────────────────────────────────── */
.kn-ticker{background:var(--kn-blue);padding:.95rem 0}
.kn-ticker ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem 2rem}
.kn-ticker li{
  color:#CFE0F2;font-family:var(--kn-mono);font-size:.71rem;
  letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;gap:.5rem;
}
.kn-ticker li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--kn-green-l);flex:none}
@media(max-width:700px){
  .kn-ticker ul{display:grid;grid-template-columns:1fr 1fr;gap:.5rem .9rem}
  .kn-ticker li{font-size:.61rem;letter-spacing:.05em;line-height:1.35;align-items:flex-start}
  .kn-ticker li::before{margin-top:.45em}
  .kn-ticker li:last-child{grid-column:1/-1}
}

/* ── Surfaces ─────────────────────────────────────────────── */
.kn-sec--paper{background:var(--kn-paper)}
.kn-sec--mist{background:var(--kn-mist)}
.kn-sec--blue{background:var(--kn-blue);color:#BFD4EC}
.kn-sec--blue h2,.kn-sec--blue h3{color:#fff}
.kn-sec--blue .kn-lede{color:#A4BEDD}
.kn-head2{max-width:60ch;margin-bottom:2.3rem}
.kn-head2--c{margin-inline:auto;text-align:center;max-width:56ch}
.kn-head2--c h2{max-width:23ch;margin-inline:auto}

/* ── Answer block (AEO) ───────────────────────────────────── */
.kn-answer{
  background:var(--kn-green-tint);border-left:5px solid var(--kn-green);
  padding:1.5rem 1.6rem;margin:0 0 2.2rem;border-radius:0 var(--kn-r) var(--kn-r) 0;
}
.kn-answer p{font-size:1.05rem;margin:0;color:var(--kn-ink)}
.kn-answer p+p{margin-top:.75rem}

.kn-note{
  background:var(--kn-mist);border:1px solid var(--kn-line);
  border-radius:var(--kn-r);padding:1.2rem 1.35rem;margin:1.6rem 0;font-size:.97rem;
}
.kn-note p:last-child{margin-bottom:0}
.kn-sec--blue .kn-note{background:#1A4680;border-color:#2D5C99;color:#BFD4EC}

/* Medical safety callout — used site-wide */
.kn-alert{
  background:var(--kn-red-tint);border:1px solid #EFC4BF;border-left:5px solid var(--kn-red);
  border-radius:0 var(--kn-r) var(--kn-r) 0;padding:1.25rem 1.4rem;margin:1.8rem 0;font-size:.97rem;
}
.kn-alert b,.kn-alert strong{color:var(--kn-red)}
.kn-alert p:last-child{margin-bottom:0}

/* ── Cards ────────────────────────────────────────────────── */
.kn-g3{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1.3rem}
.kn-g2{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:2.5rem;align-items:center}
.kn-g4{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:1.2rem}
.kn-g2 > *,.kn-g3 > *,.kn-g4 > *{min-width:0}
.kn-card{
  background:#fff;border:1px solid var(--kn-line);border-radius:var(--kn-r);
  padding:1.5rem 1.35rem;transition:transform .2s,box-shadow .2s,border-color .2s;
}
.kn-card:hover{transform:translateY(-3px);box-shadow:var(--kn-sh);border-color:var(--kn-green)}
.kn-card p{font-size:.95rem;color:var(--kn-slate);margin:0;overflow-wrap:anywhere}
.kn-card h3{font-size:1.14rem;margin-bottom:.5rem}
.kn-card__n{
  font-family:var(--kn-mono);font-size:.69rem;letter-spacing:.13em;
  color:var(--kn-green-d);display:block;margin-bottom:.55rem;
}
.kn-sec--blue .kn-card{background:#1A4680;border-color:#2D5C99}
.kn-sec--blue .kn-card p{color:#BFD4EC}
.kn-sec--blue .kn-card__n{color:var(--kn-green-l)}

/* ── Nail growth clock (SIGNATURE) ────────────────────────── */
.kn-clock{background:#fff;border:1px solid var(--kn-line);border-radius:var(--kn-r);padding:1.6rem 1.5rem;box-shadow:var(--kn-sh)}
.kn-clock__track{position:relative;margin:1.6rem 0 .5rem;padding-top:1.6rem}
.kn-clock__bar{height:22px;border-radius:999px;overflow:hidden;display:flex;border:1px solid var(--kn-line);background:var(--kn-mist)}
.kn-clock__bar i{display:block;height:100%}
.kn-clock__marks{display:flex;position:absolute;top:0;left:0;right:0}
.kn-clock__marks span{
  flex:1;font-family:var(--kn-mono);font-size:.62rem;color:var(--kn-slate);
  text-align:left;border-left:1px solid var(--kn-line);padding-left:.3rem;
}
.kn-clock__rows{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:1.15rem}
.kn-clock__rows li{
  display:grid;grid-template-columns:210px 1fr;gap:.4rem 1.4rem;align-items:center;
  padding-bottom:1.1rem;border-bottom:1px dashed var(--kn-line);
}
.kn-clock__rows li:last-child{border-bottom:none;padding-bottom:0}
.kn-clock__rows li > *{min-width:0}
.kn-clock__rows b{font-family:var(--kn-display);font-size:1rem;color:var(--kn-blue);display:block}
.kn-clock__rows .kn-clock__len{display:block;height:14px;border-radius:999px;background:var(--kn-mist);overflow:hidden;border:1px solid var(--kn-line)}
.kn-clock__rows .kn-clock__len i{display:block;height:100%;width:var(--w,0%);border-radius:999px;background:linear-gradient(90deg,var(--kn-green-d),var(--kn-green));transition:width 1s cubic-bezier(.22,1,.36,1)}
.kn-clock__rows small{font-family:var(--kn-mono);font-size:.68rem;line-height:1.5;color:var(--kn-slate);display:block;margin-top:.35rem}
@media(max-width:640px){
  .kn-clock__rows li{grid-template-columns:1fr;gap:.5rem;padding-bottom:1rem}
  .kn-clock__marks span{font-size:.55rem}
}

/* ── Claim ladder ─────────────────────────────────────────── */
.kn-ladder{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}
.kn-ladder li{
  background:#fff;border:1px solid var(--kn-line);border-left:5px solid var(--kn-line);
  border-radius:0 var(--kn-r) var(--kn-r) 0;padding:1.05rem 1.25rem;
}
.kn-ladder li b{font-family:var(--kn-display);color:var(--kn-blue);display:block;margin-bottom:.25rem}
.kn-ladder li p{font-size:.93rem;color:var(--kn-slate);margin:0}
.kn-ladder .is-here{border-left-color:var(--kn-green);background:var(--kn-green-tint)}
.kn-ladder .is-rx{border-left-color:var(--kn-blue)}
.kn-ladder .is-otc{border-left-color:var(--kn-amber)}
.kn-ladder__tag{
  font-family:var(--kn-mono);font-size:.6rem;letter-spacing:.11em;text-transform:uppercase;
  padding:.2rem .55rem;border-radius:999px;background:var(--kn-green);color:#fff;margin-left:.5rem;
  display:inline-block;vertical-align:middle;
}

/* ── Ingredient dossier ───────────────────────────────────── */
.kn-dossier{list-style:none;margin:0;padding:0;display:grid;gap:.85rem}
.kn-doss{
  background:#fff;border:1px solid var(--kn-line);border-left:4px solid var(--kn-blue-3);
  border-radius:0 var(--kn-r) var(--kn-r) 0;padding:1.15rem 1.3rem;
}
.kn-doss--strong{border-left-color:var(--kn-green)}
.kn-doss--weak{border-left-color:var(--kn-red)}
.kn-doss__top{display:flex;flex-wrap:wrap;align-items:baseline;gap:.45rem .9rem;margin-bottom:.5rem}
.kn-doss__name{font-family:var(--kn-display);font-weight:700;font-size:1.07rem;color:var(--kn-blue)}
.kn-doss__tag{
  font-family:var(--kn-mono);font-size:.61rem;letter-spacing:.1em;text-transform:uppercase;
  padding:.22rem .55rem;border-radius:999px;background:var(--kn-mist);color:var(--kn-slate);
}
.kn-doss__tag--nail{background:var(--kn-green-tint);color:var(--kn-green-d)}
.kn-doss__tag--other{background:var(--kn-red-tint);color:var(--kn-red)}
.kn-doss__meter{display:flex;align-items:center;gap:.6rem;margin:.5rem 0 .7rem}
.kn-doss__track{flex:1;height:7px;background:var(--kn-mist);border-radius:999px;overflow:hidden;min-width:0}
.kn-doss__track i{display:block;height:100%;width:var(--w,0%);border-radius:999px;background:linear-gradient(90deg,var(--kn-blue),var(--kn-blue-3));transition:width .9s cubic-bezier(.22,1,.36,1)}
.kn-doss--strong .kn-doss__track i{background:linear-gradient(90deg,var(--kn-green-d),var(--kn-green))}
.kn-doss--weak .kn-doss__track i{background:linear-gradient(90deg,#8E2B20,var(--kn-red))}
.kn-doss__pct{font-family:var(--kn-mono);font-size:.72rem;color:var(--kn-slate);flex:none}
.kn-doss p{font-size:.93rem;color:var(--kn-slate);margin:0}
@media(max-width:560px){
  .kn-doss__top{gap:.35rem .6rem}
  .kn-doss__name{flex:1 1 100%}
}

/* ── Table ────────────────────────────────────────────────── */
.kn-tablewrap{overflow-x:auto;border:1px solid var(--kn-line);border-radius:var(--kn-r);background:#fff;-webkit-overflow-scrolling:touch;max-width:100%}
table.kn-table{width:100%;border-collapse:collapse;font-size:.93rem;min-width:580px;margin:0}
table.kn-table th,table.kn-table td{padding:.8rem 1rem;text-align:left;border-bottom:1px solid var(--kn-line)}
table.kn-table thead th{
  background:var(--kn-blue);color:#fff;font-family:var(--kn-mono);
  font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;
}
table.kn-table tbody tr:nth-child(even){background:var(--kn-paper)}
table.kn-table tbody tr:last-child td{border-bottom:none}
.kn-yes{color:var(--kn-green-d);font-weight:700}
.kn-no{color:var(--kn-red);font-weight:700}
@media(max-width:700px){
  .kn-tablewrap::after{
    content:"Swipe to see the full table";display:block;
    font-family:var(--kn-mono);font-size:.61rem;letter-spacing:.09em;text-transform:uppercase;
    color:var(--kn-slate);padding:.6rem 1rem;border-top:1px solid var(--kn-line);
    background:var(--kn-mist);position:sticky;left:0;
  }
}

/* ── Pricing ──────────────────────────────────────────────── */
.kn-packs{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;align-items:stretch}
.kn-packs > *{min-width:0}
@media(max-width:940px){.kn-packs{grid-template-columns:1fr;max-width:420px;margin-inline:auto}}
.kn-pack{
  background:#fff;border:1px solid var(--kn-line);border-radius:var(--kn-r);
  padding:1.6rem 1.4rem;display:flex;flex-direction:column;position:relative;
  transition:transform .2s,box-shadow .2s;
}
.kn-pack:hover{transform:translateY(-4px);box-shadow:var(--kn-sh-lg)}
.kn-pack--best{border:2px solid var(--kn-green);box-shadow:var(--kn-sh-lg)}
.kn-pack__tag{
  position:absolute;top:-12px;left:50%;transform:translateX(-50%);
  background:var(--kn-blue);color:#fff;font-family:var(--kn-mono);
  font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;
  padding:.36rem .9rem;border-radius:999px;white-space:nowrap;
}
.kn-pack--best .kn-pack__tag{background:var(--kn-green)}
.kn-pack h3{text-align:center;margin:.3rem 0 .1rem;font-size:1.48rem}
.kn-pack__sub{font-family:var(--kn-mono);font-size:.69rem;letter-spacing:.1em;text-transform:uppercase;color:var(--kn-slate);text-align:center;margin-bottom:1rem}
.kn-pack img{max-width:160px;margin-bottom:1rem}
.kn-pack__price{text-align:center}
.kn-pack__price b{font-family:var(--kn-display);font-size:2.8rem;font-weight:800;line-height:1;color:var(--kn-blue)}
.kn-pack__price span{display:block;font-family:var(--kn-mono);font-size:.71rem;color:var(--kn-slate);letter-spacing:.07em;margin-top:.3rem}
.kn-pack__tot{text-align:center;font-family:var(--kn-mono);font-size:.85rem;color:var(--kn-green-d);font-weight:500;margin:.5rem 0 1.1rem}
.kn-pack ul{list-style:none;padding:0;margin:0 0 1.4rem;font-size:.93rem}
.kn-pack li{padding:.4rem 0 .4rem 1.45rem;position:relative;border-bottom:1px dashed var(--kn-line);color:var(--kn-slate)}
.kn-pack li:last-child{border-bottom:none}
.kn-pack li::before{content:"";position:absolute;left:.25rem;top:.95rem;width:7px;height:7px;border-radius:50%;background:var(--kn-green)}
.kn-pack .kn-btn{margin-top:auto}

/* ── Reviews ──────────────────────────────────────────────── */
.kn-revs{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.3rem}
.kn-revs > *{min-width:0}
.kn-rev{background:#fff;border:1px solid var(--kn-line);border-radius:var(--kn-r);padding:1.45rem 1.3rem;display:flex;flex-direction:column}
.kn-rev__st{color:var(--kn-green);letter-spacing:.13em;font-size:.92rem;margin-bottom:.6rem}
.kn-rev p{font-size:.95rem;color:var(--kn-slate);flex:1}
.kn-rev__by{display:flex;align-items:center;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--kn-line)}
.kn-rev__by img{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:none;margin:0!important}
.kn-rev__by b{display:block;font-family:var(--kn-display);font-size:.95rem;color:var(--kn-blue)}
.kn-rev__by span{font-family:var(--kn-mono);font-size:.65rem;letter-spacing:.07em;text-transform:uppercase;color:var(--kn-green-d)}

/* ── FAQ ──────────────────────────────────────────────────── */
.kn-faq{border-top:1px solid var(--kn-line);max-width:830px;margin-inline:auto}
.kn-faq details{border-bottom:1px solid var(--kn-line)}
.kn-faq summary{
  cursor:pointer;list-style:none;padding:1.1rem 2.5rem 1.1rem 0;position:relative;
  font-family:var(--kn-display);font-size:clamp(1.02rem,2.1vw,1.16rem);font-weight:700;line-height:1.4;color:var(--kn-blue);
}
.kn-faq summary::-webkit-details-marker{display:none}
.kn-faq summary::after{
  content:"";position:absolute;right:.4rem;top:1.4rem;width:10px;height:10px;
  border-right:2px solid var(--kn-green);border-bottom:2px solid var(--kn-green);
  transform:rotate(45deg);transition:transform .22s ease;
}
.kn-faq details[open] summary::after{transform:rotate(-135deg)}
.kn-faq__a{padding:0 0 1.25rem;color:var(--kn-slate);font-size:1rem}
.kn-faq__a p:last-child{margin-bottom:0}

/* ── Badges ───────────────────────────────────────────────── */
.kn-badges{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:1.4rem 2.6rem;margin-top:2.2rem;padding-top:1.6rem;border-top:1px solid var(--kn-line)}
.kn-badges figure{max-width:195px}
.kn-badges img{max-height:70px;width:auto;margin-bottom:.55rem}
.kn-badges figcaption{font-family:var(--kn-mono);font-size:.61rem;letter-spacing:.06em;text-transform:uppercase;color:var(--kn-slate);line-height:1.5}

/* ── Breadcrumb / page head ───────────────────────────────── */
.kn-crumbs{font-family:var(--kn-mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--kn-slate);padding-top:1.3rem}
.kn-crumbs a{color:var(--kn-green-d);text-decoration:none}
.kn-crumbs a:hover{text-decoration:underline}
.kn-crumbs i{font-style:normal;margin:0 .4rem;opacity:.5}
.kn-pagehead{padding:2.1rem 0 1rem}
.kn-pagehead__g{display:grid;grid-template-columns:1.05fr .95fr;gap:1.4rem 3rem;align-items:end}
.kn-pagehead__g > *{min-width:0}
.kn-pagehead__g h1{margin-bottom:0}
.kn-pagehead__g .kn-lede{max-width:52ch;margin-bottom:.3rem}
@media(max-width:860px){.kn-pagehead__g{grid-template-columns:1fr;gap:.9rem;align-items:start}.kn-pagehead__g h1{margin-bottom:.2em}}
.kn-pagehead + section{padding-top:1.4rem}

/* ── Prose ────────────────────────────────────────────────── */
.kn-prose{max-width:var(--kn-narrow);margin-inline:auto;font-size:1.03rem}
.kn-prose h2{font-size:clamp(1.38rem,3vw,1.8rem);margin-top:2.1em}
.kn-prose h3{margin-top:1.7em}
.kn-prose ul,.kn-prose ol{padding-left:1.3rem;margin:0 0 1.2em}
.kn-prose li{margin-bottom:.5em}
.kn-prose img{max-width:100%;height:auto}

/* ── Footer ───────────────────────────────────────────────── */
.kn-foot{background:var(--kn-blue);color:#A4BEDD;padding:3.3rem 0 1.6rem;font-size:.93rem}
.kn-foot__g{display:grid;grid-template-columns:1.55fr 1fr 1fr 1fr;gap:2.3rem}
.kn-foot__g > *{min-width:0}
@media(max-width:860px){.kn-foot__g{grid-template-columns:1fr 1fr;gap:1.8rem 2rem}}
@media(max-width:480px){.kn-foot__g{grid-template-columns:1fr}}
.kn-foot h4{color:#fff;font-family:var(--kn-mono);font-size:.69rem;letter-spacing:.13em;text-transform:uppercase;margin-bottom:.95rem;font-weight:500}
.kn-foot ul{list-style:none;margin:0;padding:0}
.kn-foot li{margin-bottom:.5rem}
.kn-foot a{color:#A4BEDD;text-decoration:none}
.kn-foot a:hover{color:#fff}
.kn-foot .kn-brand span{color:#fff}
.kn-foot__blurb{max-width:34ch;margin-top:.9rem;line-height:1.65}
.kn-legal{border-top:1px solid #2D5C99;margin-top:2.3rem;padding-top:1.6rem;font-size:.8rem;line-height:1.7;color:#89A6C8}
.kn-legal strong{color:#CFE0F2}
.kn-legal p{margin-bottom:.85rem}
.kn-legal p:last-child{margin-bottom:0}

/* ── Sticky bar ───────────────────────────────────────────── */
.kn-bar{
  position:fixed;left:0;right:0;bottom:0;z-index:70;display:none;
  background:rgba(18,58,107,.97);backdrop-filter:blur(10px);
  padding:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom));
  align-items:center;gap:.9rem;box-shadow:0 -8px 22px rgba(18,58,107,.28);
}
.kn-bar div{flex:1;min-width:0}
.kn-bar b{display:block;color:#fff;font-family:var(--kn-display);font-size:.93rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kn-bar span{font-family:var(--kn-mono);font-size:.65rem;color:#9BB7D8;letter-spacing:.05em;white-space:nowrap}
.kn-bar .kn-btn{flex:none}
@media(max-width:768px){.kn-bar{display:flex}body{padding-bottom:74px}}

/* ── Utilities ────────────────────────────────────────────── */
.kn-mt3{margin-top:1.5rem}.kn-mt4{margin-top:2.2rem}
.kn-small{font-size:.81rem;color:var(--kn-slate);line-height:1.6;max-width:74ch;margin-inline:auto}
.kn-skip{position:absolute;left:-9999px;top:0;background:var(--kn-green);color:#fff;padding:.8rem 1.2rem;z-index:200;border-radius:0 0 6px 0;font-weight:700}
.kn-skip:focus{left:0}
.kn-reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}
.kn-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.kn-reveal{opacity:1;transform:none}}
