:root{--ink:#2d2d2d;--orange:#d97706;--paper:#f8f6f2;--line:#efede8;--green:#5f7a61;--white:#fff;--muted:#6f6b65;--shadow:0 16px 44px rgba(45,45,45,.08);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 Inter,system-ui,sans-serif}body.filters-open{overflow:hidden}a{color:inherit;text-decoration:none}button,select,input{font:inherit}.skip-link{position:fixed;left:16px;top:-80px;z-index:200;background:var(--ink);color:#fff;padding:10px 14px;border-radius:8px}.skip-link:focus{top:16px}.site-header{position:sticky;top:0;z-index:80;border-bottom:1px solid var(--line);background:rgba(248,246,242,.96);backdrop-filter:blur(16px)}.site-header__inner{width:min(1260px,calc(100% - 40px));height:76px;margin:auto;display:flex;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:11px;margin-right:auto;font:400 1.23rem/1 "DM Serif Display",Georgia,serif}.brand small{display:block;margin-top:5px;color:var(--muted);font:700 .58rem/1 Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase}.brand__mark{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:var(--orange);color:#fff;font:400 1rem/1 "DM Serif Display",serif}.desktop-nav{display:flex;align-items:center;gap:18px;font-size:.85rem;font-weight:650}.desktop-nav a{padding:10px 0;border-bottom:2px solid transparent}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--orange);border-color:var(--orange)}.search-button{border-radius:999px;background:var(--ink);color:#fff;padding:11px 15px;font-size:.82rem;font-weight:750}.menu-button{display:none;width:44px;height:44px;border:0;background:transparent;padding:10px}.menu-button span{display:block;height:2px;margin:5px;background:var(--ink)}.mobile-nav{padding:6px 20px 18px;background:var(--white);border-top:1px solid var(--line)}.mobile-nav a{display:block;padding:11px 0;border-bottom:1px solid var(--line);font-weight:650}.page-shell{width:min(1260px,calc(100% - 40px));margin:auto}.breadcrumbs{display:flex;gap:9px;padding-top:22px;color:var(--muted);font-size:.82rem}.breadcrumbs a{color:var(--green);font-weight:650}.intro{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:38px;align-items:end;padding:38px 0 32px}.eyebrow{margin:0 0 8px;color:var(--orange);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.intro h1{max-width:820px;margin:0;font:400 clamp(2.55rem,5vw,4.8rem)/.98 "DM Serif Display",Georgia,serif;letter-spacing:-.025em}.intro>div>p:last-child{max-width:760px;margin:18px 0 0;color:var(--muted);font-size:1.02rem}.price-note{padding:18px 20px;border-left:3px solid var(--orange);background:var(--white);box-shadow:0 7px 22px rgba(45,45,45,.04)}.price-note strong,.price-note span{display:block}.price-note span{margin-top:4px;color:var(--muted);font-size:.84rem}.type-switcher{padding:22px 0 30px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.section-heading h2{margin:0;font:400 1.55rem/1.1 "DM Serif Display",Georgia,serif}.section-heading button{border:0;background:none;color:var(--green);font-size:.82rem;font-weight:750;cursor:pointer}.type-switcher__list{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:16px}.type-pill{min-height:54px;border:1px solid #dfdcd6;border-radius:14px;background:var(--white);color:var(--ink);padding:10px 13px;text-align:left;font-weight:700;cursor:pointer}.type-pill small{display:block;margin-top:2px;color:var(--muted);font-size:.72rem;font-weight:550}.type-pill:hover{border-color:var(--orange)}.type-pill[aria-pressed=true]{border-color:var(--green);background:var(--green);color:#fff}.type-pill[aria-pressed=true] small{color:rgba(255,255,255,.78)}.search-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:34px;align-items:start;padding:4px 0 80px}.filter-panel{position:sticky;top:98px;max-height:calc(100vh - 116px);overflow:auto;border:1px solid #dfdcd6;border-radius:var(--radius);background:var(--white);scrollbar-width:thin}.filter-panel__header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--line)}.filter-panel__header p{margin:0;font-weight:800}.filter-panel__header span{color:var(--muted);font-size:.76rem}.filter-panel__header button{display:none;border:0;background:none;font-size:2rem;line-height:1;cursor:pointer}.filter-group{border-bottom:1px solid var(--line)}.filter-group summary{position:relative;padding:17px 42px 17px 20px;list-style:none;font-size:.86rem;font-weight:800;cursor:pointer}.filter-group summary::-webkit-details-marker{display:none}.filter-group summary:after{content:"+";position:absolute;right:20px;color:var(--orange);font-size:1.1rem}.filter-group[open] summary:after{content:"−"}.filter-options{display:grid;gap:10px;padding:0 20px 18px}.filter-option{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:9px;align-items:center;font-size:.84rem;cursor:pointer}.filter-option input{width:17px;height:17px;margin:0;accent-color:var(--orange)}.filter-option span:last-child{color:var(--muted);font-size:.75rem}.filter-select{width:100%;min-height:44px;border:1px solid #d8d5cf;border-radius:10px;background:#fff;padding:0 12px;color:var(--ink)}.clear-filters{width:calc(100% - 40px);margin:18px 20px;border:0;background:none;color:var(--orange);font-size:.82rem;font-weight:750;cursor:pointer}.filter-panel__apply,.selected-mobile{display:none}.results-header{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:3px 0 14px;border-bottom:1px solid var(--line)}.results-header h2{margin:0;font:400 clamp(1.8rem,3vw,2.65rem)/1.05 "DM Serif Display",Georgia,serif}.desktop-sort{display:flex;align-items:center;gap:9px;font-size:.8rem;font-weight:700}.sort-select{min-height:42px;border:1px solid #d8d5cf;border-radius:10px;background:#fff;padding:0 34px 0 12px;color:var(--ink)}.active-filters{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.active-filters:empty{display:none}.filter-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(217,119,6,.3);border-radius:999px;background:#fff8ed;color:#75410b;padding:7px 10px;font-size:.78rem;font-weight:650;cursor:pointer}.filter-chip span{font-size:1rem;line-height:1}.result-explanation{margin:14px 0 20px;color:var(--muted);font-size:.86rem}.result-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.result-card{min-width:0;overflow:hidden;border:1px solid #e3e0da;border-radius:var(--radius);background:var(--white);box-shadow:0 8px 26px rgba(45,45,45,.045);transition:transform .2s,box-shadow .2s}.result-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.result-card__image{position:relative;aspect-ratio:16/10;overflow:hidden;background:#e7e3dc}.result-card__image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s}.result-card:hover .result-card__image img{transform:scale(1.025)}.result-card__image>span{position:absolute;left:13px;top:13px;border-radius:999px;background:rgba(255,255,255,.94);padding:7px 10px;font-size:.69rem;font-weight:800}.result-card__body{padding:18px}.result-card__location{margin:0;color:var(--orange);font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.result-card h2{min-height:2.28em;margin:6px 0 13px;font:400 1.4rem/1.14 "DM Serif Display",Georgia,serif}.result-card__features{display:flex;flex-wrap:wrap;gap:6px;min-height:28px;margin:0;padding:0;list-style:none}.result-card__features li{border-radius:999px;background:#edf2ed;color:#3e5a40;padding:5px 8px;font-size:.69rem;font-weight:650}.result-card__footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:17px;padding-top:15px;border-top:1px solid var(--line)}.result-card__footer small{overflow:hidden;color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.result-card__cta{display:inline-flex;align-items:center;gap:10px;color:var(--orange);font-size:.8rem;font-weight:800}.result-card__cta:hover{text-decoration:underline}.load-more{display:block;min-width:220px;margin:30px auto 0;border:1px solid var(--ink);border-radius:999px;background:transparent;padding:13px 19px;color:var(--ink);font-weight:750;cursor:pointer}.load-more:hover{background:var(--ink);color:#fff}.empty-state{padding:48px 20px;text-align:center;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.empty-state h2{margin:0;font:400 2rem/1.1 "DM Serif Display",serif}.empty-state p{max-width:600px;margin:12px auto 0;color:var(--muted)}.mobile-toolbar{display:none}.site-footer{border-top:1px solid rgba(255,255,255,.12);background:#26372f;color:#fff;padding:42px 20px}.site-footer>div{width:min(1260px,100%);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:40px}.site-footer p{margin:0;color:#d4ddd8;font-size:.86rem}.site-footer strong{color:#fff;font:400 1.4rem "DM Serif Display",serif}.site-footer a{color:#ffc785;text-decoration:underline}.noscript{padding:18px;background:#fff4df}.filter-overlay{display:none}
@media(max-width:1100px){.desktop-nav{display:none}.menu-button{display:block}.search-button{margin-left:auto}.type-switcher__list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.site-header__inner,.page-shell{width:min(100% - 28px,1260px)}.intro{grid-template-columns:1fr;padding:28px 0 24px}.intro h1{font-size:clamp(2.4rem,11vw,3.8rem)}.price-note{max-width:520px}.type-switcher__list{display:flex;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity}.type-pill{flex:0 0 155px;scroll-snap-align:start}.mobile-toolbar{position:sticky;top:76px;z-index:55;display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0 -14px 22px;padding:10px 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(248,246,242,.97)}.mobile-toolbar button,.mobile-toolbar label{display:flex;min-height:46px;align-items:center;justify-content:center;gap:8px;border:1px solid #d8d5cf;border-radius:11px;background:#fff;font-size:.8rem;font-weight:750}.mobile-toolbar button span{display:grid;min-width:20px;height:20px;place-items:center;border-radius:50%;background:var(--orange);color:#fff;font-size:.68rem}.mobile-toolbar .sort-select{max-width:120px;min-height:36px;border:0;padding-left:3px;background:transparent}.search-layout{display:block;padding-bottom:60px}.filter-overlay{position:fixed;inset:0;z-index:100;display:block;background:rgba(29,32,30,.48)}.filter-panel{position:fixed;inset:0;z-index:110;max-height:none;border:0;border-radius:0;transform:translateX(-102%);transition:transform .25s}.filter-panel.is-open{transform:none}.filter-panel__header{position:sticky;top:0;z-index:2;background:#fff}.filter-panel__header button{display:block}.selected-mobile{display:flex;flex-wrap:wrap;gap:6px;padding:12px 20px 0}.filter-panel__apply{position:sticky;bottom:0;display:block;padding:13px 20px;background:linear-gradient(transparent,#fff 18%);padding-top:24px}.filter-panel__apply button{width:100%;min-height:50px;border:0;border-radius:12px;background:var(--orange);color:#fff;font-weight:800}.desktop-sort{display:none}.result-list{grid-template-columns:1fr}.site-footer>div{grid-template-columns:1fr}.results-header{align-items:start}.result-card h2{min-height:auto}}
@media(max-width:520px){.search-button{display:none}.breadcrumbs{padding-top:16px}.intro{gap:22px}.section-heading h2{font-size:1.35rem}.result-card__footer{grid-template-columns:1fr}.result-card__cta{justify-content:space-between;border-radius:10px;background:var(--orange);color:#fff;padding:11px 13px}.result-card__footer small{white-space:normal}.site-footer{padding:34px 20px}}
.featured-hotel{display:grid;grid-template-columns:.9fr 1.1fr;gap:0;min-height:360px;margin:0 0 38px;overflow:hidden;background:#26372f;color:#fff}.featured-hotel__image{min-height:360px}.featured-hotel__image img{display:block;width:100%;height:100%;object-fit:cover}.featured-hotel>div:last-child{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4vw,4rem)}.featured-hotel .eyebrow{color:#ffd39a}.featured-hotel h2{margin:0;font:400 clamp(2.3rem,4.2vw,4rem)/1 "DM Serif Display",Georgia,serif}.featured-hotel p{max-width:580px;color:#d9e0dc}.featured-hotel strong{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;color:#ffd39a;font-size:.82rem}.featured-hotel:hover strong span{transform:translateX(3px)}
@media(max-width:760px){.featured-hotel{grid-template-columns:1fr}.featured-hotel__image{min-height:300px}.featured-hotel>div:last-child{padding:2rem 1.2rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
:focus-visible{outline:3px solid rgba(217,119,6,.45);outline-offset:3px}
.detail-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:42px;align-items:center;padding:42px 0}.detail-hero__image{aspect-ratio:4/3;overflow:hidden;border-radius:20px;background:#e7e3dc}.detail-hero__image img{display:block;width:100%;height:100%;object-fit:cover}.detail-hero h1{margin:8px 0 12px;font:400 clamp(2.7rem,5vw,4.8rem)/1 "DM Serif Display",Georgia,serif}.detail-hero p{color:var(--muted)}.detail-place{color:var(--orange)!important;font-weight:750}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:44px 0;border-top:1px solid var(--line)}.detail-grid h2{margin:0 0 18px;font:400 2.3rem/1.05 "DM Serif Display",serif}.detail-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0;padding:0;list-style:none}.detail-facts li{padding:13px;border:1px solid var(--line);border-radius:11px;background:#fff;font-size:.86rem}.detail-offer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:10px;border:1px solid #ddd9d1;border-radius:13px;background:#fff;padding:15px}.detail-offer small,.detail-offer strong{display:block}.detail-offer small{color:var(--muted);font-size:.7rem}.detail-offer b{color:var(--orange);font-size:.78rem;text-align:right}.detail-disclosure{color:var(--muted);font-size:.78rem}.detail-back{padding:0 0 70px}.detail-back a{color:var(--green);font-weight:750}
@media(max-width:760px){.detail-hero,.detail-grid{grid-template-columns:1fr}.detail-facts{grid-template-columns:1fr}.detail-offer{align-items:flex-start;flex-direction:column}.detail-offer b{text-align:left}}

.need-switcher{padding:4px 0 34px}.need-switcher .section-heading{align-items:end}.need-switcher__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.need-pill{display:flex;min-width:0;min-height:82px;align-items:center;gap:12px;border:1px solid #dfdcd6;border-radius:15px;background:#fff;padding:13px;text-align:left;color:var(--ink);cursor:pointer;transition:border-color .18s,transform .18s,background .18s}.need-pill:hover{border-color:var(--orange);transform:translateY(-2px)}.need-pill__symbol{display:grid;flex:0 0 46px;height:46px;place-items:center;border-radius:50%;background:#f3eee5;color:#4b6551;font-size:.67rem;font-weight:850;text-transform:uppercase}.need-pill strong,.need-pill small{display:block}.need-pill strong{font-size:.86rem;line-height:1.2}.need-pill small{margin-top:4px;color:var(--muted);font-size:.67rem;line-height:1.3}.need-pill[aria-pressed=true]{border-color:var(--green);background:#edf3ed}.need-pill[aria-pressed=true] .need-pill__symbol{background:var(--green);color:#fff}.need-pill:disabled{opacity:.45;cursor:not-allowed;transform:none}
@media(max-width:1100px){.need-switcher__list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.need-switcher{padding-bottom:24px}.need-switcher__list{display:flex;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x proximity}.need-pill{flex:0 0 245px;scroll-snap-align:start}}

/* Contextuele filters: nulopties blijven zichtbaar als uitleg, maar zijn niet
   selecteerbaar. Elementen met hidden mogen nooit door component-CSS terugkomen. */
.load-more[hidden],.empty-state[hidden],.filter-overlay[hidden],.mobile-nav[hidden]{display:none!important}
.theme-routes{padding:4px 0 34px}.theme-routes__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.theme-routes__grid a{display:flex;min-height:92px;flex-direction:column;justify-content:space-between;border:1px solid var(--line);border-radius:14px;background:#fff;padding:16px;color:var(--ink);transition:border-color .18s,transform .18s}.theme-routes__grid a:hover{border-color:var(--orange);transform:translateY(-2px)}.theme-routes__grid strong{font-size:.92rem}.theme-routes__grid span{color:var(--muted);font-size:.72rem}.breadcrumbs a{color:var(--green)}
@media(max-width:820px){.theme-routes__grid{display:flex;overflow-x:auto;padding:2px 2px 10px}.theme-routes__grid a{flex:0 0 168px}}
.type-pill:disabled,.filter-option.is-unavailable{opacity:.46;color:var(--muted);cursor:not-allowed}
.type-pill:disabled:hover{border-color:#dfdcd6}
.filter-option.is-unavailable input{cursor:not-allowed}
.empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px}
.empty-actions:empty{display:none}
.empty-actions button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:10px;border:1px solid var(--green);border-radius:10px;background:var(--green);color:#fff;padding:10px 14px;font-weight:800;cursor:pointer}
.empty-actions button:hover{background:#3f6048}
.empty-actions span{font-size:.75rem;font-weight:650;opacity:.82}
.filter-panel__apply button:disabled{background:#dad8d2!important;color:#706d67!important;cursor:not-allowed}
@media(max-width:520px){.empty-actions{display:grid}.empty-actions button{width:100%}}
