/* generated by render-qck-site.ts — do not hand-edit (gitignored output) */
*{box-sizing:border-box;margin:0}
:root{--radius:0.25rem}
html{scroll-behavior:smooth}
body{background:#F7EED8;color:#18233B;font-family:'Source Sans 3', 'Segoe UI', sans-serif;line-height:1.65;font-size:1.0625rem;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Bree Serif', Rockwell, Georgia, serif;line-height:1.2;color:#18233B}
a{color:#8A2432}
a:hover{opacity:.85}
img{max-width:100%}
code{background:#E9D8B4;padding:.1em .35em;border-radius:4px;font-size:.9em}
.vbza{position:absolute;left:-9999px;top:0;background:#8A2432;color:#FFFFFF;padding:.5rem 1rem;z-index:9}
.vbza:focus{left:0}
.rpex{max-width:72rem;margin:0 auto;padding:0 1.5rem}
.lntq{font-family:'Bree Serif', Rockwell, Georgia, serif;font-weight:700;font-size:1.25rem;text-decoration:none;color:inherit}
.fhnc{color:#5F5548;font-size:.85rem}
.fxcc{display:flex;flex-wrap:wrap;gap:1.1rem}
.ibzb{text-decoration:none;color:inherit;font-size:.95rem}
.ibzb:hover{color:#8A2432;opacity:1}
.jzns{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}
.jzns span{display:block;height:2px;background:currentColor;border-radius:2px}
.jzns[aria-expanded="true"] span:nth-child(2){opacity:0}
.ihjv{background:#FFF9EC} .ihjv .rpex{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem 1.5rem;text-align:center} .fxcc{border-top:1px solid #C7B68F;padding-top:.6rem}
.athg{background:linear-gradient(160deg, #FFF9EC, #f1dfd6)} .athg .rpex{max-width:52rem;text-align:center;padding:4.8rem 1.5rem} .yavj{justify-content:center}
.hytx{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#8A2432;font-weight:600;margin-bottom:.8rem}
.vvar{font-size:clamp(1.9rem,4.5vw,3rem);margin-bottom:1rem}
.xuws{font-size:1.15rem;color:#5F5548;max-width:44rem;margin:0 auto}
.yavj{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin-top:1.4rem}
.wlnk{border:1px solid #C7B68F;background:#FFF9EC;border-radius:999px;padding:.3rem .85rem;font-size:.85rem}
.ewgx{padding:3.12rem 0}
/* the measure fix: prose column CENTERED in the container, never pinned left */
.zerw,.qufl,.tpsr{max-width:46rem;margin-left:auto;margin-right:auto}
.zerw{padding:1.68rem 0}
.zerw h2{font-size:1.6rem;margin-bottom:.8rem}
.zerw h3{font-size:1.2rem;margin:.9rem 0 .5rem}
.zerw p,.zerw li,.qufl p{margin-bottom:.85rem}
.zerw ul,.zerw ol{padding-left:1.4rem}
.qufl{font-size:1.12rem}
.tpsr{background:#FFF9EC;border:1px solid #C7B68F;border-radius:var(--radius);padding:1.2rem 1.4rem;margin-bottom:1.92rem}
.osnw{overflow-x:auto;margin:1rem 0}
table{border-collapse:collapse;width:100%;font-size:.95rem}
th,td{border:1px solid #C7B68F;padding:.55rem .7rem;text-align:left;vertical-align:top}
th{background:#FFF9EC}
blockquote{border-left:4px solid #8A2432;padding:.2rem 0 .2rem 1rem;color:#5F5548;margin:1rem 0}
.yzbk{max-width:46rem;margin:2.16rem auto;background:#f8ece1;border:1px solid #C7B68F;border-radius:var(--radius);padding:1.4rem 1.6rem}
.evpe{font-size:1.25rem;margin-bottom:.7rem}
.maly{list-style:none;padding:0;margin-top:.8rem;display:grid;gap:.45rem}
.wvlq{padding-left:1.1rem;position:relative;font-size:.95rem}
.wvlq::before{content:"";position:absolute;left:0;top:.55em;width:.45em;height:.45em;border-radius:50%;background:#8A2432}
.nkug{max-width:46rem;margin:2.16rem auto;padding:0;list-style:none;counter-reset:src}
.zxig{border-top:1px solid #C7B68F;padding:.9rem 0 .9rem 2.2rem;position:relative;counter-increment:src}
.zxig::before{content:counter(src);position:absolute;left:0;top:.95rem;font-family:'Bree Serif', Rockwell, Georgia, serif;font-weight:700;color:#8A2432}
.hole{margin-bottom:.3rem}
.eagt{font-size:.88rem;color:#5F5548}
.zcjx{max-width:46rem;margin:0 auto}
.kmvv{border-bottom:1px solid #C7B68F;padding:1.32rem 0}
.ezid{font-size:1.15rem;margin-bottom:.5rem}
.vxgf{color:#18233B}
.maet{background:#e8eade;border-top:1px solid #C7B68F;border-bottom:1px solid #C7B68F;margin:2.4rem 0 0}
.jcvn{max-width:46rem;margin:0 auto;padding:2.64rem 1.5rem;text-align:center}
.jcvn h2{margin-bottom:.7rem}
.jcvn p{margin-bottom:1.1rem}
.sgks{display:inline-block;background:#8A2432;color:#FFFFFF;text-decoration:none;font-weight:600;padding:.8rem 1.8rem;border-radius:var(--radius)}
.sgks:hover{opacity:.9}

.rttk{font-size:1.45rem;margin-bottom:.45rem}
.kmue p{margin-bottom:.55rem}
.kmue p:last-child{margin-bottom:0}
.ekqx{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .95rem;margin:.6rem 0 0;font-size:.92rem}
.uult{display:inline-block;font-weight:700;font-size:1.05rem;padding:1rem 2rem;border-radius:var(--radius);text-decoration:none;white-space:nowrap}
.uult:hover{opacity:.92}
.gzpd{background:#8A2432;color:#FFFFFF}
.briu{max-width:64rem;margin:0 auto;padding:1.6rem 1.5rem;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem 2.5rem;align-items:center}
.gzpd h2,.gzpd p{color:#FFFFFF}
.yjfy{display:inline-block;background:#FFFFFF;color:#8A2432;font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .75rem;margin-bottom:.6rem}
.ekqx{color:#e1c6ca}
.bslx::before{content:"\2022\00a0"}
.uult{background:#F7EED8;color:#18233B;border:2px solid #FFFFFF}
@media (max-width:720px){.briu{display:block} .yjfy{transform:none;max-width:none;margin-bottom:.6rem} .uult{display:block;text-align:center;margin-top:1rem}}
.knrp{background:#18233B;color:#FFFFFF} .knrp a{color:inherit}
.knrp .rpex{padding:2.64rem 1.5rem}
.ebnd{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:1.4rem}
.pkpv{font-style:italic;margin-bottom:.8rem}
.hxrk{font-size:.9rem;margin-bottom:.8rem}
.qyfm{font-size:.85rem;color:#5F5548}
.knrp .qyfm{opacity:.85}
.rqxu{color:#5F5548;font-size:.92rem}
.knrp .fhnc,.knrp .rqxu{color:#959aa5}
.knrp .qyfm{color:#878d99;opacity:1}
@media(max-width:760px){
  .athg .rpex{grid-template-columns:1fr;gap:1.5rem}
  .ebnd{grid-template-columns:1fr}
  .ihjv .rpex{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;padding:.9rem 1.5rem;text-align:left}
  .ihjv .fxcc{border-top:0;padding-top:0}
  .ihjv .jzns{display:flex}
  .ihjv .fxcc{display:none;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid #C7B68F;padding-top:.4rem;margin-top:.4rem}
  .ihjv .fxcc[data-open="true"]{display:flex}
  .ihjv .ibzb{display:block;padding:.6rem 0;font-size:1.05rem}
}

/* ---- per-site theme layer ---- */
/* The Queen Creek Joint Ledger — restrained retro barbershop editorial system. */

:root {
  --ledger-cream: #F7EED8;
  --ledger-paper: #FFF9EC;
  --ledger-tan: #E9D8B4;
  --ledger-navy: #18233B;
  --ledger-brown: #5F5548;
  --ledger-red: #8A2432;
  --ledger-teal: #17615F;
  --ledger-rule: #C7B68F;
  --ledger-white: #FFFFFF;
  --ledger-red-soft: #F1DFD6;
  --ledger-teal-soft: #E8F0E9;
}

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

body {
  background-color: var(--ledger-cream);
  background-image:
    linear-gradient(rgba(24, 35, 59, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(24, 35, 59, .018) 1px, transparent 1px);
  background-size: 32px 32px;
  color: var(--ledger-navy);
  font-size: 1.075rem;
  letter-spacing: .002em;
}

body p,
body li,
td {
  color: var(--ledger-navy);
}

::selection {
  background: #8A2432;
  color: var(--ledger-white);
}

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

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

/* Double-rule shopfront masthead, with the site name treated as a wordmark. */
.ihjv {
  position: relative;
  border-top: .38rem solid var(--ledger-navy);
  border-bottom: 1px solid var(--ledger-navy);
  background: var(--ledger-paper);
  box-shadow: 0 5px 0 var(--ledger-red), 0 7px 0 var(--ledger-cream), 0 8px 0 var(--ledger-teal);
}

.ihjv::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: .24rem;
  background: repeating-linear-gradient(135deg, var(--ledger-red) 0 1.1rem, var(--ledger-paper) 1.1rem 2.2rem, var(--ledger-teal) 2.2rem 3.3rem, var(--ledger-paper) 3.3rem 4.4rem);
}

.ihjv .rpex {
  max-width: 78rem;
  padding-top: 1.35rem;
  padding-bottom: .85rem;
}

.lntq {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 3.7rem;
  padding: .42rem 1.1rem .45rem 4.7rem;
  border: 2px solid var(--ledger-navy);
  color: var(--ledger-navy);
  font-size: clamp(1.08rem, 2vw, 1.48rem);
  font-weight: 400;
  letter-spacing: .015em;
  line-height: 1.05;
  text-transform: uppercase;
  box-shadow: inset 0 0 0 3px var(--ledger-paper), inset 0 0 0 4px var(--ledger-rule), 5px 5px 0 var(--ledger-tan);
}

.lntq::before {
  content: "QC";
  position: absolute;
  left: .48rem;
  top: 50%;
  display: grid;
  width: 3.25rem;
  height: 2.55rem;
  place-items: center;
  border: 2px solid var(--ledger-paper);
  outline: 2px solid var(--ledger-red);
  background: var(--ledger-red);
  color: var(--ledger-white);
  font-family: 'Source Sans 3', 'Segoe UI', sans-serif;
  font-size: .88rem;
  font-weight: 700;
  letter-spacing: .12em;
  transform: translateY(-50%);
}

.lntq::after {
  content: "";
  position: absolute;
  right: .7rem;
  bottom: .24rem;
  width: 2.8rem;
  border-bottom: 3px solid var(--ledger-teal);
}

.ihjv .fhnc {
  margin-top: .48rem;
  color: var(--ledger-brown);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.fxcc {
  gap: 0;
  align-items: stretch;
}

.ihjv .fxcc {
  border-top: 3px double var(--ledger-rule);
  padding-top: .6rem;
}

.ibzb {
  position: relative;
  padding: .42rem .72rem;
  border-right: 1px solid var(--ledger-rule);
  color: var(--ledger-navy);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .085em;
  line-height: 1.2;
  text-transform: uppercase;
}

.ibzb:first-child {
  border-left: 1px solid var(--ledger-rule);
}

.ibzb::after {
  content: "";
  position: absolute;
  left: .72rem;
  right: .72rem;
  bottom: .14rem;
  height: 2px;
  background: var(--ledger-red);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .18s ease;
}

.ibzb:hover::after,
.ibzb:focus-visible::after {
  transform: scaleX(1);
}

/* Asymmetric service-card hero: copy on paper, dimensional barber-pole field to the right. */
.athg {
  isolation: isolate;
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid var(--ledger-navy);
  background: linear-gradient(160deg, var(--ledger-paper), var(--ledger-red-soft));
}

.athg::before {
  content: "";
  position: absolute;
  z-index: -2;
  top: -8rem;
  right: -5rem;
  width: min(39vw, 34rem);
  height: 38rem;
  border-left: 10px solid var(--ledger-navy);
  background: repeating-linear-gradient(135deg, var(--ledger-red) 0 2.25rem, var(--ledger-paper) 2.25rem 4.5rem, var(--ledger-teal) 4.5rem 6.75rem, var(--ledger-paper) 6.75rem 9rem);
  box-shadow: -16px 0 0 var(--ledger-tan);
  transform: rotate(8deg);
}

.athg::after {
  content: "THE\A JOINT\A LEDGER";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: clamp(1.4rem, 7vw, 7rem);
  display: grid;
  width: 11.5rem;
  height: 11.5rem;
  place-items: center;
  border: 4px double var(--ledger-paper);
  outline: 3px solid var(--ledger-navy);
  background: #18233B;
  color: var(--ledger-white);
  font-family: 'Bree Serif', Rockwell, Georgia, serif;
  font-size: 1.36rem;
  letter-spacing: .12em;
  line-height: 1.18;
  text-align: center;
  white-space: pre;
  transform: translateY(-50%) rotate(-3deg);
  box-shadow: 9px 9px 0 var(--ledger-red);
}

.athg .rpex {
  max-width: 76rem;
  padding: clamp(4.5rem, 9vw, 7.8rem) 1.5rem clamp(4.8rem, 9vw, 7.4rem);
  text-align: left;
}

.qvqv {
  position: relative;
  width: min(64%, 47rem);
  margin: 0;
  padding: 2rem 2.2rem 2.2rem;
  border: 1px solid var(--ledger-navy);
  background: var(--ledger-paper);
  box-shadow: 10px 10px 0 var(--ledger-tan), 13px 13px 0 var(--ledger-navy);
}

.qvqv::before,
.qvqv::after {
  content: "";
  position: absolute;
  width: 3.8rem;
  height: 3.8rem;
  pointer-events: none;
}

.qvqv::before {
  top: .65rem;
  right: .65rem;
  border-top: 3px solid var(--ledger-red);
  border-right: 3px solid var(--ledger-red);
}

.qvqv::after {
  bottom: .65rem;
  left: .65rem;
  border-bottom: 3px solid var(--ledger-teal);
  border-left: 3px solid var(--ledger-teal);
}

.hytx {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin-bottom: 1rem;
  color: var(--ledger-red);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .18em;
}

.hytx::before {
  content: "";
  width: 1rem;
  height: 1rem;
  border: 2px solid var(--ledger-red);
  transform: rotate(45deg);
}

.athg .vvar {
  max-width: 13ch;
  margin-bottom: 1.25rem;
  color: var(--ledger-navy);
  font-size: clamp(2.65rem, 5.7vw, 5.2rem);
  font-weight: 400;
  letter-spacing: -.042em;
  line-height: .95;
  text-wrap: balance;
}

.athg .xuws {
  max-width: 37rem;
  margin: 0;
  padding-left: 1rem;
  border-left: 4px double var(--ledger-red);
  color: var(--ledger-brown);
  font-size: 1.15rem;
  line-height: 1.55;
}

.yavj {
  justify-content: flex-start;
  gap: .45rem;
  margin-top: 1.5rem;
}

.wlnk {
  position: relative;
  border: 1px solid var(--ledger-navy);
  border-radius: 0;
  background: var(--ledger-paper);
  padding: .35rem .7rem .35rem 1.65rem;
  color: var(--ledger-navy);
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .045em;
  text-transform: uppercase;
}

.wlnk::before {
  content: "";
  position: absolute;
  left: .55rem;
  top: 50%;
  width: .48rem;
  height: .48rem;
  border: 2px solid var(--ledger-teal);
  transform: translateY(-50%) rotate(45deg);
}

/* Homepage clinic spotlight becomes a confident enamel sign, not a default panel. */
.gzpd {
  position: relative;
  margin: 0;
  border-top: 8px solid var(--ledger-navy);
  border-bottom: 8px solid var(--ledger-navy);
  background: #8A2432;
  color: #FFFFFF;
}

.gzpd::before,
.gzpd::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 3px;
  background: repeating-linear-gradient(90deg, var(--ledger-paper) 0 1.5rem, var(--ledger-teal) 1.5rem 3rem);
}

.gzpd::before { top: 0; }
.gzpd::after { bottom: 0; }

.briu {
  max-width: 70rem;
  padding: 2.25rem 1.5rem;
  gap: 1.5rem 3rem;
}

.yjfy {
  border: 1px solid var(--ledger-white);
  background: #FFFFFF;
  color: #8A2432;
  font-size: .7rem;
  letter-spacing: .16em;
}

.rttk {
  color: #FFFFFF;
  font-size: clamp(1.65rem, 3vw, 2.35rem);
  font-weight: 400;
  line-height: 1.05;
}

.kmue p,
.ekqx,
.bslx {
  color: #FFFFFF;
}

.ekqx {
  gap: .5rem 1.35rem;
  font-size: .88rem;
}

.bslx {
  position: relative;
  padding-left: 1.25rem;
  font-weight: 600;
}

.bslx::before {
  content: "";
  position: absolute;
  left: 0;
  top: .42em;
  width: .52rem;
  height: .52rem;
  border: 2px solid var(--ledger-white);
  transform: rotate(45deg);
}

.uult {
  border: 3px double var(--ledger-navy);
  border-radius: 0;
  background: #FFF9EC;
  color: #18233B;
  font-family: 'Source Sans 3', 'Segoe UI', sans-serif;
  font-size: .94rem;
  font-weight: 700;
  letter-spacing: .065em;
  text-transform: uppercase;
  box-shadow: 6px 6px 0 var(--ledger-navy);
}

.uult::after {
  content: "  →";
}

/* Reading rhythm: a ledger spine and numbered-feeling section marks. */
.ewgx {
  padding-top: 4rem;
}

.qufl {
  position: relative;
  max-width: 50rem;
  margin-bottom: 2.3rem;
  border-top: 3px double var(--ledger-navy);
  border-bottom: 1px solid var(--ledger-rule);
  background: var(--ledger-paper);
  padding: 1.65rem 2rem 1.65rem 3rem;
  box-shadow: 7px 7px 0 var(--ledger-tan);
  font-size: 1.18rem;
  line-height: 1.67;
}

.qufl::before {
  content: "OPEN";
  position: absolute;
  top: 1.85rem;
  left: -1.25rem;
  border: 1px solid var(--ledger-navy);
  background: var(--ledger-teal);
  padding: .28rem .42rem;
  color: var(--ledger-white);
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .14em;
  transform: rotate(-90deg);
}

.zerw {
  position: relative;
  padding: 2.35rem 0 2.65rem 2.35rem;
  border-top: 1px solid var(--ledger-rule);
}

.zerw::before {
  content: "";
  position: absolute;
  top: 2.7rem;
  left: .15rem;
  width: .82rem;
  height: .82rem;
  border: 2px solid var(--ledger-red);
  box-shadow: 4px 4px 0 var(--ledger-tan);
  transform: rotate(45deg);
}

.zerw::after {
  content: "";
  position: absolute;
  top: 3.05rem;
  bottom: 2.25rem;
  left: .54rem;
  width: 1px;
  background: var(--ledger-rule);
}

.zerw h2 {
  max-width: 26ch;
  margin-bottom: 1rem;
  color: var(--ledger-navy);
  font-size: clamp(1.65rem, 3vw, 2.15rem);
  font-weight: 400;
  letter-spacing: -.018em;
  line-height: 1.08;
}

.zerw h2::after {
  content: "";
  display: block;
  width: 4.2rem;
  margin-top: .62rem;
  border-bottom: 4px double var(--ledger-teal);
}

.zerw p,
.zerw li {
  line-height: 1.72;
}

blockquote {
  border: 0;
  border-top: 3px double var(--ledger-red);
  border-bottom: 3px double var(--ledger-red);
  background: var(--ledger-paper);
  padding: 1.2rem 1.5rem;
  color: var(--ledger-brown);
  font-family: 'Bree Serif', Rockwell, Georgia, serif;
}

.osnw {
  border: 1px solid var(--ledger-navy);
  background: var(--ledger-paper);
  box-shadow: 5px 5px 0 var(--ledger-tan);
}

th {
  background: var(--ledger-navy);
  color: var(--ledger-white);
  font-size: .76rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

th,
td {
  border-color: var(--ledger-rule);
}

/* Local module: folded route card with one icon language. */
.yzbk {
  position: relative;
  max-width: 50rem;
  overflow: hidden;
  border: 2px solid var(--ledger-navy);
  border-radius: 0;
  background: var(--ledger-paper);
  padding: 2rem 2rem 1.8rem 6.2rem;
  box-shadow: 9px 9px 0 var(--ledger-tan);
}

.yzbk::before {
  content: "QC\A 33.2°N";
  position: absolute;
  inset: 0 auto 0 0;
  display: grid;
  width: 4.6rem;
  place-items: center;
  border-right: 3px double var(--ledger-paper);
  background: var(--ledger-teal);
  color: var(--ledger-white);
  font-family: 'Bree Serif', Rockwell, Georgia, serif;
  font-size: .78rem;
  letter-spacing: .08em;
  line-height: 1.25;
  text-align: center;
  white-space: pre;
}

.evpe {
  color: var(--ledger-navy);
  font-size: 1.65rem;
  font-weight: 400;
}

.evpe::after {
  content: "";
  display: block;
  width: 6rem;
  margin: .65rem 0 1rem;
  border-bottom: 4px double var(--ledger-red);
}

.maly {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem 1.25rem;
  border-top: 1px solid var(--ledger-rule);
  padding-top: 1rem;
}

.wvlq {
  padding-left: 1.45rem;
  color: var(--ledger-navy);
}

.wvlq::before {
  top: .5em;
  width: .62rem;
  height: .62rem;
  border: 2px solid var(--ledger-red);
  border-radius: 0;
  background: transparent;
  transform: rotate(45deg);
}

/* FAQ: archival question tabs. */
.zcjx {
  max-width: 50rem;
  border-top: 4px double var(--ledger-navy);
}

.kmvv {
  position: relative;
  border-bottom: 1px solid var(--ledger-rule);
  background: var(--ledger-paper);
  padding: 1.65rem 1.7rem 1.65rem 5rem;
}

.kmvv:nth-child(even) {
  background: var(--ledger-teal-soft);
}

.kmvv::before {
  content: "Q";
  position: absolute;
  top: 1.55rem;
  left: 1.35rem;
  display: grid;
  width: 2.35rem;
  height: 2.35rem;
  place-items: center;
  border: 2px solid var(--ledger-navy);
  background: var(--ledger-red);
  color: var(--ledger-white);
  font-family: 'Bree Serif', Rockwell, Georgia, serif;
  font-size: 1rem;
  box-shadow: 4px 4px 0 var(--ledger-tan);
}

.ezid {
  margin-bottom: .65rem;
  color: var(--ledger-navy);
  font-size: 1.32rem;
  font-weight: 400;
}

.vxgf {
  line-height: 1.68;
}

/* Sources resemble numbered ledger tickets. */
.nkug {
  max-width: 50rem;
  border-top: 4px double var(--ledger-navy);
  background: var(--ledger-paper);
  box-shadow: 7px 7px 0 var(--ledger-tan);
}

.zxig {
  min-height: 4.4rem;
  border-top: 0;
  border-bottom: 1px dashed var(--ledger-rule);
  padding: 1.1rem 1.25rem 1.1rem 4.4rem;
}

.zxig::before {
  top: 1.15rem;
  left: 1.1rem;
  display: grid;
  width: 2.15rem;
  height: 2.15rem;
  place-items: center;
  border: 2px solid var(--ledger-teal);
  border-radius: 50%;
  background: var(--ledger-paper);
  color: var(--ledger-teal);
  font-family: 'Source Sans 3', 'Segoe UI', sans-serif;
  font-size: .75rem;
  font-weight: 700;
}

.hole {
  color: var(--ledger-navy);
  line-height: 1.55;
}

.eagt {
  color: var(--ledger-brown);
  font-size: .84rem;
}

/* Consultation band: clipped signboard with a directional rule. */
.maet {
  position: relative;
  overflow: hidden;
  border: 0;
  border-top: 8px solid var(--ledger-navy);
  border-bottom: 8px solid var(--ledger-navy);
  background: var(--ledger-teal-soft);
}

.maet::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient(135deg, transparent 0 2.4rem, rgba(23, 97, 95, .08) 2.4rem 2.55rem);
  pointer-events: none;
}

.jcvn {
  position: relative;
  max-width: 52rem;
  padding: 3.5rem 1.5rem;
}

.jcvn h2 {
  color: var(--ledger-navy);
  font-size: clamp(1.9rem, 4vw, 2.8rem);
  font-weight: 400;
  line-height: 1.05;
}

.jcvn h2::before,
.jcvn h2::after {
  content: "◇";
  margin: 0 .55rem;
  color: var(--ledger-red);
}

.jcvn p {
  color: var(--ledger-navy);
}

.sgks {
  border: 3px double var(--ledger-paper);
  border-radius: 0;
  background: var(--ledger-red);
  color: var(--ledger-white);
  font-size: .92rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  box-shadow: 6px 6px 0 var(--ledger-navy);
}

.sgks::after {
  content: "  →";
}

/* Dark closing ledger with striped cap and clean disclosure hierarchy. */
.knrp {
  position: relative;
  border-top: 0;
  background: #18233B;
  color: #FFFFFF;
}

.knrp::before {
  content: "";
  display: block;
  height: .45rem;
  background: repeating-linear-gradient(135deg, var(--ledger-red) 0 1.5rem, var(--ledger-paper) 1.5rem 3rem, var(--ledger-teal) 3rem 4.5rem, var(--ledger-paper) 4.5rem 6rem);
}

.knrp .rpex {
  max-width: 72rem;
  padding-top: 3rem;
  padding-bottom: 2.6rem;
}

.ebnd {
  grid-template-columns: minmax(0, 1.6fr) minmax(15rem, .8fr);
  gap: 2.5rem 5rem;
}

.tvsq {
  position: relative;
  padding-left: 1.4rem;
  border-left: 3px double var(--ledger-red);
}

.knrp .lntq {
  border-color: var(--ledger-paper);
  color: #FFFFFF;
  box-shadow: inset 0 0 0 3px var(--ledger-navy), inset 0 0 0 4px var(--ledger-rule), 5px 5px 0 var(--ledger-red);
}

.pkpv,
.hxrk {
  color: #FFFFFF;
  line-height: 1.6;
}

.qyfm {
  padding-top: 1rem;
  border-top: 1px solid rgba(255, 255, 255, .28);
}

.vbza {
  border: 2px solid var(--ledger-paper);
  background: var(--ledger-red);
  color: var(--ledger-white);
  font-weight: 700;
}

@media (min-width: 761px) {
  .ihjv .rpex {
    display: grid;
    grid-template-columns: minmax(19rem, .8fr) minmax(0, 1.6fr);
    align-items: center;
    gap: .8rem 2rem;
    text-align: left;
  }

  .ihjv .rpex > div:first-child {
    grid-row: 1 / 3;
  }

  .ihjv .fxcc {
    justify-content: flex-end;
  }
}

@media (max-width: 900px) {
  .athg::before {
    right: -10rem;
    width: 24rem;
  }

  .athg::after {
    right: 2rem;
    width: 9rem;
    height: 9rem;
    font-size: 1.05rem;
  }

  .qvqv {
    width: 70%;
  }
}

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

  .ihjv .rpex {
    padding-top: 1.2rem;
    padding-bottom: .9rem;
  }

  .lntq {
    max-width: calc(100vw - 6.5rem);
    min-height: 3rem;
    padding-left: 3.8rem;
    font-size: .94rem;
  }

  .lntq::before {
    width: 2.6rem;
    height: 2.1rem;
    font-size: .7rem;
  }

  .athg::before {
    right: -14rem;
    width: 22rem;
  }

  .athg::after {
    display: none;
  }

  .athg .rpex {
    padding-top: 3.6rem;
    padding-bottom: 4.1rem;
  }

  .qvqv {
    width: calc(100% - .8rem);
    padding: 1.55rem 1.35rem 1.75rem;
    box-shadow: 7px 7px 0 var(--ledger-tan), 9px 9px 0 var(--ledger-navy);
  }

  .athg .vvar {
    font-size: clamp(2.2rem, 12vw, 3.45rem);
  }

  .qufl {
    margin-left: .75rem;
    margin-right: .75rem;
    padding: 1.35rem 1.2rem 1.35rem 1.65rem;
  }

  .qufl::before {
    display: none;
  }

  .zerw {
    padding-left: 1.7rem;
  }

  .yzbk {
    margin-left: .5rem;
    margin-right: .5rem;
    padding: 5.4rem 1.25rem 1.4rem;
  }

  .yzbk::before {
    inset: 0 0 auto;
    width: auto;
    height: 4rem;
    border-right: 0;
    border-bottom: 3px double var(--ledger-paper);
  }

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

  .kmvv {
    padding: 1.4rem 1.15rem 1.5rem 4rem;
  }

  .kmvv::before {
    left: .75rem;
    width: 2rem;
    height: 2rem;
  }

  .zxig {
    padding-left: 3.75rem;
  }

  .jcvn h2::before,
  .jcvn h2::after {
    display: none;
  }
}
