:root{--bg-primary: #0a0a1a;--bg-secondary: #111128;--bg-card: #1a1a35;--bg-card-hover: #222250;--text-primary: #f0f0f5;--text-secondary: #a0a0b8;--text-muted: #6a6a80;--accent-gold: #f0c040;--accent-gold-dim: #c49a20;--accent-red: #e05555;--accent-green: #50c878;--accent-blue: #5588dd;--domain-welzijn: #e05555;--domain-bestuur: #5588dd;--domain-werk: #50c878;--domain-economie: #f0c040;--domain-omgeving: #44bb99;--domain-cultuur: #cc66cc;--domain-onderwijs: #ff8844;--domain-landbouw: #88aa44;--domain-mobiliteit: #6699cc;--domain-financien: #aa8866;--domain-andere: #888888;--font-display: "DM Serif Display", Georgia, serif;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--max-width: 1200px;--section-padding: clamp(3rem, 8vh, 6rem)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.2}h2{font-size:clamp(1.8rem,4vw,3rem);margin-bottom:.5rem}h3{font-size:clamp(1.2rem,2.5vw,1.5rem);margin-bottom:.5rem}strong{color:var(--accent-gold)}.section{padding:var(--section-padding) clamp(1rem,4vw,2rem);min-height:100vh;position:relative}.section__header{max-width:var(--max-width);margin:0 auto 2rem;text-align:center}.section__header p{color:var(--text-secondary);font-size:1.1rem}.hero__year-selector{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.year-btn{background:var(--bg-card);border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);padding:.5rem 1.2rem;border-radius:20px;font-size:.95rem;cursor:pointer;transition:all .2s;font-family:var(--font-body)}.year-btn:hover{border-color:#f0c0404d;color:var(--text-primary)}.year-btn.active{background:#f0c04026;border-color:var(--accent-gold);color:var(--accent-gold)}.year-bar{position:fixed;top:0;left:0;right:0;z-index:1000;background:#0a0a1af2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(240,192,64,.1);padding:.5rem 1rem;transform:translateY(-100%);transition:transform .3s ease}.year-bar.visible{transform:translateY(0)}.year-bar__content{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:center;gap:1rem}.year-bar__label{color:var(--text-secondary);font-size:.85rem}.year-btn--small{padding:.3rem .8rem;font-size:.8rem}.section--hero{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;text-align:center;background:radial-gradient(ellipse at 50% 30%,#1a1a3a 0%,var(--bg-primary) 70%)}.hero__content{max-width:800px}.hero__label{font-size:clamp(.9rem,2vw,1.1rem);text-transform:uppercase;letter-spacing:.15em;color:var(--text-secondary);margin-bottom:1rem}.hero__amount{font-family:var(--font-display);font-size:clamp(2.5rem,8vw,6rem);color:var(--accent-gold);line-height:1.1;margin-bottom:1.5rem;font-variant-numeric:tabular-nums}.hero__euro{font-size:.7em;opacity:.7}.hero__subtitle{font-size:clamp(1rem,2.5vw,1.4rem);color:var(--text-secondary);margin-bottom:2rem;line-height:1.7}.hero__since{font-size:clamp(.9rem,2vw,1.1rem);color:var(--text-secondary);padding:1rem 1.5rem;background:#f0c04014;border:1px solid rgba(240,192,64,.15);border-radius:8px;display:inline-block;font-variant-numeric:tabular-nums}.hero__since strong{font-size:1.2em}.hero__scroll-hint{margin-top:3rem;color:var(--text-muted);font-size:.9rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.section--perspective{padding:0;min-height:auto;position:relative}.perspective__sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;justify-content:center;z-index:1;pointer-events:none}.perspective__visual{width:300px;height:300px;transition:all .5s ease}.perspective__steps{position:relative;z-index:2;pointer-events:none}.perspective__step{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;pointer-events:auto}.step__card{max-width:500px;background:#1a1a35eb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(240,192,64,.1);border-radius:16px;padding:2.5rem;opacity:.15;transform:translateY(30px);transition:opacity .5s ease,transform .5s ease}.perspective__step.is-active .step__card{opacity:1;transform:translateY(0)}.step__card h2{color:var(--accent-gold);margin-bottom:.5rem}.step__amount{font-family:var(--font-display);font-size:clamp(1.5rem,4vw,2.2rem);color:var(--text-primary);margin-bottom:1rem}.step__card p:last-child{color:var(--text-secondary);font-size:1.05rem}.visual__clock,.visual__sun,.visual__crowd,.visual__beer{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.visual__clock svg,.visual__sun svg,.visual__crowd svg,.visual__beer svg{width:200px;height:200px;opacity:.3;transition:opacity .5s ease}.perspective__step.is-active~.perspective__sticky .visual__active svg,.visual__active svg{opacity:1}.section--treemap{background:var(--bg-secondary)}.treemap__breadcrumb{max-width:var(--max-width);margin:0 auto 1rem;display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary);min-height:2rem}.breadcrumb__item{cursor:pointer;color:var(--accent-blue);text-decoration:underline;text-underline-offset:2px}.breadcrumb__item:hover{color:var(--accent-gold)}.breadcrumb__separator{color:var(--text-muted)}.breadcrumb__current{color:var(--text-primary)}.treemap__container{max-width:var(--max-width);margin:0 auto;height:clamp(400px,60vh,600px);position:relative;border-radius:8px;overflow:hidden}.treemap__cell{position:absolute;overflow:hidden;cursor:pointer;border:1px solid rgba(10,10,26,.6);transition:opacity .2s;display:flex;flex-direction:column;justify-content:flex-start;padding:6px 8px}.treemap__cell:hover{opacity:.85;z-index:2}.treemap__cell-name{font-size:.75rem;font-weight:600;color:#fffffff2;line-height:1.2;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 3px rgba(0,0,0,.5)}.treemap__cell-value{font-size:.7rem;color:#ffffffb3;margin-top:2px;text-shadow:0 1px 3px rgba(0,0,0,.5)}.treemap__tooltip{position:fixed;background:var(--bg-card);border:1px solid rgba(240,192,64,.2);border-radius:8px;padding:12px 16px;font-size:.85rem;pointer-events:none;z-index:100;max-width:300px;opacity:0;transition:opacity .15s;box-shadow:0 8px 24px #0006}.treemap__tooltip.visible{opacity:1}.treemap__tooltip-name{font-weight:600;margin-bottom:4px}.treemap__tooltip-value{color:var(--accent-gold);font-size:1rem;font-weight:600}.treemap__tooltip-pct{color:var(--text-secondary);font-size:.8rem}.section--recipients{background:var(--bg-primary)}.recipients__filters{max-width:var(--max-width);margin:0 auto 1.5rem;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.filter-btn{background:var(--bg-card);border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);padding:.4rem 1rem;border-radius:20px;font-size:.85rem;cursor:pointer;transition:all .2s;font-family:var(--font-body)}.filter-btn:hover{border-color:#f0c0404d;color:var(--text-primary)}.filter-btn.active{background:#f0c04026;border-color:var(--accent-gold);color:var(--accent-gold)}.recipients__chart{max-width:var(--max-width);margin:0 auto 2rem}.recipient-bar{display:grid;grid-template-columns:1fr 2fr auto;gap:.75rem;align-items:center;padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.recipient-bar__name{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipient-bar__track{height:24px;background:#ffffff0d;border-radius:4px;overflow:hidden;position:relative}.recipient-bar__fill{height:100%;border-radius:4px;transition:width .6s ease-out;min-width:2px}.recipient-bar__value{font-size:.85rem;font-variant-numeric:tabular-nums;color:var(--accent-gold);white-space:nowrap;min-width:100px;text-align:right}.recipients__search{max-width:600px;margin:0 auto;position:relative}.recipients__search input{width:100%;padding:.8rem 1.2rem;background:var(--bg-card);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary);font-size:1rem;font-family:var(--font-body);outline:none;transition:border-color .2s}.recipients__search input:focus{border-color:var(--accent-gold)}.recipients__search input::placeholder{color:var(--text-muted)}.search-results{position:absolute;top:100%;left:0;right:0;background:var(--bg-card);border:1px solid rgba(255,255,255,.1);border-radius:0 0 8px 8px;max-height:300px;overflow-y:auto;z-index:50;display:none}.search-results.open{display:block}.search-result__item{padding:.7rem 1.2rem;border-bottom:1px solid rgba(255,255,255,.05);cursor:default}.search-result__item:last-child{border-bottom:none}.search-result__name{font-weight:600;font-size:.9rem}.search-result__meta{font-size:.8rem;color:var(--text-secondary);display:flex;justify-content:space-between;margin-top:2px}.search-result__amount{color:var(--accent-gold)}.section--municipality{background:var(--bg-secondary)}.municipality__lookup{max-width:400px;margin:0 auto 2rem}.municipality__lookup input{width:100%;padding:.8rem 1.2rem;background:var(--bg-card);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary);font-size:1.1rem;font-family:var(--font-body);outline:none;text-align:center;transition:border-color .2s}.municipality__lookup input:focus{border-color:var(--accent-gold)}.municipality__lookup input::placeholder{color:var(--text-muted)}.municipality__result{max-width:600px;margin:0 auto;text-align:center}.municipality__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem;margin-top:1.5rem}.municipality__stat{background:var(--bg-card);border-radius:12px;padding:1.5rem 1rem}.municipality__stat-value{font-family:var(--font-display);font-size:1.6rem;color:var(--accent-gold);margin-bottom:.3rem}.municipality__stat-label{font-size:.85rem;color:var(--text-secondary)}.section--spotlight{background:var(--bg-primary)}.spotlight__grid{max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.spotlight__card{background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:2rem;transition:transform .2s,border-color .2s}.spotlight__card:hover{transform:translateY(-2px);border-color:#f0c04033}.spotlight__card-title{font-family:var(--font-display);font-size:1.3rem;margin-bottom:.3rem}.spotlight__card-subtitle{font-size:.85rem;color:var(--text-muted);margin-bottom:1rem}.spotlight__card-amount{font-family:var(--font-display);font-size:1.8rem;color:var(--accent-gold);margin-bottom:1rem}.spotlight__card-description{color:var(--text-secondary);font-size:.95rem;line-height:1.6}.section--whatif{background:var(--bg-secondary)}.whatif__cards{max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.whatif__card{background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:2rem;text-align:center}.whatif__card-emoji{font-size:3rem;margin-bottom:1rem}.whatif__card-number{font-family:var(--font-display);font-size:clamp(1.5rem,4vw,2.5rem);color:var(--accent-gold);margin-bottom:.5rem}.whatif__card-label{font-size:1rem;color:var(--text-secondary);line-height:1.5}.footer{background:var(--bg-primary);border-top:1px solid rgba(255,255,255,.06);padding:3rem clamp(1rem,4vw,2rem)}.footer__content{max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.footer h3{color:var(--text-primary);margin-bottom:.75rem}.footer p{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.share-buttons{display:flex;gap:.75rem;flex-wrap:wrap}.share-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:var(--bg-card);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary);font-size:.85rem;cursor:pointer;transition:all .2s;text-decoration:none;font-family:var(--font-body)}.share-btn:hover{background:var(--bg-card-hover);border-color:#f0c0404d}@media (max-width: 768px){.recipient-bar{grid-template-columns:1fr auto;gap:.4rem}.recipient-bar__track{grid-column:1 / -1;order:3}.spotlight__grid{grid-template-columns:1fr}.perspective__visual{width:200px;height:200px}}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}
