/* Base styles (skeleton) */
*,*::before,*::after{box-sizing:border-box}
html:focus-within{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--kc-ink);
  background:var(--kc-bg);
  line-height:1.65;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,h4{
  font-family:"Plus Jakarta Sans", Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  line-height:1.15;
  margin:0 0 .5rem 0;
  letter-spacing:-.02em;
}
a{color:inherit; text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%; height:auto; display:block}
.kc-container{width:100%; max-width:1200px; margin:0 auto; padding:0 20px}
@media (min-width:768px){ .kc-container{padding:0 28px} }
.kc-main{min-height:60vh;margin-top:5rem;}
.kc-section{padding:56px 0}
@media (min-width:1024px){ .kc-section{padding:84px 0} }
.kc-section--surface{background:var(--kc-surface)}
.kc-section--surface2{background:var(--kc-surface-2)}
.kc-section--sub{padding:28px 0}
.kc-eyebrow{font-size:.85rem; text-transform:uppercase; letter-spacing:.08em; color:var(--kc-slate-500); margin:0 0 .5rem}
.kc-h1{font-size:2rem}
@media (min-width:768px){ .kc-h1{font-size:3.1rem} }
.kc-h2{font-size:1.6rem}
@media (min-width:768px){ .kc-h2{font-size:2.2rem} }
.kc-h3{font-size:1.2rem}
.kc-lead{font-size:1.05rem; color:var(--kc-slate-700); max-width:68ch}
.kc-note{color:var(--kc-slate-500); margin-top:1rem}
.kc-prose{max-width:72ch}
.kc-prose p{margin:.75rem 0}
.kc-muted{color:var(--kc-slate-500)}
:focus-visible{outline:3px solid var(--kc-blue-500); outline-offset:3px; border-radius:10px}
.kc-skip{position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden}
.kc-skip__link:focus{position:fixed; left:16px; top:16px; width:auto; height:auto; padding:10px 14px; background:#fff; z-index:9999; border:1px solid var(--kc-line); border-radius:12px}
