/* generated by render-qck-site.ts — do not hand-edit (gitignored output) */
*{box-sizing:border-box;margin:0}
:root{--radius:1.15rem}
html{scroll-behavior:smooth}
body{background:#F8F1E5;color:#241A14;font-family:'Nunito Sans', 'Avenir Next', Avenir, sans-serif;line-height:1.65;font-size:1.0625rem;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Fraunces', Georgia, serif;line-height:1.2;color:#241A14}
a{color:#8A3528}
a:hover{opacity:.85}
img{max-width:100%}
code{background:#EDE0CD;padding:.1em .35em;border-radius:4px;font-size:.9em}
.qsol{position:absolute;left:-9999px;top:0;background:#8A3528;color:#FFFFFF;padding:.5rem 1rem;z-index:9}
.qsol:focus{left:0}
.ldir{max-width:72rem;margin:0 auto;padding:0 1.5rem}
.gqyw{font-family:'Fraunces', Georgia, serif;font-weight:700;font-size:1.25rem;text-decoration:none;color:inherit}
.qtiu{color:#665345;font-size:.85rem}
.vgql{display:flex;flex-wrap:wrap;gap:1.1rem}
.dpio{text-decoration:none;color:inherit;font-size:.95rem}
.dpio:hover{color:#8A3528;opacity:1}
.qpvt{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}
.qpvt span{display:block;height:2px;background:currentColor;border-radius:2px}
.qpvt[aria-expanded="true"] span:nth-child(2){opacity:0}
.gabo{border-bottom:3px double #CDBBA3;background:#F8F1E5} .gabo .ldir{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:1.5rem;padding:1.1rem 1.5rem} .gabo .vgql{justify-content:flex-end}
.adpi{background:#FFFDF8;border-bottom:1px solid #CDBBA3} .adpi .ldir{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2.5rem;padding:4.08rem 1.5rem}
.bgia{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#8A3528;font-weight:600;margin-bottom:.8rem}
.hkiq{font-size:clamp(1.9rem,4.5vw,3rem);margin-bottom:1rem}
.allr{font-size:1.15rem;color:#665345;max-width:44rem;margin:0 auto}
.coct{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin-top:1.4rem}
.kxxo{border:1px solid #CDBBA3;background:#FFFDF8;border-radius:999px;padding:.3rem .85rem;font-size:.85rem}
.mrzj{padding:3.12rem 0}
/* the measure fix: prose column CENTERED in the container, never pinned left */
.faif,.liaj,.iwcq{max-width:46rem;margin-left:auto;margin-right:auto}
.faif{padding:1.68rem 0}
.faif h2{font-size:1.6rem;margin-bottom:.8rem}
.faif h3{font-size:1.2rem;margin:.9rem 0 .5rem}
.faif p,.faif li,.liaj p{margin-bottom:.85rem}
.faif ul,.faif ol{padding-left:1.4rem}
.liaj{font-size:1.12rem}
.iwcq{background:#FFFDF8;border:1px solid #CDBBA3;border-radius:var(--radius);padding:1.2rem 1.4rem;margin-bottom:1.92rem}
.tulb{overflow-x:auto;margin:1rem 0}
table{border-collapse:collapse;width:100%;font-size:.95rem}
th,td{border:1px solid #CDBBA3;padding:.55rem .7rem;text-align:left;vertical-align:top}
th{background:#FFFDF8}
blockquote{border-left:4px solid #8A3528;padding:.2rem 0 .2rem 1rem;color:#665345;margin:1rem 0}
.mwdw{max-width:46rem;margin:2.16rem auto;background:#f8f1ec;border:1px solid #CDBBA3;border-radius:var(--radius);padding:1.4rem 1.6rem}
.oakl{font-size:1.25rem;margin-bottom:.7rem}
.hhve{list-style:none;padding:0;margin-top:.8rem;display:grid;gap:.45rem}
.yycv{padding-left:1.1rem;position:relative;font-size:.95rem}
.yycv::before{content:"";position:absolute;left:0;top:.55em;width:.45em;height:.45em;border-radius:50%;background:#8A3528}
.buhf{max-width:46rem;margin:2.16rem auto;padding:0;list-style:none;counter-reset:src}
.zjkw{border-top:1px solid #CDBBA3;padding:.9rem 0 .9rem 2.2rem;position:relative;counter-increment:src}
.zjkw::before{content:counter(src);position:absolute;left:0;top:.95rem;font-family:'Fraunces', Georgia, serif;font-weight:700;color:#8A3528}
.isca{margin-bottom:.3rem}
.eukk{font-size:.88rem;color:#665345}
.rkvy{max-width:46rem;margin:0 auto}
.wjtl{border-bottom:1px solid #CDBBA3;padding:1.32rem 0}
.wyar{font-size:1.15rem;margin-bottom:.5rem}
.vlsb{color:#241A14}
.euhs{background:#efeee6;border-top:1px solid #CDBBA3;border-bottom:1px solid #CDBBA3;margin:2.4rem 0 0}
.zhbd{max-width:46rem;margin:0 auto;padding:2.64rem 1.5rem;text-align:center}
.zhbd h2{margin-bottom:.7rem}
.zhbd p{margin-bottom:1.1rem}
.tatx{display:inline-block;background:#8A3528;color:#FFFFFF;text-decoration:none;font-weight:600;padding:.8rem 1.8rem;border-radius:var(--radius)}
.tatx:hover{opacity:.9}

.htrr{font-size:1.45rem;margin-bottom:.45rem}
.kyhg p{margin-bottom:.55rem}
.kyhg p:last-child{margin-bottom:0}
.cygb{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .95rem;margin:.6rem 0 0;font-size:.92rem}
.arjh{display:inline-block;font-weight:700;font-size:1.05rem;padding:1rem 2rem;border-radius:var(--radius);text-decoration:none;white-space:nowrap}
.arjh:hover{opacity:.92}
.ptsj{background:#8A3528;color:#FFFFFF}
.wdot{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}
.ptsj h2,.ptsj p{color:#FFFFFF}
.elpk{display:inline-block;background:#FFFFFF;color:#8A3528;font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .75rem;margin-bottom:.6rem}
.cygb{color:#e5d3d0}
.zdxz::before{content:"\2022\00a0"}
.arjh{background:#F8F1E5;color:#241A14;border:2px solid #FFFFFF}
@media (max-width:720px){.wdot{display:block} .elpk{transform:none;max-width:none;margin-bottom:.6rem} .arjh{display:block;text-align:center;margin-top:1rem}}
.zgwu{background:#241A14;color:#FFFFFF} .zgwu a{color:inherit}
.zgwu .ldir{padding:2.64rem 1.5rem}
.qldd{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:1.4rem}
.gixd{font-style:italic;margin-bottom:.8rem}
.gqba{font-size:.9rem;margin-bottom:.8rem}
.lxvz{font-size:.85rem;color:#665345}
.zgwu .lxvz{opacity:.85}
.ltae{color:#665345;font-size:.92rem}
.zgwu .qtiu,.zgwu .ltae{color:#9a9693}
.zgwu .lxvz{color:#8d8885;opacity:1}
@media(max-width:760px){
  .adpi .ldir{grid-template-columns:1fr;gap:1.5rem}
  .qldd{grid-template-columns:1fr}
  .gabo .ldir{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;padding:.9rem 1.5rem;text-align:left}
  .gabo .vgql{border-top:0;padding-top:0}
  .gabo .qpvt{display:flex}
  .gabo .vgql{display:none;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid #CDBBA3;padding-top:.4rem;margin-top:.4rem}
  .gabo .vgql[data-open="true"]{display:flex}
  .gabo .dpio{display:block;padding:.6rem 0;font-size:1.05rem}
}

/* ---- per-site theme layer ---- */
/* Gilbert PRP Field Guide — warm artisan counter, measured health editorial */

:root {
  --cafe-cream: #F8F1E5;
  --cafe-porcelain: #FFFDF8;
  --cafe-oat: #EDE0CD;
  --cafe-espresso: #241A14;
  --cafe-clay: #8A3528;
  --cafe-olive: #5A6B42;
  --cafe-muted: #665345;
  --cafe-line: #CDBBA3;
}

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

body {
  background-color: var(--cafe-cream);
  background-image:
    linear-gradient(rgba(138, 53, 40, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(138, 53, 40, .035) 1px, transparent 1px);
  background-size: 32px 32px;
  font-size: 1.075rem;
  line-height: 1.72;
}

::selection {
  background: var(--cafe-clay);
  color: #FFFFFF;
}

a {
  text-decoration-color: var(--cafe-clay);
  text-decoration-thickness: .08em;
  text-underline-offset: .18em;
}

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

/* A shop-sign masthead with a compact editorial wordmark. */
.gabo {
  position: relative;
  border: 0;
  background: var(--cafe-porcelain);
  box-shadow: inset 0 -1px 0 var(--cafe-espresso), inset 0 -5px 0 var(--cafe-oat);
}

.gabo::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: .28rem;
  background: repeating-linear-gradient(90deg, var(--cafe-clay) 0 3rem, var(--cafe-olive) 3rem 5rem, var(--cafe-oat) 5rem 7rem);
}

.gabo .ldir {
  padding-top: 1.45rem;
  padding-bottom: 1.2rem;
}

.gabo .ldir > div:first-child {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: .75rem;
  align-items: center;
}

.gqyw {
  display: inline-flex;
  align-items: center;
  gap: .72rem;
  color: var(--cafe-espresso);
  font-size: clamp(1.05rem, 2vw, 1.35rem);
  font-variation-settings: "opsz" 40;
  letter-spacing: -.035em;
  line-height: 1;
}

.gqyw::before {
  content: "G";
  display: inline-grid;
  width: 2.8rem;
  height: 2.8rem;
  place-items: center;
  border: 1px solid var(--cafe-espresso);
  border-radius: 50% 50% 46% 54%;
  background: var(--cafe-clay);
  box-shadow: .24rem .24rem 0 var(--cafe-oat);
  color: #FFFFFF;
  font-size: 1.15rem;
  font-style: italic;
  font-weight: 800;
  transform: rotate(-4deg);
}

.gqyw::after {
  content: "  /  PRP";
  color: var(--cafe-clay);
  font-family: 'Nunito Sans', 'Avenir Next', sans-serif;
  font-size: .68em;
  font-weight: 800;
  letter-spacing: .14em;
}

.gabo .qtiu {
  grid-column: 2;
  margin-top: .22rem;
  color: var(--cafe-muted);
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .14em;
  line-height: 1.25;
  text-transform: uppercase;
}

.gabo .vgql {
  gap: .18rem;
  align-items: center;
}

.gabo .dpio {
  padding: .48rem .62rem .42rem;
  border-radius: 999px;
  color: var(--cafe-espresso);
  font-size: .77rem;
  font-weight: 800;
  letter-spacing: .045em;
}

.gabo .dpio::before {
  content: "·";
  margin-right: .35rem;
  color: var(--cafe-clay);
}

.gabo .dpio:hover {
  background: var(--cafe-oat);
  color: var(--cafe-clay);
}

/* Hero: menu copy on the left, an offset batch card on the right. */
.adpi {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid var(--cafe-line);
  background: var(--cafe-porcelain);
}

.adpi::before {
  content: "";
  position: absolute;
  top: -7rem;
  right: -4rem;
  width: min(42vw, 35rem);
  height: 31rem;
  border: 1px solid var(--cafe-clay);
  border-radius: 48% 52% 44% 56%;
  background:
    repeating-radial-gradient(circle at 68% 45%, transparent 0 12px, rgba(255, 255, 255, .15) 13px 14px),
    var(--cafe-clay);
  transform: rotate(8deg);
}

.adpi .ldir {
  position: relative;
  min-height: 31rem;
  align-items: center;
  padding-top: clamp(3.8rem, 7vw, 6.2rem);
  padding-bottom: clamp(4.2rem, 8vw, 6.8rem);
}

.adpi .ldir::after {
  content: "COMPARE\A THE BATCH\A · 01 ·";
  z-index: 1;
  align-self: center;
  justify-self: center;
  width: min(15rem, 82%);
  padding: 2.2rem 1.2rem;
  border: 1px solid #FFFFFF;
  border-radius: 48% 52% 46% 54%;
  color: #FFFFFF;
  font-family: 'Nunito Sans', 'Avenir Next', sans-serif;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .19em;
  line-height: 2;
  text-align: center;
  white-space: pre;
  transform: rotate(-5deg);
}

.ifph {
  position: relative;
  z-index: 2;
  max-width: 47rem;
}

.bgia {
  display: flex;
  align-items: center;
  gap: .7rem;
  color: var(--cafe-clay);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .19em;
}

.bgia::before {
  content: "";
  width: 2.4rem;
  height: 2px;
  background: var(--cafe-clay);
}

.adpi .hkiq {
  max-width: 47rem;
  margin: 0 0 1.25rem;
  color: var(--cafe-espresso);
  font-size: clamp(2.65rem, 5.6vw, 5.2rem);
  font-variation-settings: "opsz" 80;
  font-weight: 700;
  letter-spacing: -.055em;
  line-height: .94;
  text-wrap: balance;
}

.adpi .allr {
  max-width: 39rem;
  margin: 0;
  padding-left: 1.2rem;
  border-left: 3px solid var(--cafe-olive);
  color: var(--cafe-muted);
  font-size: 1.08rem;
  line-height: 1.62;
}

.coct {
  gap: .55rem;
  max-width: 44rem;
  margin-top: 1.6rem;
}

.adpi .kxxo {
  padding: .38rem .8rem .34rem;
  border: 1px solid var(--cafe-line);
  border-radius: .35rem 1rem .35rem 1rem;
  background: var(--cafe-cream);
  color: var(--cafe-espresso);
  font-size: .75rem;
  font-weight: 700;
}

/* Solid-clay spotlight refined as a disclosed house recommendation. */
.ptsj {
  position: relative;
  box-shadow: inset 0 1px 0 var(--cafe-espresso), inset 0 -1px 0 var(--cafe-espresso);
}

.ptsj::before,
.ptsj::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: .8rem;
  background: repeating-linear-gradient(0deg, transparent 0 10px, rgba(255, 255, 255, .25) 10px 12px);
}

.ptsj::before { left: 1rem; }
.ptsj::after { right: 1rem; }

.wdot {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.iuqn {
  padding-left: 1.15rem;
  border-left: 1px solid rgba(255, 255, 255, .65);
}

.elpk {
  border-radius: 999px;
  box-shadow: .2rem .2rem 0 var(--cafe-espresso);
}

.htrr {
  max-width: 43rem;
  color: #FFFFFF;
  font-size: clamp(1.55rem, 2.6vw, 2.2rem);
  font-variation-settings: "opsz" 45;
  letter-spacing: -.025em;
}

.kyhg {
  max-width: 46rem;
  font-size: .97rem;
  line-height: 1.55;
}

.zdxz {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
}

.zdxz::before {
  content: "◇";
  font-size: .85rem;
}

.arjh {
  border-radius: .35rem 1.1rem .35rem 1.1rem;
  box-shadow: .35rem .35rem 0 var(--cafe-espresso);
  letter-spacing: .025em;
}

.arjh::after,
.tatx::after {
  content: "  ↗";
}

/* Long-form rhythm: a centered receipt with numbered menu sections. */
.mrzj {
  padding-top: clamp(3.8rem, 7vw, 6.5rem);
  padding-bottom: clamp(3rem, 6vw, 5.5rem);
}

.mrzj > .ldir {
  counter-reset: cafe-section;
}

.liaj {
  position: relative;
  max-width: 52rem;
  margin-bottom: 3rem;
  padding: 1.7rem 2.1rem 1.8rem 2.4rem;
  border: 1px solid var(--cafe-line);
  border-radius: .4rem 2rem .4rem 2rem;
  background: var(--cafe-porcelain);
  box-shadow: .55rem .55rem 0 var(--cafe-oat);
  color: var(--cafe-espresso);
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.23rem;
  font-variation-settings: "opsz" 18;
  line-height: 1.62;
}

.liaj::before {
  content: "START HERE";
  position: absolute;
  top: -.68rem;
  left: 1.5rem;
  padding: .16rem .6rem;
  background: var(--cafe-clay);
  color: #FFFFFF;
  font-family: 'Nunito Sans', sans-serif;
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .14em;
}

.liaj p:last-child,
.faif p:last-child {
  margin-bottom: 0;
}

.faif {
  position: relative;
  padding: clamp(2.1rem, 4vw, 3.4rem) 0;
  border-top: 1px solid var(--cafe-line);
  counter-increment: cafe-section;
}

.faif:nth-of-type(even) {
  max-width: 51rem;
  padding-right: 2.4rem;
  padding-left: 2.4rem;
  border: 1px solid var(--cafe-line);
  border-radius: 2rem .4rem 2rem .4rem;
  background: var(--cafe-porcelain);
}

.faif h2 {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .9rem;
  align-items: baseline;
  margin-bottom: 1.15rem;
  color: var(--cafe-espresso);
  font-size: clamp(1.65rem, 3.4vw, 2.45rem);
  font-variation-settings: "opsz" 45;
  letter-spacing: -.035em;
  line-height: 1.06;
}

.faif h2::before {
  content: counter(cafe-section, decimal-leading-zero);
  color: var(--cafe-clay);
  font-family: 'Nunito Sans', sans-serif;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .15em;
}

.faif h3 {
  margin-top: 1.55rem;
  color: var(--cafe-clay);
  font-size: 1.18rem;
  letter-spacing: -.01em;
}

.faif strong {
  color: var(--cafe-espresso);
}

.faif ul,
.faif ol {
  padding-left: 0;
  list-style: none;
}

.faif li {
  position: relative;
  padding-left: 1.4rem;
}

.faif li::before {
  content: "◇";
  position: absolute;
  left: 0;
  color: var(--cafe-clay);
  font-size: .78rem;
}

blockquote {
  border: 0;
  border-left: 5px solid var(--cafe-olive);
  border-radius: 0 1rem 1rem 0;
  background: var(--cafe-oat);
  color: var(--cafe-espresso);
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.08rem;
}

.tulb {
  border: 1px solid var(--cafe-line);
  border-radius: .4rem 1.4rem .4rem 1.4rem;
  background: var(--cafe-porcelain);
}

table {
  min-width: 42rem;
}

th,
td {
  border-color: var(--cafe-line);
}

th {
  background: var(--cafe-oat);
  color: var(--cafe-espresso);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .055em;
  text-transform: uppercase;
}

/* Gilbert access card: route receipt with consistent outlined glyphs. */
.mwdw {
  position: relative;
  max-width: 52rem;
  margin-top: 3rem;
  padding: 2.2rem 2.3rem;
  border: 1px solid var(--cafe-espresso);
  border-radius: .35rem 2rem .35rem 2rem;
  background: var(--cafe-oat);
  box-shadow: .6rem .6rem 0 var(--cafe-clay);
}

.mwdw::before {
  content: "GILBERT → CHANDLER";
  display: inline-block;
  margin-bottom: 1rem;
  padding: .28rem .65rem;
  border: 1px solid var(--cafe-espresso);
  border-radius: 999px;
  color: var(--cafe-espresso);
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: .13em;
}

.oakl {
  color: var(--cafe-espresso);
  font-size: clamp(1.55rem, 3vw, 2.15rem);
  letter-spacing: -.035em;
}

.hhve {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem 1.25rem;
  padding-top: .9rem;
  border-top: 1px dashed var(--cafe-muted);
}

.yycv {
  padding-left: 1.55rem;
  color: var(--cafe-espresso);
  font-size: .88rem;
}

.yycv::before {
  content: "◇";
  top: .08rem;
  width: auto;
  height: auto;
  border-radius: 0;
  background: transparent;
  color: var(--cafe-clay);
  font-size: .85rem;
}

/* FAQ as a ruled order pad. */
.rkvy {
  max-width: 52rem;
  border: 1px solid var(--cafe-line);
  border-radius: .4rem 1.8rem .4rem 1.8rem;
  background: var(--cafe-porcelain);
  box-shadow: .5rem .5rem 0 var(--cafe-oat);
  counter-reset: cafe-faq;
}

.wjtl {
  position: relative;
  padding: 1.55rem 2rem 1.55rem 4.4rem;
  border-bottom: 1px dashed var(--cafe-line);
  counter-increment: cafe-faq;
}

.wjtl::before {
  content: "?" counter(cafe-faq);
  position: absolute;
  top: 1.55rem;
  left: 1.45rem;
  display: inline-grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border: 1px solid var(--cafe-clay);
  border-radius: 50%;
  color: var(--cafe-clay);
  font-size: .66rem;
  font-weight: 800;
}

.wjtl:last-child {
  border-bottom: 0;
}

.wyar {
  color: var(--cafe-espresso);
  font-size: 1.25rem;
  letter-spacing: -.015em;
}

.vlsb {
  color: var(--cafe-muted);
  line-height: 1.65;
}

/* Sources read like itemized receipts, not generic cards. */
.buhf {
  max-width: 52rem;
  margin-top: 3.4rem;
  padding: 1.15rem 1.7rem .5rem;
  border: 1px solid var(--cafe-line);
  border-top: 5px solid var(--cafe-olive);
  border-radius: .3rem 1.5rem .3rem 1.5rem;
  background: var(--cafe-porcelain);
}

.buhf::before {
  content: "SOURCE RECEIPT";
  display: block;
  padding-bottom: .85rem;
  border-bottom: 1px dashed var(--cafe-line);
  color: var(--cafe-espresso);
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .16em;
}

.zjkw {
  border-top: 0;
  border-bottom: 1px dashed var(--cafe-line);
  padding-top: 1.1rem;
  padding-bottom: 1.1rem;
}

.zjkw::before {
  top: 1.15rem;
  display: inline-grid;
  width: 1.45rem;
  height: 1.45rem;
  place-items: center;
  border: 1px solid var(--cafe-clay);
  border-radius: 50%;
  color: var(--cafe-clay);
  font-family: 'Nunito Sans', sans-serif;
  font-size: .65rem;
}

.isca {
  color: var(--cafe-espresso);
  font-size: .91rem;
  line-height: 1.55;
}

.eukk {
  color: var(--cafe-muted);
  font-size: .79rem;
}

/* Consultation band: olive-tinted counter ticket, distinct from the clay spotlight. */
.euhs {
  position: relative;
  overflow: hidden;
  margin-top: 0;
  border-top: 1px solid var(--cafe-espresso);
  border-bottom: 1px solid var(--cafe-espresso);
  background: #EFEEE6;
}

.euhs::before,
.euhs::after {
  content: "";
  position: absolute;
  width: 10rem;
  height: 10rem;
  border: 1px solid var(--cafe-olive);
  border-radius: 50%;
}

.euhs::before { top: -6rem; left: -3rem; }
.euhs::after { right: -3rem; bottom: -6rem; }

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

.zhbd h2 {
  color: var(--cafe-espresso);
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  font-variation-settings: "opsz" 55;
  letter-spacing: -.04em;
}

.zhbd p {
  color: var(--cafe-muted);
}

.tatx {
  border: 1px solid var(--cafe-espresso);
  border-radius: .35rem 1.15rem .35rem 1.15rem;
  background: #8A3528;
  box-shadow: .4rem .4rem 0 var(--cafe-espresso);
  color: #FFFFFF;
  letter-spacing: .025em;
}

/* Dark espresso footer with a menu-rule close. */
.zgwu {
  position: relative;
  border: 0;
  background: #241A14;
  color: #FFFFFF;
}

.zgwu::before {
  content: "";
  display: block;
  height: .35rem;
  background: repeating-linear-gradient(90deg, var(--cafe-clay) 0 3rem, var(--cafe-olive) 3rem 5rem, var(--cafe-oat) 5rem 7rem);
}

.zgwu .ldir {
  padding-top: 3rem;
  padding-bottom: 2.8rem;
}

.qldd {
  grid-template-columns: minmax(0, 1.35fr) minmax(14rem, .65fr);
  gap: 3rem;
}

.avay:first-child::before {
  content: "GILBERT PRP FIELD GUIDE";
  display: block;
  margin-bottom: .8rem;
  color: #FFFFFF;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: .035em;
}

.gixd {
  padding-left: 1rem;
  border-left: 2px solid var(--cafe-clay);
  color: #FFFFFF;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1rem;
  line-height: 1.55;
}

.gqba,
.lxvz,
.zgwu .ltae {
  line-height: 1.6;
}

.qpvt {
  border-radius: .35rem 1rem .35rem 1rem;
}

@media (max-width: 920px) {
  .gabo .ldir {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .gabo .vgql {
    justify-content: flex-start;
  }

  .adpi::before {
    right: -10rem;
    width: 30rem;
  }

  .adpi .ldir {
    grid-template-columns: minmax(0, 1.75fr) minmax(10rem, .65fr);
  }

  .adpi .ldir::after {
    font-size: .7rem;
  }
}

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

  .gabo .ldir > div:first-child {
    display: grid;
  }

  .gabo .qtiu {
    display: none;
  }

  .gqyw::after {
    display: none;
  }

  .adpi::before {
    top: auto;
    right: -6rem;
    bottom: -13rem;
    width: 19rem;
    height: 19rem;
  }

  .adpi .ldir {
    min-height: 0;
    padding-top: 3.6rem;
    padding-bottom: 6.3rem;
  }

  .adpi .ldir::after {
    display: none;
  }

  .adpi .hkiq {
    font-size: clamp(2.4rem, 13vw, 3.7rem);
  }

  .ptsj::before,
  .ptsj::after {
    display: none;
  }

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

  .liaj,
  .faif:nth-of-type(even),
  .mwdw,
  .buhf {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }

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

  .wjtl {
    padding: 1.35rem 1.25rem 1.35rem 3.8rem;
  }

  .wjtl::before {
    top: 1.35rem;
    left: 1rem;
  }

  .qldd {
    gap: 1.5rem;
  }
}

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