.adventure-page{background:var(--bone)}
.adventure-page .masthead{border-color:var(--rule)}
.adventure-page nav [aria-current="page"]{color:var(--oxide);text-decoration:underline}
.back-link{display:inline-block;margin-bottom:2rem;font:1rem var(--mono);text-decoration:none}
.adventure-page-hero{padding-top:3rem;padding-bottom:5rem}
.adventure-page-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,.72fr);gap:clamp(2.5rem,7vw,7rem);align-items:center}
.adventure-page-copy h1{font-size:clamp(4rem,7vw,7.2rem)}
.adventure-page-copy h1 em{font-size:.62em;color:var(--oxide);display:block;margin-top:.22em}
.adventure-page-copy .intro{max-width:34rem}
.adventure-meta{border-top:1px solid var(--rule);margin:2rem 0;padding:0;max-width:34rem}
.adventure-meta div{display:grid;grid-template-columns:6.5rem 1fr;gap:1rem;border-bottom:1px solid var(--rule);padding:.75rem 0}
.adventure-meta dt{font:.72rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--olive)}
.adventure-meta dd{margin:0;font-size:1rem}
.lead-photo{margin:0;background:var(--ink);padding:1rem;box-shadow:12px 12px 0 var(--paper);transform:rotate(1deg)}
.lead-photo a{display:block}
.lead-photo img{display:block;width:100%;height:min(64vh,690px);object-fit:cover}
.lead-photo figcaption{color:var(--paper);font:italic 1.15rem var(--serif);padding:1rem .2rem .2rem}
.story-band{background:var(--ink);color:var(--bone);padding:4.5rem 0}
.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,8rem)}
.story-grid .eyebrow{color:var(--paper)}
.story-grid p{max-width:40rem;color:var(--paper)}
.story-grid h2{max-width:30rem}
.adventure-method{padding-top:5rem;padding-bottom:5rem}
.method-intro{display:grid;grid-template-columns:1fr .9fr;gap:clamp(2rem,7vw,7rem);align-items:end;border-bottom:1px solid var(--rule);padding-bottom:2rem;margin-bottom:2rem}
.method-intro h2{max-width:18ch;margin:0;font-size:clamp(2.8rem,5vw,5.2rem)}
.method-intro>p{max-width:31rem;margin:0;color:var(--olive)}
.method-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--rule)}
.method-card{min-height:23rem;padding:1.6rem;border-right:1px solid var(--rule);display:flex;flex-direction:column}
.method-card:last-child{border-right:0;background:rgba(52,56,59,.08)}
.method-card .eyebrow{color:var(--oxide);margin-bottom:1rem}
.method-card h3{font-size:clamp(1.8rem,2.8vw,3rem);margin:0 0 1.1rem}
.method-card p:not(.eyebrow){font-size:1rem;color:var(--olive);max-width:25rem}
.method-card.method-placeholder{background:linear-gradient(145deg,rgba(165,125,62,.07),transparent 68%)}
.method-card.method-placeholder h3{color:var(--navy)}
.method-card .method-link{margin-top:auto;font:600 .7rem var(--mono);letter-spacing:.08em;text-transform:uppercase;text-decoration-color:var(--brass)}
.adventure-ratings{margin-top:1px;border:1px solid var(--rule);background:var(--paper);padding:clamp(2rem,5vw,4.5rem)}
.ratings-intro{display:grid;grid-template-columns:1fr .9fr;gap:clamp(2rem,7vw,7rem);align-items:end;border-bottom:1px solid var(--rule);padding-bottom:2rem;margin-bottom:0}
.ratings-intro h2{max-width:18ch;margin:0;font-size:clamp(2.6rem,4.5vw,4.8rem)}
.ratings-intro>p{max-width:31rem;margin:0;color:var(--olive)}
.rating-grid{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--rule)}
.rating-row{padding:1.4rem 1rem 1.6rem;border-right:1px solid var(--rule)}
.rating-row:last-child{border-right:0}
.rating-row>div{display:flex;justify-content:space-between;gap:.75rem;align-items:baseline;margin-bottom:1rem}
.rating-row strong{font:400 1.2rem/1.15 var(--serif)}
.rating-row span{white-space:nowrap;color:var(--oxide);font:600 .68rem var(--mono)}
.rating-row meter{display:block;width:100%;height:1rem;accent-color:var(--oxide)}
.rating-row p{margin:1rem 0 0;color:var(--olive);font-size:.92rem;line-height:1.45}
.rating-placeholder{display:grid;grid-template-columns:auto 1fr;gap:1.25rem;align-items:center;min-height:9rem;padding:1.75rem clamp(1.25rem,3vw,2.25rem);border-bottom:1px solid var(--rule);background:linear-gradient(110deg,rgba(165,125,62,.08),transparent 62%)}
.rating-placeholder>span{display:grid;place-items:center;width:3.4rem;aspect-ratio:1;border:1px solid rgba(165,125,62,.52);border-radius:50%;color:var(--brass);font:600 1rem/1 var(--mono);letter-spacing:.16em;padding-left:.16em}
.rating-placeholder p{margin:0;color:var(--olive)}
.rating-placeholder strong{display:block;margin-bottom:.2rem;color:var(--navy);font:400 1.35rem/1.2 var(--serif)}
.recommendation-note{display:grid;grid-template-columns:.7fr 1.4fr auto;gap:1.5rem;align-items:baseline;padding-top:1.4rem}
.recommendation-note .eyebrow{margin:0;color:var(--oxide)}
.recommendation-note p:not(.eyebrow){margin:0;max-width:42rem;color:var(--olive)}
.recommendation-note strong{white-space:nowrap;color:var(--oxide);font:600 .75rem var(--mono);letter-spacing:.06em}
.photo-section{padding-top:5rem;padding-bottom:5rem}
.photo-heading{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:2.5rem}
.photo-heading>p{max-width:20rem}
.photo-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem;grid-auto-flow:dense}
.photo-card{position:relative;display:block;grid-column:span 4;background:var(--charcoal);overflow:hidden;text-decoration:none;min-height:280px}
.photo-card.wide{grid-column:span 6}
.photo-card img{display:block;width:100%;height:100%;min-height:280px;aspect-ratio:4/3;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.photo-card.portrait img{aspect-ratio:4/5}
.photo-card span{position:absolute;left:0;right:0;bottom:0;padding:2.8rem 1rem .8rem;color:var(--bone);font:.72rem var(--mono);letter-spacing:.05em;text-transform:uppercase;background:linear-gradient(transparent,rgba(37,34,34,.92))}
.photo-card:hover img{transform:scale(1.025);filter:saturate(.92)}
.adventure-pagination{display:flex;justify-content:space-between;gap:2rem;border-top:1px solid var(--rule);padding-top:1.5rem;padding-bottom:4rem;font:1rem var(--mono)}
.adventure-pagination span{color:var(--olive)}
.lightbox{width:min(94vw,1300px);height:min(92vh,960px);border:1px solid var(--brass);padding:3.5rem 4.5rem 2rem;background:var(--ink);color:var(--bone);overflow:hidden}
.lightbox::backdrop{background:rgba(15,13,13,.9)}
.lightbox figure{height:100%;margin:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:1rem;text-align:center}
.lightbox img{width:100%;height:100%;min-height:0;object-fit:contain}
.lightbox figcaption{font:1rem var(--mono);color:var(--paper)}
.lightbox button{position:absolute;border:1px solid var(--brass);background:var(--ink);color:var(--bone);font:1.4rem var(--sans);cursor:pointer;width:2.8rem;height:2.8rem}
.lightbox button:hover{background:var(--oxide)}
.lightbox-close{top:.5rem;right:.5rem}
.lightbox-prev{left:.5rem;top:50%}
.lightbox-next{right:.5rem;top:50%}
@media(max-width:1000px){.method-grid{grid-template-columns:repeat(2,1fr)}.method-card:nth-child(2){border-right:0}.method-card:nth-child(n+3){border-top:1px solid var(--rule)}.rating-grid{grid-template-columns:repeat(3,1fr)}.rating-row:nth-child(3){border-right:0}.rating-row:nth-child(n+4){border-top:1px solid var(--rule)}.recommendation-note{grid-template-columns:1fr 1.8fr}.recommendation-note strong{grid-column:2}}
@media(max-width:850px){.adventure-page-grid,.story-grid{grid-template-columns:1fr}.method-intro,.ratings-intro{grid-template-columns:1fr}.lead-photo{max-width:38rem}.photo-card,.photo-card.wide{grid-column:span 6}.photo-heading{display:block}.photo-heading>p{margin-top:1rem}.lightbox{padding:3.5rem 3.5rem 1.5rem}}
@media(max-width:560px){.adventure-page-hero{padding-top:2rem;padding-bottom:3.5rem}.adventure-page-copy h1{font-size:3.9rem}.lead-photo{transform:none;box-shadow:7px 7px 0 var(--paper)}.story-band{padding:3.5rem 0}.photo-section{padding-top:3.5rem;padding-bottom:3.5rem}.photo-grid{grid-template-columns:1fr}.photo-card,.photo-card.wide{grid-column:auto;min-height:0}.photo-card img,.photo-card.portrait img{min-height:0;aspect-ratio:auto}.adventure-pagination{display:block}.adventure-pagination span{display:block;margin-top:1rem}.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;border:0;padding:3.5rem 3rem 1rem}.lightbox-prev{left:.15rem}.lightbox-next{right:.15rem}}
@media(prefers-reduced-motion:reduce){.photo-card img{transition:none}}
