.cookie-panel{position:fixed;z-index:100;right:18px;bottom:18px;left:18px;display:grid;max-width:680px;grid-template-columns:1fr auto;gap:18px 30px;padding:24px;color:#29372b;border:1px solid rgba(41,55,43,.18);border-radius:16px;background:rgba(238,233,223,.97);box-shadow:0 25px 80px rgba(41,55,43,.2);backdrop-filter:blur(18px)}.cookie-panel[hidden]{display:none}.cookie-panel strong{font-family:"Barlow Condensed",sans-serif;font-size:22pt;font-weight:500;text-transform:uppercase}.cookie-panel p{grid-column:1;margin:7px 0 0;color:rgba(41,55,43,.68);font-size:9pt;line-height:1.6}.cookie-panel p a{text-decoration:underline;text-underline-offset:3px}.cookie-panel__actions{grid-column:2;grid-row:1/3;display:flex;align-items:center;gap:8px}.cookie-panel button{padding:11px 14px;border:1px solid #29372b;border-radius:999px;background:transparent;color:#29372b;cursor:pointer;font-size:6pt;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.cookie-panel button:hover,.cookie-panel button:focus-visible{background:#29372b;color:#eee9df}footer:has(.site-legal){position:relative}.site-legal{position:absolute;right:clamp(24px,5vw,80px);bottom:16px;display:flex;align-items:center;gap:18px;color:rgba(41,55,43,.52);font-family:"Manrope",sans-serif;font-size:6pt;font-style:normal;font-weight:600;letter-spacing:.11em;line-height:1;text-transform:uppercase}.site-legal button{padding:0;color:inherit;border:0;background:none;cursor:pointer;font:inherit;text-transform:inherit}.site-legal a:hover,.site-legal button:hover{color:#29372b}@media(max-width:680px){.cookie-panel{grid-template-columns:1fr}.cookie-panel__actions{grid-column:1;grid-row:auto}.cookie-panel button{flex:1}.site-legal{right:24px;bottom:12px;left:24px;flex-wrap:wrap;gap:10px 16px}}

.site-legal,footer [data-legal-links]{font-size:6pt}
.site-legal a,.site-legal button,footer [data-legal-links] a,footer [data-legal-links] button{font-size:inherit}


.site-wide-footer {
  position: relative;
  display: grid !important;
  min-height: 180px;
  height: auto !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 14px 50px !important;
  padding: 30px clamp(28px, 6vw, 94px) 24px !important;
  color: #29372b !important;
  border-top: 1px solid rgba(41, 55, 43, .13) !important;
  background: #d5ded2 !important;
}

.site-wide-footer.site-wide-footer--brown {
  background: #d9d0bf !important;
}

.site-wide-footer__brand {
  display: flex;
  align-items: center;
  gap: 16px;
  color: #29372b;
  font-family: "Barlow Condensed", sans-serif;
  font-size: round(up, clamp(30pt, 4vw, 48pt), 1pt);
  font-weight: 600;
  letter-spacing: -.045em;
  text-decoration: none;
}

.site-wide-footer__brand img {
  width: 58px;
  height: 62px;
  object-fit: contain;
}

.site-wide-footer__brand em {
  color: #78644f;
  font-weight: inherit;
}

.site-wide-footer > p {
  margin: 0 !important;
  color: rgba(41, 55, 43, .68) !important;
  font-family: "Newsreader", Georgia, serif !important;
  font-size: 15pt;
  font-style: italic !important;
  justify-self: end;
}

.site-wide-footer > small {
  grid-column: 1;
  color: rgba(41, 55, 43, .54) !important;
  font-family: "Manrope", sans-serif;
  font-size: 6pt;
  font-style: normal;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.site-wide-footer .site-wide-footer__legal {
  position: static;
  right: auto;
  bottom: auto;
  left: auto;
  display: flex;
  grid-column: 2;
  align-items: center;
  justify-self: end;
  gap: 18px;
  color: rgba(41, 55, 43, .58);
  font-family: "Manrope", sans-serif;
  font-size: 6pt;
  font-style: normal;
  font-weight: 600;
  letter-spacing: .11em;
  line-height: 1;
  text-transform: uppercase;
}

.site-wide-footer__legal a,
.site-wide-footer__legal button {
  padding: 0;
  color: inherit;
  border: 0;
  background: none;
  cursor: pointer;
  font: inherit;
  text-decoration: none;
  text-transform: inherit;
}

.site-wide-footer__legal a[href$="/support/"] {
  font-weight: 900;
  font-variation-settings: "wght" 900;
  -webkit-text-stroke: .35px currentColor;
}

.site-wide-footer__legal a:hover,
.site-wide-footer__legal button:hover {
  color: #29372b;
}

@media (max-width: 760px) {
  .site-wide-footer {
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: end !important;
    gap: 10px 20px !important;
    padding: 22px 24px 18px !important;
  }

  .site-wide-footer__brand {
    grid-column: 1;
    grid-row: 1;
    gap: 12px;
    font-size: 17pt;
  }

  .site-wide-footer__brand img {
    width: 39px;
    height: 42px;
  }

  .site-wide-footer > p {
    grid-column: 2;
    grid-row: 1;
    align-self: end;
    justify-self: end;
    font-size: 12pt;
    white-space: nowrap;
  }

  .site-wide-footer > small {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: start;
  }

  .site-wide-footer .site-wide-footer__legal {
    width: 100%;
    grid-column: 1 / -1;
    grid-row: 3;
    flex-wrap: wrap;
    justify-self: start;
    gap: 10px 16px;
    margin: 0;
  }
}

@media (max-width: 440px) {
  .site-wide-footer {
    grid-template-columns: 1fr !important;
  }

  .site-wide-footer > p {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
    white-space: normal;
  }

  .site-wide-footer > small {
    grid-column: 1;
    grid-row: 3;
  }

  .site-wide-footer .site-wide-footer__legal {
    grid-column: 1;
    grid-row: 4;
  }
}

.trailhunger-external-media {
  display: grid;
  min-height: 280px;
  place-content: center;
  justify-items: center;
  gap: 12px;
  margin: 45px 0;
  padding: 35px;
  color: #29372b;
  border: 1px solid rgba(41, 55, 43, .16);
  border-radius: 14px;
  background: #d5ded2;
  text-align: center;
}

.trailhunger-external-media strong {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 29pt;
  font-weight: 500;
  text-transform: uppercase;
}

.trailhunger-external-media p { margin: 0; }

.trailhunger-external-media a {
  color: #29372b;
  font-size: 8pt;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.trailhunger-external-media button {
  margin-top: 10px;
  padding: 12px 16px;
  color: #eee9df;
  border: 0;
  border-radius: 999px;
  background: #29372b;
  cursor: pointer;
  font-size: 6pt;
  font-weight: 600;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.trailhunger-lighterpack-embed {
  width: 100%;
  max-width: 100%;
  margin: 45px 0;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
}

.trailhunger-lighterpack-embed .lpList {
  max-width: 100%;
}

/* LighterPack headings belong to its compact inventory, not the story hierarchy. */
.reader-article .trailhunger-lighterpack-embed h2 {
  opacity: 1;
  margin: 20px 0 10px;
  font-size: 15pt;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: none;
  filter: none;
  clip-path: none;
  transform: none;
  transition: none;
  animation: none;
}

.reader-article .trailhunger-lighterpack-embed .lpListName {
  margin: 0 0 24px;
  font-size: 26pt;
  line-height: 1.1;
}

.reader-article .trailhunger-lighterpack-embed .lpCategoryName {
  margin: 0;
  font-size: 15pt;
  line-height: 1.2;
}

/* Keep accept and refuse controls visually equal, as required for a free choice. */
.cookie-panel { max-width: 820px; }
.cookie-panel__actions { width: 380px; }
.cookie-panel__actions button { flex: 1 1 0; }
.cookie-panel button { white-space: nowrap; }

@media (max-width: 680px) {
  .cookie-panel__actions { width: 100%; }
}

@media (max-width: 520px) {
  .cookie-panel__actions { flex-direction: column; align-items: stretch; }
  .cookie-panel button { width: 100%; }
}
