/* generated by render-qck-site.ts — do not hand-edit (gitignored output) */
*{box-sizing:border-box;margin:0}
:root{--radius:0.75rem}
html{scroll-behavior:smooth}
body{background:#FCFCFD;color:#1C1C22;font-family:'Inter', -apple-system, 'Segoe UI', sans-serif;line-height:1.65;font-size:1.0625rem;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Lora', Georgia, 'Times New Roman', serif;line-height:1.2;color:#1C1C22}
a{color:#2F5BEA}
a:hover{opacity:.85}
img{max-width:100%}
code{background:#ECECF0;padding:.1em .35em;border-radius:4px;font-size:.9em}
.zenb{position:absolute;left:-9999px;top:0;background:#2F5BEA;color:#FFFFFF;padding:.5rem 1rem;z-index:9}
.zenb:focus{left:0}
.xdgc{max-width:72rem;margin:0 auto;padding:0 1.5rem}
.rvcn{font-family:'Lora', Georgia, 'Times New Roman', serif;font-weight:700;font-size:1.25rem;text-decoration:none;color:inherit}
.ygga{color:#5C5C6B;font-size:.85rem}
.lbal{display:flex;flex-wrap:wrap;gap:1.1rem}
.wnax{text-decoration:none;color:inherit;font-size:.95rem}
.wnax:hover{color:#2F5BEA;opacity:1}
.gesz{display:none;background:none;border:1px solid currentColor;border-radius:6px;color:inherit;width:2.6rem;height:2.3rem;padding:.45rem .55rem;cursor:pointer;flex-direction:column;justify-content:space-between}
.gesz span{display:block;height:2px;background:currentColor;border-radius:2px}
.gesz[aria-expanded="true"] span:nth-child(2){opacity:0}
.csvj{border-bottom:1px solid #E0E0E6;background:#FCFCFD} .csvj .xdgc{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem}
.yafo{background:linear-gradient(160deg, #F4F4F6, #dce2f5)} .yafo .xdgc{max-width:52rem;text-align:center;padding:4rem 1.5rem} .mlec{justify-content:center}
.ftwr{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#2F5BEA;font-weight:600;margin-bottom:.8rem}
.bame{font-size:clamp(1.9rem,4.5vw,3rem);margin-bottom:1rem}
.upmu{font-size:1.15rem;color:#5C5C6B;max-width:44rem;margin:0 auto}
.mlec{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin-top:1.4rem}
.udbp{border:1px solid #E0E0E6;background:#F4F4F6;border-radius:999px;padding:.3rem .85rem;font-size:.85rem}
.okna{padding:2.6rem 0}
/* the measure fix: prose column CENTERED in the container, never pinned left */
.amaj,.jssy,.ugqv{max-width:46rem;margin-left:auto;margin-right:auto}
.amaj{padding:1.4rem 0}
.amaj h2{font-size:1.6rem;margin-bottom:.8rem}
.amaj h3{font-size:1.2rem;margin:.9rem 0 .5rem}
.amaj p,.amaj li,.jssy p{margin-bottom:.85rem}
.amaj ul,.amaj ol{padding-left:1.4rem}
.jssy{font-size:1.12rem}
.ugqv{background:#F4F4F6;border:1px solid #E0E0E6;border-radius:var(--radius);padding:1.2rem 1.4rem;margin-bottom:1.6rem}
.pryw{overflow-x:auto;margin:1rem 0}
table{border-collapse:collapse;width:100%;font-size:.95rem}
th,td{border:1px solid #E0E0E6;padding:.55rem .7rem;text-align:left;vertical-align:top}
th{background:#F4F4F6}
blockquote{border-left:4px solid #2F5BEA;padding:.2rem 0 .2rem 1rem;color:#5C5C6B;margin:1rem 0}
.xscq{max-width:46rem;margin:1.8rem auto;background:#e8ebf5;border:1px solid #E0E0E6;border-radius:var(--radius);padding:1.4rem 1.6rem}
.cwok{font-size:1.25rem;margin-bottom:.7rem}
.qkqj{list-style:none;padding:0;margin-top:.8rem;display:grid;gap:.45rem}
.apmo{padding-left:1.1rem;position:relative;font-size:.95rem}
.apmo::before{content:"";position:absolute;left:0;top:.55em;width:.45em;height:.45em;border-radius:50%;background:#2F5BEA}
.qsqc{max-width:46rem;margin:1.8rem auto;padding:0;list-style:none;counter-reset:src}
.dupn{border-top:1px solid #E0E0E6;padding:.9rem 0 .9rem 2.2rem;position:relative;counter-increment:src}
.dupn::before{content:counter(src);position:absolute;left:0;top:.95rem;font-family:'Lora', Georgia, 'Times New Roman', serif;font-weight:700;color:#2F5BEA}
.cxxs{margin-bottom:.3rem}
.vbrr{font-size:.88rem;color:#5C5C6B}
.eyct{max-width:46rem;margin:0 auto}
.hrru{border-bottom:1px solid #E0E0E6;padding:1.1rem 0}
.ujrc{font-size:1.15rem;margin-bottom:.5rem}
.ltlc{color:#1C1C22}
.rbqo{background:#e7e4f2;border-top:1px solid #E0E0E6;border-bottom:1px solid #E0E0E6;margin:2rem 0 0}
.lhrr{max-width:46rem;margin:0 auto;padding:2.2rem 1.5rem;text-align:center}
.lhrr h2{margin-bottom:.7rem}
.lhrr p{margin-bottom:1.1rem}
.dyvl{display:inline-block;background:#2F5BEA;color:#FFFFFF;text-decoration:none;font-weight:600;padding:.8rem 1.8rem;border-radius:var(--radius)}
.dyvl:hover{opacity:.9}

.riml{font-size:1.45rem;margin-bottom:.45rem}
.jswc p{margin-bottom:.55rem}
.jswc p:last-child{margin-bottom:0}
.kjyy{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .95rem;margin:.6rem 0 0;font-size:.92rem}
.venb{display:inline-block;font-weight:700;font-size:1.05rem;padding:1rem 2rem;border-radius:var(--radius);text-decoration:none;white-space:nowrap}
.venb:hover{opacity:.92}
.awmr{background:#1C1C22;color:#FFFFFF;border-top:4px solid #6E56CF}
.emgd{max-width:64rem;margin:0 auto;padding:1.7rem 1.5rem;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.2rem 2.5rem;align-items:center}
.awmr h2,.awmr p{color:#FFFFFF}
.xhqt{display:inline-block;background:#FCFCFD;color:#1C1C22;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .7rem;border-radius:3px;margin-bottom:.6rem}
.kjyy{color:#979799}
.htnw::before{content:"\2713\00a0"}
.venb{background:#2F5BEA;color:#FFFFFF;outline:2px solid #FFFFFF;outline-offset:2px}
@media (max-width:720px){.emgd{display:block} .xhqt{transform:none;max-width:none;margin-bottom:.6rem} .venb{display:block;text-align:center;margin-top:1rem}}
.ryym{background:#1C1C22;color:#FFFFFF} .ryym a{color:inherit}
.ryym .xdgc{padding:2.2rem 1.5rem}
.dehu{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:1.4rem}
.ubjf{font-style:italic;margin-bottom:.8rem}
.xsxi{font-size:.9rem;margin-bottom:.8rem}
.suby{font-size:.85rem;color:#5C5C6B}
.ryym .suby{opacity:.85}
.bqnj{color:#5C5C6B;font-size:.92rem}
.ryym .ygga,.ryym .bqnj{color:#979799}
.ryym .suby{color:#89898c;opacity:1}
@media(max-width:760px){
  .yafo .xdgc{grid-template-columns:1fr;gap:1.5rem}
  .dehu{grid-template-columns:1fr}
  .csvj .xdgc{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;padding:.9rem 1.5rem;text-align:left}
  .csvj .lbal{border-top:0;padding-top:0}
  .csvj .gesz{display:flex}
  .csvj .lbal{display:none;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid #E0E0E6;padding-top:.4rem;margin-top:.4rem}
  .csvj .lbal[data-open="true"]{display:flex}
  .csvj .wnax{display:block;padding:.6rem 0;font-size:1.05rem}
}

/* ---- per-site theme layer ---- */
/* Knee in Context — Craft-inspired evidence notebook */

:root {
  --kc-paper: #FCFCFD;
  --kc-sheet: #F4F4F6;
  --kc-index: #ECECF0;
  --kc-ink: #1C1C22;
  --kc-muted: #5C5C6B;
  --kc-blue: #2F5BEA;
  --kc-violet: #6E56CF;
  --kc-line: #E0E0E6;
  --kc-shadow: 0 24px 60px rgba(28, 28, 34, .11), 0 3px 10px rgba(28, 28, 34, .06);
}

body {
  background:
    linear-gradient(90deg, transparent 0, transparent calc(50% - 36rem), rgba(224, 224, 230, .28) calc(50% - 36rem), rgba(224, 224, 230, .28) calc(50% - 35.94rem), transparent calc(50% - 35.94rem), transparent calc(50% + 35.94rem), rgba(224, 224, 230, .28) calc(50% + 35.94rem), rgba(224, 224, 230, .28) calc(50% + 36rem), transparent calc(50% + 36rem)),
    var(--kc-paper);
  color: var(--kc-ink);
  font-size: 1.025rem;
  line-height: 1.72;
}

::selection {
  background: var(--kc-index);
  color: var(--kc-ink);
}

a {
  text-underline-offset: .18em;
  text-decoration-thickness: .08em;
}

a:focus-visible,
button:focus-visible {
  outline: 3px solid var(--kc-violet);
  outline-offset: 4px;
}

/* Masthead: compact editor chrome with a site-specific text mark. */
.csvj {
  border-bottom: 1px solid var(--kc-line);
  box-shadow: 0 5px 22px rgba(28, 28, 34, .045);
}

.csvj .xdgc {
  max-width: 82rem;
  padding-top: 1.15rem;
  padding-bottom: 1.15rem;
  gap: 2.25rem;
}

.rvcn {
  display: inline-flex;
  position: relative;
  align-items: center;
  gap: .68rem;
  font-size: 1.24rem;
  letter-spacing: -.035em;
  white-space: nowrap;
}

.rvcn::before {
  content: "K";
  display: inline-grid;
  width: 2.25rem;
  height: 2.25rem;
  place-items: center;
  border: 1px solid var(--kc-blue);
  border-radius: .6rem .6rem .6rem .2rem;
  background: var(--kc-blue);
  box-shadow: .28rem .28rem 0 var(--kc-index);
  color: var(--kc-paper);
  font-family: 'Inter', -apple-system, 'Segoe UI', sans-serif;
  font-size: .92rem;
  font-weight: 600;
  letter-spacing: -.05em;
}

.rvcn::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -.2rem;
  width: calc(100% - 2.95rem);
  height: 2px;
  background: linear-gradient(90deg, var(--kc-blue), var(--kc-violet) 58%, transparent 58%);
}

.ygga {
  margin: .25rem 0 0 2.95rem;
  color: var(--kc-muted);
  font-size: .67rem;
  font-weight: 600;
  letter-spacing: .13em;
  line-height: 1.35;
  text-transform: uppercase;
}

.lbal {
  justify-content: flex-end;
  gap: .25rem .35rem;
}

.wnax {
  border-radius: .5rem;
  padding: .42rem .55rem;
  color: var(--kc-muted);
  font-size: .76rem;
  font-weight: 600;
  letter-spacing: .01em;
}

.wnax:hover {
  background: var(--kc-sheet);
  color: var(--kc-blue);
}

/* Hero: a primary evidence sheet beside an abstract ruled notebook leaf. */
.yafo {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid var(--kc-line);
  background:
    radial-gradient(circle at 82% 24%, rgba(110, 86, 207, .10) 0 .32rem, transparent .36rem),
    radial-gradient(circle at 86% 30%, rgba(47, 91, 234, .13) 0 .22rem, transparent .26rem),
    linear-gradient(145deg, var(--kc-sheet), var(--kc-paper));
}

.yafo::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: repeating-linear-gradient(0deg, transparent 0 2.45rem, rgba(224, 224, 230, .4) 2.45rem calc(2.45rem + 1px));
  mask-image: linear-gradient(90deg, transparent 0 61%, #000 74% 100%);
}

.yafo .xdgc {
  display: grid;
  position: relative;
  max-width: 72rem;
  grid-template-columns: minmax(0, 1.7fr) minmax(13rem, .62fr);
  gap: 3.25rem;
  padding: 4.8rem 1.5rem 5.8rem;
  text-align: left;
}

.yafo .xdgc::after {
  content: "";
  align-self: center;
  min-height: 18rem;
  border: 1px solid var(--kc-line);
  border-radius: .85rem .85rem 2.6rem .85rem;
  background:
    linear-gradient(90deg, var(--kc-blue) 0 4px, transparent 4px),
    radial-gradient(circle at 1.55rem 1.55rem, var(--kc-violet) 0 .27rem, transparent .3rem),
    linear-gradient(135deg, transparent 0 72%, rgba(47, 91, 234, .08) 72% 100%),
    repeating-linear-gradient(0deg, transparent 0 2.35rem, var(--kc-line) 2.35rem calc(2.35rem + 1px)),
    var(--kc-paper);
  box-shadow: var(--kc-shadow);
  transform: rotate(2.2deg);
}

.yujz {
  position: relative;
  align-self: center;
  max-width: 50rem;
  border: 1px solid var(--kc-line);
  border-radius: 1rem 1rem 1rem .3rem;
  background: var(--kc-paper);
  box-shadow: var(--kc-shadow);
  padding: clamp(2rem, 5vw, 3.5rem);
}

.yujz::before {
  content: "";
  position: absolute;
  top: -.65rem;
  left: 2.2rem;
  width: 5.25rem;
  height: 1.25rem;
  border: 1px solid var(--kc-line);
  border-radius: .28rem;
  background: var(--kc-index);
  transform: rotate(-1.5deg);
}

.ftwr {
  display: flex;
  align-items: center;
  gap: .65rem;
  margin-bottom: 1rem;
  color: var(--kc-violet);
  font-size: .7rem;
  letter-spacing: .16em;
}

.ftwr::before {
  content: "";
  width: 1.8rem;
  height: 2px;
  background: var(--kc-violet);
}

.bame {
  max-width: 16ch;
  margin-bottom: 1.35rem;
  font-size: clamp(2.25rem, 5vw, 4.4rem);
  line-height: 1.04;
  letter-spacing: -.052em;
  text-wrap: balance;
}

.upmu {
  max-width: 57ch;
  margin: 0;
  color: var(--kc-muted);
  font-size: clamp(1rem, 1.8vw, 1.13rem);
  line-height: 1.68;
}

.mlec {
  justify-content: flex-start;
  gap: .5rem;
  margin-top: 1.7rem;
}

.udbp {
  border: 1px solid var(--kc-line);
  border-radius: .48rem;
  background: var(--kc-sheet);
  color: var(--kc-ink);
  padding: .42rem .68rem;
  font-size: .72rem;
  font-weight: 600;
  line-height: 1.35;
}

/* Spotlight: an indexed recommendation sheet pulled into the hero stack. */
.awmr {
  position: relative;
  z-index: 2;
  margin-top: -2.15rem;
  padding: 0 1.5rem;
  background: transparent;
  border: 0;
  color: var(--kc-paper);
}

.emgd {
  max-width: 66rem;
  margin: 0 auto;
  border: 1px solid var(--kc-ink);
  border-left: 5px solid var(--kc-violet);
  border-radius: .95rem .95rem .95rem .3rem;
  background: #1C1C22;
  box-shadow: 0 22px 48px rgba(28, 28, 34, .18);
  padding: 1.8rem 2rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.awmr h2,
.awmr p {
  color: #FCFCFD;
}

.xhqt {
  border: 1px solid var(--kc-line);
  border-radius: .35rem;
  background: #ECECF0;
  color: #1C1C22;
  padding: .28rem .58rem;
  font-size: .67rem;
  letter-spacing: .13em;
}

.riml {
  max-width: 35ch;
  margin: .1rem 0 .55rem;
  font-size: clamp(1.35rem, 2.5vw, 1.8rem);
  line-height: 1.2;
}

.jswc {
  max-width: 64ch;
  font-size: .93rem;
  line-height: 1.62;
}

.kjyy {
  gap: .45rem 1rem;
  color: #C3C3CC;
  font-size: .78rem;
}

.htnw {
  display: flex;
  align-items: center;
  gap: .4rem;
}

.htnw::before {
  content: "✓";
  display: inline-grid;
  flex: 0 0 1.25rem;
  width: 1.25rem;
  height: 1.25rem;
  place-items: center;
  border: 1px solid var(--kc-violet);
  border-radius: .35rem;
  color: #FCFCFD;
  font-size: .65rem;
}

.venb {
  border: 0;
  border-radius: .65rem .65rem .65rem .2rem;
  outline: 0;
  background: #2F5BEA;
  box-shadow: .32rem .32rem 0 var(--kc-violet);
  color: #FCFCFD;
  padding: .9rem 1.2rem;
  font-size: .88rem;
}

.venb::after,
.dyvl::after {
  content: " →";
}

/* Long-form rhythm: open pages, a typographic lede, and numbered evidence notes. */
.okna {
  padding: 4.4rem 0 2rem;
}

.okna > .xdgc {
  counter-reset: evidence-section;
}

.jssy {
  max-width: 50rem;
  margin-bottom: 2.4rem;
  border-left: 4px solid var(--kc-blue);
  background: linear-gradient(90deg, var(--kc-sheet), var(--kc-paper));
  padding: 1.5rem 2rem;
  font-family: 'Lora', Georgia, 'Times New Roman', serif;
  font-size: clamp(1.08rem, 2vw, 1.28rem);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: -.012em;
}

.jssy p:last-child {
  margin-bottom: 0;
}

.amaj {
  position: relative;
  max-width: 50rem;
  counter-increment: evidence-section;
  border-top: 1px solid var(--kc-line);
  padding: 2.65rem 2.1rem 2.3rem 4.35rem;
}

.amaj::before {
  content: counter(evidence-section, decimal-leading-zero);
  position: absolute;
  top: 2.85rem;
  left: .55rem;
  color: var(--kc-blue);
  font-family: 'Inter', -apple-system, 'Segoe UI', sans-serif;
  font-size: .7rem;
  font-weight: 600;
  letter-spacing: .12em;
}

.amaj::after {
  content: "";
  position: absolute;
  top: 2.9rem;
  left: 2.2rem;
  width: 1.2rem;
  height: 1px;
  background: var(--kc-line);
}

.amaj:nth-of-type(even) {
  border: 1px solid var(--kc-line);
  border-radius: .9rem .9rem .9rem .25rem;
  background: var(--kc-sheet);
  box-shadow: .4rem .4rem 0 var(--kc-index);
}

.amaj h2 {
  margin-bottom: 1.15rem;
  font-size: clamp(1.55rem, 3vw, 2.05rem);
  line-height: 1.18;
  letter-spacing: -.035em;
  text-wrap: balance;
}

.amaj h3 {
  margin-top: 1.35rem;
  font-size: 1.18rem;
  letter-spacing: -.02em;
}

.amaj p,
.amaj li,
.ltlc,
.xscq p {
  max-width: 69ch;
}

.amaj strong {
  font-weight: 600;
}

.ugqv {
  max-width: 50rem;
  border: 1px solid var(--kc-line);
  border-left: 4px solid var(--kc-violet);
  border-radius: .7rem .7rem .7rem .2rem;
  background: var(--kc-sheet);
  box-shadow: .3rem .3rem 0 var(--kc-index);
  padding: 1.3rem 1.55rem;
}

blockquote {
  border: 0;
  border-left: 4px solid var(--kc-violet);
  border-radius: 0 .7rem .7rem 0;
  background: var(--kc-sheet);
  color: var(--kc-ink);
  padding: 1.1rem 1.35rem;
  font-family: 'Lora', Georgia, 'Times New Roman', serif;
  font-size: 1.06rem;
}

.pryw {
  border: 1px solid var(--kc-line);
  border-radius: .7rem;
  background: var(--kc-paper);
  box-shadow: 0 8px 24px rgba(28, 28, 34, .055);
}

table {
  font-size: .88rem;
  line-height: 1.5;
}

th,
td {
  border-width: 0 0 1px;
  padding: .8rem .85rem;
}

th {
  background: var(--kc-index);
  font-size: .73rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}

tr:last-child td {
  border-bottom: 0;
}

/* Local field note. */
.xscq {
  position: relative;
  max-width: 52rem;
  overflow: hidden;
  margin: 3.2rem auto;
  border: 1px solid var(--kc-line);
  border-radius: 1rem 1rem 2.2rem .3rem;
  background:
    linear-gradient(90deg, rgba(47, 91, 234, .075) 0 4.1rem, transparent 4.1rem),
    repeating-linear-gradient(0deg, transparent 0 2.65rem, rgba(224, 224, 230, .45) 2.65rem calc(2.65rem + 1px)),
    var(--kc-paper);
  box-shadow: var(--kc-shadow);
  padding: 2.3rem 2.4rem 2.3rem 5.8rem;
}

.xscq::before {
  content: "⌖";
  position: absolute;
  top: 2.35rem;
  left: 1.25rem;
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border: 1px solid var(--kc-blue);
  border-radius: .5rem;
  color: var(--kc-blue);
  font-family: 'Inter', -apple-system, 'Segoe UI', sans-serif;
  font-size: 1rem;
}

.cwok {
  max-width: 23ch;
  margin-bottom: 1rem;
  font-size: clamp(1.45rem, 3vw, 2rem);
  letter-spacing: -.03em;
}

.qkqj {
  gap: .6rem;
  margin-top: 1.25rem;
}

.apmo {
  display: grid;
  grid-template-columns: 1.35rem minmax(0, 1fr);
  gap: .5rem;
  padding-left: 0;
  color: var(--kc-ink);
  font-size: .86rem;
  font-weight: 600;
}

.apmo::before {
  content: "✓";
  position: static;
  display: grid;
  width: 1.25rem;
  height: 1.25rem;
  place-items: center;
  border: 1px solid var(--kc-violet);
  border-radius: .35rem;
  background: transparent;
  color: var(--kc-violet);
  font-size: .64rem;
}

/* FAQ as a set of expandable-looking (but fully open) question notes. */
.eyct {
  max-width: 52rem;
  display: grid;
  gap: .85rem;
  margin-top: 1.5rem;
}

.hrru {
  position: relative;
  border: 1px solid var(--kc-line);
  border-radius: .75rem .75rem .75rem .2rem;
  background: var(--kc-paper);
  box-shadow: .28rem .28rem 0 var(--kc-index);
  padding: 1.35rem 1.5rem 1.35rem 4.2rem;
}

.hrru::before {
  content: "?";
  position: absolute;
  top: 1.35rem;
  left: 1.35rem;
  display: grid;
  width: 1.7rem;
  height: 1.7rem;
  place-items: center;
  border: 1px solid var(--kc-blue);
  border-radius: .45rem;
  color: var(--kc-blue);
  font-size: .76rem;
  font-weight: 600;
}

.ujrc {
  margin-bottom: .55rem;
  font-size: clamp(1.08rem, 2vw, 1.28rem);
  line-height: 1.35;
  letter-spacing: -.02em;
}

.ltlc {
  color: #1C1C22;
  font-size: .94rem;
}

/* Sources become a legible research index rather than a trailing list. */
.qsqc {
  max-width: 52rem;
  display: grid;
  gap: .7rem;
  margin-top: 1rem;
}

.dupn {
  border: 1px solid var(--kc-line);
  border-radius: .65rem;
  background: var(--kc-paper);
  padding: 1rem 1.2rem 1rem 4.15rem;
}

.dupn::before {
  top: 1.05rem;
  left: 1.1rem;
  display: grid;
  width: 1.8rem;
  height: 1.8rem;
  place-items: center;
  border: 1px solid var(--kc-line);
  border-radius: .45rem;
  background: var(--kc-index);
  color: var(--kc-blue);
  font-family: 'Inter', -apple-system, 'Segoe UI', sans-serif;
  font-size: .68rem;
}

.cxxs {
  margin-bottom: .45rem;
  font-size: .91rem;
  line-height: 1.58;
}

.vbrr {
  color: var(--kc-muted);
  font-size: .77rem;
  line-height: 1.55;
}

.vbrr a::after {
  content: " ↗";
  font-size: .8em;
}

/* CTA: one final decision card, not a generic full-width band. */
.rbqo {
  margin-top: 3.8rem;
  border-top: 1px solid var(--kc-line);
  border-bottom: 1px solid var(--kc-line);
  background:
    radial-gradient(circle at 86% 22%, rgba(110, 86, 207, .12) 0 .34rem, transparent .38rem),
    linear-gradient(135deg, var(--kc-index), var(--kc-sheet));
  padding: 2rem 1.5rem;
}

.lhrr {
  position: relative;
  max-width: 58rem;
  border: 1px solid var(--kc-line);
  border-top: 4px solid var(--kc-blue);
  border-radius: .9rem .9rem .9rem .25rem;
  background: var(--kc-paper);
  box-shadow: var(--kc-shadow);
  padding: 2.7rem 3rem;
  text-align: left;
}

.lhrr::after {
  content: "";
  position: absolute;
  top: -.42rem;
  right: 2rem;
  width: 4.8rem;
  height: .8rem;
  border-radius: .2rem;
  background: var(--kc-violet);
}

.lhrr h2 {
  max-width: 28ch;
  margin-bottom: .85rem;
  font-size: clamp(1.65rem, 3.5vw, 2.3rem);
  letter-spacing: -.04em;
}

.lhrr p {
  max-width: 67ch;
  color: #1C1C22;
  font-size: .94rem;
}

.dyvl {
  border-radius: .62rem .62rem .62rem .2rem;
  box-shadow: .3rem .3rem 0 var(--kc-violet);
  padding: .82rem 1.15rem;
  font-size: .88rem;
}

/* Footer: a dark colophon with an indexed navigation column. */
.ryym {
  position: relative;
  border-top: 0;
  background: #1C1C22;
}

.ryym::before {
  content: "";
  display: block;
  height: 4px;
  background: linear-gradient(90deg, var(--kc-blue) 0 38%, var(--kc-violet) 38% 62%, var(--kc-index) 62% 100%);
}

.ryym .xdgc {
  max-width: 72rem;
  padding-top: 3rem;
  padding-bottom: 2rem;
}

.dehu {
  grid-template-columns: 1.25fr .75fr;
  gap: 4rem;
  border-bottom: 1px solid rgba(224, 224, 230, .22);
  padding-bottom: 2rem;
}

.hwtz:last-child {
  border-left: 1px solid rgba(224, 224, 230, .22);
  padding-left: 2rem;
}

.ryym .ygga {
  margin: 0 0 .55rem;
  color: #C3C3CC;
}

.ryym .bqnj {
  max-width: 60ch;
  color: #C3C3CC;
  line-height: 1.62;
}

.ubjf {
  max-width: 57ch;
  color: #FCFCFD;
  font-family: 'Lora', Georgia, 'Times New Roman', serif;
  font-size: 1.08rem;
  line-height: 1.55;
}

.xsxi {
  max-width: 67ch;
  color: #C3C3CC;
  line-height: 1.65;
}

.hwtz nav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .2rem .6rem;
}

.ryym .wnax {
  color: #FCFCFD;
  font-size: .78rem;
}

.ryym .wnax:hover {
  background: transparent;
  color: #FCFCFD;
  text-decoration: underline;
}

.suby {
  color: #B5B5C2;
  font-size: .72rem;
  letter-spacing: .02em;
}

.ryym .suby {
  color: #B5B5C2;
}

@media (max-width: 760px) {
  body {
    font-size: 1rem;
  }

  .csvj .xdgc {
    gap: .65rem;
    padding: .85rem 1rem;
  }

  .rvcn {
    font-size: 1.08rem;
  }

  .rvcn::before {
    width: 2rem;
    height: 2rem;
  }

  .ygga {
    margin-left: 2.7rem;
  }

  .csvj .lbal {
    padding-top: .7rem;
  }

  .csvj .wnax {
    padding: .6rem .25rem;
    font-size: .96rem;
  }

  .yafo .xdgc {
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
    padding: 2.7rem 1rem 4.4rem;
  }

  .yafo .xdgc::after {
    display: none;
  }

  .yujz {
    padding: 2rem 1.35rem 1.6rem;
  }

  .bame {
    font-size: clamp(2.05rem, 11vw, 3.15rem);
  }

  .mlec {
    display: grid;
  }

  .udbp {
    width: 100%;
  }

  .awmr {
    margin-top: -1.3rem;
    padding: 0 1rem;
  }

  .emgd {
    padding: 1.5rem 1.25rem;
  }

  .venb {
    white-space: normal;
  }

  .okna {
    padding-top: 3rem;
  }

  .okna > .xdgc {
    padding: 0 1rem;
  }

  .jssy {
    padding: 1.2rem 1.1rem;
  }

  .amaj,
  .amaj:nth-of-type(even) {
    padding: 2.2rem 1rem 1.9rem 3rem;
  }

  .amaj::before {
    top: 2.45rem;
    left: .25rem;
  }

  .amaj::after {
    display: none;
  }

  .xscq {
    padding: 4.8rem 1.2rem 1.8rem;
  }

  .xscq::before {
    top: 1.35rem;
    left: 1.2rem;
  }

  .hrru {
    padding: 3.8rem 1.1rem 1.2rem;
  }

  .dupn {
    padding: 3.45rem 1rem 1rem;
  }

  .rbqo {
    padding: 1.2rem 1rem;
  }

  .lhrr {
    padding: 2.2rem 1.25rem;
  }

  .dehu {
    gap: 2rem;
  }

  .hwtz:last-child {
    border-left: 0;
    padding-left: 0;
  }

  .hwtz nav {
    grid-template-columns: minmax(0, 1fr);
  }
}
