.hiking-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:2.5rem;background:#15251f}
.hiking-intro:has(>div:only-child){grid-template-columns:minmax(0,1fr)}
.hiking-intro h1{font-size:clamp(2.8rem,6vw,5.5rem);line-height:1.05;overflow-wrap:anywhere}
.hiking-intro figure{margin:0;min-width:0;width:100%;justify-self:center}.hiking-intro img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.hiking-intro figcaption{font-size:.875rem;line-height:1.6;padding-top:.7rem;color:#c4d1c6}
.hiking-count,.trailhead-label{border-left:3px solid #d8aa4c;padding-left:1rem}
.mountain-filters{display:grid;grid-template-columns:2fr 1fr;gap:1rem;max-width:65rem}.mountain-filters label{display:block;font-weight:600}
.mountain-browser .mountain-filters{max-width:none;grid-template-columns:minmax(16rem,2fr) repeat(3,minmax(9rem,1fr));align-items:end}.hiking-collection-intro{max-width:62rem;margin-bottom:1.7rem}.hiking-collection-intro h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;color:#17281e;margin:.35rem 0}.hiking-collection-intro>p:last-child,.hiking-collection-note{font-size:1rem;line-height:1.6;color:#233e31}.hiking-card-highlight{font-weight:700;color:#25563c}.mountain-browser .mountain-card[hidden]{display:none!important}
.hiking-season-scenes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:2.3rem}.hiking-season-scene{position:relative;display:block;min-height:13rem;overflow:hidden;padding:0;border:3px solid transparent;background:#203d33;color:#fff;text-align:left;cursor:pointer}.hiking-season-scene img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hiking-season-scene::after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#10231bef)}.hiking-season-scene>span{position:absolute;z-index:1;left:1rem;right:1rem;bottom:1rem;display:grid;line-height:1.35}.hiking-season-scene strong{font-size:1.5rem}.hiking-season-scene small{font-size:.88rem}.hiking-season-scene[aria-pressed="true"],.hiking-season-scene:focus-visible{border-color:#d59637;outline:2px solid #152f24;outline-offset:2px}.hiking-season-photo-empty{display:grid;place-items:center;width:100%;height:100%;min-height:11rem;background:#325747;color:#fff;font-weight:750;padding:1rem;text-align:center;box-sizing:border-box}.hiking-season-photo-empty[hidden],.mountain-card-image img[hidden]{display:none!important}.hiking-local-picks{margin-top:3rem;border-top:2px solid #55735f;padding-top:2rem}.hiking-local-picks>h2{font-size:clamp(1.8rem,3vw,2.8rem);margin:0}.hiking-local-picks>p{max-width:62ch;line-height:1.6}.hiking-local-image{display:grid;place-items:center;background:#244b3d;color:#fff;text-align:center;min-height:11rem}.hiking-local-image span{padding:1rem;font-weight:700}
@media(max-width:850px){.hiking-season-scenes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.hiking-season-scenes{gap:.5rem}.hiking-season-scene{min-height:10rem}.hiking-season-scene>span{left:.65rem;right:.65rem;bottom:.65rem}.hiking-season-scene strong{font-size:1.25rem}}
@media(max-width:980px){.mountain-browser .mountain-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.mountain-browser .mountain-filters{grid-template-columns:minmax(0,1fr)}}
.mountain-filters input,.mountain-filters select{display:block;width:100%;box-sizing:border-box;margin-top:.5rem;padding:.85rem;font:inherit;color:#17281e;background:#fff;border:1px solid #667c6a;border-radius:.3rem}
.mountain-search-wrap{position:relative;z-index:20}.mountain-search-field{position:relative;display:block}.mountain-search-field input{padding-right:12rem}.mountain-search-hint{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:#59695f;font-size:.78rem;font-weight:500;pointer-events:none}.mountain-suggestions{position:absolute;left:0;right:0;top:calc(100% + .35rem);z-index:50;max-height:25rem;overflow:auto;margin:0;padding:.35rem;list-style:none;background:#fff;border:2px solid #233c30;border-radius:.45rem;box-shadow:0 14px 34px #17281e33}.mountain-suggestions[hidden]{display:none}.mountain-suggestions li{margin:0}.mountain-suggestions a{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.4rem;padding:.7rem .8rem;color:#17281e;text-decoration:none;border-radius:.25rem}.mountain-suggestions li[aria-selected="true"] a,.mountain-suggestions a:hover{background:#e6efe8}.mountain-suggestions a span{display:flex;align-items:baseline;gap:.55rem;min-width:0}.mountain-suggestions strong{font-size:1rem}.mountain-suggestions small{color:#53665a;font-size:.86rem}.mountain-suggestions em{flex:0 0 auto;color:#647469;font-size:.78rem;font-style:normal;font-weight:600}.mountain-search-wrap:focus-within input{outline:3px solid #e1b94b;outline-offset:2px}
.mountain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.mountain-card{min-width:0;background:#1b2b24;border:1px solid #50685a;display:flex;flex-direction:column;overflow-wrap:anywhere}
.mountain-card>a{display:block;text-decoration:none;flex:1}.mountain-card:hover{background:#273c30}.mountain-card img{display:block;width:100%;height:auto;object-fit:contain;background:transparent}
.mountain-card-copy{padding:1.25rem}.mountain-card h2{font-size:1.7rem;line-height:1.2}.mountain-card p{font-size:1rem;line-height:1.6}.mountain-card small{padding:0 1.25rem 1rem;color:#c3cdc6;font-size:.75rem}
.hiking-main .managed-section:nth-of-type(even){background:#1b2b24}.hiking-main .hub-grid article{min-width:0;overflow-wrap:anywhere}.hiking-main .hub-grid p a{display:inline-block;margin:.3rem .8rem .3rem 0}
.season-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;margin:1.5rem 0}.season-tabs button{font:inherit;padding:1rem .75rem;border:1px solid #718879;background:#20372a;color:#fff;cursor:pointer}.season-tabs button[aria-selected="true"]{background:#d8aa4c;color:#15251f;border-color:#d8aa4c}.season-tabs span{display:block;font-size:.875rem;margin-top:.2rem}
.season-photo-note{padding:1.25rem;border:1px solid #65766a;max-width:45rem}.mountain-photo{margin:1.5rem 0 2.5rem}.mountain-photo img{display:block;max-width:100%;max-height:42rem;object-fit:contain}.mountain-photo figcaption{max-width:65rem}.mountain-photo figcaption p{font-size:.9rem;line-height:1.6;color:#d1d9d4}
.hiking-main [hidden]{display:none!important}
.mountain-card-image{position:relative}.mountain-photo-count{position:absolute;right:.75rem;bottom:.75rem;background:#101820ed;color:#fff;font-size:.875rem;padding:.3rem .6rem;border:1px solid #aabbb1}.mountain-card-gallery{padding:0 1.25rem 1.25rem}.mountain-card-gallery a{font-size:.95rem}
.mountain-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;align-items:start}.mountain-photo-grid .mountain-photo{margin:0;background:#1b2b24;border:1px solid #536b5c;min-width:0}.mountain-photo-open{display:block;position:relative;cursor:zoom-in}.mountain-photo-grid .mountain-photo-open{display:flex;align-items:center;justify-content:center;background:#0b1210;aspect-ratio:4/3}.mountain-photo-grid img{width:100%;height:100%;max-height:none;object-fit:contain}.mountain-enlarge-label{position:absolute;right:.4rem;bottom:.4rem;background:#101820ed;color:#fff;padding:.3rem .45rem;font-size:.75rem;line-height:1.4;border-radius:.2rem}.mountain-photo-grid figcaption{padding:.85rem;overflow-wrap:anywhere}.mountain-photo-grid h3{font-size:1.125rem;line-height:1.35;margin:.5rem 0}.mountain-photo-details summary{font-size:.875rem;line-height:1.5;color:#d1d9d4;cursor:pointer}.mountain-photo-details[open] summary{margin-bottom:.75rem}.photo-season{color:#e5bc69;font-size:.875rem}.gallery-date-note{font-size:.875rem;color:#c4d1c6;margin-top:1.5rem}.season-guidance{border-top:1px solid #596d61;padding:1.25rem 0}.season-guidance h3{font-size:1.35rem}.hiking-main .season-gallery{padding-top:3rem;padding-bottom:3rem;background:#15251f}
.mountain-card:focus-within,.mountain-photo-open:focus-visible{outline:3px solid #d8aa4c;outline-offset:3px}
@media(max-width:1000px){.mountain-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mountain-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hiking-intro{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.mountain-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.mountain-grid,.mountain-filters{grid-template-columns:minmax(0,1fr)}.mountain-search-field input{padding-right:.85rem}.mountain-search-hint{display:none}.mountain-suggestions{max-height:19rem}.mountain-suggestions a{align-items:flex-start}.mountain-suggestions a span{display:grid;gap:.15rem}.hiking-intro figure{width:100%}.season-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.season-tabs button:first-child{grid-column:1/-1}}

.hallasan-section-heading{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(17rem,.75fr);gap:2rem;align-items:end;margin-bottom:1.75rem}.hallasan-section-heading h2{margin:.2rem 0 0;font-size:clamp(2rem,4vw,3.5rem);line-height:1.08}.hallasan-section-heading>p{margin:0;color:#cfdbd2}.hallasan-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.hallasan-route-card{background:#f4f0e6;color:#173228;border:1px solid #c5bfae;padding:1.4rem;min-width:0}.hallasan-route-card:first-child{grid-column:span 2;background:#e7efe8}.hallasan-route-card h3{font-size:1.65rem;margin:.2rem 0 1rem}.hallasan-route-card dl{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:0 0 1rem}.hallasan-route-card dl div{border-top:1px solid #a7b5aa;padding-top:.7rem}.hallasan-route-card dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#496055}.hallasan-route-card dd{margin:.25rem 0 0;font-weight:700}.hallasan-route-card .eyebrow{color:#785319}.hallasan-route-card .map-links a{color:#153e31;border-color:#759184}.hallasan-reservation{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:1.25rem;padding:1.25rem 1.5rem;border:1px solid #d8aa4c;background:#263d32}.hallasan-reservation div{display:grid;gap:.3rem}.hallasan-reservation strong{font-size:1.25rem;color:#f0ca78}.hallasan-reservation span{color:#e6ece7}.hallasan-map-section{background:#0e1d18}.hallasan-route-map{padding:2rem;border:1px solid #667e70;background:linear-gradient(145deg,#172d24,#0d1814);overflow:hidden}.route-line{display:grid;grid-template-columns:auto minmax(1.5rem,1fr) auto minmax(1.5rem,1fr) auto minmax(1.5rem,1fr) auto minmax(1.5rem,1fr) auto;align-items:center;gap:.25rem;margin:1rem 0}.route-line span,.route-line strong{display:flex;align-items:center;justify-content:center;text-align:center;min-height:4.6rem;padding:.65rem;border:1px solid #7d9788;background:#1d352b}.route-line strong{background:#d8aa4c;color:#13251e;border-color:#f1cf8b;border-radius:50%;min-width:7rem}.route-line i{height:3px;background:#d8aa4c;position:relative}.route-line i:after{content:'›';position:absolute;right:-.1rem;top:50%;transform:translateY(-54%);font-style:normal;font-size:1.4rem;color:#d8aa4c}.ridge-line strong{background:#9fc3aa;border-color:#c6dfcd}.route-branch{width:max-content;max-width:100%;margin:.2rem 0 0 18%;padding:.6rem 1rem;border-left:3px solid #9fc3aa;color:#d6e3da}.hallasan-access,.hallasan-food{background:#1b2b24}.hallasan-access .hub-grid,.hallasan-bases .hub-grid,.hallasan-food .hub-grid,.hallasan-sights .hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hallasan-access .hub-grid article,.hallasan-bases .hub-grid article,.hallasan-food .hub-grid article,.hallasan-sights .hub-grid article{border-top:3px solid #d8aa4c}.hallasan-food .hub-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hallasan-sights{background:#15251f}
@media(max-width:900px){.hallasan-section-heading{grid-template-columns:1fr;gap:.75rem}.hallasan-route-grid{grid-template-columns:1fr}.hallasan-route-card:first-child{grid-column:auto}.route-line{grid-template-columns:1fr;gap:.35rem}.route-line i{width:3px;height:1.3rem;margin:auto}.route-line i:after{content:'⌄';right:auto;left:50%;top:auto;bottom:-.55rem;transform:translateX(-50%)}.hallasan-access .hub-grid,.hallasan-bases .hub-grid,.hallasan-food .hub-grid,.hallasan-sights .hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.hallasan-reservation{align-items:stretch;flex-direction:column}.hallasan-route-map{padding:1rem}.hallasan-access .hub-grid,.hallasan-bases .hub-grid,.hallasan-food .hub-grid,.hallasan-sights .hub-grid{grid-template-columns:1fr}.hallasan-route-card dl{grid-template-columns:1fr}}

/* Let each photograph keep its full natural frame. */
.mountain-photo-grid .mountain-photo-open{display:block;aspect-ratio:auto;background:transparent}.mountain-photo-grid img{display:block;width:100%;height:auto;max-height:none}

/* Hallasan visual field guide */
.hallasan-visual-guide{--hallasan-ink:#10231c;--hallasan-cream:#f1eee3;--hallasan-orange:#e95b31;--hallasan-yellow:#f2c84b;background:var(--hallasan-cream);color:var(--hallasan-ink)}
.bukhansan-visual-guide{--hallasan-ink:#17243a;--hallasan-cream:#f1eee7;--hallasan-orange:#c54834;--hallasan-yellow:#e8b84a}
.hallasan-visual-guide .breadcrumb{background:var(--hallasan-cream);color:#42524b}.hallasan-visual-guide .breadcrumb a{color:var(--hallasan-ink)}
.hallasan-jump-nav{background:#10231cf2;border-bottom:1px solid #ffffff2e}.hallasan-jump-nav a{color:#fff}.hallasan-jump-nav a:hover{background:var(--hallasan-yellow);color:var(--hallasan-ink)}
.hallasan-poster{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(20rem,.85fr);grid-template-rows:minmax(26rem,66vh) 13rem;background:var(--hallasan-ink);color:#fff;min-height:48rem}
.hallasan-poster figure{margin:0;position:relative;overflow:hidden}.hallasan-poster img{display:block;width:100%;height:100%;object-fit:cover}.hallasan-poster-main{grid-row:1/3}.hallasan-poster-main:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,#10231c8c)}.hallasan-poster figcaption{position:absolute;z-index:1;left:1rem;bottom:1rem;background:#10231ddd;color:#fff;padding:.35rem .55rem;font-size:.75rem}.hallasan-poster figcaption a{color:#fff}
.hallasan-poster-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,4.5rem);min-width:0}.hallasan-poster-copy h1{font-size:clamp(3.1rem,6.5vw,6.8rem);letter-spacing:-.06em;line-height:.82;margin:.25rem 0 1.5rem}.hallasan-poster-copy>p:not(.eyebrow){font-size:1.15rem;max-width:31rem}.hallasan-fact-ribbon{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1.25rem 0}.hallasan-fact-ribbon span{border-top:2px solid var(--hallasan-orange);padding-top:.65rem;font-size:.8rem;line-height:1.3}.hallasan-fact-ribbon strong{display:block;color:var(--hallasan-yellow);font-size:2rem}.hallasan-poster-actions,.hallasan-day-actions,.hallasan-live-actions{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.hallasan-poster-actions .save-place-controls{display:flex;align-items:center;gap:.6rem}.hallasan-poster-actions .save-place-controls button{min-height:44px;padding:.7rem 1rem;border:1px solid #fff;background:transparent;color:#fff;font:inherit;font-weight:700;cursor:pointer}.hallasan-poster-actions .save-place-controls a{display:none}.hallasan-poster-tile{min-width:0}.hallasan-poster-tile:first-of-type{border-right:1px solid #ffffff4a}
.hallasan-visual-guide .section-pad{padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem)}.hallasan-visual-heading{display:grid;grid-template-columns:minmax(12rem,.6fr) minmax(18rem,1fr) minmax(16rem,.65fr);gap:2rem;align-items:end;margin-bottom:2rem}.hallasan-visual-heading>*{margin-top:0;margin-bottom:0}.hallasan-visual-heading h2{font-size:clamp(2.5rem,5vw,5.2rem);line-height:.92;letter-spacing:-.045em}.hallasan-visual-heading>p:last-child{font-size:1rem;line-height:1.55}
.hallasan-map-board{background:#d8e2d6}.hallasan-trail-map{height:540px;min-height:360px;isolation:isolate;border:4px solid var(--hallasan-ink);box-shadow:12px 12px 0 var(--hallasan-orange)}.hallasan-trail-map img{max-width:none!important;max-height:none!important}.hallasan-map-marker{background:transparent;border:0}.hallasan-map-marker span{display:grid;place-items:center;width:36px;height:36px;border:3px solid #fff;border-radius:50%;background:var(--hallasan-orange);color:#fff;box-shadow:0 3px 8px #0007;font:800 1rem/1 system-ui}.hallasan-map-board .leaflet-popup-content{color:var(--hallasan-ink)}.hallasan-map-board .leaflet-popup-content a{color:#963419}.hallasan-map-key{display:flex;flex-wrap:wrap;gap:.65rem 1.3rem;margin-top:1.5rem}.hallasan-map-key span{display:flex;align-items:center;gap:.45rem;font-weight:700}.hallasan-map-key b{display:grid;place-items:center;width:1.8rem;height:1.8rem;border-radius:50%;background:var(--hallasan-orange);color:#fff}
.hallasan-route-board{background:var(--hallasan-cream)}.hallasan-route-gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:1.4rem}.hallasan-visual-route{grid-column:span 6;background:#fff;border:2px solid var(--hallasan-ink);cursor:pointer;min-width:0;transition:transform .2s,box-shadow .2s}.hallasan-visual-route:nth-child(3),.hallasan-visual-route:nth-child(4),.hallasan-visual-route:nth-child(5){grid-column:span 4}.hallasan-visual-route:hover,.hallasan-visual-route:focus-visible{transform:translateY(-5px);box-shadow:8px 8px 0 var(--hallasan-yellow);outline:none}.hallasan-route-photo{position:relative;height:19rem;overflow:hidden;background:#263f34}.hallasan-route-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.hallasan-visual-route:hover img{transform:scale(1.035)}.hallasan-route-number{position:absolute;left:1rem;top:1rem;display:grid;place-items:center;width:3.4rem;height:3.4rem;border-radius:50%;background:var(--hallasan-orange);color:#fff;border:3px solid #fff;font-size:1.6rem;font-weight:900}.hallasan-route-label{position:absolute;left:1rem;bottom:1rem;background:var(--hallasan-yellow);color:var(--hallasan-ink);font-size:.78rem;font-weight:900;letter-spacing:.06em;padding:.5rem .65rem}.hallasan-route-copy{padding:1.35rem}.hallasan-route-copy h3{font-size:2rem;margin:0 0 .8rem}.hallasan-route-copy>p{min-height:3.2em}.hallasan-route-stats{display:flex;gap:.5rem;flex-wrap:wrap}.hallasan-route-stats span{border:1px solid #7f8a84;border-radius:2rem;padding:.35rem .65rem;font-size:.85rem;font-weight:700}.hallasan-card-actions{display:flex;flex-wrap:wrap;gap:1rem;border-top:1px solid #c5ccc8;padding-top:1rem}.hallasan-card-actions a{color:#174c39;font-weight:800}
.hallasan-first-trip{background:#f4c94f}.hallasan-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.hallasan-choice-grid article{display:flex;flex-direction:column;background:#fff;border:2px solid var(--hallasan-ink);padding:1.5rem;min-width:0}.hallasan-choice-grid article.recommended{background:var(--hallasan-ink);color:#fff;box-shadow:8px 8px 0 var(--hallasan-orange)}.hallasan-choice-grid span{font-size:.78rem;font-weight:900;letter-spacing:.07em;color:#a33920}.hallasan-choice-grid .recommended span{color:var(--hallasan-yellow)}.hallasan-choice-grid h3{font-size:1.8rem;margin:.65rem 0}.hallasan-choice-grid p{font-size:1rem}.hallasan-choice-grid strong{margin-top:auto;padding-top:1rem}.hallasan-choice-grid a{display:inline-block;margin-top:1rem;color:inherit;font-weight:900}
.hallasan-scenes{background:#10231c;color:#fff}.hallasan-scene-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr 1.1fr;gap:.8rem}.hallasan-scene-grid figure{position:relative;margin:0;min-width:0;overflow:hidden;background:#1f362c}.hallasan-scene-grid img{display:block;width:100%;height:32rem;object-fit:cover}.hallasan-scene-grid figure:nth-child(2) img,.hallasan-scene-grid figure:nth-child(3) img{height:27rem}.hallasan-scene-grid figcaption{display:grid;gap:.25rem;padding:1rem}.hallasan-scene-grid b{color:var(--hallasan-yellow)}.hallasan-scene-grid span{font-size:.9rem}.hallasan-scene-grid small,.hallasan-scene-grid small a{color:#bdcbc2}
.hallasan-traveler-gallery{background:#eee7d8}.hallasan-photo-wall{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.hallasan-photo-wall figure{display:flex;flex-direction:column;margin:0;background:#fff;border:2px solid var(--hallasan-ink);min-width:0;overflow:hidden}.hallasan-photo-open{display:block;width:100%;aspect-ratio:3/2;overflow:hidden;background:#15251f}.hallasan-photo-wall img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.hallasan-photo-wall a:hover img,.hallasan-photo-wall a:focus-visible img{transform:scale(1.018)}.hallasan-photo-wall figcaption{display:flex;flex:1;flex-direction:column;min-height:7.5rem;padding:1rem 1.15rem}.hallasan-photo-wall figcaption span{font-size:.75rem;font-weight:900;letter-spacing:.08em;color:#a43b25}.hallasan-photo-wall h3{font-size:1.5rem;margin:.35rem 0}.hallasan-photo-wall small{margin-top:auto}.hallasan-photo-wall small,.hallasan-photo-wall small a{color:#536158}.hallasan-photo-wall .hallasan-photo-open:focus-visible{outline:5px solid var(--hallasan-yellow);outline-offset:-5px}.hallasan-photo-policy{max-width:62rem;margin:2rem auto 0;padding:1.4rem 1.5rem;border-left:6px solid var(--hallasan-orange);background:#fff}.hallasan-photo-policy strong{font-size:1.2rem}.hallasan-photo-policy p{margin:.45rem 0 1rem;line-height:1.65}.hallasan-photo-policy .map-links{margin:0}
.hallasan-solo-days{display:grid;gap:4rem;background:#e4eade}.hallasan-solo-day{display:grid;grid-template-columns:minmax(18rem,.8fr) minmax(0,1.2fr);background:#fff;border:2px solid var(--hallasan-ink);min-width:0}.hallasan-solo-day.reverse{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr)}.hallasan-solo-day.reverse .hallasan-solo-photo{grid-column:2;grid-row:1}.hallasan-solo-day.reverse .hallasan-solo-copy{grid-column:1;grid-row:1}.hallasan-solo-photo{position:relative;min-height:42rem;overflow:hidden}.hallasan-solo-photo img{display:block;width:100%;height:100%;object-fit:cover}.hallasan-solo-photo>span{position:absolute;top:1rem;left:1rem;background:var(--hallasan-orange);color:#fff;padding:.6rem .8rem;font-weight:900}.hallasan-solo-copy{padding:clamp(1.5rem,4vw,3rem);min-width:0}.hallasan-solo-copy h2{font-size:clamp(2.5rem,5vw,4.8rem);line-height:.92;margin:.3rem 0 2rem}.hallasan-clock{list-style:none;margin:0;padding:0;border-top:1px solid #aeb9b2}.hallasan-clock li{display:grid;grid-template-columns:7.5rem 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid #aeb9b2}.hallasan-clock time{color:#9a381f;font-size:.85rem;font-weight:900;text-transform:uppercase}.hallasan-clock strong{font-size:1.05rem}.hallasan-clock p{margin:.3rem 0 0;font-size:.93rem;line-height:1.5}.hallasan-solo-copy .hallasan-card-actions{margin-top:1.5rem}
.hallasan-transport-board{background:#f1e6d4}.hallasan-transport-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem}.hallasan-transport-grid article{position:relative;display:flex;flex-direction:column;border-top:5px solid var(--hallasan-orange);background:#fff;padding:1.2rem;min-width:0}.hallasan-transport-grid article>b{display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;background:var(--hallasan-orange);color:#fff}.hallasan-transport-grid h3{font-size:1.1rem;margin:.8rem 0}.hallasan-transport-grid p{font-size:.9rem;line-height:1.55}.hallasan-transport-grid span{display:block;margin-top:auto;padding:1rem 0;font-size:.82rem;font-weight:800;color:#47584f}.hallasan-transport-grid a{color:#174c39;font-weight:900}.hallasan-source-note{margin-top:1.5rem;font-size:.9rem}.hallasan-source-note a{color:#174c39;font-weight:800}
.hallasan-day-plan{background:var(--hallasan-ink);color:#fff}.hallasan-day-plan .hallasan-visual-heading{grid-template-columns:1fr 2fr}.hallasan-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;list-style:none;padding:0;margin:0;background:#ffffff35;border:1px solid #ffffff35}.hallasan-steps li{display:grid;grid-template-columns:auto 1fr;gap:1rem;background:var(--hallasan-ink);padding:2rem}.hallasan-steps li>span{color:var(--hallasan-yellow);font-size:2rem;font-weight:900}.hallasan-steps strong{font-size:1.35rem}.hallasan-steps p{color:#d6e2da}.hallasan-day-actions{margin-top:1.5rem}.hallasan-day-plan .button-ghost,.hallasan-live-card .button-ghost{border-color:#fff;color:#fff}
.hallasan-check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;list-style:none;padding:1px;margin:0;background:#ffffff38}.hallasan-check-grid li{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:.4rem 1rem;background:var(--hallasan-ink);padding:1.5rem}.hallasan-check-grid span{grid-row:1/3;color:var(--hallasan-yellow);font-size:1.7rem;font-weight:900}.hallasan-check-grid strong{font-size:1.15rem}.hallasan-check-grid small{color:#d5e1d9;font-size:.9rem;line-height:1.5}
.hallasan-pick-board{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,5rem);background:#e9dfcc}.hallasan-pick-group h2{font-size:clamp(2.2rem,4vw,4rem);margin:.25rem 0 1.4rem}.hallasan-chip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.hallasan-chip-grid article{background:#fff;border:1px solid #9eaa9f;padding:1.2rem;min-width:0}.hallasan-chip-grid article>span{font-size:2rem;color:var(--hallasan-orange)}.hallasan-chip-grid h3{font-size:1.2rem;margin:.55rem 0}.hallasan-chip-grid p{font-size:.9rem;min-height:3em}.hallasan-chip-grid a{color:#174c39;font-weight:800}.hallasan-food-chips,.hallasan-nearby{display:flex;flex-wrap:wrap;gap:.65rem}.hallasan-food-chips a,.hallasan-nearby a{display:inline-flex;align-items:center;min-height:44px;padding:.7rem 1rem;border-radius:2rem;text-decoration:none;font-weight:800}.hallasan-food-chips a{background:var(--hallasan-orange);color:#fff}.hallasan-nearby{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #938b7f}.hallasan-nearby .eyebrow{width:100%}.hallasan-nearby a{background:#fff;color:var(--hallasan-ink);border:1px solid #9eaa9f}
.hallasan-season-board{background:#243b31;color:#fff}.hallasan-season-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.hallasan-season-grid figure{margin:0;background:#10231c;min-width:0}.hallasan-season-grid img{display:block;width:100%;height:clamp(22rem,38vw,34rem);object-fit:cover}.hallasan-season-grid figure:nth-child(even){transform:translateY(2.5rem)}.hallasan-season-grid figcaption{display:grid;gap:.35rem;padding:1rem}.hallasan-season-grid b{color:var(--hallasan-yellow);font-size:1.15rem}.hallasan-season-grid small,.hallasan-season-grid small a{color:#cbd7d0}.hallasan-live-card{display:grid;grid-template-columns:1.3fr 1fr;gap:2rem;align-items:end;background:var(--hallasan-orange);color:#fff}.hallasan-live-card h2{font-size:clamp(3rem,6vw,6rem);line-height:.85;letter-spacing:-.05em;margin:.3rem 0 1rem}.hallasan-live-actions{align-items:flex-start;flex-direction:column}.hallasan-live-actions small{margin-top:.5rem}.hallasan-live-card .button-primary{background:var(--hallasan-ink);border-color:var(--hallasan-ink)}
.hallasan-now{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(16rem,.55fr);gap:2rem;align-items:center;padding:clamp(1.5rem,4vw,3rem) clamp(1.1rem,5vw,5rem);background:#8e241b;color:#fff;border-top:8px solid #f2c84b}.hallasan-now-status>span{font-size:.78rem;font-weight:900;letter-spacing:.08em;color:#ffe67f}.hallasan-now h2{font-size:clamp(1.8rem,3.5vw,3.25rem);line-height:1;margin:.55rem 0}.hallasan-now p{max-width:58rem;margin:.6rem 0 0;line-height:1.65}.hallasan-now-actions{display:flex;flex-direction:column;align-items:stretch;gap:.7rem}.hallasan-now .button{justify-content:center;text-align:center}.hallasan-now .button-ghost{border-color:#fff;color:#fff}
.hallasan-reservation-facts{background:#e5ebdf}.hallasan-fact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.hallasan-fact-grid article{background:#fff;border:2px solid var(--hallasan-ink);padding:1.5rem}.hallasan-fact-grid b{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--hallasan-orange);color:#fff}.hallasan-fact-grid h3{font-size:1.35rem;margin:1rem 0 .5rem}.hallasan-fact-grid p{margin:0;line-height:1.6}.hallasan-choice-grid article.temporarily-closed{background:#fff1ee;border-color:#a92f22}.hallasan-choice-grid .temporarily-closed span{color:#a92f22}
.hallasan-field-board{background:#d9e5dc}.hallasan-field-routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.hallasan-field-routes>article{background:#fff;border:3px solid var(--hallasan-ink);padding:clamp(1.2rem,3vw,2rem);min-width:0}.hallasan-field-title{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.hallasan-field-title>span{display:grid;place-items:center;flex:0 0 3rem;width:3rem;height:3rem;border-radius:50%;background:var(--hallasan-orange);color:#fff;font-size:1.4rem;font-weight:900}.hallasan-field-title h3{font-size:1.55rem;margin:0}.hallasan-field-title p{margin:.35rem 0 0;color:#526158}.hallasan-field-routes ol{list-style:none;margin:0;padding:0}.hallasan-field-routes li{position:relative;display:grid;grid-template-columns:2.5rem 1fr;gap:.15rem .8rem;padding:0 0 1.5rem}.hallasan-field-routes li:not(:last-child):after{content:"";position:absolute;left:1.15rem;top:2.35rem;bottom:.15rem;width:3px;background:#e95b31}.hallasan-field-routes li>b{grid-row:1/3;display:grid;place-items:center;align-self:start;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--hallasan-ink);color:#fff;z-index:1}.hallasan-field-routes strong{font-size:1.05rem}.hallasan-field-routes small{font-size:.88rem;line-height:1.45;color:#526158}
.hallasan-cutoff-board{background:#f0dfbd}.hallasan-table-wrap{overflow-x:auto;border:3px solid var(--hallasan-ink);background:#fff}.hallasan-cutoff-board table{width:100%;min-width:640px;border-collapse:collapse}.hallasan-cutoff-board th,.hallasan-cutoff-board td{padding:1rem;border:1px solid #9aa59e;text-align:center}.hallasan-cutoff-board thead th{background:var(--hallasan-ink);color:#fff}.hallasan-cutoff-board tbody th{text-align:left;background:#eef2ed}.hallasan-cutoff-board td{font-size:1.1rem;font-weight:900;color:#8f2e1d}.hallasan-cutoff-board small{font-size:.75rem;color:#d2ddd6}
.hallasan-whatif{background:#13271f;color:#fff}.hallasan-whatif-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.hallasan-whatif-grid article{border-top:5px solid var(--hallasan-yellow);background:#20382e;padding:1.4rem}.hallasan-whatif-grid span{font-size:.75rem;font-weight:900;letter-spacing:.08em;color:var(--hallasan-yellow)}.hallasan-whatif-grid h3{font-size:1.35rem;margin:.75rem 0}.hallasan-whatif-grid p{margin:0;color:#d3dfd7;line-height:1.6}
@media(max-width:1100px){.hallasan-transport-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:980px){.hallasan-poster{grid-template-columns:1fr;grid-template-rows:58vh auto 12rem}.hallasan-poster-main{grid-row:auto}.hallasan-poster-copy{grid-row:2}.hallasan-poster-tile{grid-row:3}.hallasan-poster-tile:last-child{display:none}.hallasan-visual-heading{grid-template-columns:1fr 1.5fr}.hallasan-visual-heading>p:last-child{grid-column:2}.hallasan-choice-grid{grid-template-columns:1fr}.hallasan-visual-route,.hallasan-visual-route:nth-child(n){grid-column:span 6}.hallasan-visual-route:last-child{grid-column:4/span 6}.hallasan-scene-grid{grid-template-columns:repeat(2,1fr)}.hallasan-scene-grid img,.hallasan-scene-grid figure:nth-child(2) img,.hallasan-scene-grid figure:nth-child(3) img{height:27rem}.hallasan-solo-day,.hallasan-solo-day.reverse{grid-template-columns:1fr}.hallasan-solo-day.reverse .hallasan-solo-photo,.hallasan-solo-day.reverse .hallasan-solo-copy{grid-column:auto;grid-row:auto}.hallasan-solo-photo{min-height:28rem}.hallasan-steps,.hallasan-check-grid{grid-template-columns:1fr}.hallasan-pick-board{grid-template-columns:1fr}.hallasan-season-grid{grid-template-columns:repeat(2,1fr)}.hallasan-season-grid figure:nth-child(even){transform:none}.hallasan-live-card{grid-template-columns:1fr}}
@media(max-width:700px){.hallasan-transport-grid{grid-template-columns:1fr}}
@media(max-width:640px){.hallasan-poster{grid-template-rows:48vh auto 10rem;min-height:0}.hallasan-poster-copy{padding:2rem 1.15rem}.hallasan-poster-copy h1{font-size:clamp(3rem,17vw,5rem)}.hallasan-fact-ribbon{gap:.3rem}.hallasan-fact-ribbon span{font-size:.72rem}.hallasan-visual-guide .section-pad{padding-left:1.1rem;padding-right:1.1rem}.hallasan-visual-heading,.hallasan-day-plan .hallasan-visual-heading{grid-template-columns:1fr;gap:.8rem}.hallasan-visual-heading>p:last-child{grid-column:auto}.hallasan-trail-map{height:380px;box-shadow:6px 6px 0 var(--hallasan-orange)}.hallasan-route-gallery{display:block}.hallasan-visual-route{margin-bottom:1rem}.hallasan-route-photo{height:15rem}.hallasan-route-copy>p{min-height:0}.hallasan-scene-grid{grid-template-columns:1fr}.hallasan-scene-grid img,.hallasan-scene-grid figure:nth-child(2) img,.hallasan-scene-grid figure:nth-child(3) img{height:70vw;min-height:18rem}.hallasan-solo-photo{min-height:22rem}.hallasan-clock li{grid-template-columns:1fr;gap:.35rem}.hallasan-steps li{padding:1.3rem}.hallasan-chip-grid{grid-template-columns:1fr}.hallasan-chip-grid p{min-height:0}.hallasan-season-grid{grid-template-columns:1fr}.hallasan-season-grid img{height:65vh;max-height:34rem}.hallasan-live-card h2{font-size:3.7rem}}
@media(max-width:980px){.hallasan-now{grid-template-columns:1fr}.hallasan-fact-grid{grid-template-columns:1fr}.hallasan-field-routes{grid-template-columns:1fr}.hallasan-whatif-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.hallasan-now{padding:1.5rem 1.1rem}.hallasan-whatif-grid{grid-template-columns:1fr}.hallasan-field-title{align-items:center}.hallasan-field-routes>article{padding:1.2rem}.hallasan-table-wrap{margin-right:-1.1rem}}
@media(max-width:640px){.hallasan-photo-wall{grid-template-columns:1fr}.hallasan-photo-wall figcaption{min-height:0}.hallasan-photo-open{aspect-ratio:3/2}}

.seoraksan-visual-guide{--hallasan-ink:#14252d;--hallasan-orange:#c64a27;--hallasan-yellow:#e6bf49;--hallasan-cream:#eee7da}
.seoraksan-visual-guide .hallasan-first-trip{background:#e9b844}.seoraksan-visual-guide .hallasan-scenes,.seoraksan-visual-guide .hallasan-day-plan,.seoraksan-visual-guide .hallasan-live-card{background:#14252d}.seoraksan-visual-guide .hallasan-map-board{background:#d6e2e4}.seoraksan-visual-guide .hallasan-season-board{background:#293e49}
.daedunsan-visual-guide{--hallasan-ink:#25261e;--hallasan-orange:#a83d22;--hallasan-yellow:#d6a82d;--hallasan-cream:#eee4d1}
.daedunsan-visual-guide .hallasan-first-trip{background:#d8aa38}.daedunsan-visual-guide .hallasan-scenes,.daedunsan-visual-guide .hallasan-day-plan,.daedunsan-visual-guide .hallasan-live-card{background:#25261e}.daedunsan-visual-guide .hallasan-map-board{background:#d7d9c7}.daedunsan-visual-guide .hallasan-season-board{background:#3a382b}
.seoraksan-visual-guide .hallasan-photo-wall figure,.daedunsan-visual-guide .hallasan-photo-wall figure,.seoraksan-visual-guide .hallasan-photo-policy,.daedunsan-visual-guide .hallasan-photo-policy{color:var(--hallasan-ink)}

/* Shared visual field guide for the full Forest Service 100-mountain collection */
.all-mountain-visual-guide{--hallasan-ink:#162a31;--hallasan-orange:#b94b2f;--hallasan-yellow:#e8bd47;--hallasan-cream:#eee8dc}
.all-mountain-poster{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(20rem,.85fr);grid-template-rows:minmax(32rem,68vh) 13rem;background:var(--hallasan-ink);color:#fff;min-height:48rem}.all-mountain-hero-photo{grid-row:1/3;margin:0;position:relative;overflow:hidden}.all-mountain-hero-photo a,.all-mountain-hero-photo img{display:block;width:100%;height:100%}.all-mountain-hero-photo img{object-fit:cover}.all-mountain-hero-photo:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 62%,#162a3196)}.all-mountain-hero-photo figcaption,.all-mountain-poster-tile figcaption{position:absolute;z-index:1;left:1rem;bottom:1rem;background:#102127dd;padding:.35rem .55rem;font-size:.75rem}.all-mountain-poster-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,4.5rem);min-width:0}.all-mountain-poster-copy h1{font-size:clamp(3.5rem,7vw,7.5rem);letter-spacing:-.065em;line-height:.82;margin:.3rem 0 .4rem;overflow-wrap:anywhere}.all-mountain-korean{font-size:clamp(1.35rem,2.5vw,2.4rem);color:var(--hallasan-yellow);margin:.2rem 0 1.4rem}.all-mountain-poster-copy>p:not(.eyebrow):not(.all-mountain-korean){max-width:34rem;font-size:1.08rem;line-height:1.65}.all-mountain-poster-tile{position:relative;margin:0;overflow:hidden;border-top:1px solid #ffffff42}.all-mountain-poster-tile img{width:100%;height:100%;object-fit:cover}.all-mountain-poster.no-photo{grid-template-columns:1.1fr .9fr;grid-template-rows:minmax(40rem,76vh)}.all-mountain-topo{position:relative;display:grid;place-items:center;overflow:hidden;background-color:#27454b;background-image:radial-gradient(circle at 20% 30%,transparent 0 14%,#e8bd4728 14.4% 14.8%,transparent 15.2% 22%,#ffffff1d 22.4% 22.8%,transparent 23.2%),radial-gradient(circle at 65% 60%,transparent 0 20%,#ffffff24 20.4% 20.8%,transparent 21.2% 32%,#e8bd4728 32.4% 32.8%,transparent 33.2%),linear-gradient(145deg,#162a31,#31565c)}.all-mountain-topo:before,.all-mountain-topo:after{content:"";position:absolute;width:46vw;height:46vw;border:2px solid #ffffff26;border-radius:43% 57% 60% 40%;transform:rotate(25deg)}.all-mountain-topo:after{width:30vw;height:30vw;border-color:#e8bd4750;transform:rotate(-18deg)}.all-mountain-topo span{z-index:1;font-size:clamp(3rem,8vw,8rem);font-weight:900;color:#fff;writing-mode:vertical-rl;letter-spacing:.12em}.all-mountain-map-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}.all-mountain-map-actions a{background:#fff;border:2px solid var(--hallasan-ink);padding:.75rem 1rem;color:var(--hallasan-ink);font-weight:850}.all-mountain-route-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:1.2rem}.all-mountain-route-sequence,.all-mountain-source-copy{background:#fff;border:3px solid var(--hallasan-ink);padding:clamp(1.35rem,3vw,2.4rem)}.all-mountain-route-sequence>span{color:var(--hallasan-orange);font-size:.78rem;font-weight:900;letter-spacing:.09em}.all-mountain-route-sequence h3{font-size:clamp(1.8rem,3.2vw,3.2rem);line-height:1.1;margin:1rem 0 2rem}.all-mountain-source-copy h3{font-size:1.1rem;text-transform:uppercase;letter-spacing:.06em}.all-mountain-source-copy p{line-height:1.7}.all-mountain-photo-gap{background:#f0dca7;text-align:center}.all-mountain-photo-gap h2{font-size:clamp(2.4rem,5vw,5rem);line-height:.95;margin:.5rem auto 1rem;max-width:15ch}.all-mountain-photo-gap p{max-width:48rem;margin:0 auto 1.5rem;line-height:1.7}.all-mountain-first-day{background:#f7f1e5!important}.all-mountain-transport{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.all-mountain-transport article{background:#fff;border:2px solid var(--hallasan-ink);padding:1.4rem;min-width:0}.all-mountain-transport article>b{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--hallasan-orange);color:#fff}.all-mountain-transport h3{font-size:1.45rem}.all-mountain-transport p{line-height:1.65}.all-mountain-transport a{overflow-wrap:anywhere}.all-mountain-season-board{background:#293f47;color:#fff}.all-mountain-season-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.all-mountain-season{display:grid;grid-template-columns:9rem 1fr;min-height:13rem;background:#172d34;border:1px solid #ffffff25}.all-mountain-season>img,.all-mountain-season-mark{width:100%;height:100%;object-fit:cover}.all-mountain-season-mark{display:grid;place-items:center;background:linear-gradient(145deg,#b94b2f,#7f2d21);font-size:2rem;font-weight:900;color:#e8bd47}.all-mountain-season>div:last-child{padding:1.2rem}.all-mountain-season b,.all-mountain-season span{display:block}.all-mountain-season b{color:var(--hallasan-yellow);font-size:1.2rem}.all-mountain-season span{font-weight:800;margin:.25rem 0 .7rem}.all-mountain-season p{color:#d8e2e4;line-height:1.55;margin:0;font-size:.92rem}
@media(max-width:980px){.all-mountain-poster,.all-mountain-poster.no-photo{grid-template-columns:1fr;grid-template-rows:55vh auto 12rem}.all-mountain-hero-photo{grid-row:auto}.all-mountain-topo{min-height:50vh}.all-mountain-route-layout,.all-mountain-transport{grid-template-columns:1fr}.all-mountain-season-grid{grid-template-columns:1fr}}
@media(max-width:640px){.all-mountain-poster,.all-mountain-poster.no-photo{grid-template-rows:48vh auto}.all-mountain-poster-copy{padding:2rem 1.1rem}.all-mountain-poster-copy h1{font-size:clamp(3rem,17vw,5rem)}.all-mountain-poster-tile{display:none}.all-mountain-topo{min-height:48vh}.all-mountain-season{grid-template-columns:7rem 1fr}.all-mountain-season>div:last-child{padding:1rem}.all-mountain-map-actions a{width:100%;text-align:center}}

.hiking-local-link{color:inherit}.hiking-local-link:focus-visible{outline:3px solid #e1b94b;outline-offset:-3px}.hiking-local-details{background:#172b23;color:#f5f8f3}.hiking-local-details h2{font-size:clamp(1.8rem,3vw,2.5rem)}.hiking-local-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.hiking-local-facts article{padding:1.25rem;background:#263e31;border:1px solid #71917b}.hiking-local-facts h3{font-size:1.15rem;color:#ffe1a6}.hiking-local-facts p{font-size:1rem;line-height:1.6}.hiking-local-details a{color:#ffe1a6}.hiking-local-details a:hover,.hiking-local-details a:focus{color:#fff;text-decoration:underline}@media(max-width:650px){.hiking-local-facts{grid-template-columns:1fr}}

/* The photography carries the collection; keep labels readable over solid surfaces. */
.mountain-browser{background:linear-gradient(180deg,#f5f1e5 0%,#eef3ec 42%,#e9efe9 100%)}
.mountain-browser .hiking-collection-intro .eyebrow{color:#885218}
.mountain-browser .hiking-collection-intro h2{max-width:17ch;font-size:clamp(2.3rem,4.5vw,4.35rem);letter-spacing:-.035em}
.mountain-browser .hiking-season-scenes{gap:.9rem;margin-bottom:3rem}
.mountain-browser .hiking-season-scene{min-height:clamp(12rem,18vw,18rem);border:0;border-radius:.4rem;box-shadow:0 14px 26px #10241b20}
.mountain-browser .hiking-season-scene::after{inset:24% 0 0;background:linear-gradient(transparent,#10231bf2)}
.mountain-browser .hiking-season-scene[aria-pressed="true"],.mountain-browser .hiking-season-scene:focus-visible{outline:4px solid #bd812e;outline-offset:3px}
.mountain-browser .mountain-filters{padding:1.2rem;background:#193d30;border-radius:.45rem;box-shadow:0 14px 32px #1e372724}
.mountain-browser .mountain-filters label{color:#fff}.mountain-browser .mountain-search-hint{color:#415d48}
.mountain-browser .mountain-card,.mountain-browser .mountain-card:hover{background:#fff;border:0;border-radius:.35rem;color:#173326;overflow:hidden;box-shadow:0 8px 26px #15322524}
.mountain-browser .mountain-card>a,.mountain-browser .mountain-card>a:visited{color:#173326}
.mountain-browser .mountain-card-image{height:clamp(12rem,18vw,16rem);background:linear-gradient(145deg,#143b30,#51765d);overflow:hidden}
.mountain-browser .mountain-card-image[hidden]{display:none!important}
.mountain-browser .hiking-local-card.no-photo .mountain-card-copy{padding-top:1.75rem}
.mountain-browser .photo-coming-soon{font-size:.95rem;font-weight:700;color:#37674a;margin:1rem 0}
.hiking-intro .photo-coming-soon{font-size:1rem;font-weight:700;color:#d9eacb}
.hiking-intro.no-photo{grid-template-columns:minmax(0,1fr)}
.hiking-course-map{background:#d8e2d6;color:#172e25}
.hiking-course-heading{max-width:65rem;margin-bottom:1.5rem}
.hiking-course-heading h2{font-size:clamp(1.9rem,3.7vw,3rem);line-height:1.15;margin:.4rem 0}
.hiking-course-heading p,.hiking-course-sequence p{font-size:1rem;line-height:1.6}
.hiking-course-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(18rem,1fr);gap:1.25rem;align-items:stretch}
.hiking-course-layout iframe{display:block;width:100%;height:540px;min-height:360px;border:4px solid #1e4437;box-sizing:border-box;background:#e7eee8}
.hiking-course-layout .hallasan-trail-map{width:100%;height:540px;box-sizing:border-box;box-shadow:none}
.hiking-course-sequence{background:#fff;color:#19352a;padding:clamp(1.1rem,2.2vw,1.8rem);min-width:0}
.hiking-course-sequence h3{font-size:1.45rem;margin:0 0 1rem}
.hiking-course-sequence ol{list-style:none;padding:0;margin:0;display:grid;gap:.55rem}
.hiking-course-sequence li{display:flex;align-items:flex-start;gap:.85rem;border-bottom:1px solid #dbe7dd;padding:.5rem 0}
.hiking-course-sequence li>span{display:grid;place-items:center;flex:0 0 2rem;height:2rem;border-radius:50%;background:#1b5540;color:white;font-weight:800}
.hiking-course-sequence li strong{display:block;font-size:1rem;line-height:1.4}
.hiking-course-sequence li a{display:inline-block;color:#165b3b;font-weight:700;font-size:.9rem;margin-top:.25rem}
.hiking-course-sequence .map-links a{color:#165b3b}
@media(max-width:900px){.hiking-course-layout{grid-template-columns:minmax(0,1fr)}.hiking-course-layout iframe,.hiking-course-layout .hallasan-trail-map{height:420px}}
.all-mountain-poster.no-photo{display:block;min-height:0}
.all-mountain-poster.no-photo .all-mountain-poster-copy{max-width:66rem}
.all-mountain-season.no-photo{display:block;min-height:0}
.all-mountain-season.no-photo .photo-coming-soon{display:block;margin-top:1rem;color:#e8bd47;font-size:.9rem;font-weight:700}
.mountain-browser .mountain-card-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .3s ease}
@media (prefers-reduced-motion:no-preference){.mountain-browser .mountain-card:hover .mountain-card-image img{transform:scale(1.045)}}
.mountain-browser .mountain-card-image .hiking-season-photo-empty{position:absolute;inset:0;min-height:0;background:#325747}
.mountain-browser .hiking-local-image{min-height:0}.mountain-browser .hiking-local-image>span:not([hidden]){font-size:1rem;line-height:1.5;color:#fff}
.mountain-browser .mountain-photo-count{background:#13372cea;color:#fff;border:0;border-radius:1rem}
.mountain-browser .mountain-card-copy{padding:1.25rem 1.35rem 1rem}.mountain-browser .mountain-card-copy .eyebrow{color:#775013}.mountain-browser .mountain-card-copy h2{color:#152e24;font-size:clamp(1.45rem,2.1vw,1.85rem)}
.mountain-browser .hiking-card-highlight{color:#20523a}.mountain-browser .mountain-card-copy strong{color:#1d6543}.mountain-browser .mountain-card small{color:#3e5e49;padding:.1rem 1.35rem 1rem;font-size:.85rem;line-height:1.45}
.mountain-browser .mountain-card small a{color:#164f36}.mountain-browser .mountain-card-gallery a{color:#205d40}
.hiking-local-details .hiking-local-facts article{border-radius:.35rem}.hiking-local-details .hiking-local-facts article:nth-child(1){background:#254e3e}.hiking-local-details .hiking-local-facts article:nth-child(3){background:#384634}
@media(max-width:650px){.mountain-browser .mountain-filters{padding:1rem}.mountain-browser .mountain-card-image{height:15rem}}
.hiking-official-routes{margin-top:1.4rem;padding:1.2rem 1.4rem;border:1px solid #a5b7a5;border-radius:1rem;background:#f4f8ef;color:#17352c}.hiking-official-routes h3{margin:0 0 .5rem;color:#17352c}.hiking-official-routes p{margin:.3rem 0 .8rem}.hiking-official-routes ol{margin:0 0 1rem;padding-left:1.3rem}.hiking-official-routes li{padding:.35rem 0}.hiking-official-routes li span,.hiking-official-routes small{display:block;color:#28483d}.hiking-official-routes a{color:#075248;font-weight:700;text-decoration:underline;text-underline-offset:3px}.hiking-official-routes small{margin-top:.75rem;line-height:1.5}
.all-mountain-visual-guide .all-mountain-route-layout{grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);align-items:start}.all-mountain-visual-guide .all-mountain-route-sequence,.all-mountain-visual-guide .all-mountain-source-copy{min-width:0;border-width:1px;border-color:#9baeb2;border-radius:.75rem;box-shadow:0 6px 22px #16303512}.all-mountain-visual-guide .all-mountain-route-sequence h3{font-size:clamp(1.5rem,2.4vw,2.3rem);line-height:1.2;margin:.6rem 0 1rem}.all-mountain-route-steps{list-style:none;margin:0 0 1.3rem;padding:0}.all-mountain-route-steps li{display:flex;align-items:center;gap:1rem;border-top:1px solid #d4dcd8;padding:.8rem .15rem;line-height:1.45;overflow-wrap:anywhere}.all-mountain-route-steps li b{flex:none;display:grid;place-items:center;width:2.3rem;height:2.3rem;border-radius:50%;background:#173c39;color:#fff;font-size:.85rem}.all-mountain-route-steps li span{font-size:1.05rem;font-weight:700;color:#152c2d}.all-mountain-visual-guide .all-mountain-source-copy h3{font-size:1.3rem;text-transform:none;letter-spacing:0;color:#173c39}.all-mountain-visual-guide .all-mountain-source-copy a{color:#075d70;text-decoration:underline;text-underline-offset:3px}.all-mountain-visual-guide .all-mountain-route-sequence .hallasan-card-actions{display:flex;flex-wrap:wrap;gap:.75rem}.all-mountain-visual-guide .all-mountain-route-sequence .hallasan-card-actions a{overflow-wrap:anywhere}@media(max-width:980px){.all-mountain-visual-guide .all-mountain-route-layout{grid-template-columns:1fr}}
.all-mountain-recorded-routes{margin-top:1.5rem;padding-top:1.25rem;border-top:2px solid #ccd9d5}.all-mountain-recorded-routes h3{font-size:1.2rem;margin:0 0 .8rem;color:#173c39}.all-mountain-recorded-routes article{padding:1rem 0;border-top:1px solid #d7e0da}.all-mountain-recorded-routes article>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1rem}.all-mountain-recorded-routes article strong{color:#153b37}.all-mountain-recorded-routes article span{font-weight:700;color:#275a4c}.all-mountain-recorded-routes article p{font-size:1rem;line-height:1.7;margin:.5rem 0;color:#253b3a;overflow-wrap:anywhere}.all-mountain-recorded-routes small{display:block;font-size:.875rem;color:#36524e;line-height:1.5}
