/* generated by render-qck-site.ts — do not hand-edit (gitignored output) */
*{box-sizing:border-box;margin:0}
:root{--radius:0.2rem}
html{scroll-behavior:smooth}
body{background:#FFF8E7;color:#17213A;font-family:'Atkinson Hyperlegible', Arial, sans-serif;line-height:1.65;font-size:1.0625rem;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Bricolage Grotesque', 'Arial Black', sans-serif;line-height:1.2;color:#17213A}
a{color:#9B214C}
a:hover{opacity:.85}
img{max-width:100%}
code{background:#D9E7E2;padding:.1em .35em;border-radius:4px;font-size:.9em}
.owzg{position:absolute;left:-9999px;top:0;background:#9B214C;color:#FFFFFF;padding:.5rem 1rem;z-index:9}
.owzg:focus{left:0}
.pbrb{max-width:72rem;margin:0 auto;padding:0 1.5rem}
.axcz{font-family:'Bricolage Grotesque', 'Arial Black', sans-serif;font-weight:700;font-size:1.25rem;text-decoration:none;color:inherit}
.zbtr{color:#54505A;font-size:.85rem}
.garc{display:flex;flex-wrap:wrap;gap:1.1rem}
.nipr{text-decoration:none;color:inherit;font-size:.95rem}
.nipr:hover{color:#9B214C;opacity:1}
.gezv{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}
.gezv span{display:block;height:2px;background:currentColor;border-radius:2px}
.gezv[aria-expanded="true"] span:nth-child(2){opacity:0}
.ybjm{border-bottom:3px double #C8B99E;background:#FFF8E7} .ybjm .pbrb{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:1.5rem;padding:1.1rem 1.5rem} .ybjm .garc{justify-content:flex-end}
.wvli{background:#FFF8E7} .wvli .pbrb{padding:3.5999999999999996rem 1.5rem;border-left:6px solid #9B214C;margin:2rem auto}
.hxzn{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#9B214C;font-weight:600;margin-bottom:.8rem}
.uhua{font-size:clamp(1.9rem,4.5vw,3rem);margin-bottom:1rem}
.jzbh{font-size:1.15rem;color:#54505A;max-width:44rem;margin:0 auto}
.hnlu{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin-top:1.4rem}
.fzug{border:1px solid #C8B99E;background:#F2E5CC;border-radius:999px;padding:.3rem .85rem;font-size:.85rem}
.jrnn{padding:3.12rem 0}
/* the measure fix: prose column CENTERED in the container, never pinned left */
.alyi,.ukth,.xqsj{max-width:46rem;margin-left:auto;margin-right:auto}
.alyi{padding:1.68rem 0}
.alyi h2{font-size:1.6rem;margin-bottom:.8rem}
.alyi h3{font-size:1.2rem;margin:.9rem 0 .5rem}
.alyi p,.alyi li,.ukth p{margin-bottom:.85rem}
.alyi ul,.alyi ol{padding-left:1.4rem}
.ukth{font-size:1.12rem}
.xqsj{background:#F2E5CC;border:1px solid #C8B99E;border-radius:var(--radius);padding:1.2rem 1.4rem;margin-bottom:1.92rem}
.hnoq{overflow-x:auto;margin:1rem 0}
table{border-collapse:collapse;width:100%;font-size:.95rem}
th,td{border:1px solid #C8B99E;padding:.55rem .7rem;text-align:left;vertical-align:top}
th{background:#F2E5CC}
blockquote{border-left:4px solid #9B214C;padding:.2rem 0 .2rem 1rem;color:#54505A;margin:1rem 0}
.ztlz{max-width:46rem;margin:2.16rem auto;background:#edd9c4;border:1px solid #C8B99E;border-radius:var(--radius);padding:1.4rem 1.6rem}
.ejil{font-size:1.25rem;margin-bottom:.7rem}
.qdij{list-style:none;padding:0;margin-top:.8rem;display:grid;gap:.45rem}
.oufi{padding-left:1.1rem;position:relative;font-size:.95rem}
.oufi::before{content:"";position:absolute;left:0;top:.55em;width:.45em;height:.45em;border-radius:50%;background:#9B214C}
.eyuw{max-width:46rem;margin:2.16rem auto;padding:0;list-style:none;counter-reset:src}
.jlfs{border-top:1px solid #C8B99E;padding:.9rem 0 .9rem 2.2rem;position:relative;counter-increment:src}
.jlfs::before{content:counter(src);position:absolute;left:0;top:.95rem;font-family:'Bricolage Grotesque', 'Arial Black', sans-serif;font-weight:700;color:#9B214C}
.kjbg{margin-bottom:.3rem}
.lfsa{font-size:.88rem;color:#54505A}
.pyzv{max-width:46rem;margin:0 auto}
.nyro{border-bottom:1px solid #C8B99E;padding:1.32rem 0}
.wdfd{font-size:1.15rem;margin-bottom:.5rem}
.lxgq{color:#17213A}
.njnf{background:#dcd9c2;border-top:1px solid #C8B99E;border-bottom:1px solid #C8B99E;margin:2.4rem 0 0}
.emdo{max-width:46rem;margin:0 auto;padding:2.64rem 1.5rem;text-align:center}
.emdo h2{margin-bottom:.7rem}
.emdo p{margin-bottom:1.1rem}
.vofc{display:inline-block;background:#9B214C;color:#FFFFFF;text-decoration:none;font-weight:600;padding:.8rem 1.8rem;border-radius:var(--radius)}
.vofc:hover{opacity:.9}

.mlbn{font-size:1.45rem;margin-bottom:.45rem}
.htuz p{margin-bottom:.55rem}
.htuz p:last-child{margin-bottom:0}
.wklo{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .95rem;margin:.6rem 0 0;font-size:.92rem}
.nsvm{display:inline-block;font-weight:700;font-size:1.05rem;padding:1rem 2rem;border-radius:var(--radius);text-decoration:none;white-space:nowrap}
.nsvm:hover{opacity:.92}
.adfk{background:#9B214C;color:#FFFFFF}
.glrb{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}
.adfk h2,.adfk p{color:#FFFFFF}
.crje{display:inline-block;background:#FFFFFF;color:#9B214C;font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .75rem;margin-bottom:.6rem}
.wklo{color:#edd7df}
.ygbh::before{content:"\2022\00a0"}
.nsvm{background:#FFF8E7;color:#17213A;border:2px solid #FFFFFF}
@media (max-width:720px){.glrb{display:block} .crje{transform:none;max-width:none;margin-bottom:.6rem} .nsvm{display:block;text-align:center;margin-top:1rem}}
.mtqw{background:#F2E5CC;border-top:1px solid #C8B99E}
.mtqw .pbrb{padding:2.64rem 1.5rem}
.lxvu{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:1.4rem}
.djrz{font-style:italic;margin-bottom:.8rem}
.cncl{font-size:.9rem;margin-bottom:.8rem}
.xbpj{font-size:.85rem;color:#54505A}
.mtqw .xbpj{opacity:.85}
.klls{color:#54505A;font-size:.92rem}
.mtqw .xbpj{color:#696369;opacity:1}
@media(max-width:760px){
  .wvli .pbrb{grid-template-columns:1fr;gap:1.5rem}
  .lxvu{grid-template-columns:1fr}
  .ybjm .pbrb{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;padding:.9rem 1.5rem;text-align:left}
  .ybjm .garc{border-top:0;padding-top:0}
  .ybjm .gezv{display:flex}
  .ybjm .garc{display:none;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid #C8B99E;padding-top:.4rem;margin-top:.4rem}
  .ybjm .garc[data-open="true"]{display:flex}
  .ybjm .nipr{display:block;padding:.6rem 0;font-size:1.05rem}
}

/* ---- per-site theme layer ---- */
/*
 * Surprise Shoulder Field Notes — restrained Riso editorial system
 * Self-contained by contract: no remote assets and no icon font.
 */

::selection {
  background: #9B214C;
  color: #FFFFFF;
}

body {
  background-color: #FFF8E7;
  background-image:
    linear-gradient(rgba(23, 33, 58, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23, 33, 58, .018) 1px, transparent 1px);
  background-size: 7px 7px, 11px 11px;
  color: #17213A;
  font-feature-settings: "kern" 1, "liga" 1;
}

.egtl {
  overflow: clip;
}

.pbrb {
  max-width: 76rem;
}

h1,
h2,
h3 {
  letter-spacing: -.035em;
  text-wrap: balance;
}

p,
li {
  text-wrap: pretty;
}

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

a:focus-visible,
button:focus-visible {
  outline: 3px solid #146B65;
  outline-offset: 4px;
}

/* Masthead: a compact editorial seal plus an underprinted wordmark. */
.ybjm {
  position: relative;
  border-bottom: 0;
  box-shadow:
    inset 0 -3px 0 #17213A,
    inset 0 -7px 0 #9B214C;
}

.ybjm::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 7px;
  width: 28%;
  height: 3px;
  background: #146B65;
}

.ybjm .pbrb {
  align-items: center;
  min-height: 6.4rem;
  padding-top: 1rem;
  padding-bottom: 1.15rem;
}

.axcz {
  position: relative;
  display: inline-grid;
  grid-template-columns: 3.3rem minmax(10rem, 1fr);
  align-items: center;
  gap: .75rem;
  max-width: 25rem;
  font-size: clamp(1.05rem, 2vw, 1.4rem);
  font-weight: 800;
  line-height: .94;
  letter-spacing: -.045em;
  text-transform: uppercase;
  color: #17213A;
  text-shadow: 2px 1px 0 rgba(155, 33, 76, .18);
}

.axcz::before {
  content: "S/S";
  display: grid;
  place-items: center;
  width: 3.1rem;
  height: 3.1rem;
  border: 3px solid #17213A;
  background: #F2E5CC;
  color: #9B214C;
  box-shadow:
    4px 4px 0 #9B214C,
    -3px -3px 0 #146B65;
  font-size: .83rem;
  line-height: 1;
  letter-spacing: -.08em;
  transform: rotate(-2deg);
}

.zbtr {
  margin-top: .5rem;
  color: #54505A;
  font-weight: 700;
  letter-spacing: .045em;
}

.garc {
  align-items: center;
  gap: .25rem .55rem;
}

.nipr {
  position: relative;
  padding: .45rem .58rem;
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.nipr::after {
  content: "";
  position: absolute;
  left: .55rem;
  right: .55rem;
  bottom: .24rem;
  height: 2px;
  background: #9B214C;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .16s ease;
}

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

.gezv {
  border: 2px solid #17213A;
  border-radius: 0;
  box-shadow: 3px 3px 0 #9B214C;
}

/* Hero: an offset printed plate, oversized headline and registration target. */
.wvli {
  position: relative;
  isolation: isolate;
  border: 0;
  background: #FFF8E7;
}

.wvli::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 12%;
  right: max(-4rem, calc((100vw - 76rem) / 2 - 1rem));
  width: clamp(15rem, 30vw, 29rem);
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    radial-gradient(circle, #9B214C 0 2px, transparent 2.5px) 0 0 / 12px 12px;
  opacity: .22;
  transform: rotate(8deg);
}

.wvli::after {
  content: "+";
  position: absolute;
  z-index: -1;
  top: 10%;
  right: max(1.5rem, calc((100vw - 70rem) / 2));
  display: grid;
  place-items: center;
  width: 5.4rem;
  height: 5.4rem;
  border: 3px solid #146B65;
  border-radius: 50%;
  color: #146B65;
  font: 800 3.8rem/1 "Bricolage Grotesque", sans-serif;
  transform: rotate(8deg);
}

.wvli .pbrb {
  position: relative;
  margin-top: clamp(1.5rem, 4vw, 3rem);
  margin-bottom: clamp(2rem, 5vw, 4rem);
  padding: 0 1.5rem;
  border-left: 0;
}

.rcac {
  position: relative;
  width: min(100%, 61rem);
  min-height: 25rem;
  padding: clamp(2.1rem, 5vw, 4.8rem) clamp(1.25rem, 6vw, 5.5rem);
  border: 3px solid #17213A;
  background: #F2E5CC;
  box-shadow:
    12px 12px 0 #9B214C,
    -9px -9px 0 #146B65;
}

.rcac::before {
  content: "FIELD NOTE / 01";
  position: absolute;
  top: 1rem;
  right: 1rem;
  padding: .32rem .55rem;
  border: 2px solid #17213A;
  color: #17213A;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .13em;
  transform: rotate(2deg);
}

.rcac::after {
  content: "";
  position: absolute;
  left: clamp(1.25rem, 6vw, 5.5rem);
  bottom: 2.1rem;
  width: 6rem;
  height: 7px;
  background: linear-gradient(90deg, #9B214C 0 52%, #146B65 52% 100%);
}

.hxzn {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin-bottom: 1.15rem;
  padding: .38rem .65rem .3rem;
  background: #9B214C;
  color: #FFFFFF;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .14em;
  transform: rotate(-1deg);
}

.hxzn::before {
  content: "→";
  font-size: 1rem;
  line-height: .7;
}

.uhua {
  max-width: 15ch;
  margin-bottom: 1.15rem;
  font-size: clamp(2.45rem, 6.7vw, 5.7rem);
  line-height: .91;
  letter-spacing: -.065em;
}

.jzbh {
  max-width: 46rem;
  margin: 0;
  color: #54505A;
  font-size: clamp(1.08rem, 2vw, 1.35rem);
  line-height: 1.48;
}

.hnlu {
  gap: .65rem;
  margin-top: 1.7rem;
  margin-bottom: 1.4rem;
}

.fzug {
  position: relative;
  border: 2px solid #17213A;
  border-radius: 0;
  background: #FFF8E7;
  color: #17213A;
  padding: .34rem .7rem .31rem 1.75rem;
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  box-shadow: 3px 3px 0 rgba(20, 107, 101, .42);
}

.fzug::before {
  content: "+";
  position: absolute;
  left: .55rem;
  top: .25rem;
  color: #9B214C;
  font-weight: 800;
}

/* The homepage recommendation becomes a solid second printing plate. */
.adfk {
  position: relative;
  isolation: isolate;
  margin: -1rem 0 1.2rem;
  border-top: 4px solid #17213A;
  border-bottom: 4px solid #17213A;
  background: #9B214C;
  color: #FFFFFF;
}

.adfk::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0 0 0 62%;
  background:
    radial-gradient(circle, rgba(255, 255, 255, .28) 0 1.5px, transparent 2px) 0 0 / 10px 10px;
  mix-blend-mode: screen;
}

.glrb {
  position: relative;
  max-width: 76rem;
  padding-top: 2.15rem;
  padding-bottom: 2.15rem;
  gap: 1.4rem 3.2rem;
}

.crje {
  border: 2px solid #FFFFFF;
  background: #FFFFFF;
  color: #9B214C;
  box-shadow: 4px 4px 0 #17213A;
  font-size: .7rem;
  letter-spacing: .14em;
  transform: rotate(-1deg);
}

.mlbn {
  max-width: 30ch;
  color: #FFFFFF;
  font-size: clamp(1.55rem, 3vw, 2.4rem);
  line-height: 1.02;
}

.htuz {
  max-width: 48rem;
}

.adfk h2,
.adfk p,
.wklo {
  color: #FFFFFF;
}

.wklo {
  gap: .5rem 1.4rem;
  font-weight: 700;
}

.ygbh {
  display: inline-flex;
  align-items: center;
}

.ygbh::before {
  content: "＋";
  display: inline-grid;
  place-items: center;
  width: 1.15rem;
  height: 1.15rem;
  margin-right: .42rem;
  border: 1px solid #FFFFFF;
  color: #FFFFFF;
  font-size: .74rem;
  line-height: 1;
}

.nsvm {
  border: 3px solid #17213A;
  border-radius: 0;
  background: #FFF8E7;
  color: #17213A;
  box-shadow: 7px 7px 0 #17213A;
  text-transform: uppercase;
  letter-spacing: .04em;
  transition: transform .15s ease, box-shadow .15s ease;
}

.nsvm:hover {
  opacity: 1;
  transform: translate(3px, 3px);
  box-shadow: 4px 4px 0 #17213A;
}

/* Long-form rhythm: numbered plates, generous lede, intentional alternating paper. */
.jrnn {
  counter-reset: field-section;
  padding-top: clamp(2.8rem, 6vw, 5.2rem);
}

.ukth {
  position: relative;
  max-width: 54rem;
  margin-bottom: clamp(2.3rem, 5vw, 4rem);
  padding: clamp(1.25rem, 3vw, 2rem) clamp(1.25rem, 4vw, 2.7rem);
  border-top: 3px solid #17213A;
  border-bottom: 3px solid #17213A;
  background: #FFF8E7;
  font-size: clamp(1.15rem, 2vw, 1.34rem);
  line-height: 1.58;
}

.ukth::before {
  content: "READ THIS FIRST";
  position: absolute;
  top: -.82rem;
  left: 1.25rem;
  padding: .15rem .5rem;
  background: #146B65;
  color: #FFFFFF;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .12em;
}

.ukth p:first-child::first-letter {
  float: left;
  margin: .08em .12em 0 0;
  color: #9B214C;
  font-family: "Bricolage Grotesque", sans-serif;
  font-size: 3.8em;
  font-weight: 800;
  line-height: .72;
}

.alyi {
  counter-increment: field-section;
  max-width: 52rem;
  padding: clamp(2rem, 4vw, 3.6rem) clamp(1rem, 3vw, 2.2rem);
  border-top: 2px solid #C8B99E;
}

.alyi:nth-of-type(even) {
  background: #F2E5CC;
  box-shadow: 10px 0 0 #146B65;
}

.alyi h2 {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  align-items: start;
  gap: .75rem;
  margin-bottom: 1.2rem;
  font-size: clamp(1.7rem, 3vw, 2.45rem);
  line-height: 1.02;
}

.alyi h2::before {
  content: counter(field-section, decimal-leading-zero);
  display: grid;
  place-items: center;
  min-height: 2.7rem;
  border: 2px solid #17213A;
  background: #FFF8E7;
  color: #9B214C;
  box-shadow: 3px 3px 0 #146B65;
  font-size: .82rem;
  letter-spacing: .04em;
  transform: rotate(-2deg);
}

.alyi h3 {
  margin-top: 1.5rem;
  padding-left: .75rem;
  border-left: 5px solid #9B214C;
  font-size: 1.27rem;
}

.alyi strong {
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: rgba(155, 33, 76, .45);
  text-decoration-thickness: .18em;
  text-underline-offset: .08em;
}

blockquote {
  position: relative;
  border: 0;
  padding: 1.25rem 1.4rem 1.25rem 3.5rem;
  background: #D9E7E2;
  color: #17213A;
  box-shadow: inset 6px 0 0 #146B65;
}

blockquote::before {
  content: "“";
  position: absolute;
  left: .85rem;
  top: .4rem;
  color: #9B214C;
  font: 800 3.4rem/1 "Bricolage Grotesque", sans-serif;
}

.hnoq {
  border: 3px solid #17213A;
  box-shadow: 7px 7px 0 #9B214C;
}

table {
  background: #FFF8E7;
}

th {
  border-color: #17213A;
  background: #146B65;
  color: #FFFFFF;
  font-family: "Bricolage Grotesque", sans-serif;
  letter-spacing: .02em;
}

td {
  border-color: #C8B99E;
}

/* Local module: map-note styling with route line and stamped facts. */
.ztlz {
  position: relative;
  max-width: 54rem;
  margin-top: 3.6rem;
  margin-bottom: 3.6rem;
  padding: clamp(1.5rem, 4vw, 2.6rem);
  border: 3px solid #17213A;
  border-radius: 0;
  background: #D9E7E2;
  box-shadow:
    9px 9px 0 #146B65,
    -5px -5px 0 #9B214C;
}

.ztlz::before {
  content: "LOCAL / SURPRISE";
  position: absolute;
  top: -.9rem;
  right: 1.2rem;
  padding: .28rem .65rem;
  border: 2px solid #17213A;
  background: #FFF8E7;
  color: #17213A;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .12em;
  transform: rotate(1deg);
}

.ejil {
  max-width: 24ch;
  margin-bottom: 1rem;
  font-size: clamp(1.6rem, 3vw, 2.3rem);
}

.qdij {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .7rem;
  margin-top: 1.25rem;
}

.oufi {
  min-height: 2.7rem;
  padding: .68rem .7rem .6rem 2.65rem;
  border: 1px solid #17213A;
  background: #FFF8E7;
  color: #17213A;
  font-weight: 700;
}

.oufi::before {
  content: "＋";
  top: .62rem;
  left: .65rem;
  display: grid;
  place-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border: 1px solid #9B214C;
  border-radius: 0;
  background: transparent;
  color: #9B214C;
  font-size: .72rem;
}

/* FAQ: alternating registration shadows and a consistent boxed-question glyph. */
.pyzv {
  max-width: 54rem;
  display: grid;
  gap: 1rem;
}

.nyro {
  position: relative;
  padding: 1.45rem 1.5rem 1.4rem 4.6rem;
  border: 2px solid #17213A;
  background: #FFF8E7;
  box-shadow: 5px 5px 0 #9B214C;
}

.nyro:nth-child(even) {
  box-shadow: 5px 5px 0 #146B65;
}

.nyro::before {
  content: "?";
  position: absolute;
  top: 1.35rem;
  left: 1.2rem;
  display: grid;
  place-items: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 2px solid #17213A;
  color: #9B214C;
  font: 800 1.1rem/1 "Bricolage Grotesque", sans-serif;
  transform: rotate(-3deg);
}

.wdfd {
  margin-bottom: .7rem;
  font-size: clamp(1.25rem, 2vw, 1.55rem);
}

.lxgq {
  color: #17213A;
  line-height: 1.65;
}

/* Sources: a docket instead of a default divider list. */
.eyuw {
  max-width: 54rem;
  display: grid;
  gap: .75rem;
  margin-top: 3rem;
  padding-top: 3.2rem;
  border-top: 7px double #17213A;
}

.eyuw::before {
  content: "SOURCE DOCKET";
  display: inline-block;
  justify-self: start;
  margin-top: -4.45rem;
  padding: .25rem .6rem;
  background: #17213A;
  color: #FFFFFF;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .14em;
}

.jlfs {
  min-height: 5rem;
  padding: 1rem 1rem 1rem 4.2rem;
  border: 1px solid #C8B99E;
  background: #F2E5CC;
}

.jlfs::before {
  top: 1rem;
  left: .9rem;
  display: grid;
  place-items: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 2px solid #17213A;
  background: #FFF8E7;
  color: #9B214C;
  box-shadow: 3px 3px 0 #146B65;
  font-size: .78rem;
  transform: rotate(-2deg);
}

.kjbg {
  color: #17213A;
  line-height: 1.52;
}

.lfsa {
  color: #54505A;
  font-weight: 700;
}

/* Closing action: dark teal ink plate, with high-contrast paper button. */
.njnf {
  position: relative;
  overflow: hidden;
  margin-top: clamp(3rem, 7vw, 6rem);
  border-top: 4px solid #17213A;
  border-bottom: 4px solid #17213A;
  background: #146B65;
  color: #FFFFFF;
}

.njnf::after {
  content: "→";
  position: absolute;
  right: -1rem;
  bottom: -3.3rem;
  color: rgba(255, 255, 255, .13);
  font: 800 15rem/1 "Bricolage Grotesque", sans-serif;
  transform: rotate(-8deg);
}

.emdo {
  position: relative;
  z-index: 1;
  max-width: 54rem;
  padding-top: clamp(2.8rem, 6vw, 5rem);
  padding-bottom: clamp(2.8rem, 6vw, 5rem);
  text-align: left;
}

.emdo h2,
.emdo p {
  color: #FFFFFF;
}

.emdo h2 {
  max-width: 22ch;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: .97;
}

.emdo p {
  max-width: 48rem;
}

.vofc {
  position: relative;
  border: 3px solid #17213A;
  border-radius: 0;
  background: #FFF8E7;
  color: #17213A;
  box-shadow: 7px 7px 0 #17213A;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
}

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

.vofc:hover {
  opacity: 1;
  transform: translate(3px, 3px);
  box-shadow: 4px 4px 0 #17213A;
}

/* Footer: colophon rather than generic gray card. */
.mtqw {
  position: relative;
  border-top: 0;
  background: #F2E5CC;
  color: #17213A;
  box-shadow: inset 0 7px 0 #9B214C, inset 0 11px 0 #17213A;
}

.mtqw .pbrb {
  padding-top: 4rem;
  padding-bottom: 2.5rem;
}

.lxvu {
  grid-template-columns: minmax(0, 1.55fr) minmax(15rem, .75fr);
  gap: 3rem;
}

.djrz {
  max-width: 55ch;
  margin-top: 1rem;
  padding-left: 1rem;
  border-left: 5px solid #146B65;
  color: #17213A;
  font-size: 1.08rem;
  font-style: normal;
  font-weight: 700;
}

.cncl {
  max-width: 70ch;
  color: #17213A;
}

.mtqw .garc {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .25rem;
}

.mtqw .nipr {
  border-bottom: 1px solid #C8B99E;
}

.xbpj {
  padding-top: 1rem;
  border-top: 1px solid #C8B99E;
  color: #54505A;
  opacity: 1;
}

/* Responsive refinements preserve the renderer burger/open behavior. */
@media (max-width: 760px) {
  .ybjm .pbrb {
    min-height: 0;
  }

  .axcz {
    grid-template-columns: 2.7rem minmax(8rem, 1fr);
    max-width: calc(100vw - 6rem);
    font-size: .96rem;
  }

  .axcz::before {
    width: 2.55rem;
    height: 2.55rem;
    box-shadow: 3px 3px 0 #9B214C, -2px -2px 0 #146B65;
  }

  .wvli .pbrb {
    margin-top: 1.4rem;
    margin-bottom: 2.3rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .rcac {
    min-height: 0;
    padding: 3.4rem 1.2rem 3.3rem;
    box-shadow: 7px 7px 0 #9B214C, -5px -5px 0 #146B65;
  }

  .uhua {
    font-size: clamp(2.25rem, 12vw, 3.8rem);
  }

  .jzbh {
    font-size: 1.05rem;
  }

  .adfk {
    margin-top: 0;
  }

  .glrb {
    padding: 1.7rem 1rem;
  }

  .nsvm {
    white-space: normal;
  }

  .ukth,
  .alyi {
    margin-left: .25rem;
    margin-right: .25rem;
  }

  .alyi {
    padding-left: .75rem;
    padding-right: .75rem;
  }

  .alyi h2 {
    grid-template-columns: 2.45rem minmax(0, 1fr);
  }

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

  .nyro {
    padding: 4.2rem 1rem 1.2rem;
  }

  .nyro::before {
    top: 1rem;
    left: 1rem;
  }

  .lxvu {
    gap: 1.6rem;
  }

  .mtqw .garc {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .nipr::after,
  .nsvm,
  .vofc {
    transition: none;
  }
}

/* mobile: clip the hero ornament (::before at right:-64px widened the layout viewport to 470px at 390) */
.wvli { overflow: hidden; }
