/* Active outdoor direction. Shared reading/detail components remain in style.css. */
.ad-disclosure{padding:12px 15px;margin:0 0 24px;border-left:3px solid var(--orange);background:var(--cream);font-size:13px;line-height:1.9}.prose .ad-disclosure{font-size:13px}.ad-disclosure strong{margin-right:8px;color:var(--orange)}.ad-disclosure a{margin-left:8px;text-underline-offset:3px}.gear-ad{margin-top:28px;padding:22px;background:var(--cream);border:1px solid var(--line);border-top:3px solid var(--orange);min-width:0;overflow-wrap:anywhere}.gear-ad .ad-kicker{font-size:11px;font-weight:700;color:var(--orange);letter-spacing:.04em;margin:0 0 9px}.gear-ad h2,.gear-ad h3{font-size:20px;line-height:1.6;margin:0 0 14px}.gear-ad>p{font-size:13px;line-height:2}.gear-ad .ad-source{margin:16px 0}.ad-source>a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}.ad-source span{display:block;color:var(--muted);font-size:11px}.gear-ad .ad-action-label{font-size:12px;font-weight:700;margin:14px 0 8px}.ad-material>div{max-width:100%;box-sizing:border-box;background:#e8eddf}.ad-material a{display:flex;align-items:center;min-height:44px;font-size:16px;line-height:1.8;font-weight:600;overflow-wrap:anywhere;text-underline-offset:4px}.gear-ad .ad-footnote{font-size:11px;color:var(--muted);margin-bottom:0}.gear-columns>section{min-width:0}
:root{--ink:#163d2e;--paper:#f4f2e7;--cream:#fffef8;--orange:#b4421b;--line:#cbd0c2;--yellow:#efc84c;--serif:'Noto Sans JP',sans-serif}
h1,h2{font-family:'Noto Sans JP',sans-serif;font-weight:900;letter-spacing:-.04em}.primary,.secondary{font-weight:700;border-radius:4px}.primary:hover{background:#2d5840}.site-header{max-width:none;min-height:82px;padding:18px max(24px,calc((100vw - 1220px)/2));border-bottom:0;margin:0;background:var(--cream)}.site-header .brand{font-size:37px}.site-header nav{font-size:12px;gap:28px}.site-header .nav-search{border-bottom:2px solid var(--orange)}
.launch{position:relative;isolation:isolate;background:var(--ink);overflow:hidden;min-height:390px;color:var(--cream)}.launch-image{position:absolute;right:0;top:0;width:69%;height:100%;max-width:none;object-fit:cover;object-position:50% 58%;z-index:-2}.launch::before{content:'';position:absolute;inset:0;background:var(--ink);clip-path:polygon(0 0,48% 0,40% 100%,0 100%);z-index:-1}.launch::after{content:'';position:absolute;right:0;top:0;width:70%;height:100%;background:#11312122;z-index:-2}.launch-copy{max-width:1284px;margin:0 auto;padding:37px 32px 42px;position:relative}.launch-intro{font-size:12px;font-weight:700;letter-spacing:.09em;margin:0 0 16px}.launch h1{font-size:clamp(48px,5.5vw,78px);font-weight:900;letter-spacing:-.07em;line-height:1.22;margin:0 0 20px;text-shadow:0 2px 4px #0c25194d}.launch h1 span{color:var(--yellow)}.launch-deck{font-size:13px;font-weight:500;margin:0 0 21px}.launch-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap}.launch-actions .primary{background:#f16e32;color:#142b22;font-weight:900;padding:14px 23px;border:1px solid #f16e32}.launch-actions .primary:hover{background:#ff8c56}.launch-actions>a:last-child{font-size:12px;color:var(--cream)}.launch-caption{position:absolute;right:14px;bottom:9px;font-size:9px;padding:2px 7px;background:#173324b8;color:#fff}
.wrap{max-width:1284px}.finder-section{padding-top:35px}.finder-section .section-heading{margin-bottom:20px}.finder-section .section-heading h2{font-size:36px;line-height:1.2}.finder-section .overline{font-size:10px;letter-spacing:.045em;margin-bottom:9px}.adventure-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.adventure{min-height:71px;padding:12px 15px;border:1px solid #c9d0bd;background:#e6ebda;position:relative;gap:11px;border-radius:4px}.adventure .icon{width:36px;height:34px;stroke-width:1.7}.adventure strong{font-size:13px;font-weight:700;line-height:1.5;display:block}.adventure:hover{background:#dce4ce;border-color:#7b8e6b}.adventure[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.adventure[aria-pressed=true]::after{content:none}.choice-tick{display:none}.adventure[aria-pressed=true] .choice-tick{display:grid;place-items:center;position:absolute;right:5px;top:5px;background:var(--yellow);color:var(--ink);width:17px;height:17px;border-radius:50%;font-size:11px;font-weight:900}.finder{background:var(--cream);padding:22px 24px;border:1px solid var(--line);border-radius:6px;margin-top:19px}.field{font-size:12px}.form-main{grid-template-columns:1.65fr 1fr 1fr;gap:18px}.form-main select,.form-main input{min-height:46px}.options{font-size:12px}.options select{font-size:12px}.form-extra{gap:8px 17px}.search-submit{margin-top:19px;display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding-top:19px}.search-submit .primary{min-width:230px;font-size:14px}.search-submit>span{font-size:11px;color:var(--muted)}#results{scroll-margin-top:25px}#results:focus-visible{outline:2px solid var(--orange);outline-offset:6px}.result-count strong{font-size:36px}.results-top{margin:28px 0 18px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border:0}.camp-card{display:flex;flex-direction:column;gap:0;padding:0;background:var(--cream);border:1px solid #c5cbbb;border-top:5px solid var(--camp-accent);border-radius:5px;overflow:hidden}.camp-location{min-height:63px;padding:14px 22px 0;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;position:relative}.camp-location>span{font-size:11px;font-weight:700;line-height:1.4}.camp-location small{display:block;font-size:10px;font-weight:400;margin-top:4px;color:var(--muted)}.camp-marker{width:36px;height:33px;margin-left:auto;margin-right:43px;opacity:.75;stroke-width:1.3}.save-btn{position:absolute;right:15px;top:17px;width:38px;height:38px;background:#f2f2e7;border-color:#bdc8b3}.card-body{padding:16px 22px 18px;flex:1}.card-body .eyebrow{font-size:10px;margin-bottom:7px}.card-body h3{font-family:'Noto Sans JP',sans-serif;font-size:22px;font-weight:800;letter-spacing:-.02em;line-height:1.5;margin:0 0 12px}.card-description{font-size:12px;line-height:1.9}.camp-options{width:100%;align-self:auto;padding:0 22px 16px}.activity-list{margin-bottom:13px}.activity-list li{border-top:1px dashed var(--line);padding:9px 0;font-size:11px;gap:8px;align-items:center}.activity-list b{background:#e7eddc;color:var(--ink);padding:2px 5px;font-weight:700;border-radius:2px;font-size:10px}.more-activities{margin:0 0 12px}.card-bottom{min-height:49px;padding-top:10px;font-size:10px;gap:7px}.card-bottom label{gap:4px;cursor:pointer;min-height:35px}.card-bottom a{font-size:11px;font-weight:700}.camp-card:focus-within{border-color:var(--ink)}
.gear-feature{display:grid;grid-template-columns:1fr 1.05fr;margin:65px 0 38px;background:#df622e;overflow:hidden;border-radius:0}.gear-feature-copy{padding:46px 44px;color:#162f22}.gear-feature .overline{font-size:11px;color:#183823;margin-bottom:22px;font-weight:700}.gear-feature h2{font-size:clamp(39px,4.6vw,62px);line-height:1.3;margin-bottom:22px}.gear-feature-copy>p:not(.overline){font-size:13px;line-height:2;font-weight:500}.gear-feature figure{margin:0;background:#f0e9d7;display:flex;align-items:center;min-width:0}.gear-feature img{width:100%;height:auto;mix-blend-mode:multiply}.gear-feature-links{display:flex;gap:17px;margin-top:20px;flex-wrap:wrap;font-size:11px}.gear-feature .primary{margin-top:7px}.weekend-note{background:var(--ink);color:var(--cream);border:0;padding:32px 40px 35px;grid-template-columns:.8fr 1.2fr;gap:10px 40px}.weekend-note .overline{color:var(--yellow);font-size:11px}.weekend-note h2{font-size:46px;line-height:1.3;margin:10px 0}.weekend-note small{color:#d4deca}.weekend-note a:hover{color:var(--yellow)}.weekend-actions{display:flex;flex-wrap:wrap;gap:15px;align-items:center}.weekend-actions button{padding:8px 0;background:transparent;color:var(--yellow);font-size:12px;text-decoration:underline;text-underline-offset:4px}.reading-section .section-heading h2{font-size:32px}.reading-lead h3{font-family:'Noto Sans JP',sans-serif;font-weight:800;font-size:29px}.reading-lead{background:#e6ebda}.prose h1,.page-heading h1{font-weight:800;letter-spacing:-.035em}.prose h2,.detail-section h2{font-weight:800}.guide-card h3,.gear-story-head h2{font-family:'Noto Sans JP',sans-serif;font-weight:800}.guide-grid{gap:15px 35px}.site-footer .brand{font-size:38px}
@media(min-width:1500px){.launch{min-height:420px}.launch-copy{padding-top:45px}.launch h1{font-size:84px}}
@media(max-width:1050px){.site-header{padding-inline:25px}.launch-copy{padding-inline:25px}.launch-image{width:73%;object-position:48% center}.launch::before{clip-path:polygon(0 0,53% 0,43% 100%,0 100%)}.launch h1{font-size:61px}.launch-intro{font-size:11px}.launch-deck{font-size:12px}.launch-actions{gap:16px}.launch-actions .primary{padding:12px 17px;font-size:12px}.launch-actions>a:last-child{font-size:11px}.adventure{padding:12px 10px;gap:8px}.adventure .icon{width:31px;height:31px}.adventure strong{font-size:12px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card-bottom{font-size:11px}.gear-feature-copy{padding:33px 29px}.gear-feature h2{font-size:44px}.gear-feature-copy>p:not(.overline){font-size:12px}.weekend-note{padding:28px 30px;gap:10px 28px}.weekend-note h2{font-size:40px}}
@media(max-width:700px){.site-header{padding:15px 20px 0;gap:10px;min-height:0;flex-direction:column;align-items:flex-start}.site-header .brand{font-size:30px;line-height:.95}.site-header .brand small{font-size:8px;margin-top:6px}.site-header .brand .icon{width:30px;height:31px}.site-header nav{font-size:11px;gap:8px;width:100%;padding-bottom:5px;justify-content:space-between}.site-header nav a{padding:7px 0}.launch{min-height:288px}.launch-copy{padding:23px 20px 27px}.launch-image{width:100%;object-position:58% center;opacity:.65}.launch::before{clip-path:none;background:linear-gradient(90deg,#113728f5 0%,#113728c9 43%,#11372835 100%)}.launch-intro{font-size:10px;margin-bottom:12px;letter-spacing:.05em}.launch h1{font-size:clamp(37px,10vw,57px);letter-spacing:-.07em;line-height:1.25;margin-bottom:16px}.launch-deck{font-size:11px;margin-bottom:17px}.launch-actions{gap:13px}.launch-actions .primary{min-height:44px;padding:10px 14px;font-size:11px}.launch-actions>a:last-child{font-size:10px}.launch-caption{font-size:7px;bottom:5px;right:7px;padding:1px 4px}.finder-section{padding-top:25px}.finder-section .section-heading{margin-bottom:15px}.finder-section .section-heading h2{font-size:29px}.finder-section .overline{font-size:9px;margin-bottom:8px;letter-spacing:0}.finder-section .section-heading>p{font-size:10px;margin:9px 0 0}.adventure-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.adventure{min-height:83px;padding:9px 3px;display:flex;flex-direction:column;justify-content:center;gap:5px;text-align:center}.adventure .icon{width:29px;height:29px}.adventure strong{font-size:10px;line-height:1.45;word-break:normal;overflow-wrap:anywhere}.adventure[aria-pressed=true] .choice-tick{width:14px;height:14px;font-size:9px;right:2px;top:2px}.finder{padding:16px;margin-top:15px;border-radius:5px}.field{font-size:10px}.form-main{grid-template-columns:1fr 1fr;gap:12px}.form-main .field:first-child{grid-column:1/-1}.form-main select,.form-main input{min-height:45px;font-size:16px;padding:8px 9px}.options{gap:12px;font-size:11px}.options select{font-size:11px}.search-submit{margin-top:14px;padding-top:14px;display:block}.search-submit .primary{width:100%;min-width:0;min-height:48px;font-size:13px}.search-submit>span{font-size:10px;display:block;text-align:center;margin-top:8px}.results-top{margin:23px 0 14px}.cards{grid-template-columns:1fr;gap:16px}.camp-location{padding:12px 19px 0;min-height:61px}.camp-location>span{font-size:11px}.camp-location small{font-size:10px}.save-btn{top:15px;right:15px;width:38px;height:38px}.camp-marker{width:35px;height:32px;margin-right:44px}.card-body{padding:14px 19px 15px}.card-body h3{font-size:23px;line-height:1.5}.camp-options{padding:0 19px 13px}.activity-list li{font-size:11px;padding:10px 0}.card-bottom{font-size:11px}.card-bottom a{font-size:11px}.gear-feature{grid-template-columns:1fr;margin:44px -20px 25px}.gear-feature-copy{padding:30px 25px}.gear-feature h2{font-size:46px;line-height:1.25;margin-bottom:19px}.gear-feature-copy>p:not(.overline){font-size:12px}.gear-feature .overline{font-size:10px;margin-bottom:17px}.gear-feature figure{max-height:270px;overflow:hidden}.gear-feature img{width:100%;height:270px;object-fit:contain}.gear-feature .primary{font-size:12px}.gear-feature-links{font-size:11px}.weekend-note{margin:0 -20px;padding:27px 25px 29px;grid-template-columns:1fr;gap:0}.weekend-note h2{font-size:39px;line-height:1.3}.weekend-note .overline{font-size:10px}.weekend-note>div{padding-top:10px}.weekend-note p:not(.overline){font-size:12px}.weekend-actions{gap:11px 18px}.weekend-actions a,.weekend-actions button{font-size:11px}.weekend-note small{font-size:9px}.reading-section .section-heading h2{font-size:29px}.reading-lead h3{font-size:25px}.prose h1{font-size:30px}.site-footer .brand{font-size:32px}}
@media(max-width:360px){.adventure-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.adventure{min-height:80px}.launch h1{font-size:36px}.launch-actions{gap:10px}.launch-actions .primary{font-size:10px;padding:10px 11px}}

/* Mobile usability: readable controls, generous touch targets, contained comparison. */
.page-main,.card-body,.camp-options,.field,.result-count{min-width:0}
.prose,.guide-card,.breadcrumb,.detail-top h1{overflow-wrap:anywhere}
.recent-notes{max-width:1220px;margin:45px auto;padding:0 32px}
.page-main .recent-notes{padding:0}
.compare-scroll-hint{font-size:13px;color:var(--muted);margin:0 0 12px}
.table-scroll{overscroll-behavior-x:contain}
body.comparison-selected{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}
@media(max-width:900px){
 .site-header{flex-wrap:wrap;gap:12px;margin:0}
 .site-header nav{flex-wrap:wrap;gap:4px 20px}
 .site-header nav a{min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}
}
@media(max-width:700px){
 body{font-size:16px}
 body.comparison-selected{padding-bottom:calc(140px + env(safe-area-inset-bottom,0px))}
 .site-header{margin:0;padding:16px 20px 4px}
 .site-header,.wrap,.page-main,.launch-copy,.site-footer{padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
 .site-header nav{justify-content:flex-start;font-size:13px;gap:2px 18px}
 .launch-intro{font-size:12px}
 .launch-deck{font-size:14px;line-height:1.8}
 .launch-actions .primary,.launch-actions>a:last-child{font-size:13px;min-height:44px}
 .launch-actions>a:last-child{display:inline-flex;align-items:center}
 .launch-caption{font-size:10px}
 .finder-section .overline,.finder-section .section-heading>p{font-size:12px}
 .adventure-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .adventure{min-height:58px;flex-direction:row;justify-content:flex-start;text-align:left;padding:10px;gap:8px}
 .adventure strong{font-size:14px;line-height:1.5}
 .adventure .icon{width:26px;height:26px}
 .field{font-size:14px}
 .form-main{grid-template-columns:minmax(0,1fr)}
 .form-main .field:first-child{grid-column:auto}
 .form-main input,.form-main select,.options select,.results-top select{font-size:16px;min-height:48px;max-width:100%}
 .options{width:100%;gap:8px;font-size:14px}
 .options label{min-height:44px;flex-wrap:wrap}
 .options label:has(select){width:100%;justify-content:space-between;gap:8px}
 .options select{max-width:100%;width:auto;min-width:150px;flex:1}
 .text-btn{min-height:44px;font-size:14px;padding:8px 4px}
 .helper,.small-print,.search-submit>span{font-size:12px}
 .search-submit .primary{font-size:16px;min-height:50px}
 .results-top{flex-wrap:wrap;align-items:flex-start}
 .results-top>label{width:100%}
 .results-top select{width:100%}
 .result-count{font-size:15px}
 .result-count small{font-size:13px;line-height:1.7}
 .save-btn{width:48px;height:48px;top:12px;right:12px}
 .camp-location{min-height:70px;padding-right:12px}
 .camp-marker{margin-right:50px}
 .camp-location>span{font-size:13px}
 .camp-location small,.card-body .eyebrow{font-size:12px}
 .card-description,.activity-list li{font-size:14px}
 .activity-list b,.more-activities{font-size:12px}
 .activity-list li{flex-wrap:wrap;justify-content:flex-start}
 .activity-list b{margin-left:auto}
 .card-bottom{flex-wrap:wrap;gap:8px}
 .card-bottom label,.card-bottom a{min-height:44px;font-size:14px;display:inline-flex;align-items:center}
 .card-bottom a{padding:8px 0}
 .gear-feature-copy>p:not(.overline),.weekend-note p:not(.overline),.reading-lead p,.guide-card p,.editor-note p{font-size:15px}
 .gear-feature .primary,.gear-feature-links,.weekend-actions a,.weekend-actions button{font-size:14px}
 .gear-feature-links a,.weekend-actions a,.weekend-actions button{min-height:44px;display:inline-flex;align-items:center}
 .weekend-note small{font-size:12px}
 .page-heading .lead,.detail-top p,.spot p,.prose p,.prose li{font-size:16px;line-height:1.95}
 .prose .lead{font-size:17px}
 .breadcrumb,.note,.source{font-size:13px!important}
 .detail-actions{flex-direction:column}
 .detail-actions>*{flex:auto;width:100%;font-size:15px;white-space:normal;min-height:48px;text-align:center}
 .spot-head{flex-wrap:wrap}
 .spot-head .pill,.pill{font-size:12px}
 a.pill{min-height:44px;display:inline-flex;align-items:center;padding:8px 12px}
 .spot-links{gap:8px 16px;font-size:15px}
 .spot-links a,.guide-links a,.back-link,.read-link,.gear-jump a{min-height:44px;display:inline-flex;align-items:center;font-size:14px}
 .checklist{padding:14px}
 .checklist label{font-size:15px;min-height:44px;align-items:flex-start}
 .pack-list,.gear-criteria dt,.gear-criteria dd,.destination-link strong,.try-note p{font-size:15px}
 .destination-link span,.try-note a{font-size:14px}
 .recent-notes{padding:0 20px}
 .site-footer>div:nth-child(2)>a{min-height:44px;display:inline-flex;align-items:center;font-size:14px}
 .site-footer{padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}
 .compare-bar{bottom:calc(8px + env(safe-area-inset-bottom,0px));width:calc(100% - 24px);max-width:440px;padding:8px;gap:8px;flex-wrap:wrap;font-size:13px}
 .compare-bar #compare-count{flex:1;white-space:nowrap}
 .compare-bar button,.compare-bar .clear{min-height:44px;font-size:13px;padding:8px 10px}
 .toast{bottom:calc(100px + env(safe-area-inset-bottom,0px));font-size:14px}
 dialog{width:calc(100% - 20px);max-width:100%;max-height:calc(100dvh - 32px - env(safe-area-inset-bottom,0px));padding:16px}
 .dialog-head{gap:12px}
 .dialog-head h2{font-size:20px}
 .dialog-head button{flex-shrink:0;width:48px;height:48px}
 .table-scroll table{min-width:660px;table-layout:fixed;font-size:14px}
 .table-scroll th,.table-scroll td{padding:12px;overflow-wrap:anywhere}
 .table-scroll th:first-child{position:sticky;left:0;width:110px;background:#e9edde;z-index:1}
 .table-scroll td small{font-size:12px}
}
