/* Keep homepage section dividers without the small labels or photo overlays. */
.about-strip .section-label,#adventures>.section-label,#journal>.section-label{font-size:0;line-height:0}
#adventures .feature-stamp,#adventures .feature-photo>span,#adventures .feature-photo>b{display:none}
@media(max-width:620px){
  #adventures .entry-a .entry-photo img{object-position:center}
  #adventures .entry-b .entry-photo img{object-position:right center}
  #adventures .entry-c .entry-photo img{object-position:left center}
}
@media(max-width:620px){section#gallery.gallery{display:none}}
/* Shared accessibility and utility pages. */
html{scroll-padding-top:115px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ae6b16;outline-offset:5px}button{font:inherit}.site-skip{position:fixed;top:-100px;left:18px;z-index:100;background:#f1eee4;color:#151411;padding:16px}.site-skip:focus{top:12px}.utility-links{grid-column:1/-1;display:flex;gap:24px;flex-wrap:wrap;margin-top:18px;font-size:11px}.utility-links a{padding:8px 0}.legal-copy{max-width:760px;padding-bottom:70px;font:19px/1.75 Georgia,serif}.legal-copy h2{font:400 30px/1.2 Georgia,serif;margin:36px 0 16px}.legal-copy a{text-decoration:underline;text-underline-offset:4px}.draft-notice{padding:20px;background:#e7dfce;font:15px/1.6 Arial,sans-serif}.faq-list details{border-bottom:1px solid #b9b1a1;padding:22px 0}.faq-list summary{cursor:pointer;font:23px/1.4 Georgia,serif}.faq-list details p{margin-bottom:0}.share-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:24px 0}.share-actions button{background:transparent;color:inherit;border:1px solid #9b8d75;padding:12px 20px;cursor:pointer}.share-status{font:13px/1.6 Arial,sans-serif}.mobile-site-nav{display:none}.identity img{height:auto}.photo-viewer{overscroll-behavior:contain}.photo-viewer img{height:72vh;width:100%;object-fit:contain}
@media(max-width:900px){.topbar{height:auto;min-height:96px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}.topbar nav,.journal-page .topbar nav,.personal-page .topbar nav{display:flex;gap:16px;flex-wrap:wrap}.topbar nav a,.journal-page .topbar nav a:not([aria-current]),.personal-page .topbar nav a{display:inline-block;font-size:10px;padding:6px 0}.topbar .identity img{width:65px}.topbar .identity span{display:none}}
@media(max-width:620px){.topbar,.journal-page .topbar,.personal-page .topbar{height:112px;justify-content:flex-start;gap:2px;padding:10px 18px}.topbar nav{width:100%;justify-content:space-between;gap:10px!important}.hero{padding-top:145px}.journal-page main,.personal-page main{padding-top:112px}.p-mobile-nav{display:none}.identity img{max-height:40px}.p-head h1{font-size:clamp(44px,12vw,65px);overflow-wrap:break-word}.utility-links{gap:20px}.photo-viewer img{height:60vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{transition:none!important;animation:none!important}}

.share-actions{width:92%;max-width:1500px;margin:24px auto 40px}

/* Reference footer: illustrated mark and right-aligned editorial copy. */
footer.archive-footer{display:block;background:#090909;color:#f6f4ef;padding:32px 4vw 28px;text-transform:none;letter-spacing:normal}
.footer-main{display:grid;grid-template-columns:1.15fr 1fr;gap:2vw;align-items:center;max-width:1600px;margin:0 auto}
.footer-mark img{width:100%;height:auto;max-height:580px;object-fit:contain;display:block}
.footer-copy{text-align:right;padding:30px 0}
.footer-copy h2{font:400 clamp(30px,3.9vw,64px)/1.04 Georgia,"Times New Roman",serif;letter-spacing:-.045em;margin:0 0 24px}
.footer-copy p{font:400 clamp(14px,1.12vw,18px)/1.65 Georgia,"Times New Roman",serif;color:#aaa498;max-width:490px;margin:0 0 0 auto}
.footer-socials{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}
.footer-socials a{display:grid;place-items:center;width:44px;height:44px;color:#c8c2b6;border:0}
.footer-socials a:hover{color:var(--amber)}
.footer-bottom{max-width:1600px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:24px;font:10px/1.6 Arial,sans-serif;letter-spacing:.1em;color:#aaa498}
.footer-bottom>span{margin-right:auto}.footer-bottom>a{padding:12px 0}.footer-bottom .utility-links{width:100%;margin-top:0;justify-content:flex-end;font-size:11px;letter-spacing:normal}
@media(max-width:700px){footer.archive-footer{padding:28px 18px}.footer-main{grid-template-columns:1fr;gap:0}.footer-mark img{max-height:330px}.footer-copy{padding:0 0 38px}.footer-copy h2{font-size:clamp(30px,7vw,44px)}.footer-copy p{font-size:16px}.footer-break{display:none}.footer-bottom{gap:18px}}

/* Unified navigation across all page layouts. */
:root{--nav-height:112px}

html{scroll-padding-top:calc(var(--nav-height) + 18px)}
body .topbar{height:var(--nav-height);min-height:0;padding:12px 4vw;display:flex;flex-wrap:nowrap;justify-content:space-between;gap:28px;background:rgba(9,9,9,.97);box-shadow:0 6px 24px #00000018;transition:transform .25s ease;will-change:transform}
body .topbar.nav-hidden{transform:translateY(-100%)}body .topbar:focus-within{transform:translateY(0)}
body .topbar .identity{gap:20px;flex-shrink:0}body .topbar .identity img{width:160px;height:84px;max-height:84px;object-fit:contain}
body .topbar .identity strong{font-size:13px;letter-spacing:.13em;line-height:1.5}body .topbar .identity span{display:block;font-size:9px;letter-spacing:.13em;line-height:1.5;margin-top:5px}
body .topbar nav{display:flex;flex-wrap:nowrap;gap:clamp(18px,2.3vw,36px);width:auto;align-items:center}
body .topbar nav a,body .topbar nav a:not([aria-current]){display:block;padding:14px 0;font-size:11px;line-height:1.5;letter-spacing:.12em;white-space:nowrap}
body.journal-page main,body.personal-page main{padding-top:var(--nav-height)}
@media(max-width:1000px){:root{--nav-height:142px}body .topbar{flex-wrap:wrap;gap:0;padding:8px 4vw}body .topbar .identity{gap:16px}body .topbar .identity img{width:125px;height:76px;max-height:76px}body .topbar nav{width:100%;justify-content:space-between;gap:12px!important}body .topbar nav a{padding:9px 0}body .hero{padding-top:calc(var(--nav-height) + 35px)}}
@media(max-width:620px){:root{--nav-height:138px}body .topbar{padding:6px 18px}body .topbar .identity img{width:112px;height:78px;max-height:78px}body .topbar .identity strong{font-size:12px}body .topbar .identity span{font-size:8px}body .topbar nav a,body .topbar nav a:not([aria-current]){font-size:10px;letter-spacing:.04em;padding:12px 0}}
/* The original links remain available if JavaScript is disabled. */
.menu-toggle{display:none}
.mobile-menu-panel{display:contents}
@media(max-width:1000px){
  body:has(.topbar.menu-ready){--nav-height:88px}
  body .topbar.menu-ready{flex-wrap:nowrap;gap:12px;padding:6px 18px;overflow:visible}
  body .topbar.menu-ready .identity{gap:10px;min-width:0;flex:1}
  body .topbar.menu-ready .identity img{width:90px;height:70px;max-height:70px;flex-shrink:0}
  body .topbar.menu-ready .identity strong{font-size:11px;letter-spacing:.06em;white-space:normal}
  body .topbar.menu-ready .identity span{font-size:8px;letter-spacing:.04em}
  .menu-ready .menu-toggle{display:flex;position:relative;flex-direction:column;justify-content:center;align-items:center;gap:5px;flex:0 0 46px;width:46px;height:46px;padding:10px;border:1px solid #75634b;background:transparent;color:#f6f4ef;cursor:pointer}
  .menu-toggle span{display:block;width:22px;height:2px;background:currentColor;transition:transform .25s ease,opacity .2s ease}
  .menu-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .menu-open .menu-toggle span:nth-child(2){opacity:0}
  .menu-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .menu-ready .mobile-menu-panel{display:grid;grid-template-rows:0fr;position:absolute;top:100%;left:0;right:0;background:#090909;opacity:0;visibility:hidden;transition:grid-template-rows .28s ease,opacity .22s ease,visibility 0s .28s;box-shadow:0 12px 18px #0003}
  .menu-ready.menu-open .mobile-menu-panel{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows .28s ease,opacity .22s ease,visibility 0s}
  body .topbar.menu-ready nav{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0!important;min-height:0;width:100%;overflow:hidden;max-height:calc(100dvh - var(--nav-height))}
  body .topbar.menu-ready.menu-open nav{overflow-y:auto}
  body .topbar.menu-ready nav a,body .topbar.menu-ready nav a:not([aria-current]){box-sizing:border-box;display:block;width:100%;padding:17px 26px;min-height:52px;font-size:13px;letter-spacing:.09em;color:#f6f4ef;text-align:left}
  body .topbar.menu-ready nav a:hover,body .topbar.menu-ready nav a[aria-current]{color:#d38e39;background:#ffffff08}
  body:has(.topbar.menu-ready) .p-mobile-nav,body:has(.topbar.menu-ready) .mobile-site-nav{display:none}
}
@media(prefers-reduced-motion:reduce){body .topbar,.menu-toggle span,.menu-ready .mobile-menu-panel{transition:none}}


/* Photo cards have separate image and story targets. */
.album figure{position:relative}.album .photo-open::after{content:"";position:absolute;inset:0;z-index:1;cursor:zoom-in}.album .photo-open:focus-visible::after{outline:3px solid var(--amber);outline-offset:4px}.album .has-story{padding-bottom:62px}.album .photo-story{position:absolute;right:16px;bottom:14px;z-index:2;display:inline-flex;align-items:center;min-height:36px;padding:5px 10px;font:11px/1.5 Arial,sans-serif;letter-spacing:.04em;color:#5b401c;border-bottom:1px solid #b08b51}.album .photo-story:hover{color:#151411;background:#e8dfce}
.photo-viewer{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:3vh 3vw;border:0;background:transparent;overflow:auto;opacity:1;animation:viewer-in .2s ease-out}
.photo-viewer[open]{display:grid;place-items:center}.photo-panel{box-sizing:border-box;width:min(1100px,100%);padding:22px;background:#151411;color:#f1eee4;transform:scale(1);animation:photo-in .2s ease-out}.photo-viewer::backdrop{background:rgba(0,0,0,.85);animation:viewer-in .2s ease-out}.photo-viewer.is-closing{animation:viewer-out .18s ease-in forwards}.photo-viewer.is-closing .photo-panel{animation:photo-out .18s ease-in forwards}.photo-viewer.is-closing::backdrop{animation:viewer-out .18s ease-in forwards}
@keyframes viewer-in{from{opacity:0}to{opacity:1}}@keyframes viewer-out{from{opacity:1}to{opacity:0}}@keyframes photo-in{from{transform:translateY(10px) scale(.97)}to{transform:translateY(0) scale(1)}}@keyframes photo-out{from{transform:scale(1)}to{transform:translateY(6px) scale(.98)}}
html:has(.photo-viewer[open]){overflow:hidden}
@media(max-width:620px){.photo-panel{padding:16px}.photo-viewer{padding:18px 12px}}
@media(prefers-reduced-motion:reduce){.photo-viewer,.photo-viewer::backdrop,.photo-panel{animation:none!important}}

/* Hide scrollbar chrome while retaining normal scrolling. */
*,*::before,*::after{scrollbar-width:none!important;-ms-overflow-style:none}
*::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
/* Bordered destination actions retain the surrounding light or dark palette. */
a.action-outline,
.j-card .j-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  min-height: 42px;
  box-sizing: border-box;
  padding: 11px 17px;
  border: 1px solid currentColor;
  text-decoration: none;
  line-height: 1.4;
  white-space: normal;
}
a.action-outline:hover,
.j-card a:hover .j-arrow { background: #a77a2e14; }
a.action-outline:focus-visible { outline: 3px solid var(--amber); outline-offset: 4px; }
.j-hero a.journal-all-entries {
  margin-top: 15px;
  padding: 15px 25px;
  background: var(--amber);
  border-color: #956022;
  color: #171613;
  font: 600 12px/1.4 var(--sans);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.j-hero a.journal-all-entries:hover { background: #e4a54f; }
.archive-search input {
  padding: 15px 18px;
  border: 1px solid #918572;
  background: #fffdf63d;
  box-sizing: border-box;
}
.archive-search input:focus-visible { outline: 2px solid #956022; outline-offset: 3px; }
