/* 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:#F7F7F3;color:#172018;font-family:'DM Sans', 'Avenir Next', 'Segoe UI', sans-serif;line-height:1.65;font-size:1.0625rem;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Manrope', 'Avenir Next', 'Segoe UI', sans-serif;line-height:1.2;color:#172018}
a{color:#25662D}
a:hover{opacity:.85}
img{max-width:100%}
code{background:#E6EEE4;padding:.1em .35em;border-radius:4px;font-size:.9em}
.vgla{position:absolute;left:-9999px;top:0;background:#25662D;color:#FFFFFF;padding:.5rem 1rem;z-index:9}
.vgla:focus{left:0}
.krhu{max-width:72rem;margin:0 auto;padding:0 1.5rem}
.onlc{font-family:'Manrope', 'Avenir Next', 'Segoe UI', sans-serif;font-weight:700;font-size:1.25rem;text-decoration:none;color:inherit}
.uvdv{color:#4B5D4D;font-size:.85rem}
.jrzp{display:flex;flex-wrap:wrap;gap:1.1rem}
.tlvu{text-decoration:none;color:inherit;font-size:.95rem}
.tlvu:hover{color:#25662D;opacity:1}
.khbl{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}
.khbl span{display:block;height:2px;background:currentColor;border-radius:2px}
.khbl[aria-expanded="true"] span:nth-child(2){opacity:0}
.fenf{background:#FFFFFF} .fenf .krhu{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem 1.5rem;text-align:center} .jrzp{border-top:1px solid #C9D4C8;padding-top:.6rem}
.vcwu{background:#FFFFFF;border-bottom:1px solid #C9D4C8} .vcwu .krhu{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2.5rem;padding:4.08rem 1.5rem}
.tldy{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#25662D;font-weight:600;margin-bottom:.8rem}
.roew{font-size:clamp(1.9rem,4.5vw,3rem);margin-bottom:1rem}
.cjdr{font-size:1.15rem;color:#4B5D4D;max-width:44rem;margin:0 auto}
.sjqo{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin-top:1.4rem}
.kgtv{border:1px solid #C9D4C8;background:#FFFFFF;border-radius:999px;padding:.3rem .85rem;font-size:.85rem}
.rlyq{padding:3.12rem 0}
/* the measure fix: prose column CENTERED in the container, never pinned left */
.rqai,.kbjx,.jbld{max-width:46rem;margin-left:auto;margin-right:auto}
.rqai{padding:1.68rem 0}
.rqai h2{font-size:1.6rem;margin-bottom:.8rem}
.rqai h3{font-size:1.2rem;margin:.9rem 0 .5rem}
.rqai p,.rqai li,.kbjx p{margin-bottom:.85rem}
.rqai ul,.rqai ol{padding-left:1.4rem}
.kbjx{font-size:1.12rem}
.jbld{background:#FFFFFF;border:1px solid #C9D4C8;border-radius:var(--radius);padding:1.2rem 1.4rem;margin-bottom:1.92rem}
.eqpl{overflow-x:auto;margin:1rem 0}
table{border-collapse:collapse;width:100%;font-size:.95rem}
th,td{border:1px solid #C9D4C8;padding:.55rem .7rem;text-align:left;vertical-align:top}
th{background:#FFFFFF}
blockquote{border-left:4px solid #25662D;padding:.2rem 0 .2rem 1rem;color:#4B5D4D;margin:1rem 0}
.eetg{max-width:46rem;margin:2.16rem auto;background:#f2f6f2;border:1px solid #C9D4C8;border-radius:var(--radius);padding:1.4rem 1.6rem}
.wyoe{font-size:1.25rem;margin-bottom:.7rem}
.swrb{list-style:none;padding:0;margin-top:.8rem;display:grid;gap:.45rem}
.afqt{padding-left:1.1rem;position:relative;font-size:.95rem}
.afqt::before{content:"";position:absolute;left:0;top:.55em;width:.45em;height:.45em;border-radius:50%;background:#25662D}
.ciie{max-width:46rem;margin:2.16rem auto;padding:0;list-style:none;counter-reset:src}
.zoak{border-top:1px solid #C9D4C8;padding:.9rem 0 .9rem 2.2rem;position:relative;counter-increment:src}
.zoak::before{content:counter(src);position:absolute;left:0;top:.95rem;font-family:'Manrope', 'Avenir Next', 'Segoe UI', sans-serif;font-weight:700;color:#25662D}
.kuqm{margin-bottom:.3rem}
.hgyv{font-size:.88rem;color:#4B5D4D}
.xgyg{max-width:46rem;margin:0 auto}
.iljo{border-bottom:1px solid #C9D4C8;padding:1.32rem 0}
.qkbz{font-size:1.15rem;margin-bottom:.5rem}
.xhmw{color:#172018}
.ugmd{background:#f5ede9;border-top:1px solid #C9D4C8;border-bottom:1px solid #C9D4C8;margin:2.4rem 0 0}
.pcxi{max-width:46rem;margin:0 auto;padding:2.64rem 1.5rem;text-align:center}
.pcxi h2{margin-bottom:.7rem}
.pcxi p{margin-bottom:1.1rem}
.zopf{display:inline-block;background:#25662D;color:#FFFFFF;text-decoration:none;font-weight:600;padding:.8rem 1.8rem;border-radius:var(--radius)}
.zopf:hover{opacity:.9}

.hbpe{font-size:1.45rem;margin-bottom:.45rem}
.knsq p{margin-bottom:.55rem}
.knsq p:last-child{margin-bottom:0}
.jonc{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .95rem;margin:.6rem 0 0;font-size:.92rem}
.bmcn{display:inline-block;font-weight:700;font-size:1.05rem;padding:1rem 2rem;border-radius:var(--radius);text-decoration:none;white-space:nowrap}
.bmcn:hover{opacity:.92}
.qquf{background:#25662D;color:#FFFFFF}
.kdtx{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}
.qquf h2,.qquf p{color:#FFFFFF}
.mcbk{display:inline-block;background:#FFFFFF;color:#25662D;font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .75rem;margin-bottom:.6rem}
.jonc{color:#e0eae2}
.umym::before{content:"\2022\00a0"}
.bmcn{background:#F7F7F3;color:#172018;border:2px solid #FFFFFF}
@media (max-width:720px){.kdtx{display:block} .mcbk{transform:none;max-width:none;margin-bottom:.6rem} .bmcn{display:block;text-align:center;margin-top:1rem}}
.ytvg{background:#F7F7F3;border-top:3px double #C9D4C8}
.ytvg .krhu{padding:2.64rem 1.5rem}
.dfpd{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:1.4rem}
.prwu{font-style:italic;margin-bottom:.8rem}
.xiqv{font-size:.9rem;margin-bottom:.8rem}
.csuf{font-size:.85rem;color:#4B5D4D}
.ytvg .csuf{opacity:.85}
.wrlu{color:#4B5D4D;font-size:.92rem}
@media(max-width:760px){
  .vcwu .krhu{grid-template-columns:1fr;gap:1.5rem}
  .dfpd{grid-template-columns:1fr}
  .fenf .krhu{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;padding:.9rem 1.5rem;text-align:left}
  .fenf .jrzp{border-top:0;padding-top:0}
  .fenf .khbl{display:flex}
  .fenf .jrzp{display:none;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid #C9D4C8;padding-top:.4rem;margin-top:.4rem}
  .fenf .jrzp[data-open="true"]{display:flex}
  .fenf .tlvu{display:block;padding:.6rem 0;font-size:1.05rem}
}

/* ---- per-site theme layer ---- */
/* Gilbert Trail Guide — an Alltrails-inspired field-guide layer. */

body {
  letter-spacing: -0.008em;
  background-image:
    linear-gradient(90deg, rgba(37, 102, 45, 0.025) 1px, transparent 1px),
    linear-gradient(rgba(37, 102, 45, 0.025) 1px, transparent 1px);
  background-size: 32px 32px;
}

main {
  overflow: hidden;
}

.fenf {
  border-top: 5px solid #25662D;
  box-shadow: 0 1px 0 rgba(23, 32, 24, 0.06);
}

.fenf .krhu {
  padding-top: 1.05rem;
  padding-bottom: 0.75rem;
}

.onlc {
  display: inline-flex;
  align-items: center;
  gap: 0.72rem;
  font-size: clamp(1.1rem, 2vw, 1.42rem);
  font-weight: 800;
  letter-spacing: -0.045em;
  line-height: 1;
  position: relative;
}

.onlc::before {
  content: "G";
  display: grid;
  place-items: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 52% 48% 48% 52% / 44% 44% 56% 56%;
  background: #25662D;
  color: #FFFFFF;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: -0.08em;
  transform: rotate(-5deg);
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.24);
}

.onlc::after {
  content: "";
  position: absolute;
  left: 2.95rem;
  right: 0;
  bottom: -0.42rem;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #25662D 0 64%, #9A4B22 64% 72%, #C9D4C8 72% 100%);
}

.uvdv {
  letter-spacing: 0.035em;
  margin-top: 0.16rem;
}

.jrzp {
  gap: 0.25rem 0.45rem;
}

.tlvu {
  padding: 0.45rem 0.72rem;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.tlvu:hover {
  background: #E6EEE4;
  color: #25662D;
}

.vcwu {
  border-bottom: 0;
  background:
    radial-gradient(circle at 86% 28%, rgba(154, 75, 34, 0.13) 0 4px, transparent 5px),
    radial-gradient(circle at 72% 72%, rgba(37, 102, 45, 0.14) 0 7px, transparent 8px),
    linear-gradient(118deg, #F7F7F3 0 62%, #E6EEE4 62% 100%);
  position: relative;
}

.vcwu::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 8px;
  background: repeating-linear-gradient(90deg, #25662D 0 48px, #9A4B22 48px 58px, #C9D4C8 58px 94px);
}

.vcwu .krhu {
  min-height: 31rem;
  align-items: center;
  grid-template-columns: minmax(0, 1.35fr) minmax(17rem, 0.65fr);
  gap: 4rem;
  position: relative;
}

.vcwu .krhu::after {
  content: "";
  display: block;
  width: min(23rem, 100%);
  aspect-ratio: 1;
  justify-self: end;
  border: 1px solid #C9D4C8;
  border-radius: 46% 54% 60% 40% / 52% 42% 58% 48%;
  background:
    radial-gradient(circle at 24% 72%, #9A4B22 0 7px, #FFFFFF 8px 12px, transparent 13px),
    radial-gradient(circle at 71% 27%, #25662D 0 7px, #FFFFFF 8px 12px, transparent 13px),
    repeating-radial-gradient(ellipse at 52% 48%, transparent 0 17px, rgba(37, 102, 45, 0.19) 18px 19px, transparent 20px 34px),
    #FFFFFF;
  box-shadow: 18px 18px 0 #C9D4C8;
  transform: rotate(3deg);
}

.gcue {
  position: relative;
  z-index: 1;
}

.tldy {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.16em;
}

.tldy::before {
  content: "";
  width: 0.72rem;
  height: 0.72rem;
  border: 2px solid #25662D;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
}

.roew {
  max-width: 15ch;
  font-size: clamp(2.55rem, 5.8vw, 5rem);
  line-height: 0.99;
  letter-spacing: -0.065em;
  text-wrap: balance;
  margin-top: 0.35rem;
}

.cjdr {
  max-width: 38rem;
  margin: 0;
  font-size: clamp(1.05rem, 1.6vw, 1.24rem);
  line-height: 1.55;
}

.sjqo {
  gap: 0.55rem;
}

.kgtv {
  background: #FFFFFF;
  border-color: #C9D4C8;
  border-radius: 0.45rem;
  padding: 0.42rem 0.7rem 0.42rem 1.65rem;
  position: relative;
  font-weight: 600;
}

.kgtv::before {
  content: "";
  position: absolute;
  left: 0.62rem;
  top: 50%;
  width: 0.5rem;
  height: 0.5rem;
  border: 2px solid #25662D;
  border-radius: 50%;
  transform: translateY(-50%);
}

.qquf {
  box-shadow: inset 0 -1px rgba(255, 255, 255, 0.16);
}

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

.mcbk {
  border-radius: 999px;
  letter-spacing: 0.14em;
}

.hbpe {
  font-size: clamp(1.45rem, 2.7vw, 2.1rem);
  letter-spacing: -0.035em;
}

.jonc {
  gap: 0.65rem 1.25rem;
}

.umym {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-weight: 600;
}

.umym::before {
  content: "";
  width: 0.72rem;
  height: 0.72rem;
  flex: 0 0 0.72rem;
  border: 2px solid #FFFFFF;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
}

.bmcn,
.zopf {
  position: relative;
  padding-right: 3rem;
  border-radius: 999px;
  box-shadow: 0 10px 24px rgba(23, 32, 24, 0.2);
}

.bmcn::after,
.zopf::after {
  content: "→";
  position: absolute;
  right: 1.15rem;
  top: 50%;
  transform: translateY(-52%);
  font-size: 1.2em;
}

.rlyq {
  padding-top: 3.6rem;
}

.rlyq > .krhu {
  counter-reset: trail-section;
}

.kbjx {
  max-width: 52rem;
  background: #FFFFFF;
  border: 1px solid #C9D4C8;
  border-radius: 1.25rem 1.25rem 1.25rem 0.2rem;
  padding: clamp(1.4rem, 3vw, 2.25rem);
  box-shadow: 0 18px 50px -42px #172018;
  font-size: clamp(1.08rem, 1.6vw, 1.22rem);
  line-height: 1.72;
  position: relative;
}

.kbjx::before {
  content: "TRAILHEAD";
  display: block;
  color: #25662D;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  margin-bottom: 0.7rem;
}

.kbjx h2 {
  font-size: clamp(1.4rem, 3vw, 2rem);
  letter-spacing: -0.035em;
  margin-bottom: 0.8rem;
}

.rqai {
  max-width: 52rem;
  padding: 2.25rem 0 2.25rem 3.6rem;
  border-bottom: 1px solid #C9D4C8;
  position: relative;
  counter-increment: trail-section;
}

.rqai::before {
  content: counter(trail-section, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 2.25rem;
  display: grid;
  place-items: center;
  width: 2.45rem;
  height: 2.45rem;
  border: 2px solid #25662D;
  border-radius: 50% 50% 50% 0;
  color: #25662D;
  font-family: 'Manrope', 'Avenir Next', sans-serif;
  font-size: 0.72rem;
  font-weight: 800;
  transform: rotate(-45deg);
}

.rqai::after {
  content: "";
  position: absolute;
  left: 1.18rem;
  top: 5.2rem;
  bottom: -0.55rem;
  border-left: 2px dotted #C9D4C8;
}

.rqai h2 {
  font-size: clamp(1.55rem, 3.5vw, 2.25rem);
  letter-spacing: -0.045em;
  text-wrap: balance;
}

.rqai h3 {
  color: #25662D;
  font-size: 1.05rem;
  letter-spacing: -0.02em;
}

.rqai strong {
  font-weight: 700;
}

blockquote {
  background: #E6EEE4;
  border: 0;
  border-left: 6px solid #25662D;
  border-radius: 0 0.8rem 0.8rem 0;
  color: #172018;
  padding: 1.2rem 1.35rem;
}

.eqpl {
  background: #FFFFFF;
  border: 1px solid #C9D4C8;
  border-radius: 0.8rem;
  box-shadow: 0 16px 36px -34px #172018;
}

table {
  margin: 0;
}

th {
  background: #E6EEE4;
  color: #172018;
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

th,
td {
  border-color: #C9D4C8;
  padding: 0.78rem 0.85rem;
}

.eetg {
  max-width: 55rem;
  margin-top: 3rem;
  margin-bottom: 3rem;
  background:
    radial-gradient(circle at 91% 14%, rgba(154, 75, 34, 0.16) 0 7px, transparent 8px),
    repeating-radial-gradient(ellipse at 90% 18%, transparent 0 18px, rgba(37, 102, 45, 0.13) 19px 20px, transparent 21px 37px),
    #E6EEE4;
  border: 0;
  border-left: 8px solid #25662D;
  border-radius: 0.2rem 1.2rem 1.2rem 0.2rem;
  padding: clamp(1.5rem, 4vw, 2.4rem);
}

.wyoe {
  font-size: clamp(1.45rem, 3vw, 2rem);
  letter-spacing: -0.04em;
  max-width: 70%;
}

.swrb {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem 1.4rem;
  margin-top: 1.2rem;
}

.afqt {
  padding-left: 1.65rem;
  font-weight: 600;
}

.afqt::before {
  width: 0.72rem;
  height: 0.72rem;
  top: 0.42em;
  border: 2px solid #25662D;
  border-radius: 50% 50% 50% 0;
  background: transparent;
  transform: rotate(-45deg);
}

.xgyg {
  max-width: 52rem;
  counter-reset: faq-waypoint;
}

.iljo {
  counter-increment: faq-waypoint;
  background: #FFFFFF;
  border: 1px solid #C9D4C8;
  border-radius: 1rem;
  padding: 1.35rem 1.45rem 1.35rem 4.35rem;
  margin-bottom: 0.85rem;
  position: relative;
  box-shadow: 0 14px 32px -34px #172018;
}

.iljo::before {
  content: counter(faq-waypoint);
  position: absolute;
  left: 1.25rem;
  top: 1.35rem;
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: #25662D;
  color: #FFFFFF;
  font-size: 0.75rem;
  font-weight: 800;
}

.qkbz {
  font-size: 1.14rem;
  letter-spacing: -0.025em;
}

.ciie {
  max-width: 52rem;
  margin-top: 3rem;
  background: #FFFFFF;
  border: 1px solid #C9D4C8;
  border-radius: 1rem;
  padding: 0.5rem 1.35rem;
}

.zoak {
  padding-left: 2.8rem;
}

.zoak::before {
  display: grid;
  place-items: center;
  width: 1.75rem;
  height: 1.75rem;
  top: 1rem;
  border: 1px solid #25662D;
  border-radius: 50%;
  font-size: 0.72rem;
}

.kuqm {
  font-weight: 600;
}

.ugmd {
  background: #172018;
  color: #FFFFFF;
  border: 0;
  position: relative;
}

.ugmd::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 5px;
  background: repeating-linear-gradient(90deg, #25662D 0 46px, #9A4B22 46px 57px, #E6EEE4 57px 92px);
}

.pcxi {
  max-width: 52rem;
  padding-top: 3.2rem;
  padding-bottom: 3.2rem;
}

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

.pcxi h2 {
  font-size: clamp(1.65rem, 3.2vw, 2.45rem);
  letter-spacing: -0.045em;
}

.zopf {
  background: #9A4B22;
  color: #FFFFFF;
  font-weight: 800;
}

.ytvg {
  background: #F7F7F3;
  border-top-color: #25662D;
}

.dfpd {
  grid-template-columns: 1.4fr 1fr;
}

.prwu::before {
  content: "FIELD NOTES";
  display: block;
  color: #25662D;
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0.16em;
  margin-bottom: 0.45rem;
}

.xiqv {
  border-left: 3px solid #9A4B22;
  padding-left: 0.9rem;
}

@media (max-width: 760px) {
  .vcwu .krhu {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .vcwu .krhu::after {
    width: min(15rem, 78vw);
    justify-self: center;
    margin-bottom: 1.2rem;
  }

  .roew {
    font-size: clamp(2.35rem, 12vw, 3.7rem);
  }

  .rqai {
    padding-left: 3.15rem;
  }

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

  .wyoe {
    max-width: 100%;
  }

  .iljo {
    padding-left: 3.65rem;
  }
}

@media (max-width: 430px) {
  .vcwu .krhu::after {
    width: min(12rem, 68vw);
  }

  .rqai {
    padding-left: 0;
    padding-top: 4.6rem;
  }

  .rqai::before {
    top: 1.5rem;
  }

  .rqai::after {
    top: 4rem;
    bottom: auto;
    width: 2.8rem;
    border-left: 0;
    border-top: 2px dotted #C9D4C8;
  }
}
