: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}
