/* generated by render-qck-site.ts — do not hand-edit (gitignored output) */
*{box-sizing:border-box;margin:0}
:root{--radius:1.25rem}
html{scroll-behavior:smooth}
body{background:#F7F7FA;color:#17171D;font-family:'Inter', 'Avenir Next', 'Segoe UI', sans-serif;line-height:1.65;font-size:1.0625rem;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Manrope', 'Avenir Next', 'Segoe UI', sans-serif;line-height:1.2;color:#17171D}
a{color:#50479A}
a:hover{opacity:.85}
img{max-width:100%}
code{background:#ECECF2;padding:.1em .35em;border-radius:4px;font-size:.9em}
.tiqt{position:absolute;left:-9999px;top:0;background:#50479A;color:#FFFFFF;padding:.5rem 1rem;z-index:9}
.tiqt:focus{left:0}
.gpnc{max-width:72rem;margin:0 auto;padding:0 1.5rem}
.ocuc{font-family:'Manrope', 'Avenir Next', 'Segoe UI', sans-serif;font-weight:700;font-size:1.25rem;text-decoration:none;color:inherit}
.bmdt{color:#53535D;font-size:.85rem}
.pvcc{display:flex;flex-wrap:wrap;gap:1.1rem}
.jkwa{text-decoration:none;color:inherit;font-size:.95rem}
.jkwa:hover{color:#50479A;opacity:1}
.ljii{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}
.ljii span{display:block;height:2px;background:currentColor;border-radius:2px}
.ljii[aria-expanded="true"] span:nth-child(2){opacity:0}
.gxta{border-bottom:3px double #D8D8E1;background:#F7F7FA} .gxta .gpnc{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:1.5rem;padding:1.1rem 1.5rem} .gxta .pvcc{justify-content:flex-end}
.qurv{background:#FFFFFF;border-bottom:1px solid #D8D8E1} .qurv .gpnc{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2.5rem;padding:4.08rem 1.5rem}
.gawl{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#50479A;font-weight:600;margin-bottom:.8rem}
.qylf{font-size:clamp(1.9rem,4.5vw,3rem);margin-bottom:1rem}
.ogxs{font-size:1.15rem;color:#53535D;max-width:44rem;margin:0 auto}
.ijze{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin-top:1.4rem}
.txmv{border:1px solid #D8D8E1;background:#FFFFFF;border-radius:999px;padding:.3rem .85rem;font-size:.85rem}
.nwll{padding:3.12rem 0}
/* the measure fix: prose column CENTERED in the container, never pinned left */
.ccqu,.dtmw,.yvdd{max-width:46rem;margin-left:auto;margin-right:auto}
.ccqu{padding:1.68rem 0}
.ccqu h2{font-size:1.6rem;margin-bottom:.8rem}
.ccqu h3{font-size:1.2rem;margin:.9rem 0 .5rem}
.ccqu p,.ccqu li,.dtmw p{margin-bottom:.85rem}
.ccqu ul,.ccqu ol{padding-left:1.4rem}
.dtmw{font-size:1.12rem}
.yvdd{background:#FFFFFF;border:1px solid #D8D8E1;border-radius:var(--radius);padding:1.2rem 1.4rem;margin-bottom:1.92rem}
.honn{overflow-x:auto;margin:1rem 0}
table{border-collapse:collapse;width:100%;font-size:.95rem}
th,td{border:1px solid #D8D8E1;padding:.55rem .7rem;text-align:left;vertical-align:top}
th{background:#FFFFFF}
blockquote{border-left:4px solid #50479A;padding:.2rem 0 .2rem 1rem;color:#53535D;margin:1rem 0}
.qezc{max-width:46rem;margin:2.16rem auto;background:#f5f4f9;border:1px solid #D8D8E1;border-radius:var(--radius);padding:1.4rem 1.6rem}
.wmbt{font-size:1.25rem;margin-bottom:.7rem}
.ospl{list-style:none;padding:0;margin-top:.8rem;display:grid;gap:.45rem}
.mcjs{padding-left:1.1rem;position:relative;font-size:.95rem}
.mcjs::before{content:"";position:absolute;left:0;top:.55em;width:.45em;height:.45em;border-radius:50%;background:#50479A}
.kknc{max-width:46rem;margin:2.16rem auto;padding:0;list-style:none;counter-reset:src}
.ulbd{border-top:1px solid #D8D8E1;padding:.9rem 0 .9rem 2.2rem;position:relative;counter-increment:src}
.ulbd::before{content:counter(src);position:absolute;left:0;top:.95rem;font-family:'Manrope', 'Avenir Next', 'Segoe UI', sans-serif;font-weight:700;color:#50479A}
.pqlg{margin-bottom:.3rem}
.gciy{font-size:.88rem;color:#53535D}
.jloy{max-width:46rem;margin:0 auto}
.jrfc{border-bottom:1px solid #D8D8E1;padding:1.32rem 0}
.oapm{font-size:1.15rem;margin-bottom:.5rem}
.wvaa{color:#17171D}
.vqcp{background:#f6edef;border-top:1px solid #D8D8E1;border-bottom:1px solid #D8D8E1;margin:2.4rem 0 0}
.flpz{max-width:46rem;margin:0 auto;padding:2.64rem 1.5rem;text-align:center}
.flpz h2{margin-bottom:.7rem}
.flpz p{margin-bottom:1.1rem}
.ybvr{display:inline-block;background:#50479A;color:#FFFFFF;text-decoration:none;font-weight:600;padding:.8rem 1.8rem;border-radius:var(--radius)}
.ybvr:hover{opacity:.9}

.squk{font-size:1.45rem;margin-bottom:.45rem}
.wxvn p{margin-bottom:.55rem}
.wxvn p:last-child{margin-bottom:0}
.yrxt{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .95rem;margin:.6rem 0 0;font-size:.92rem}
.olmo{display:inline-block;font-weight:700;font-size:1.05rem;padding:1rem 2rem;border-radius:var(--radius);text-decoration:none;white-space:nowrap}
.olmo:hover{opacity:.92}
.mwon{background:#17171D;color:#FFFFFF;border-top:4px solid #A34862}
.qmzm{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}
.mwon h2,.mwon p{color:#FFFFFF}
.mnnq{display:inline-block;background:#F7F7FA;color:#17171D;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .7rem;border-radius:3px;margin-bottom:.6rem}
.yrxt{color:#909093}
.jkuz::before{content:"\2713\00a0"}
.olmo{background:#50479A;color:#FFFFFF;outline:2px solid #FFFFFF;outline-offset:2px}
@media (max-width:720px){.qmzm{display:block} .mnnq{transform:none;max-width:none;margin-bottom:.6rem} .olmo{display:block;text-align:center;margin-top:1rem}}
.awvc{background:#F7F7FA;border-top:3px double #D8D8E1}
.awvc .gpnc{padding:2.64rem 1.5rem}
.zjrp{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:1.4rem}
.gtrm{font-style:italic;margin-bottom:.8rem}
.zqpt{font-size:.9rem;margin-bottom:.8rem}
.hebh{font-size:.85rem;color:#53535D}
.awvc .hebh{opacity:.85}
.tbun{color:#53535D;font-size:.92rem}
@media(max-width:760px){
  .qurv .gpnc{grid-template-columns:1fr;gap:1.5rem}
  .zjrp{grid-template-columns:1fr}
  .gxta .gpnc{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;padding:.9rem 1.5rem;text-align:left}
  .gxta .pvcc{border-top:0;padding-top:0}
  .gxta .ljii{display:flex}
  .gxta .pvcc{display:none;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid #D8D8E1;padding-top:.4rem;margin-top:.4rem}
  .gxta .pvcc[data-open="true"]{display:flex}
  .gxta .jkwa{display:block;padding:.6rem 0;font-size:1.05rem}
}

/* ---- per-site theme layer ---- */
/* Gilbert Joint Signal — Character Ai-inspired conversation system */

:root {
  --signal-ink: #17171D;
  --signal-muted: #53535D;
  --signal-violet: #50479A;
  --signal-rose: #A34862;
  --signal-canvas: #F7F7FA;
  --signal-surface: #FFFFFF;
  --signal-soft: #ECECF2;
  --signal-line: #D8D8E1;
  --signal-violet-wash: #F1F0F8;
  --signal-rose-wash: #F8EFF2;
}

html {
  scroll-padding-top: 2rem;
}

body {
  background-color: var(--signal-canvas);
  background-image:
    radial-gradient(circle at 7% 18%, rgba(80, 71, 154, .07) 0 9rem, transparent 9.1rem),
    radial-gradient(circle at 94% 52%, rgba(163, 72, 98, .055) 0 12rem, transparent 12.1rem);
  font-size: 1.035rem;
  line-height: 1.72;
}

::selection {
  background: var(--signal-violet);
  color: var(--signal-surface);
}

a {
  text-decoration-color: rgba(80, 71, 154, .42);
  text-decoration-thickness: .09em;
  text-underline-offset: .2em;
}

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

/* Conversation-rail masthead and a logo-like editorial wordmark. */
.gxta {
  position: relative;
  border-bottom: 1px solid var(--signal-line);
  background: var(--signal-canvas);
  box-shadow: 0 1px 0 rgba(23, 23, 29, .04);
}

.gxta::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  width: 22vw;
  height: 3px;
  background: var(--signal-violet);
}

.gxta .gpnc {
  align-items: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.gxta .gpnc > div:first-child {
  min-width: 15.5rem;
}

.ocuc {
  display: inline-flex;
  align-items: center;
  gap: .72rem;
  color: var(--signal-ink);
  font-size: 1.05rem;
  font-weight: 800;
  letter-spacing: -.025em;
  line-height: 1;
}

.ocuc::before {
  content: "G";
  display: inline-grid;
  width: 2.65rem;
  height: 2.65rem;
  place-items: center;
  border: 2px solid var(--signal-violet);
  border-radius: 50% 50% 50% 18%;
  background: var(--signal-violet);
  color: var(--signal-surface);
  font-size: 1.04rem;
  font-weight: 800;
  box-shadow: 4px 4px 0 var(--signal-soft);
}

.ocuc::after {
  content: "●";
  margin-left: -.98rem;
  align-self: flex-start;
  width: .78rem;
  height: .78rem;
  border: 2px solid var(--signal-canvas);
  border-radius: 50%;
  background: var(--signal-rose);
  color: var(--signal-rose);
  font-size: 0;
}

.gxta .bmdt {
  margin: .4rem 0 0 3.38rem;
  color: var(--signal-muted);
  font-size: .69rem;
  font-weight: 700;
  letter-spacing: .105em;
  line-height: 1.2;
  text-transform: uppercase;
}

.gxta .pvcc {
  gap: .28rem;
}

.gxta .jkwa {
  padding: .48rem .68rem;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--signal-ink);
  font-size: .73rem;
  font-weight: 700;
  letter-spacing: .01em;
}

.gxta .jkwa:hover {
  border-color: var(--signal-line);
  background: var(--signal-surface);
  color: var(--signal-violet);
  box-shadow: 0 4px 14px rgba(23, 23, 29, .06);
}

/* Hero: an asymmetric triage conversation, not a plain tinted band. */
.qurv {
  position: relative;
  overflow: hidden;
  border-bottom: 0;
  background: var(--signal-surface);
}

.qurv::before {
  content: "";
  position: absolute;
  inset: auto -6rem -8rem auto;
  width: 22rem;
  height: 22rem;
  border: 1px solid var(--signal-line);
  border-radius: 50%;
  box-shadow:
    0 0 0 2.8rem rgba(80, 71, 154, .045),
    0 0 0 5.6rem rgba(163, 72, 98, .035);
  pointer-events: none;
}

.qurv .gpnc {
  position: relative;
  grid-template-columns: minmax(0, 1.48fr) minmax(15rem, .72fr);
  gap: clamp(2rem, 5.5vw, 5.5rem);
  align-items: center;
  min-height: 32rem;
  padding-top: clamp(3.6rem, 7vw, 6.4rem);
  padding-bottom: clamp(4.5rem, 8vw, 7.4rem);
}

.qurv .gpnc::after {
  content: "PAUSE\A\A CHECK THE PATTERN\A\A CHOOSE THE DOOR";
  display: grid;
  min-height: 18rem;
  align-content: center;
  padding: 2rem 1.8rem;
  border: 1px solid var(--signal-ink);
  border-radius: 2.1rem 2.1rem .7rem 2.1rem;
  background: var(--signal-ink);
  color: var(--signal-surface);
  font-family: 'Manrope', 'Avenir Next', sans-serif;
  font-size: clamp(.85rem, 1.2vw, 1rem);
  font-weight: 700;
  letter-spacing: .13em;
  line-height: 1.45;
  white-space: pre;
  box-shadow: 12px 12px 0 var(--signal-soft);
}

.elid {
  max-width: 48rem;
}

.gawl {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin-bottom: 1.15rem;
  padding: .38rem .7rem .38rem .48rem;
  border: 1px solid var(--signal-line);
  border-radius: 999px;
  background: var(--signal-canvas);
  color: var(--signal-violet);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .13em;
}

.gawl::before {
  content: "";
  width: .56rem;
  height: .56rem;
  border-radius: 50%;
  background: var(--signal-rose);
  box-shadow: 0 0 0 3px var(--signal-rose-wash);
}

.qurv .qylf {
  max-width: 48rem;
  margin-bottom: 1.35rem;
  color: var(--signal-ink);
  font-size: clamp(2.65rem, 5.7vw, 5.25rem);
  font-weight: 800;
  letter-spacing: -.062em;
  line-height: .96;
  text-wrap: balance;
}

.qurv .ogxs {
  max-width: 42rem;
  margin: 0;
  padding-left: 1.1rem;
  border-left: 3px solid var(--signal-violet);
  color: var(--signal-muted);
  font-size: clamp(1.02rem, 1.5vw, 1.18rem);
  line-height: 1.62;
}

.ijze {
  gap: .58rem;
  margin-top: 1.7rem;
}

.qurv .txmv {
  position: relative;
  padding: .48rem .8rem .48rem 1.82rem;
  border: 1px solid var(--signal-line);
  border-radius: 999px 999px 999px .45rem;
  background: var(--signal-canvas);
  color: var(--signal-ink);
  font-size: .73rem;
  font-weight: 600;
  line-height: 1.35;
}

.qurv .txmv::before {
  content: "";
  position: absolute;
  top: 50%;
  left: .72rem;
  width: .48rem;
  height: .48rem;
  border: 2px solid var(--signal-violet);
  border-radius: 50%;
  transform: translateY(-50%);
}

/* Assigned inverted spotlight, refined as a disclosed dark conversation rail. */
.mwon {
  position: relative;
  z-index: 2;
  border-top: 0;
  border-bottom: 1px solid var(--signal-ink);
  background: var(--signal-ink);
  color: var(--signal-surface);
}

.mwon::before {
  content: "";
  position: absolute;
  top: -1.15rem;
  left: max(1.5rem, calc(50% - 32rem));
  width: 2.25rem;
  height: 2.25rem;
  border: 4px solid var(--signal-surface);
  border-radius: 50% 50% 50% 18%;
  background: var(--signal-rose);
}

.qmzm {
  max-width: 68rem;
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
  gap: 2rem 3.5rem;
}

.lyok {
  padding-left: 1.35rem;
  border-left: 1px solid #85858E;
}

.mnnq {
  margin-bottom: .68rem;
  padding: .28rem .65rem;
  border: 1px solid #85858E;
  border-radius: 999px;
  background: var(--signal-ink);
  color: var(--signal-surface);
  font-size: .66rem;
  letter-spacing: .13em;
}

.squk {
  max-width: 46rem;
  color: var(--signal-surface);
  font-size: clamp(1.5rem, 2.5vw, 2rem);
  letter-spacing: -.025em;
  line-height: 1.12;
}

.wxvn,
.wxvn p,
.yrxt {
  color: var(--signal-surface);
}

.wxvn {
  max-width: 48rem;
  font-size: .94rem;
  line-height: 1.58;
}

.yrxt {
  gap: .55rem 1rem;
  margin-top: .9rem;
  font-size: .78rem;
  font-weight: 600;
}

.jkuz {
  display: inline-flex;
  align-items: center;
  gap: .42rem;
}

.jkuz::before {
  content: "⌖";
  display: inline-grid;
  width: 1.42rem;
  height: 1.42rem;
  place-items: center;
  border: 1px solid #85858E;
  border-radius: 50%;
  color: var(--signal-surface);
  font-size: .78rem;
  line-height: 1;
}

.jkuz:nth-child(2)::before {
  content: "◇";
}

.jkuz:nth-child(3)::before {
  content: "☎";
}

.olmo {
  padding: .9rem 1.25rem;
  border: 0;
  border-radius: 999px;
  background: var(--signal-violet);
  color: var(--signal-surface);
  box-shadow: 5px 5px 0 var(--signal-rose);
}

.olmo::after {
  content: "  ↗";
}

/* Reading rhythm: messages connected by a quiet vertical rail. */
.nwll {
  padding-top: 4.4rem;
  padding-bottom: 3.4rem;
}

.nwll > .gpnc {
  counter-reset: signal-section;
}

.dtmw {
  position: relative;
  margin-bottom: 2.5rem;
  padding: 1.55rem 1.65rem 1.45rem 4.7rem;
  border: 1px solid var(--signal-line);
  border-radius: 1.8rem 1.8rem 1.8rem .55rem;
  background: var(--signal-surface);
  box-shadow: 8px 8px 0 var(--signal-soft);
  color: var(--signal-ink);
  font-size: clamp(1.09rem, 1.45vw, 1.2rem);
  line-height: 1.68;
}

.dtmw::before {
  content: "!";
  position: absolute;
  top: 1.55rem;
  left: 1.45rem;
  display: grid;
  width: 2.25rem;
  height: 2.25rem;
  place-items: center;
  border: 2px solid var(--signal-rose);
  border-radius: 50% 50% 50% 18%;
  background: var(--signal-rose-wash);
  color: var(--signal-rose);
  font-family: 'Manrope', sans-serif;
  font-weight: 800;
}

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

.ccqu {
  position: relative;
  padding: 2.35rem 0 2.35rem 4.3rem;
  border-top: 1px solid var(--signal-line);
  counter-increment: signal-section;
}

.ccqu::before {
  content: "";
  position: absolute;
  top: 4.75rem;
  bottom: -1.6rem;
  left: 1.19rem;
  width: 1px;
  background: var(--signal-line);
}

.ccqu:last-child::before {
  display: none;
}

.ccqu h2 {
  position: relative;
  margin-bottom: 1.1rem;
  color: var(--signal-ink);
  font-size: clamp(1.55rem, 2.6vw, 2.15rem);
  font-weight: 750;
  letter-spacing: -.035em;
  line-height: 1.15;
  text-wrap: balance;
}

.ccqu h2::before {
  content: counter(signal-section, decimal-leading-zero);
  position: absolute;
  top: -.28rem;
  left: -4.3rem;
  display: grid;
  width: 2.45rem;
  height: 2.45rem;
  place-items: center;
  border: 1px solid var(--signal-violet);
  border-radius: 50% 50% 50% 18%;
  background: var(--signal-violet-wash);
  color: var(--signal-violet);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .05em;
}

.ccqu h3 {
  margin-top: 1.4rem;
  color: var(--signal-violet);
  font-size: 1.05rem;
  font-weight: 800;
  letter-spacing: -.01em;
}

.ccqu p,
.ccqu li {
  margin-bottom: .9rem;
}

.ccqu strong {
  font-weight: 750;
}

blockquote {
  margin: 1.4rem 0;
  padding: 1rem 1.2rem;
  border: 1px solid var(--signal-line);
  border-left: 4px solid var(--signal-rose);
  border-radius: .35rem 1rem 1rem .35rem;
  background: var(--signal-rose-wash);
  color: var(--signal-ink);
}

.honn {
  margin: 1.5rem 0;
  border: 1px solid var(--signal-line);
  border-radius: 1rem;
  background: var(--signal-surface);
}

table {
  font-size: .9rem;
}

th,
td {
  border: 0;
  border-bottom: 1px solid var(--signal-line);
}

th {
  background: var(--signal-soft);
  color: var(--signal-ink);
  font-size: .75rem;
  letter-spacing: .055em;
  text-transform: uppercase;
}

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

/* Gilbert access module: route board with a location-avatar marker. */
.qezc {
  position: relative;
  max-width: 51rem;
  margin-top: 3.2rem;
  margin-bottom: 3.2rem;
  padding: 2rem 2rem 1.8rem 5.3rem;
  border: 1px solid var(--signal-violet);
  border-radius: .7rem 2rem 2rem 2rem;
  background: var(--signal-violet-wash);
  color: var(--signal-ink);
  box-shadow: 9px 9px 0 var(--signal-soft);
}

.qezc::before {
  content: "⌖";
  position: absolute;
  top: 2rem;
  left: 1.6rem;
  display: grid;
  width: 2.65rem;
  height: 2.65rem;
  place-items: center;
  border-radius: 50% 50% 50% 18%;
  background: var(--signal-violet);
  color: var(--signal-surface);
  font-size: 1.2rem;
}

.wmbt {
  color: var(--signal-ink);
  font-size: clamp(1.35rem, 2.5vw, 1.85rem);
  letter-spacing: -.03em;
}

.qezc p {
  margin-bottom: .9rem;
}

.ospl {
  grid-template-columns: 1fr;
  margin-top: 1.2rem;
  padding-top: 1rem;
  border-top: 1px solid var(--signal-line);
}

.mcjs {
  min-height: 2rem;
  padding: .45rem .7rem .45rem 2.5rem;
  border-radius: .65rem;
  background: var(--signal-surface);
  color: var(--signal-ink);
  font-weight: 600;
}

.mcjs::before {
  content: "⌖";
  top: .48rem;
  left: .72rem;
  width: 1.38rem;
  height: 1.38rem;
  border: 1px solid var(--signal-violet);
  border-radius: 50%;
  background: var(--signal-surface);
  color: var(--signal-violet);
  font-size: .72rem;
  line-height: 1.25rem;
  text-align: center;
}

.mcjs:last-child::before {
  content: "☎";
}

/* FAQ: compact conversation turns with persistent question glyphs. */
.jloy {
  max-width: 51rem;
  counter-reset: faq-turn;
}

.jrfc {
  position: relative;
  margin-bottom: 1rem;
  padding: 1.35rem 1.5rem 1.3rem 4.7rem;
  border: 1px solid var(--signal-line);
  border-radius: 1.4rem 1.4rem 1.4rem .45rem;
  background: var(--signal-surface);
  box-shadow: 5px 5px 0 var(--signal-soft);
  counter-increment: faq-turn;
}

.jrfc::before {
  content: "?";
  position: absolute;
  top: 1.35rem;
  left: 1.35rem;
  display: grid;
  width: 2.15rem;
  height: 2.15rem;
  place-items: center;
  border: 2px solid var(--signal-violet);
  border-radius: 50% 50% 50% 18%;
  background: var(--signal-violet-wash);
  color: var(--signal-violet);
  font-weight: 800;
}

.oapm {
  color: var(--signal-ink);
  font-size: 1.08rem;
  font-weight: 750;
  letter-spacing: -.015em;
}

.wvaa {
  color: var(--signal-muted);
  line-height: 1.65;
}

/* Sources: method notes, visibly distinct from the editorial conversation. */
.kknc {
  max-width: none;
  margin-top: 1.2rem;
}

.ulbd {
  min-height: 3.8rem;
  padding: 1rem 1rem 1rem 3.75rem;
  border-top: 1px solid var(--signal-line);
  background: linear-gradient(90deg, var(--signal-violet-wash), transparent 36%);
}

.ulbd::before {
  top: 1.05rem;
  left: .8rem;
  display: grid;
  width: 1.9rem;
  height: 1.9rem;
  place-items: center;
  border: 1px solid var(--signal-violet);
  border-radius: 50%;
  background: var(--signal-surface);
  color: var(--signal-violet);
  font-size: .72rem;
}

.pqlg {
  color: var(--signal-ink);
  font-size: .88rem;
  line-height: 1.55;
}

.gciy {
  color: var(--signal-muted);
  font-size: .78rem;
  line-height: 1.5;
}

/* Closing CTA: a calm reply composer rather than a promotional slab. */
.vqcp {
  position: relative;
  overflow: hidden;
  margin-top: 0;
  border-top: 1px solid var(--signal-line);
  border-bottom: 1px solid var(--signal-line);
  background: var(--signal-rose-wash);
}

.vqcp::before,
.vqcp::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(163, 72, 98, .22);
  border-radius: 50%;
}

.vqcp::before {
  top: -7rem;
  left: -5rem;
  width: 15rem;
  height: 15rem;
}

.vqcp::after {
  right: -3rem;
  bottom: -5rem;
  width: 11rem;
  height: 11rem;
}

.flpz {
  position: relative;
  z-index: 1;
  max-width: 52rem;
  padding-top: 3.4rem;
  padding-bottom: 3.4rem;
}

.flpz h2 {
  color: var(--signal-ink);
  font-size: clamp(1.65rem, 3.3vw, 2.5rem);
  letter-spacing: -.04em;
}

.flpz p {
  color: var(--signal-ink);
}

.ybvr {
  padding: .92rem 1.35rem;
  border-radius: 999px;
  background: var(--signal-violet);
  color: var(--signal-surface);
  box-shadow: 5px 5px 0 var(--signal-rose);
}

.ybvr::after {
  content: "  ↗";
}

/* Footer: calm system status and readable disclosure. */
.awvc {
  border-top: 0;
  background: var(--signal-canvas);
}

.awvc .gpnc {
  padding-top: 3rem;
  padding-bottom: 2rem;
}

.zjrp {
  grid-template-columns: minmax(0, 1.5fr) minmax(15rem, .7fr);
  gap: 3rem;
}

.awvc .bmdt {
  display: inline-flex;
  margin-bottom: .8rem;
  padding: .32rem .65rem;
  border: 1px solid var(--signal-line);
  border-radius: 999px;
  background: var(--signal-surface);
  color: var(--signal-violet);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.awvc .tbun,
.gtrm,
.zqpt,
.hebh {
  color: var(--signal-muted);
}

.gtrm {
  max-width: 50rem;
  padding-left: 1rem;
  border-left: 3px solid var(--signal-violet);
  font-style: normal;
}

.zqpt {
  max-width: 50rem;
  font-size: .84rem;
  line-height: 1.58;
}

.nbkc nav {
  display: grid;
  gap: .45rem;
  padding: 1rem 1.1rem;
  border: 1px solid var(--signal-line);
  border-radius: 1rem;
  background: var(--signal-surface);
  color: var(--signal-ink);
  line-height: 1.25;
}

.nbkc .jkwa {
  display: inline-block;
  color: var(--signal-ink);
  font-size: .82rem;
  font-weight: 650;
}

.hebh {
  padding-top: 1rem;
  border-top: 1px solid var(--signal-line);
  opacity: 1;
  font-size: .75rem;
}

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

  .gxta .gpnc > div:first-child {
    min-width: 0;
  }

  .ocuc {
    font-size: .95rem;
  }

  .ocuc::before {
    width: 2.35rem;
    height: 2.35rem;
  }

  .gxta .bmdt {
    margin-left: 3.05rem;
  }

  .gxta .pvcc[data-open="true"] {
    gap: .25rem;
    padding-top: .7rem;
  }

  .gxta .jkwa {
    padding: .58rem .2rem;
  }

  .qurv .gpnc {
    grid-template-columns: minmax(0, 1fr); /* stack the side panel under the intro on phones */
    min-height: 0;
    padding-top: 3.4rem;
    padding-bottom: 4rem;
  }

  .qurv .gpnc::after {
    min-height: 0;
    padding: 1.4rem;
    white-space: pre-line; /* keep the three \A lines now the panel is full-width */
  }

  .qurv .qylf {
    font-size: clamp(2.35rem, 12vw, 3.65rem);
  }

  .ijze {
    display: grid;
  }

  .lyok {
    padding-left: 0;
    border-left: 0;
  }

  .nwll {
    padding-top: 3rem;
  }

  .dtmw {
    padding: 4.5rem 1.25rem 1.25rem;
  }

  .dtmw::before {
    top: 1.25rem;
    left: 1.25rem;
  }

  .ccqu {
    padding: 2rem 0;
  }

  .ccqu::before {
    display: none;
  }

  .ccqu h2 {
    padding-left: 3.35rem;
  }

  .ccqu h2::before {
    left: 0;
  }

  .qezc {
    padding: 4.9rem 1.25rem 1.4rem;
  }

  .qezc::before {
    top: 1.35rem;
    left: 1.25rem;
  }

  .jrfc {
    padding: 4.5rem 1.2rem 1.2rem;
  }

  .jrfc::before {
    top: 1.2rem;
    left: 1.2rem;
  }

  .ulbd {
    padding-left: 3.2rem;
  }

  .zjrp {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}
