/* generated by render-qck-site.ts — do not hand-edit (gitignored output) */
*{box-sizing:border-box;margin:0}
:root{--radius:1rem}
html{scroll-behavior:smooth}
body{background:#FFFFFF;color:#0D0D0D;font-family:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;line-height:1.65;font-size:1.0625rem;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;line-height:1.2;color:#0D0D0D}
a{color:#08705A}
a:hover{opacity:.85}
img{max-width:100%}
code{background:#ECECF1;padding:.1em .35em;border-radius:4px;font-size:.9em}
.umvh{position:absolute;left:-9999px;top:0;background:#08705A;color:#FFFFFF;padding:.5rem 1rem;z-index:9}
.umvh:focus{left:0}
.pcpf{max-width:72rem;margin:0 auto;padding:0 1.5rem}
.njrs{font-family:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;font-weight:700;font-size:1.25rem;text-decoration:none;color:inherit}
.yosd{color:#6E6E80;font-size:.85rem}
.gsjh{display:flex;flex-wrap:wrap;gap:1.1rem}
.zfme{text-decoration:none;color:inherit;font-size:.95rem}
.zfme:hover{color:#08705A;opacity:1}
.upgx{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}
.upgx span{display:block;height:2px;background:currentColor;border-radius:2px}
.upgx[aria-expanded="true"] span:nth-child(2){opacity:0}
.jbuj{background:#F7F7F8} .jbuj .pcpf{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem 1.5rem;text-align:center} .gsjh{border-top:1px solid #D9D9E3;padding-top:.6rem}
.ziif{background:#F7F7F8;border-bottom:1px solid #D9D9E3} .ziif .pcpf{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2.5rem;padding:4.08rem 1.5rem}
.objm{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#08705A;font-weight:600;margin-bottom:.8rem}
.kxjq{font-size:clamp(1.9rem,4.5vw,3rem);margin-bottom:1rem}
.njjb{font-size:1.15rem;color:#6E6E80;max-width:44rem;margin:0 auto}
.fcva{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin-top:1.4rem}
.gtlh{border:1px solid #D9D9E3;background:#F7F7F8;border-radius:999px;padding:.3rem .85rem;font-size:.85rem}
.hfgi{padding:3.12rem 0}
/* the measure fix: prose column CENTERED in the container, never pinned left */
.ryem,.dozi,.olvd{max-width:46rem;margin-left:auto;margin-right:auto}
.ryem{padding:1.68rem 0}
.ryem h2{font-size:1.6rem;margin-bottom:.8rem}
.ryem h3{font-size:1.2rem;margin:.9rem 0 .5rem}
.ryem p,.ryem li,.dozi p{margin-bottom:.85rem}
.ryem ul,.ryem ol{padding-left:1.4rem}
.dozi{font-size:1.12rem}
.olvd{background:#F7F7F8;border:1px solid #D9D9E3;border-radius:var(--radius);padding:1.2rem 1.4rem;margin-bottom:1.92rem}
.ftug{overflow-x:auto;margin:1rem 0}
table{border-collapse:collapse;width:100%;font-size:.95rem}
th,td{border:1px solid #D9D9E3;padding:.55rem .7rem;text-align:left;vertical-align:top}
th{background:#F7F7F8}
blockquote{border-left:4px solid #08705A;padding:.2rem 0 .2rem 1rem;color:#6E6E80;margin:1rem 0}
.woql{max-width:46rem;margin:2.16rem auto;background:#e9efef;border:1px solid #D9D9E3;border-radius:var(--radius);padding:1.4rem 1.6rem}
.absn{font-size:1.25rem;margin-bottom:.7rem}
.myvf{list-style:none;padding:0;margin-top:.8rem;display:grid;gap:.45rem}
.vgsq{padding-left:1.1rem;position:relative;font-size:.95rem}
.vgsq::before{content:"";position:absolute;left:0;top:.55em;width:.45em;height:.45em;border-radius:50%;background:#08705A}
.gvto{max-width:46rem;margin:2.16rem auto;padding:0;list-style:none;counter-reset:src}
.yknz{border-top:1px solid #D9D9E3;padding:.9rem 0 .9rem 2.2rem;position:relative;counter-increment:src}
.yknz::before{content:counter(src);position:absolute;left:0;top:.95rem;font-family:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;font-weight:700;color:#08705A}
.lvtz{margin-bottom:.3rem}
.vycs{font-size:.88rem;color:#6E6E80}
.bokt{max-width:46rem;margin:0 auto}
.ftfq{border-bottom:1px solid #D9D9E3;padding:1.32rem 0}
.foou{font-size:1.15rem;margin-bottom:.5rem}
.ildo{color:#0D0D0D}
.nuro{background:#e9e7e5;border-top:1px solid #D9D9E3;border-bottom:1px solid #D9D9E3;margin:2.4rem 0 0}
.vxss{max-width:46rem;margin:0 auto;padding:2.64rem 1.5rem;text-align:center}
.vxss h2{margin-bottom:.7rem}
.vxss p{margin-bottom:1.1rem}
.qixk{display:inline-block;background:#08705A;color:#FFFFFF;text-decoration:none;font-weight:600;padding:.8rem 1.8rem;border-radius:var(--radius)}
.qixk:hover{opacity:.9}

.ceor{font-size:1.45rem;margin-bottom:.45rem}
.ijdu p{margin-bottom:.55rem}
.ijdu p:last-child{margin-bottom:0}
.inue{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .95rem;margin:.6rem 0 0;font-size:.92rem}
.bndp{display:inline-block;font-weight:700;font-size:1.05rem;padding:1rem 2rem;border-radius:var(--radius);text-decoration:none;white-space:nowrap}
.bndp:hover{opacity:.92}
.ciyz{padding:0 1.5rem;margin-top:-1.5rem;position:relative;z-index:2}
.xhfj{max-width:64rem;margin:0 auto;background:#FFFFFF;border-top:6px solid #08705A;border-radius:var(--radius);box-shadow:0 18px 40px -18px rgba(0,0,0,.35),0 2px 8px rgba(0,0,0,.08);padding:1.6rem 2rem;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.2rem 2.5rem;align-items:center}
.rkii{display:inline-block;background:#08705A;color:#FFFFFF;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .7rem;border-radius:999px;margin-bottom:.6rem}
.inue{color:#666666}
.gvpt::before{content:"\2713\00a0";color:#08705A}
.bndp{background:#08705A;color:#FFFFFF;box-shadow:0 10px 22px -12px #08705A}
@media (max-width:720px){.xhfj{display:block} .rkii{transform:none;max-width:none;margin-bottom:.6rem} .bndp{display:block;text-align:center;margin-top:1rem}}
.mskc{background:#FFFFFF;border-top:3px double #D9D9E3}
.mskc .pcpf{padding:2.64rem 1.5rem}
.btah{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:1.4rem}
.aibd{font-style:italic;margin-bottom:.8rem}
.tebe{font-size:.9rem;margin-bottom:.8rem}
.hnhe{font-size:.85rem;color:#6E6E80}
.mskc .hnhe{opacity:.85}
.xxdi{color:#6E6E80;font-size:.92rem}
.mskc .hnhe{color:#727284;opacity:1}
@media(max-width:760px){
  .ziif .pcpf{grid-template-columns:1fr;gap:1.5rem}
  .btah{grid-template-columns:1fr}
  .jbuj .pcpf{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;padding:.9rem 1.5rem;text-align:left}
  .jbuj .gsjh{border-top:0;padding-top:0}
  .jbuj .upgx{display:flex}
  .jbuj .gsjh{display:none;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid #D9D9E3;padding-top:.4rem;margin-top:.4rem}
  .jbuj .gsjh[data-open="true"]{display:flex}
  .jbuj .zfme{display:block;padding:.6rem 0;font-size:1.05rem}
}

/* ---- per-site theme layer ---- */
/* Mesa Joint Timeframe — a conversational decision-console theme. */

:root {
  --mj-ink: #0D0D0D;
  --mj-muted: #6E6E80;
  --mj-green: #08705A;
  --mj-warm: #6E5A3A;
  --mj-surface: #F7F7F8;
  --mj-soft: #ECECF1;
  --mj-line: #D9D9E3;
  --mj-white: #FFFFFF;
  --mj-shadow: 0 18px 60px rgba(13, 13, 13, .09);
  --mj-check: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m5 12 4 4L19 6%22/%3E%3C/svg%3E");
  --mj-pin: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M20 10c0 5-8 12-8 12S4 15 4 10a8 8 0 1 1 16 0Z%22/%3E%3Ccircle cx=%2212%22 cy=%2210%22 r=%222.4%22/%3E%3C/svg%3E");
  --mj-clock: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229%22/%3E%3Cpath d=%22M12 7v5l3.5 2%22/%3E%3C/svg%3E");
  --mj-doc: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z%22/%3E%3Cpath d=%22M14 2v6h6M8 13h8M8 17h6%22/%3E%3C/svg%3E");
  --mj-question: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229%22/%3E%3Cpath d=%22M9.6 9.1a2.6 2.6 0 1 1 3.6 2.4c-.8.4-1.2 1-1.2 1.7M12 17h.01%22/%3E%3C/svg%3E");
  --mj-arrow: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 12h14M13 6l6 6-6 6%22/%3E%3C/svg%3E");
}

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

body {
  color: var(--mj-ink);
  letter-spacing: -.009em;
  background-image: radial-gradient(circle at 1px 1px, rgba(13, 13, 13, .035) 1px, transparent 0);
  background-size: 28px 28px;
}

body p,
body li,
td {
  color: var(--mj-ink);
}

::selection {
  background: #D9E7E3;
  color: var(--mj-ink);
}

/* Centered product-style masthead with a site-specific wordmark. */
.jbuj {
  background: rgba(247, 247, 248, .97);
  border-bottom: 1px solid var(--mj-line);
  box-shadow: 0 8px 26px rgba(13, 13, 13, .035);
}

.jbuj .pcpf {
  max-width: 78rem;
  padding-top: 1rem;
  padding-bottom: .82rem;
}

.jbuj .pcpf > div:first-child {
  text-align: center;
}

.njrs {
  position: relative;
  min-height: 2.85rem;
  padding-left: 3.45rem;
  color: var(--mj-ink);
  font-size: 1.03rem;
  font-weight: 780;
  line-height: 2.85rem;
  letter-spacing: -.035em;
}

.njrs::before {
  content: "M";
  position: absolute;
  left: 0;
  top: 50%;
  width: 2.72rem;
  height: 2.72rem;
  border: 1px solid var(--mj-ink);
  border-radius: .85rem;
  background: var(--mj-ink);
  color: var(--mj-white);
  font-size: 1.15rem;
  font-weight: 750;
  line-height: 2.72rem;
  text-align: center;
  transform: translateY(-50%);
  box-shadow: inset 0 0 0 4px var(--mj-white);
}

.njrs::after {
  content: "";
  position: absolute;
  left: 2.42rem;
  bottom: .38rem;
  width: .68rem;
  height: .68rem;
  border: 2px solid var(--mj-surface);
  border-radius: 50%;
  background: var(--mj-green);
}

.jbuj .yosd {
  margin: -.3rem 0 0 3.45rem;
  color: var(--mj-muted);
  font-size: .67rem;
  font-weight: 650;
  letter-spacing: .13em;
  line-height: 1.2;
  text-transform: uppercase;
}

.gsjh {
  gap: .25rem;
  border-top: 1px solid var(--mj-line);
}

.zfme {
  padding: .42rem .67rem;
  border-radius: .65rem;
  color: var(--mj-muted);
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: -.01em;
}

.zfme:hover {
  background: var(--mj-white);
  color: var(--mj-green);
  box-shadow: 0 1px 5px rgba(13, 13, 13, .08);
}

.upgx {
  border-radius: .75rem;
}

/* Hero: text on the left, an abstract lifespan console on the right. */
.ziif {
  position: relative;
  overflow: hidden;
  background: var(--mj-surface);
  border-bottom: 1px solid var(--mj-line);
}

.ziif::after {
  content: "";
  position: absolute;
  right: -8rem;
  bottom: -14rem;
  width: 34rem;
  height: 34rem;
  border: 1px solid rgba(8, 112, 90, .16);
  border-radius: 50%;
  box-shadow: 0 0 0 4rem rgba(8, 112, 90, .025), 0 0 0 8rem rgba(8, 112, 90, .018);
  pointer-events: none;
}

.ziif .pcpf {
  max-width: 74rem;
  padding-top: 5.1rem;
  padding-bottom: 6.4rem;
  grid-template-columns: 1fr;
}

.tfdy {
  position: relative;
  z-index: 1;
  min-height: 22rem;
  padding-right: 29rem;
}

.tfdy::before {
  content: "";
  position: absolute;
  right: 0;
  top: -.8rem;
  width: 24rem;
  height: 19.5rem;
  border: 1px solid var(--mj-line);
  border-radius: 1.35rem;
  background:
    linear-gradient(90deg, var(--mj-green) 0 72%, transparent 72%) 2rem 4.1rem / 18rem 2px no-repeat,
    linear-gradient(90deg, var(--mj-warm) 0 51%, transparent 51%) 2rem 8.15rem / 18rem 2px no-repeat,
    linear-gradient(90deg, var(--mj-ink) 0 84%, transparent 84%) 2rem 12.2rem / 18rem 2px no-repeat,
    radial-gradient(circle, var(--mj-green) 0 4px, transparent 5px) 1.74rem 3.82rem / 10px 10px no-repeat,
    radial-gradient(circle, var(--mj-warm) 0 4px, transparent 5px) 1.74rem 7.87rem / 10px 10px no-repeat,
    radial-gradient(circle, var(--mj-ink) 0 4px, transparent 5px) 1.74rem 11.92rem / 10px 10px no-repeat,
    linear-gradient(var(--mj-white), var(--mj-white));
  box-shadow: var(--mj-shadow), 10px 10px 0 var(--mj-soft);
}

.tfdy::after {
  content: "10 years   20 years   25+ years";
  position: absolute;
  right: 2rem;
  top: 15.5rem;
  width: 20rem;
  padding-top: .8rem;
  border-top: 1px solid var(--mj-line);
  color: var(--mj-muted);
  font-size: .69rem;
  font-weight: 620;
  letter-spacing: .075em;
  text-align: center;
  text-transform: uppercase;
}

.objm {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin-bottom: 1.15rem;
  color: var(--mj-green);
  font-size: .7rem;
  font-weight: 720;
  letter-spacing: .15em;
}

.objm::before {
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  background: currentColor;
  -webkit-mask: var(--mj-clock) center / contain no-repeat;
  mask: var(--mj-clock) center / contain no-repeat;
}

.kxjq {
  max-width: 12.5ch;
  margin-bottom: 1.3rem;
  font-size: clamp(2.35rem, 5.3vw, 4.65rem);
  font-weight: 680;
  letter-spacing: -.067em;
  line-height: .98;
  text-wrap: balance;
}

.njjb {
  max-width: 39rem;
  margin: 0;
  color: var(--mj-muted);
  font-size: 1.08rem;
  line-height: 1.72;
}

.fcva {
  gap: .48rem;
  margin-top: 1.6rem;
}

.gtlh {
  position: relative;
  padding: .44rem .8rem .44rem 1.82rem;
  border: 1px solid var(--mj-line);
  border-radius: .72rem;
  background: var(--mj-white);
  color: var(--mj-ink);
  font-size: .76rem;
  font-weight: 580;
  box-shadow: 0 2px 8px rgba(13, 13, 13, .035);
}

.gtlh::before {
  content: "";
  position: absolute;
  left: .56rem;
  top: 50%;
  width: .82rem;
  height: .82rem;
  background: var(--mj-green);
  transform: translateY(-50%);
  -webkit-mask: var(--mj-check) center / contain no-repeat;
  mask: var(--mj-check) center / contain no-repeat;
}

/* The required recommendation reads like a polished assistant response. */
.ciyz {
  margin-top: -2.55rem;
  padding: 0 1.5rem;
}

.xhfj {
  position: relative;
  max-width: 66rem;
  padding: 1.55rem 1.7rem 1.55rem 5.35rem;
  border: 1px solid var(--mj-line);
  border-top: 1px solid var(--mj-line);
  border-radius: 1.25rem;
  background: var(--mj-white);
  box-shadow: 0 20px 55px -25px rgba(13, 13, 13, .32), 0 2px 8px rgba(13, 13, 13, .05);
}

.xhfj::before {
  content: "";
  position: absolute;
  left: 1.6rem;
  top: 1.65rem;
  width: 2.65rem;
  height: 2.65rem;
  border-radius: .85rem;
  background: var(--mj-green);
  -webkit-mask: var(--mj-pin) center / 1.45rem 1.45rem no-repeat;
  mask: var(--mj-pin) center / 1.45rem 1.45rem no-repeat;
}

.rkii {
  padding: .28rem .63rem;
  border-radius: .5rem;
  background: var(--mj-soft);
  color: var(--mj-green);
  font-size: .65rem;
  letter-spacing: .12em;
}

.ceor {
  max-width: 35rem;
  font-size: 1.4rem;
  font-weight: 670;
  letter-spacing: -.035em;
}

.ijdu p {
  max-width: 43rem;
  color: var(--mj-ink);
  font-size: .94rem;
  line-height: 1.62;
}

.inue {
  gap: .35rem .85rem;
  color: var(--mj-muted);
  font-size: .78rem;
}

.gvpt::before {
  content: "";
  display: inline-block;
  width: .9rem;
  height: .9rem;
  margin-right: .28rem;
  background: var(--mj-green);
  vertical-align: -.14rem;
  -webkit-mask: var(--mj-check) center / contain no-repeat;
  mask: var(--mj-check) center / contain no-repeat;
}

.bndp,
.qixk {
  position: relative;
  padding-right: 3rem;
  border: 1px solid var(--mj-green);
  border-radius: .78rem;
  background: var(--mj-green);
  color: var(--mj-white);
  box-shadow: 0 8px 22px -12px rgba(8, 112, 90, .72);
}

.bndp::after,
.qixk::after {
  content: "";
  position: absolute;
  right: 1.1rem;
  top: 50%;
  width: 1rem;
  height: 1rem;
  background: var(--mj-white);
  transform: translateY(-50%);
  -webkit-mask: var(--mj-arrow) center / contain no-repeat;
  mask: var(--mj-arrow) center / contain no-repeat;
}

/* Long-form response rhythm. */
.hfgi {
  counter-reset: response-section;
  padding-top: 5.1rem;
}

.dozi {
  position: relative;
  max-width: 50rem;
  padding: 1.45rem 1.65rem 1.45rem 4.8rem;
  border: 1px solid var(--mj-line);
  border-radius: 1rem;
  background: var(--mj-surface);
  font-size: 1.11rem;
  line-height: 1.75;
}

.dozi::before {
  content: "";
  position: absolute;
  left: 1.55rem;
  top: 1.55rem;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: .72rem;
  background: var(--mj-ink);
  -webkit-mask: var(--mj-clock) center / 1.2rem 1.2rem no-repeat;
  mask: var(--mj-clock) center / 1.2rem 1.2rem no-repeat;
}

.ryem {
  position: relative;
  max-width: 50rem;
  padding: 3.2rem 0 2.6rem 4.9rem;
  border-bottom: 1px solid var(--mj-line);
  counter-increment: response-section;
}

.ryem::before {
  content: counter(response-section, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 3.22rem;
  width: 2.9rem;
  padding: .33rem 0;
  border: 1px solid var(--mj-line);
  border-radius: .6rem;
  background: var(--mj-surface);
  color: var(--mj-green);
  font-size: .7rem;
  font-weight: 720;
  letter-spacing: .08em;
  text-align: center;
}

.ryem h2 {
  margin-bottom: 1rem;
  font-size: clamp(1.55rem, 3vw, 2rem);
  font-weight: 660;
  letter-spacing: -.045em;
  line-height: 1.15;
}

.ryem h3 {
  margin-top: 1.45rem;
  color: var(--mj-ink);
  font-size: 1.08rem;
  font-weight: 660;
  letter-spacing: -.02em;
}

.ryem p,
.ryem li,
.dozi p {
  line-height: 1.78;
}

.ryem li::marker {
  color: var(--mj-green);
  font-weight: 700;
}

blockquote {
  margin: 1.35rem 0;
  padding: .8rem 1.15rem;
  border-left: 3px solid var(--mj-warm);
  border-radius: 0 .7rem .7rem 0;
  background: var(--mj-surface);
  color: var(--mj-muted);
}

.ftug {
  margin: 1.45rem 0;
  border: 1px solid var(--mj-line);
  border-radius: .9rem;
  background: var(--mj-white);
  box-shadow: 0 8px 28px rgba(13, 13, 13, .045);
}

table {
  min-width: 36rem;
  font-size: .88rem;
}

th,
td {
  padding: .78rem .86rem;
  border-color: var(--mj-line);
}

th {
  background: var(--mj-surface);
  color: var(--mj-ink);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

/* Local routing module: a map card without pretending to be a map. */
.woql {
  position: relative;
  max-width: 54rem;
  margin-top: 2.9rem;
  margin-bottom: 2.9rem;
  padding: 2rem 2rem 2rem 6rem;
  border: 1px solid var(--mj-line);
  border-radius: 1.15rem;
  background: var(--mj-surface);
  box-shadow: inset 5px 0 0 var(--mj-green);
}

.woql::before {
  content: "";
  position: absolute;
  left: 2rem;
  top: 2rem;
  width: 2.6rem;
  height: 2.6rem;
  background: var(--mj-green);
  -webkit-mask: var(--mj-pin) center / contain no-repeat;
  mask: var(--mj-pin) center / contain no-repeat;
}

.absn {
  margin-bottom: .9rem;
  font-size: 1.45rem;
  font-weight: 670;
  letter-spacing: -.035em;
}

.woql p {
  line-height: 1.74;
}

.myvf {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
  margin-top: 1.15rem;
}

.vgsq {
  padding: .7rem .8rem .7rem 2.45rem;
  border: 1px solid var(--mj-line);
  border-radius: .72rem;
  background: var(--mj-white);
  color: var(--mj-ink);
  font-size: .78rem;
}

.vgsq::before {
  left: .75rem;
  top: .78rem;
  width: 1rem;
  height: 1rem;
  border-radius: 0;
  background: var(--mj-green);
  -webkit-mask: var(--mj-pin) center / contain no-repeat;
  mask: var(--mj-pin) center / contain no-repeat;
}

/* FAQs become individual prompt/response rows. */
.bokt {
  max-width: 52rem;
}

.ftfq {
  position: relative;
  margin-bottom: .8rem;
  padding: 1.3rem 1.4rem 1.3rem 4.5rem;
  border: 1px solid var(--mj-line);
  border-radius: .95rem;
  background: var(--mj-white);
  box-shadow: 0 5px 18px rgba(13, 13, 13, .035);
}

.ftfq::before {
  content: "";
  position: absolute;
  left: 1.35rem;
  top: 1.35rem;
  width: 1.9rem;
  height: 1.9rem;
  background: var(--mj-green);
  -webkit-mask: var(--mj-question) center / contain no-repeat;
  mask: var(--mj-question) center / contain no-repeat;
}

.foou {
  margin-bottom: .58rem;
  font-size: 1.08rem;
  font-weight: 670;
  letter-spacing: -.026em;
}

.ildo {
  color: var(--mj-ink);
  line-height: 1.72;
}

/* Sources read like a compact research queue. */
.gvto {
  max-width: none;
  margin-top: 1rem;
}

.yknz {
  position: relative;
  margin-bottom: .55rem;
  padding: 1rem 1rem 1rem 3.5rem;
  border: 1px solid var(--mj-line);
  border-radius: .78rem;
  background: var(--mj-surface);
}

.yknz::before {
  content: "";
  left: 1rem;
  top: 1.1rem;
  width: 1.35rem;
  height: 1.35rem;
  background: var(--mj-green);
  -webkit-mask: var(--mj-doc) center / contain no-repeat;
  mask: var(--mj-doc) center / contain no-repeat;
}

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

.vycs {
  color: var(--mj-muted);
  font-size: .76rem;
  line-height: 1.55;
}

/* The global CTA echoes a dark prompt composer. */
.nuro {
  margin-top: 4rem;
  border: 0;
  background: var(--mj-ink);
  color: var(--mj-white);
}

.vxss {
  position: relative;
  max-width: 54rem;
  padding: 3.7rem 1.5rem;
}

.vxss h2,
.vxss p {
  color: var(--mj-white);
}

.vxss h2 {
  font-size: clamp(1.7rem, 4vw, 2.55rem);
  font-weight: 650;
  letter-spacing: -.052em;
}

.vxss p {
  max-width: 46rem;
  margin-right: auto;
  margin-left: auto;
  line-height: 1.7;
}

.qixk {
  margin-top: .55rem;
  font-weight: 680;
}

/* Restrained double-rule footer with a small status light. */
.mskc {
  background: var(--mj-surface);
  border-top: 3px double var(--mj-line);
}

.mskc .pcpf {
  max-width: 74rem;
}

.btah {
  grid-template-columns: minmax(0, 1.5fr) minmax(16rem, .8fr);
  gap: 3.5rem;
}

.aibd {
  position: relative;
  padding-left: 1.25rem;
  color: var(--mj-ink);
  font-style: normal;
  font-weight: 560;
}

.aibd::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55rem;
  width: .55rem;
  height: .55rem;
  border-radius: 50%;
  background: var(--mj-green);
  box-shadow: 0 0 0 4px rgba(8, 112, 90, .1);
}

.tebe {
  color: var(--mj-ink);
  line-height: 1.65;
}

.mskc .zfme {
  display: inline-block;
  margin: .12rem;
  border: 1px solid var(--mj-line);
  background: var(--mj-white);
}

.hnhe {
  padding-top: 1.1rem;
  border-top: 1px solid var(--mj-line);
}

@media (max-width: 760px) {
  .jbuj .pcpf > div:first-child {
    text-align: left;
  }

  .njrs {
    padding-left: 3rem;
    font-size: .9rem;
  }

  .njrs::before {
    width: 2.45rem;
    height: 2.45rem;
    line-height: 2.45rem;
  }

  .njrs::after {
    left: 2.1rem;
  }

  .jbuj .yosd {
    margin-left: 3rem;
  }

  .ziif .pcpf {
    padding-top: 3.45rem;
    padding-bottom: 4.6rem;
  }

  .tfdy {
    min-height: 0;
    padding-right: 0;
  }

  .tfdy::before,
  .tfdy::after {
    width: 0;
    height: 0;
    overflow: hidden;
    border-width: 0;
    box-shadow: none;
  }

  .kxjq {
    max-width: 15ch;
  }

  .xhfj {
    grid-template-columns: 1fr;
    padding: 4.9rem 1.25rem 1.3rem;
  }

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

  .bndp {
    width: 100%;
    margin-top: .8rem;
    text-align: center;
  }

  .hfgi {
    padding-top: 3.4rem;
  }

  .dozi {
    padding: 4.45rem 1.2rem 1.25rem;
  }

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

  .ryem {
    padding: 4.2rem 0 2.4rem;
  }

  .ryem::before {
    top: 1.25rem;
  }

  .woql {
    padding: 5.3rem 1.25rem 1.35rem;
  }

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

  .myvf {
    grid-template-columns: 1fr;
  }

  .ftfq {
    padding: 4.15rem 1.15rem 1.2rem;
  }

  .ftfq::before {
    left: 1.15rem;
    top: 1.15rem;
  }

  .yknz {
    padding: 3.7rem .9rem .95rem;
  }

  .yknz::before {
    left: .9rem;
    top: 1rem;
  }

  .btah {
    gap: 1.6rem;
  }
}
