html{scroll-padding-top:5.5rem}.skip-link{background:var(--color-surface);border-radius:var(--radius-sm);color:var(--color-primary-active);font-weight:700;left:var(--space-2);padding:var(--space-2) var(--space-3);position:fixed;top:var(--space-2);transform:translateY(-180%);z-index:200}.skip-link:focus{transform:translateY(0)}.topbar{box-shadow:0 2px 14px rgba(23,47,24,.16);min-height:64px;padding:var(--space-3) clamp(var(--space-4),5vw,var(--space-12));position:sticky;top:0;z-index:100}.topbar-row{flex-wrap:nowrap;margin-inline:auto;min-height:40px;position:relative;width:min(100%,1260px)}.topbar-nav{align-items:center;margin-left:auto}.topbar-route-link{align-items:center;background:#d9b56a;border-radius:var(--radius-sm);color:#203c1f;display:inline-flex;font-size:var(--text-sm);font-weight:750;justify-content:center;margin-left:var(--space-5);min-height:38px;padding:var(--space-2) var(--space-4);text-decoration:none;white-space:nowrap}.topbar-route-link:hover{background:#ead18f;color:#203c1f;text-decoration:none}.navi-btn{align-items:center;background:#1d6fb3;border-radius:var(--radius-sm);display:inline-flex;font-size:var(--text-sm);font-weight:700;gap:6px;min-height:38px;padding:var(--space-2) var(--space-4);white-space:nowrap}.navi-btn,.navi-btn:hover{color:#fff;text-decoration:none}.navi-btn:hover{background:#155fa0}.navi-btn svg{flex-shrink:0}.home-main{max-width:1260px;padding-top:clamp(var(--space-5),4vw,var(--space-10))}.search-panel{min-height:0;scroll-margin-top:var(--space-6)}.search-panel h1{max-width:22ch}.route-form{isolation:isolate}.filter-accordion .results-header h2{display:none}.journey-extras{background:#f7f9f1;border:1px solid color-mix(in srgb,var(--color-border) 76%,transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.journey-extras-header{align-items:flex-start;display:flex;gap:var(--space-3);justify-content:space-between}.journey-extras-kicker{color:var(--color-primary);font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;margin-bottom:var(--space-1);text-transform:uppercase}.journey-extras h2{color:var(--color-primary-active);font-size:var(--text-lg);letter-spacing:-.02em}.journey-extras-disclosure,.journey-extras-lede{color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.5}.partner-label{background:hsla(0,0%,100%,.7);border:1px solid color-mix(in srgb,var(--color-border) 80%,transparent);border-radius:var(--radius-full);color:var(--color-text-muted);flex:0 0 auto;font-size:var(--text-xs);font-weight:600;padding:var(--space-1) var(--space-2)}.journey-extras-grid{display:grid;gap:var(--space-2)}.journey-extras .promo-panel{background:#fffefb;border:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);border-radius:var(--radius-sm);box-shadow:none;margin:0;overflow:hidden;padding:0}.journey-extras .promo-panel:before{display:none}.journey-extras .promo-panel>summary{align-items:center;color:var(--color-text);cursor:pointer;display:grid;font-size:var(--text-sm);font-weight:700;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto auto;line-height:1.25;list-style:none;min-height:46px;padding:var(--space-3)}.journey-extras .promo-panel>summary::-webkit-details-marker{display:none}.journey-extras .promo-panel>summary:after{border:1px solid color-mix(in srgb,var(--color-border) 85%,transparent);border-radius:50%;color:var(--color-primary);content:"⌄";display:grid;font-size:1rem;font-weight:500;height:1.4rem;line-height:1;place-items:center;width:1.4rem}.journey-extras .promo-panel[open]>summary{color:var(--color-primary-active);padding-bottom:var(--space-2)}.journey-extras .promo-panel[open]>summary:after{background:var(--color-primary-highlight);transform:rotate(180deg)}.promo-summary-hint{font-weight:600}.journey-extras .promo-panel>p,.promo-summary-hint{color:var(--color-text-muted);font-size:var(--text-xs)}.journey-extras .promo-panel>p{line-height:1.5;margin:0;padding:0 var(--space-3) var(--space-2)}.journey-extras .affiliate-slot{padding:0 var(--space-3) var(--space-3)}.journey-extras-disclosure{margin-top:var(--space-3)}.home-explainer,.home-faq,.home-links{background:#fbfcf7;border:1px solid color-mix(in srgb,var(--color-border) 76%,transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.home-links-lede{color:var(--color-text-muted);margin-bottom:var(--space-4);max-width:65ch}.home-links-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}.home-link-card{background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-border) 60%,transparent);border-radius:var(--radius-md);padding:var(--space-3)}.home-link-card h3{font-size:var(--text-sm);line-height:1.35;margin:0 0 var(--space-1)}.home-link-card h3 a{color:var(--color-primary-active);text-decoration:none}.home-link-card h3 a:focus-visible,.home-link-card h3 a:hover{text-decoration:underline}.home-link-meta{color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.45;margin:0}.home-links-more{font-size:var(--text-sm);margin:var(--space-4) 0 0}.home-explainer h2,.home-faq h2,.home-links h2{color:var(--color-primary-active);font-size:var(--text-lg);letter-spacing:-.02em;margin-bottom:var(--space-3)}.home-explainer-lede{color:var(--color-text-muted);margin-bottom:var(--space-4);max-width:65ch}.home-explainer-steps{color:var(--color-text);display:grid;gap:var(--space-3);line-height:1.5;margin:0 0 var(--space-4);padding-left:1.25em}.home-explainer>p:last-child{color:var(--color-text-muted);max-width:65ch}.home-faq-grid{display:grid;gap:var(--space-2)}.faq-item{background:#fffefb;border:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);border-radius:var(--radius-sm);margin:0;overflow:hidden;padding:0}.faq-item>summary{color:var(--color-text);cursor:pointer;font-size:var(--text-sm);font-weight:700;line-height:1.35;list-style:none;padding:var(--space-3)}.faq-item>summary::-webkit-details-marker{display:none}.faq-item[open]>summary{color:var(--color-primary-active)}.faq-item>p{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.5;margin:0;padding:0 var(--space-3) var(--space-3)}@media (min-width:961px){.home-main{align-items:start;display:grid;gap:var(--space-6);grid-template-areas:"hero hero" "tools content" "explainer explainer" "homeroutes homeroutes" "homeguides homeguides" "seotext seotext" "faq faq";grid-template-columns:264px minmax(0,1fr)}.home-explainer{grid-area:explainer}#home-routes{grid-area:homeroutes}#home-guides{grid-area:homeguides}.home-faq{grid-area:faq}.home-main>.content-page{grid-area:seotext}.content-grid .content-column{display:flex;flex-direction:column;gap:var(--space-6);grid-area:content;min-width:0}.home-main>.search-panel{grid-area:hero;min-height:0;padding:var(--space-6)}.search-panel .hero-visual{height:100%;opacity:.23;width:390px}.search-panel h1{font-size:clamp(1.8rem,2.3vw,2.5rem)}.search-panel .lede{margin-bottom:var(--space-4);max-width:70ch}.route-form{align-items:end;max-width:none;padding:var(--space-3)}.route-form .camper-size-filter{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2);grid-column:1/-1;padding-top:0}.route-form .scope-hint{display:none}.route-form .btn-primary{grid-column:1/-1;padding-inline:var(--space-4);width:100%}.home-main>.content-grid{display:contents}.status{max-width:none}.content-grid,.results-panel{display:contents}.content-grid>.map-panel{background:#eef3e8;margin:0;min-width:0;overflow:hidden;padding:var(--space-3);position:relative}.content-grid .map-sticky-group{position:sticky;top:calc(64px + var(--space-3));z-index:5}.map-panel .route-legend{bottom:calc(var(--space-3) + var(--space-3));left:calc(var(--space-3) + var(--space-3));max-width:62%;position:absolute;z-index:1200}.map-panel .map-hint{border-radius:var(--radius-sm);font-size:var(--text-xs);margin:var(--space-3) 0 0;padding:var(--space-2) var(--space-3)}.content-grid .results-stack{display:flex;flex-direction:column;min-width:0}.content-grid .filter-accordion{background:#f7f9f1;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:block;margin:0;min-width:0;padding:var(--space-4)}.content-grid #rental-filter-accordion{margin-bottom:var(--space-4)}.content-grid .filter-accordion>summary{color:var(--color-primary-active);cursor:pointer;font-family:var(--font-display);font-size:var(--text-base);font-weight:700;line-height:1.25;list-style:none;margin-bottom:var(--space-4)}.content-grid .filter-accordion>summary::-webkit-details-marker{display:none}.content-grid .filter-accordion>summary:before{background:var(--color-primary);border-radius:50%;color:#fff;content:"–";display:inline-grid;font-family:var(--font-body);font-size:14px;height:18px;margin-right:var(--space-2);place-items:center;width:18px}.content-grid .filter-accordion:not([open])>summary:before{content:"+"}.filter-accordion .results-header{border:0;display:block;margin:0;padding:0}.content-grid .header-actions{margin-bottom:var(--space-4)}.content-grid .header-actions .btn-secondary{border-radius:var(--radius-sm);justify-content:center;width:100%}.content-grid .sort-control{display:grid;gap:var(--space-4);margin:0}.content-grid .price-filter{margin:0;padding-bottom:var(--space-4)}.content-grid .price-filter-row{align-items:stretch;flex-direction:column;gap:var(--space-2)}.content-grid .price-filter-row input[type=range]{max-width:none;width:100%}.content-grid .provider-filter,.content-grid .route-filter{display:grid;gap:var(--space-2)}.content-grid .provider-toggle,.content-grid .route-toggle{justify-content:flex-start;padding:var(--space-2)}.content-grid .campsite-feature-filter,.content-grid .stellplatz-feature-filter{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap}.content-grid .campsite-feature-filter .provider-toggle,.content-grid .stellplatz-feature-filter .provider-toggle{display:inline-flex;padding:2px var(--space-2);width:auto}.content-grid .availability-toggle{padding-top:var(--space-2)}.content-grid .sort-control>label{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600}.content-grid .sort-control select{width:100%}.content-grid .campsite-filter-accordion,.content-grid .stellplatz-filter-accordion{margin-bottom:var(--space-4)}.content-grid .results-columns{display:grid;gap:var(--space-4);grid-template-columns:minmax(0,1fr);min-width:0}.content-grid .results-column-rentals{min-width:0}.content-grid .results-columns:has(#campsite-panel:not([hidden])):has(#stellplatz-panel:not([hidden])):not(:has(.results-column-rentals:not([hidden]))),.content-grid .results-columns:has(.results-column-rentals:not([hidden])):has(#campsite-panel:not([hidden])):not(:has(#stellplatz-panel:not([hidden]))),.content-grid .results-columns:has(.results-column-rentals:not([hidden])):has(#stellplatz-panel:not([hidden])):not(:has(#campsite-panel:not([hidden]))){align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.content-grid .results-columns:has(.results-column-rentals:not([hidden])):has(#campsite-panel:not([hidden])):has(#stellplatz-panel:not([hidden])){align-items:start;grid-template-columns:repeat(3,minmax(0,1fr))}.content-grid .results-columns:has(.results-column-rentals:not([hidden])):has(#campsite-panel:not([hidden])) .results-column-rentals .results-list,.content-grid .results-columns:has(.results-column-rentals:not([hidden])):has(#stellplatz-panel:not([hidden])) .results-column-rentals .results-list{grid-template-columns:minmax(0,1fr)}.content-grid .campsite-panel{border-top:0;margin:0;min-width:0;padding:0}.content-grid .campsite-panel .campsite-panel-title,.content-grid .results-column-rentals .results-column-title{margin-top:0}.content-grid .results-list{align-content:start;display:grid;gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;min-width:0;padding:0}.content-grid .station-card{min-height:0}.content-grid .station-image-wrap{height:112px;width:148px}.content-grid .empty-state{margin:0;min-height:220px}.content-grid .affiliate-note{display:none}.home-main>.journey-extras{align-self:start;grid-area:tools;margin:0;min-width:0;padding:var(--space-4)}.journey-extras-header{display:block;margin-bottom:var(--space-3)}.journey-extras h2{font-size:var(--text-base)}.journey-extras-lede{margin-top:var(--space-2)}.partner-label{display:inline-block;margin-top:var(--space-3)}.journey-extras .promo-panel>summary{min-height:42px;padding:var(--space-2) var(--space-3)}.journey-extras .affiliate-slot,.journey-extras .promo-panel>p{padding-inline:var(--space-3)}}@media (min-width:1101px){.sort-control select{min-height:40px}.availability-toggle{padding-top:var(--space-2)}.provider-filter,.route-filter{align-items:stretch}.provider-filter legend,.route-filter legend{margin-bottom:var(--space-1)}.provider-toggle,.route-toggle{border-radius:var(--radius-sm)}}@media (max-width:960px){.topbar-row{gap:var(--space-3)}.topbar-route-link{margin-left:auto}.home-main>.search-panel{order:1}.home-main>.content-grid{order:2}.home-main>.journey-extras{order:3}.home-main>.home-explainer{order:4}.home-main>#home-routes{order:5}.home-main>#home-guides{order:6}.home-main>.home-faq{order:7}.home-main>.content-page{order:8}.home-explainer,.home-faq,.home-links,.journey-extras{padding:var(--space-4)}.journey-extras-header{margin-bottom:var(--space-3)}.journey-extras-grid{grid-template-columns:1fr}.filter-accordion{margin-top:var(--space-4)}.filter-accordion>summary{cursor:pointer;font-family:var(--font-display);font-weight:700}}@media (max-width:720px){.topbar{min-height:auto;position:static}.navi-btn span{display:none}.navi-btn{min-height:36px;padding-inline:var(--space-3)}.menu-toggle{color:#f9f6eb;display:inline-flex;margin-left:auto}.menu-toggle:hover{color:#d9b56a}.menu-toggle svg.menu-toggle-icon-close,.menu-toggle[aria-expanded=true] svg.menu-toggle-icon-open{display:none}.menu-toggle[aria-expanded=true] svg.menu-toggle-icon-close{display:block}.topbar-nav{align-items:stretch;background:#264420;border-top:1px solid hsla(47,54%,95%,.18);box-shadow:0 14px 28px rgba(23,47,24,.28);display:none;flex-direction:column;gap:var(--space-1);left:0;margin:0;max-height:70vh;overflow-y:auto;padding:var(--space-3) var(--space-4) var(--space-4);position:absolute;right:0;text-align:left;top:100%;z-index:1300}.topbar-nav.is-open{display:flex}.topbar-nav a{border-radius:var(--radius-sm);padding:var(--space-3) var(--space-2)}.topbar-nav a:active,.topbar-nav a:hover{background:hsla(47,54%,95%,.1);text-decoration:none}.topbar-nav-extra{border-top:1px solid hsla(47,54%,95%,.18);display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-2);padding-top:var(--space-3)}.topbar-nav-extra-title{color:hsla(47,54%,95%,.6);font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;margin:0 0 var(--space-1);padding:0 var(--space-2);text-transform:uppercase}.topbar-nav-share{border-top:1px solid hsla(47,54%,95%,.18);display:block;margin-top:var(--space-2);padding-top:var(--space-3)}.share-buttons{display:flex;gap:var(--space-2);padding:0 var(--space-2)}.share-buttons .share-btn{align-items:center;background:hsla(47,54%,95%,.1);border-radius:var(--radius-full);color:#f9f6eb;display:flex;height:38px;justify-content:center;width:38px}.share-buttons .share-btn:hover{background:hsla(47,54%,95%,.18);color:#d9b56a}.share-buttons .share-btn svg{fill:currentColor;height:18px;width:18px}.topbar-route-link{margin-left:0;min-height:36px;padding-inline:var(--space-3)}.journey-extras .promo-panel>summary{padding:var(--space-3)}.search-panel .lede{margin-bottom:var(--space-4)}.route-form .camper-size-filter{gap:var(--space-1)}.route-form .scope-hint{display:none}.results-panel{padding:var(--space-4)}.results-header{align-items:stretch}.header-actions{width:100%}.header-actions .btn-secondary{justify-content:center;width:100%}.map-hint{line-height:1.45}}@media (max-width:420px){.topbar-row:has(.navi-btn,.curator-toggle-wrap) .brand{position:relative}.topbar-row:has(.navi-btn,.curator-toggle-wrap) .brand span{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.topbar-row:has(.navi-btn,.curator-toggle-wrap) .brand a:after{content:"";inset:0;position:absolute}}@media (max-width:360px){.topbar-row{gap:var(--space-2)}.topbar-route-link{padding-inline:var(--space-2)}}