/* Shared finishing layer: existing components, clearer hierarchy and usable targets. */
.home-vision{min-height:580px}.home-vision h1{font-family:Georgia,serif;font-weight:600;letter-spacing:-.04em;max-width:780px;font-size:clamp(42px,5.8vw,76px);line-height:1.03}.home-vision .heroinner>p:not(.eyebrow){max-width:650px}.home-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.home-vision .home-actions .button{min-height:52px;background:#fbf8ee;color:#183d2d}.home-vision .home-actions .primary{background:#f0eee0;color:#173c2a}.home-vision .home-note{font-size:13px!important;margin-top:24px;opacity:.85}.home-discover .search{max-width:900px;margin:22px 0 16px}.home-quick{display:flex;flex-wrap:wrap;gap:9px}.home-quick a{text-decoration:none}.home-world{display:grid;grid-template-columns:1fr 1fr;gap:24px}.home-product-panel{padding:32px;border:1px solid #dbe1d5;border-radius:22px;background:#fff;overflow:hidden}.home-product-panel h2{font-family:Georgia,serif;font-size:clamp(26px,2.8vw,38px);line-height:1.16;letter-spacing:-.025em;margin:10px 0 18px}.home-product-panel>p:not(.eyebrow){color:#5a695a;line-height:1.7}.home-report-fields{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e1e5dc;border-radius:12px;margin:22px 0;overflow:hidden}.home-report-fields>span{padding:16px;border-bottom:1px solid #e1e5dc}.home-report-fields small{display:block;color:#6b7867;font-size:11px;margin-top:6px}.home-companion{display:flex;gap:14px;background:#f0f3e9;padding:20px;margin-top:26px;border-radius:14px}.home-companion>i{font-size:26px}.home-companion p{font-size:14px}.home-community-actions{display:grid;gap:12px;margin:24px 0}.home-community-actions a{justify-content:space-between}.home-community-photo{width:100%;height:230px;object-fit:cover;border-radius:14px}.home-remember{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:18px 40px;background:#edf1e6}.home-real-stats{display:flex;align-items:center;justify-content:space-around;gap:16px}.home-real-stats a{display:flex;flex-direction:column;text-decoration:none;color:#204731}.home-real-stats b{font-size:38px}.home-real-stats span{font-size:12px}.home-last{text-align:center;padding-block:65px}.home-last p{font:italic 30px Georgia;color:#37583c}.destination-menu{display:grid;grid-template-columns:1fr 1fr;gap:10px}.destination-menu a{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:14px;border:1px solid #dde4d6;border-radius:12px;text-decoration:none;color:#254a34;font-weight:600}.destination-menu a:hover{background:#eff3e9}.nav-more{display:none}.button,.chip,.iconbutton,input,select,textarea{touch-action:manipulation}.button,.iconbutton{min-height:44px}.chip{min-height:38px}.field input,.field select,.field textarea{font-size:16px!important;max-width:100%;min-width:0}.check{min-height:44px;align-items:center}.check input{flex-shrink:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #a67339;outline-offset:3px}main h1:focus{outline:none}dialog{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}dialog .modalhead{position:sticky;top:-28px;background:#fff;z-index:2;padding-block:12px}.community-tabs,.adventure-tabs,.tabs{overflow-x:auto;max-width:100%;scrollbar-width:thin}.community-tabs button,.adventure-tabs button,.tabs button{flex-shrink:0;min-height:44px}.listcard img,.planner-trail img,.group-card-cover img{aspect-ratio:4/3;object-fit:cover}.empty,.trip-empty,.dog-empty,.group-empty{overflow-wrap:anywhere}.live-page [hidden]{display:none!important}.mobile-more{border:0;background:none;color:#526849;font:inherit;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px}.mobile-more i{font-size:23px}.mobile-more span{font-size:11px!important}.mapnotice{overflow-wrap:anywhere}#mobile-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important}#mobile-nav a,#mobile-nav button{min-height:54px}.starter-notice{padding:14px 18px;border-left:3px solid #a97e48;background:#f6f2e7;font-size:13px;line-height:1.5;border-radius:0 10px 10px 0;margin:16px 0}
@media(max-width:1100px) and (min-width:701px){.navlinks{display:none!important}.nav-more{display:inline-flex}.navright{margin-left:auto}.nav .brand{white-space:nowrap}}
@media(max-width:700px){.home-vision{min-height:530px;background-position:62% center}.home-vision .heroinner{padding-block:45px}.home-vision .heroinner>p:not(.eyebrow){font-size:16px}.home-vision .home-actions{display:grid;max-width:340px}.home-world{grid-template-columns:1fr;gap:16px}.home-product-panel{padding:24px}.home-remember{grid-template-columns:1fr}.home-real-stats{justify-content:space-between}.home-real-stats b{font-size:30px}.home-discover.section{padding-block:32px}.home-discover .search{flex-wrap:wrap}.home-discover .searchfield{min-width:100%}.home-discover .search .button{width:100%;justify-content:center}.home-last{padding-block:40px}.destination-menu{grid-template-columns:1fr}.nav-more{display:none}.button{min-height:46px}dialog{width:calc(100% - 20px);max-width:100%;padding:20px;border-radius:20px;max-height:calc(100dvh - 24px)}dialog .modalhead{top:-20px}.formactions{position:sticky;bottom:-20px;background:#fff;padding-block:14px;z-index:1}.filter-grid,.community-form-grid,.dog-form-grid{grid-template-columns:1fr!important}.profile-stats{flex-wrap:wrap;gap:16px}.live-controls .button{font-size:14px}.sectionhead{flex-wrap:wrap;gap:16px}.groups-page,.trip-page,.adventures-page{padding-bottom:32px}#mobile-nav span{font-size:10px!important}.navright .button{min-height:42px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.side-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;text-align:center}.side-stats>div{min-width:0}.side-stats b{line-height:1.45;overflow-wrap:anywhere}.side-stats small{display:block;margin-top:5px}
.planner-hero h1,.trip-cover h1,.trip-collection-card h2,.trip-day>h2,.planner-trail h3,.adventures-hero h1{font-family:inherit}

/* Source-mapped trail headers: real terrain at geographic scale. */
.detailhero.terrain-hero{height:clamp(340px,48vw,540px);isolation:isolate;background:#e4eadb}
.terrain-hero #detailmap{height:100%;width:100%;border-radius:0;z-index:0}
.terrain-hero .back,.terrain-hero .detailactions{z-index:500;top:18px}
.terrain-hero .leaflet-top{top:82px}
.terrain-hero .leaflet-control-layers{border-radius:12px;border:1px solid #d8dfd3}
.terrain-hero .leaflet-control-scale{margin-left:18px;margin-bottom:12px}
.terrain-hero + .detail-layout .sidepanel{margin-top:0}
@media(max-width:700px){.detailhero.terrain-hero{height:380px}.terrain-hero .back{left:12px}.terrain-hero .detailactions{right:12px;gap:6px}.terrain-hero .button{padding:10px 12px}.terrain-hero .leaflet-control-attribution{font-size:9px}}

.wag-map-expanded{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:none!important;z-index:5000!important;border-radius:0!important}
body:has(.wag-map-expanded){overflow:hidden}
body:has(.wag-map-expanded) #header,body:has(.wag-map-expanded) #mobile-nav{visibility:hidden}
.detailhero:has(.wag-map-expanded),.route-experience:has(.wag-map-expanded){isolation:auto!important;overflow:visible!important;z-index:5000}
.wag-map-fullscreen{background:white;color:#173e30;box-shadow:0 2px 10px #173e3020;font-size:12px;min-height:44px}
.mobile-preferences{margin:10px 16px;border:1px solid #d8e1d3;border-radius:14px;background:#fff;padding:0 14px}
.mobile-preferences>summary{padding:15px 0;font-weight:600;cursor:pointer;min-height:48px;color:#173e30}
.mobile-preferences[open]>summary{border-bottom:1px solid #e4eadf}
.mobile-preferences #chips,.mobile-preferences #dog-match{margin:12px 0}

.licensing-page{max-width:900px}.licensing-page>section{margin:32px 0}.license-entry{border:1px solid #dbe3d6;border-radius:16px;background:white;padding:22px;margin:14px 0}.license-entry p{line-height:1.65;color:#536153}.license-entry h3{margin:0 0 12px}.licensing-page h1{font-size:clamp(30px,5vw,46px)}

.mapnotice:empty{display:none}
