:root{--groen:#3f7d6b;--groen-d:#2f6455;--zand:#f0eeea;--zand-d:#e3ddd2;--klei:#a8826a;--lei:#2d4156;--tekst:#1e1e1e;--grijs:#5b6168;--r:15px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Nunito Sans",system-ui,sans-serif;font-size:1.08rem;line-height:1.65;color:var(--tekst);background:#fff}
h1,h2,h3{font-family:Montserrat,system-ui,sans-serif;line-height:1.2;color:var(--lei);margin:0 0 .6em}
h2{font-size:clamp(1.6rem,3vw,2.2rem)}a{color:var(--groen-d)}img{max-width:100%;display:block}
.container{width:min(1140px,92%);margin:auto}.section{padding:72px 0}.zand{background:var(--zand)}
.eyebrow{font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;color:var(--klei)}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;z-index:2000;background:#fff;padding:8px}
/* header */
.site-header{position:fixed;top:0;left:0;right:0;z-index:1030;transition:background .5s,box-shadow .5s;background:linear-gradient(rgba(0,0,0,.35),transparent)}
.site-header .bar{display:flex;align-items:center;justify-content:space-between;height:76px}
.logo img{height:42px;width:auto}.logo .dark{display:none}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:28px;align-items:center}
.nav a,.nav button.dd{color:#fff;text-decoration:none;font-weight:700;font-size:.98rem;background:none;border:0;font-family:inherit;cursor:pointer;padding:6px 0}
.nav a:hover,.nav a[aria-current]{border-bottom:2px solid currentColor}
.has-dd{position:relative}.dd-menu{display:none!important;position:absolute;top:100%;left:-16px;background:#fff;border-radius:12px;box-shadow:0 8px 18px 2px rgba(45,65,86,.12);padding:10px 0;min-width:200px;flex-direction:column;gap:0!important}
.has-dd:hover .dd-menu,.has-dd.open .dd-menu{display:flex!important}.dd-menu a{color:var(--tekst)!important;display:block;padding:7px 18px;font-weight:600}
.dd-menu .soon{color:var(--grijs)!important;font-weight:400}
.site-header.scrolled,.site-header.solid{background:#fff;box-shadow:0 1px 10px rgba(0,0,0,.15)}
.scrolled .nav>ul>li>a,.scrolled .nav button.dd,.solid .nav>ul>li>a,.solid .nav button.dd{color:var(--tekst)}
.scrolled .logo .light,.solid .logo .light{display:none}.scrolled .logo .dark,.solid .logo .dark{display:block}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer}
.burger span{display:block;height:2px;background:#fff;margin:6px 8px;transition:.3s}.scrolled .burger span,.solid .burger span{background:var(--tekst)}
@media(max-width:860px){.burger{display:block}.nav{position:fixed;inset:76px 0 auto 0;background:#fff;display:none;box-shadow:0 10px 20px rgba(0,0,0,.1);max-height:calc(100vh - 76px);overflow:auto}
.nav.open{display:block}.nav ul{flex-direction:column;align-items:stretch;gap:0;padding:10px 4%}.nav a,.nav button.dd{color:var(--tekst)!important;display:block;padding:12px 0;width:100%;text-align:left}
.dd-menu{position:static;box-shadow:none;padding:0 0 0 14px}.has-dd:hover .dd-menu{display:none!important}.has-dd.open .dd-menu{display:flex!important}}
/* hero */
.hero{position:relative;height:78vh;min-height:480px;display:grid;place-items:center;text-align:center;color:var(--zand);overflow:hidden}
.hero.small{height:52vh;min-height:360px}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(78%) contrast(115%)}
.hero .inner{position:relative;max-width:760px;padding:0 20px}.hero h1{color:var(--zand);font-size:clamp(2rem,5vw,3.4rem);text-shadow:1px 1px 10px rgba(0,0,0,.5)}
.hero p{font-size:1.2rem;text-shadow:1px 1px 8px rgba(0,0,0,.6)}
/* buttons */
.btn{display:inline-block;padding:11px 24px;border-radius:999px;border:2px solid var(--groen-d);color:var(--groen-d);text-decoration:none;font-weight:700;transition:.3s}
.btn:hover{background:var(--groen-d);color:#fff}.btn.light{border-color:var(--zand);color:var(--zand)}.btn.light:hover{background:var(--zand);color:var(--lei)}
/* grids/cards */
.grid{display:grid;gap:26px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}@media(max-width:860px){.intro-grid{grid-template-columns:1fr}}
.intro-grid img{border-radius:var(--r);aspect-ratio:4/3;object-fit:cover}
.pill{display:inline-flex;gap:8px;flex-wrap:wrap;padding:0;list-style:none}.pill li{background:var(--zand);border-radius:999px;padding:6px 14px;font-weight:600;font-size:.95rem}
.card{position:relative;border-radius:var(--r);overflow:hidden;background:#fff;box-shadow:0 6px 18px rgba(45,65,86,.08);display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .4s}
a.card:hover{transform:translateY(-4px)}.card img{aspect-ratio:4/3;object-fit:cover;width:100%}
.card .body{padding:18px 20px 22px}.card h3{margin:0 0 .3em;font-size:1.2rem}.card p{margin:0;color:var(--grijs);font-size:.98rem}
.card.featured{grid-column:span 2}.card.featured img{aspect-ratio:16/9}@media(max-width:600px){.card.featured{grid-column:auto}}
.badge{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.92);color:var(--lei);font-weight:700;font-size:.8rem;padding:4px 12px;border-radius:999px}
.badge.soon{background:var(--lei);color:#fff}.card.soon img{filter:grayscale(45%) brightness(95%)}
.card.noimg{background:var(--zand);min-height:120px}
.tip{background:#fff;border-radius:var(--r);padding:24px;border:1px solid var(--zand-d)}.tip h3{font-size:1.1rem}
.tip .ico{width:42px;height:42px;border-radius:50%;background:var(--zand);display:grid;place-items:center;margin-bottom:12px;color:var(--groen-d)}
.disclaimer{border-left:4px solid var(--klei);background:#faf8f4;padding:16px 20px;border-radius:0 var(--r) var(--r) 0;font-size:.97rem;color:#3c3f44;margin-top:32px}
.feiten{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;padding:0;list-style:none}
.feiten li{background:var(--zand);border-radius:var(--r);padding:16px 18px}.feiten strong{display:block;color:var(--lei)}
.prose{max-width:760px}.example{background:#fff6e0;border:1px dashed var(--klei);padding:12px 16px;border-radius:10px;font-weight:600}
.crumbs{font-size:.92rem;color:var(--grijs);margin-bottom:20px}
/* footer */
.site-footer{background:var(--lei);color:#dfe4ea;padding:60px 0 24px;font-size:.96rem}
.site-footer a{color:#fff}.site-footer h3{color:#fff;font-size:1.05rem}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:6px 0}
.fcols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}@media(max-width:760px){.fcols{grid-template-columns:1fr}}
.site-footer .disclaimer{background:rgba(255,255,255,.07);color:#dfe4ea;border-color:var(--klei)}
.copy{border-top:1px solid rgba(255,255,255,.15);margin-top:36px;padding-top:18px;font-size:.88rem}
.grid.home4{grid-template-columns:repeat(4,1fr)}@media(max-width:980px){.grid.home4{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.grid.home4{grid-template-columns:1fr}}
.card.noimg .body{padding-top:52px}

/* Julian Alps roadtrip */
.jaa-gebied{display:grid;grid-template-columns:300px 1fr;gap:28px;margin-top:40px;align-items:start}
.jaa-gebied img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}
.jaa-stops{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.jaa-stops li{background:var(--zand);border-radius:var(--r);padding:14px 18px}
.jaa-stops h4{margin:0 0 .3em;font-size:1.05rem}.jaa-stops p{margin:0;color:var(--grijs);font-size:.95rem}
.badge.sup{position:static;display:inline-block;background:var(--groen,#159875);color:#fff;font-size:.7rem;padding:2px 8px;border-radius:20px;vertical-align:middle}
@media(max-width:700px){.jaa-gebied{grid-template-columns:1fr}}

.stopfoto{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px;margin-bottom:10px;display:block}
.kampfoto{width:100%;max-height:380px;object-fit:cover;border-radius:var(--r);margin:8px 0 32px;display:block}
.fotogrid figure{margin:0;background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:0 6px 18px rgba(45,65,86,.08)}
.fotogrid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.fotogrid figcaption{padding:14px 18px;color:var(--grijs);font-size:.95rem}.fotogrid strong{display:block;color:var(--tekst,#222)}
.credits{width:100%;border-collapse:collapse;font-size:.95rem}.credits th,.credits td{text-align:left;padding:10px;border-bottom:1px solid #e6e2da;vertical-align:middle}
.jaa-stops{align-items:start}
.site-footer .fcols>div:nth-child(2) ul{columns:2;column-gap:28px}.site-footer .fcols>div:nth-child(2) li{break-inside:avoid}

/* Taalkeuze NL | DE */
.nav li.lang{font-size:.85rem;font-weight:700;color:#fff;opacity:.95}.nav li.lang a{font-size:.85rem;padding:2px 4px;border:0}
.nav li.lang .on{padding:2px 4px;border:1px solid currentColor;border-radius:4px}
.nav li.lang a:hover{text-decoration:underline;border:0}
.scrolled .nav li.lang,.solid .nav li.lang,.scrolled .nav li.lang a,.solid .nav li.lang a{color:var(--tekst)}
@media(max-width:860px){.nav li.lang{color:var(--tekst);padding:12px 0}.nav li.lang a{display:inline;width:auto;padding:2px 4px}}

.pill a{color:inherit;text-decoration:none;display:inline-block}.pill li:has(a){padding:0}.pill li a{padding:6px 14px;border-radius:999px;transition:background .25s,color .25s}.pill li a:hover,.pill li a:focus-visible{background:var(--groen-d);color:#fff}.pill li a::after{content:" →";font-weight:700}
a.tip.linktip{display:block;position:relative;text-decoration:none;color:inherit;transition:transform .3s,box-shadow .3s,border-color .3s}a.tip.linktip:hover,a.tip.linktip:focus-visible{transform:translateY(-3px);box-shadow:0 8px 20px rgba(45,65,86,.12);border-color:var(--groen-d)}a.tip.linktip h3{color:var(--groen-d)}a.tip.linktip .more{position:absolute;right:20px;top:22px;font-weight:800;color:var(--groen-d)}a.card:focus-visible,a.tip.linktip:focus-visible,.pill a:focus-visible{outline:3px solid var(--klei);outline-offset:3px}
.section.seizoen{background:var(--lei);color:#fff}.section.seizoen .eyebrow,.section.seizoen h2{color:#fff}.section.seizoen .prose{color:#e8eef3}.section.seizoen a.tip.linktip{color:var(--lei)}.section.seizoen .btn{border-color:var(--zand);color:var(--zand)}.section.seizoen .btn:hover{background:var(--zand);color:var(--lei)}
/* v4 (okt 2026): menu, inhoudsopgave, in het kort, FAQ, tabellen, filter, paklijst, routes */
.dd-menu{min-width:250px}.nav ul{gap:22px}.nav a.zoek span{font-size:1.15em;margin-right:2px}
@media(min-width:861px){.has-dd:hover .dd-menu.cols,.has-dd.open .dd-menu.cols{display:grid!important;grid-template-columns:1fr 1fr;min-width:430px}.dd-menu.cols li:first-child{grid-column:1/-1;border-bottom:1px solid var(--zand-d);margin-bottom:4px}}
.toc{position:sticky;top:76px;z-index:900;background:#fff;border-bottom:1px solid var(--zand-d);box-shadow:0 4px 10px rgba(45,65,86,.05)}
.toc ul{list-style:none;margin:0;padding:10px 0;display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;white-space:nowrap}
.toc a{display:inline-block;padding:5px 13px;border-radius:999px;background:var(--zand);text-decoration:none;color:var(--lei);font-weight:700;font-size:.9rem}
.toc a:hover,.toc a.on{background:var(--groen-d);color:#fff}
section[id],details[id]{scroll-margin-top:140px}
.kort-sec{padding:0 0 40px}.kort{background:var(--zand);border-radius:var(--r);padding:26px 28px;border-left:6px solid var(--groen)}
.kort dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px 26px;margin:0}
.kort dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--klei)}.kort dd{margin:2px 0 0;font-weight:700;color:var(--lei)}
.kort dd small{font-weight:400;color:var(--grijs)}.note{font-size:.88rem;color:var(--grijs);margin:16px 0 0}
details.fold>summary,details.faq-q>summary,details.land-det>summary{cursor:pointer;list-style:none;font-weight:700;color:var(--groen-d)}
details>summary::-webkit-details-marker{display:none}
details.fold>summary{display:inline-block;padding:9px 20px;border:2px solid var(--groen-d);border-radius:999px;margin-bottom:20px}details.fold[open]>summary{background:var(--groen-d);color:#fff}
.faq{max-width:820px}details.faq-q{background:#fff;border:1px solid var(--zand-d);border-radius:12px;padding:14px 18px;margin-bottom:10px}
details.faq-q>summary{color:var(--lei);position:relative;padding-right:28px}details.faq-q>summary::after,details.land-det>summary::after{content:"+";position:absolute;right:0;top:-2px;font-size:1.3rem;color:var(--groen-d)}
details.faq-q[open]>summary::after,details.land-det[open]>summary::after{content:"–"}details.faq-q p{margin:10px 0 0}
.land-list{max-width:900px}details.land-det{border-bottom:1px solid var(--zand-d);padding:14px 0}
details.land-det>summary{position:relative;padding-right:30px;display:flex;flex-direction:column;color:var(--lei)}details.land-det>summary span{font-weight:400;color:var(--grijs);font-size:.95rem}
.det-body{padding:8px 0 0}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.bt{border-collapse:separate;border-spacing:3px;min-width:760px;font-size:.92rem}
table.bt th{text-align:left;font-weight:700;padding:4px 8px;white-space:nowrap}table.bt thead th{text-align:center;color:var(--lei)}
table.bt tbody th{position:sticky;left:0;background:#fff;z-index:1}table.bt td{text-align:center;border-radius:6px;padding:6px 0;width:6.5%}
.b2{background:var(--groen);color:#fff}.b1{background:#bcd8cd;color:var(--lei)}.b0{background:#eceae6;color:#8a8f95}
.legend{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:18px;font-size:.95rem}.sw{display:inline-block;width:28px;text-align:center;border-radius:6px;margin-right:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}abbr{text-decoration:none}
.filter{background:var(--zand);border-radius:var(--r);padding:22px 24px;margin-bottom:28px}.filter h2{font-size:1.4rem}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{font:inherit;font-weight:700;font-size:.92rem;border:2px solid var(--groen-d);background:#fff;color:var(--groen-d);border-radius:999px;padding:6px 14px;cursor:pointer}
.chip[aria-pressed=true]{background:var(--groen-d);color:#fff}.chip[aria-pressed=true]::before{content:"✓ "}.fcount{font-weight:700;margin:12px 0 0}
.card[hidden]{display:none}
.paklijst{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px;margin-top:22px}
.pk-cat{border:1px solid var(--zand-d);border-radius:var(--r);padding:16px 20px;margin:0}.pk-cat legend{font-family:Montserrat,sans-serif;font-weight:700;color:var(--lei);padding:0 6px}
.pk-cat label{display:flex;gap:10px;align-items:flex-start;padding:5px 0;cursor:pointer}.pk-cat input{width:20px;height:20px;margin-top:3px;accent-color:var(--groen-d);flex:none}
.rlabels{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-wrap:wrap;gap:10px}.rlabels li{background:var(--zand);border-radius:10px;padding:8px 14px;font-weight:700;color:var(--lei);font-size:.95rem}
.rlabels span{display:block;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--klei)}
.route-card .rlabels{margin:10px 0 0}.route-card .rlabels li{padding:5px 10px;font-size:.85rem}
ol.dagen{list-style:none;padding:0;margin:0;border-left:3px solid var(--groen);max-width:820px}ol.dagen li{position:relative;padding:4px 0 18px 26px}
ol.dagen li::before{content:"";position:absolute;left:-9px;top:10px;width:15px;height:15px;border-radius:50%;background:var(--groen);border:3px solid var(--zand)}
.dag{font-weight:800;color:var(--lei);font-family:Montserrat,sans-serif}ol.dagen p{margin:2px 0 0}
.insp-list{list-style:none;padding:0;display:grid;gap:22px;max-width:900px}.insp{display:grid;grid-template-columns:220px 1fr;gap:22px;background:#fff;border:1px solid var(--zand-d);border-radius:var(--r);overflow:hidden}
.insp img{width:100%;height:100%;object-fit:cover}.insp>div{padding:16px 18px 6px 0}.insp h3 a{text-decoration:none}.insp .meta{font-weight:700;color:var(--klei);font-size:.92rem}
@media(max-width:640px){.insp{grid-template-columns:1fr}.insp>div{padding:0 18px 10px}.insp img{aspect-ratio:16/9}.kort{padding:20px}}
.pf{margin-top:20px;--pagefind-ui-primary:#2f6455;--pagefind-ui-font:"Nunito Sans",system-ui,sans-serif}
@media print{.site-header,.site-footer,.toc,.noprint,.hero,.skip{display:none!important}body{font-size:11pt}.section{padding:8px 0}
 .paklijst{grid-template-columns:1fr 1fr;gap:10px}.pk-cat{break-inside:avoid;padding:8px 12px}.zand{background:none}a{color:#000;text-decoration:none}#verplicht{break-before:page}}
.dd-menu li{text-align:left}button.btn{font:inherit;font-weight:700;background:#fff;cursor:pointer}
/*act*/.act-filter{margin:18px 0}.act-group h3{margin:22px 0 10px}.act-item h4{margin:6px 0 4px;font-size:1.05rem}.act-item .meta{font-size:.9rem;color:#555;margin:0 0 6px}.act-tag{display:inline-block;background:#eef5ee;border-radius:999px;padding:1px 9px;font-size:.8rem;margin-left:4px}.act-land{scroll-margin-top:120px}.act-land[hidden],.act-item[hidden],.act-group[hidden]{display:none}/*/act*/