/* PNW PASSPORT / FIELD NOTES RELEASE 02 — sitewide legibility and the Adventure Vault.
   Decorative marks are illustrations; article imagery is original licensed newsroom photography. */
:root{--book-ink:#172C2B;--book-cream:#F7F0DF}

/* Navigation should read like a real magazine menu, not tiny legal copy. */
@media(min-width:1051px){
  .site-header .desktop-nav{font-size:clamp(.73rem,.80vw,.83rem);font-weight:800;letter-spacing:.015em;gap:3px}
  .site-header .desktop-nav a{padding:17px clamp(5px,.65vw,10px) 16px;line-height:1.1}
  .site-header .header-inner{max-width:1320px;width:min(calc(100% - 32px),1320px)}
}
@media(min-width:1051px) and (max-width:1180px){.site-header .desktop-nav{font-size:.73rem}.site-header .desktop-nav a{padding-inline:4px}}

/* Local adventure vault: a full-fledged chapter of the Lost Atlas. */
.vault-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 88% 22%,#296C6B 0%,transparent 45%),linear-gradient(116deg,#142F30,#183D3C 65%,#122A2A);color:var(--oyster);border-bottom:9px solid var(--citron);padding-block:clamp(58px,7.5vw,104px)}
.vault-hero::before{display:block!important;content:"";position:absolute;inset:0;background:url('assets/pnw-field-shadows.svg') center 60%/cover no-repeat;opacity:.43;pointer-events:none;z-index:-1}
.vault-hero::after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:19px;background:var(--citron);clip-path:polygon(0 25%,5% 40%,12% 16%,20% 45%,28% 22%,35% 53%,42% 28%,50% 50%,59% 19%,67% 45%,74% 24%,84% 50%,90% 22%,100% 40%,100% 100%,0 100%);pointer-events:none}
.vault-hero .vault-hero-layout{position:relative;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(36px,5vw,84px)}
.vault-hero .eyebrow{color:var(--citron);font-family:var(--display-font);font-size:.82rem;letter-spacing:.12em;margin-bottom:23px}
.vault-hero .vault-title{color:var(--oyster)!important;font-family:var(--display-font);font-size:clamp(3.4rem,5.85vw,7rem);font-weight:800;line-height:.92;letter-spacing:-.075em;max-width:12ch;text-transform:uppercase;text-wrap:balance;text-shadow:2px 3px 0 rgba(0,0,0,.16)}
.vault-title::after{content:" ✳";display:inline;color:var(--poppy);font:400 .49em var(--marker);vertical-align:top}
.vault-hero .vault-deck{color:#EAF3EC;font-size:clamp(1.05rem,1.45vw,1.28rem);line-height:1.65;max-width:45ch;margin:25px 0 25px}
.vault-hero .vault-hero-cta{gap:22px}
.vault-hero .vault-hero-cta .text-link{color:var(--citron);text-decoration-color:var(--poppy);font-weight:800}
.vault-hero .vault-note{color:#C6DED7;max-width:62ch;line-height:1.6;font-size:.8rem;margin-top:29px}
.vault-hero .vault-hero-image{min-height:465px;overflow:visible;background:#234343;transform:rotate(2deg);border:9px solid var(--oyster);box-shadow:11px 13px 0 var(--poppy)}
.vault-hero .vault-hero-image>img{filter:saturate(1.12) contrast(1.08);object-fit:cover;object-position:53% 42%;height:100%}
.vault-hero .vault-hero-image>span{background:rgba(23,44,43,.88);padding:8px 12px;letter-spacing:.08em;bottom:14px;left:15px;right:auto;max-width:85%;line-height:1.45}
.vault-hero-polaroid{display:flex;flex-direction:column;position:absolute;right:-36px;bottom:-35px;z-index:4;background:var(--oyster);padding:9px 9px 14px;width:38%;max-width:205px;min-width:130px;transform:rotate(-8deg);box-shadow:7px 8px 0 rgba(7,23,24,.78);transition:transform .18s ease;color:var(--spruce)}
.vault-hero-polaroid:hover{transform:translateY(-6px) rotate(-3deg)}
.vault-hero-polaroid img{display:block;width:100%;aspect-ratio:1.13;object-fit:cover}
.vault-hero-polaroid span{font:400 clamp(.64rem,1.3vw,.9rem)/1.1 var(--marker);text-align:center;margin-top:9px;color:var(--spruce)}
.vault-hero-stamp{position:absolute;right:-35px;top:-35px;z-index:5;display:grid;place-content:center;width:105px;height:105px;border:3px dashed var(--spruce);outline:5px solid var(--citron);border-radius:50%;background:var(--citron);color:var(--spruce);font:400 1rem/1.06 var(--marker);text-align:center;transform:rotate(14deg)}
.vault-quick-categories{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}
.vault-quick-categories a{display:inline-block;font:800 .7rem/1.15 var(--display-font);text-transform:uppercase;letter-spacing:.035em;padding:7px 9px;border:1px solid #85AAA5;color:var(--oyster);background:rgba(255,255,255,.07)}
.vault-quick-categories a:hover{color:var(--spruce);background:var(--citron);border-color:var(--citron)}
.vault-numbers-section{background:var(--tide);color:var(--oyster);border-bottom:4px solid var(--spruce);padding-top:22px;padding-bottom:26px}
.vault-numbers>div{border-right:1px dashed rgba(247,240,223,.58)}
.vault-numbers strong{font:400 clamp(2.4rem,4vw,4.2rem)/1 var(--marker);color:var(--citron)}
.vault-numbers span{color:var(--oyster);font-weight:700;font-size:.78rem}

/* Search deserves prominence: it is the site's main reader utility. */
.vault-library{position:relative;isolation:isolate;background:var(--oyster)}
.vault-library::before{content:"";position:absolute;z-index:-1;inset:0;opacity:.105;pointer-events:none;background-image:repeating-radial-gradient(ellipse at 83% 20%,transparent 0 35px,#277D83 36px 37px,transparent 38px 63px);}
.vault-library-header .eyebrow{color:var(--rust)}
.vault-library-header h2{font-family:var(--marker);font-size:clamp(2.7rem,4.9vw,5rem);font-weight:400;letter-spacing:-.06em;transform:rotate(-1deg);max-width:20ch}
.vault-library-header>p{font-size:1rem;line-height:1.6}
.vault-toolbar{position:relative;padding:27px clamp(17px,3vw,30px) 21px;margin-bottom:38px;background:var(--spruce);color:var(--oyster);border:3px solid var(--spruce);box-shadow:9px 9px 0 var(--poppy)}
.vault-toolbar::before{content:"SELECT YOUR SIDE QUEST ✳";display:block;color:var(--citron);font:800 .8rem/1.2 var(--display-font);letter-spacing:.09em;margin-bottom:17px}
.vault-tabs{flex-wrap:wrap;overflow:visible;gap:8px;padding-bottom:20px}
.vault-tab{color:var(--oyster);background:transparent;border:1.5px solid #779D93;font-size:.81rem;padding:10px 13px;font-family:var(--display-font);font-weight:800}
.vault-tab[aria-pressed=true]{background:var(--citron);color:var(--spruce);border-color:var(--citron);box-shadow:3px 3px 0 var(--poppy)}
.vault-tab:hover:not([aria-pressed=true]){background:#306260;color:var(--oyster)}
.vault-inputs{gap:16px}
.vault-inputs label{color:var(--citron);font:800 .77rem var(--display-font);letter-spacing:.07em}
.vault-inputs input,.vault-inputs select{background:var(--oyster);color:var(--spruce);font-size:.93rem;min-height:51px;border:2px solid #90B4AA;box-shadow:3px 3px 0 #092423;border-radius:0}
.vault-toolbar-bottom p{color:var(--oyster);font-weight:650}
.vault-random{color:var(--citron);border-bottom-color:var(--citron);font-size:.78rem}
.vault-random:hover{color:var(--oyster)}

/* A genuine field-guide card. Real reported photos where available; otherwise illustrated abstract chapter markers. */
.vault-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
.vault-card{padding:0 0 20px;min-height:0;background:#FFFBF2;border:2px solid var(--spruce);box-shadow:6px 6px 0 var(--spruce)}
.vault-card:hover{transform:translate(-2px,-4px);box-shadow:8px 9px 0 var(--spruce)}
.vault-card-visual{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:115px;padding:18px 19px;overflow:hidden;border-bottom:2px solid var(--spruce);color:var(--spruce);isolation:isolate;background:#DDEB54}
.vault-card-visual::after{content:"";position:absolute;z-index:-1;inset:-50%;transform:rotate(-15deg);background:repeating-radial-gradient(ellipse at 40% 65%,transparent 0 20px,rgba(23,44,43,.25) 22px 23px,transparent 24px 38px);opacity:.56}
.vault-card-visual.weird{background:#7552A3;color:#FFF8E7}
.vault-card-visual.food{background:#FF6B4A;color:#172C2B}
.vault-card-visual.play{background:#DDEB54;color:#172C2B}
.vault-card-visual.outdoors{background:#277D83;color:#F7F0DF}
.vault-card-visual.visitors{background:#172C2B;color:#F7F0DF}
.vault-card-visual-number{font:400 2.4rem/.9 var(--marker);transform:rotate(-6deg);letter-spacing:-.08em}
.vault-card-visual-glyph{font:400 3.8rem/1 var(--marker);opacity:.9;transform:rotate(18deg)}
.vault-card-visual-label{position:absolute;right:17px;bottom:9px;font:800 .65rem/1.2 var(--display-font);letter-spacing:.1em;text-transform:uppercase}
.vault-card-visual.has-photo{background:#193535}
.vault-card-visual.has-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.97)}
.vault-card-visual.has-photo::after{content:"";position:absolute;z-index:0;inset:30% 0 0;background:linear-gradient(transparent,rgba(16,32,33,.8));opacity:1;transform:none}
.vault-card-visual.has-photo .vault-card-visual-label{z-index:2;color:var(--oyster);text-shadow:0 1px 5px #111}
.vault-card-top,.vault-card-eyebrow,.vault-card h3,.vault-card-deck,.vault-card-meta,.vault-card-actions,.vault-card-source{margin-left:20px;margin-right:20px}
.vault-card-top{margin-top:18px;font-size:.65rem;letter-spacing:.06em}
.vault-card-top span:first-child{font-family:var(--marker);font-size:1.55rem;color:var(--rust)}
.vault-card-eyebrow{margin-top:16px;font-size:.7rem;color:var(--tide);font-family:var(--display-font);letter-spacing:.07em}
.vault-card h3{font:650 clamp(1.52rem,2.05vw,2.15rem)/1.11 var(--serif);letter-spacing:-.045em;margin-top:7px;margin-bottom:12px}
.vault-card-deck{font-size:.92rem;line-height:1.56;margin-bottom:20px}
.vault-card-meta{font-size:.76rem;line-height:1.45}
.vault-card-plan{color:#145656;font-size:.8rem;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}
.vault-card-actions button{border:2px solid var(--spruce);background:var(--citron);color:var(--spruce);font-family:var(--display-font)}
.vault-card-actions button:hover{background:var(--poppy)}
.vault-card-source{font-size:.73rem;color:#145656;margin-bottom:8px}
.vault-empty{padding:45px 10px}
.vault-outro{border-top:5px solid var(--spruce);background:rgba(221,235,84,.2);padding:36px;margin-top:70px}
.vault-outro .eyebrow{color:var(--rust)}
.vault-outro h3{font-family:var(--marker);font-weight:400;letter-spacing:-.035em}

@media(max-width:1080px){
 .vault-hero .vault-hero-layout{grid-template-columns:1fr;gap:48px}
 .vault-hero .vault-hero-image{min-height:360px;max-width:720px}
 .vault-hero .vault-title{font-size:clamp(3.5rem,8vw,6rem)}
 .vault-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 .vault-hero{padding-top:52px;padding-bottom:70px}
 .vault-hero .vault-title{font-size:clamp(3.05rem,11.1vw,5rem)}
 .vault-hero .vault-deck{font-size:1.03rem}
 .vault-hero .vault-hero-image{min-height:275px;max-width:calc(100% - 20px);margin-left:0;transform:rotate(1.2deg);border-width:6px}
 .vault-hero-polaroid{width:38%;min-width:113px;right:-23px;bottom:-21px;padding:5px 5px 9px}
 .vault-hero-stamp{width:75px;height:75px;right:-21px;top:-24px;font-size:.72rem;outline-width:3px}
 .vault-quick-categories a{font-size:.67rem}
 .vault-numbers>div{padding:10px 16px}
 .vault-toolbar{padding:23px 16px 19px;box-shadow:5px 6px 0 var(--poppy)}
 .vault-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-x:contain}
 .vault-tab{flex:0 0 auto}
 .vault-cards{grid-template-columns:1fr;gap:27px}
 .vault-card-visual{min-height:125px}
 .vault-outro{padding:23px}
}
@media(max-width:430px){
 .vault-hero .vault-title{font-size:clamp(2.75rem,10.5vw,3.65rem);letter-spacing:-.05em}
 .vault-hero-stamp{width:65px;height:65px;right:-14px;font-size:.59rem}
 .vault-hero .vault-hero-image{min-height:220px}
 .vault-hero-polaroid{width:37%;min-width:102px}
 .vault-numbers strong{font-size:2.35rem}
 .vault-numbers span{font-size:.7rem}
 .vault-card h3{font-size:1.77rem}
}
@media(prefers-reduced-motion:reduce){.vault-card,.vault-hero-polaroid{transition:none}}

/* Precise stamp alignment: overrides the shared image-caption span selector. */
.vault-hero .vault-hero-image > .vault-hero-stamp{left:auto;right:-35px;top:-35px;bottom:auto;background:var(--citron);max-width:none;padding:0;letter-spacing:0;}
@media(max-width:760px){.vault-hero .vault-hero-image > .vault-hero-stamp{right:-21px;top:-24px}}
@media(max-width:430px){.vault-hero .vault-hero-image > .vault-hero-stamp{right:-14px}}
