@font-face{font-family:"Bricolage Grotesque";src:url("/assets/fonts/bricolage-grotesque.woff2") format("woff2");font-weight:200 800;font-stretch:75% 100%;font-display:swap}

:root{
  --inkt:#10132a;--wit:#fff;--grijs:#565b6e;--lijn:#d9dde5;
  --kleur-a:#e6f1f8;--kleur-a-sterk:#9fcbe6;--kleur-b:#dcf26b;--link:#1f5f8b;--zacht:#e6f1f8;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--wit);color:var(--inkt);font-family:"Bricolage Grotesque",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:1.125rem;line-height:1.55;overflow-wrap:break-word}
a{color:var(--link);text-underline-offset:.18em}
a:hover{color:var(--inkt)}
:focus-visible{outline:3px solid var(--inkt);outline-offset:3px;border-radius:2px}
img{max-width:100%;height:auto;display:block}
ul{padding-left:1.2em}
li{margin:.4em 0}
h1,h2,h3{font-weight:700;line-height:1.08;hyphens:manual}

.breed{width:100%;max-width:1180px;margin-inline:auto;padding-inline:20px}
.overslaan{position:absolute;left:-9999px;background:var(--inkt);color:var(--wit);padding:.7em 1em;z-index:5}
.overslaan:focus{left:12px;top:12px;color:var(--wit)}

.kop{border-bottom:1px solid var(--lijn)}
.kop .breed{display:flex;flex-wrap:wrap;gap:.5rem 2rem;align-items:center;justify-content:space-between;padding-block:.9rem}
.merk{display:inline-flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.2rem;color:var(--inkt);text-decoration:none}
.kop ul{display:flex;flex-wrap:wrap;gap:.1rem 1.3rem;list-style:none;margin:0;padding:0}
.kop li{margin:0}
.kop nav a{color:var(--inkt);text-decoration:none;display:inline-block;padding:.35rem 0;font-size:1rem}
.kop nav a:hover{text-decoration:underline}

.opening{padding-block:clamp(2.5rem,7vw,5.5rem) clamp(1.5rem,3vw,2.5rem)}
.opening h1{font-size:clamp(2.5rem,7vw,5.2rem);letter-spacing:-.025em;max-width:17ch;margin:0 0 1.2rem;font-stretch:88%}
.intro{font-size:clamp(1.2rem,2.2vw,1.45rem);line-height:1.4;max-width:42rem;margin:0}
.melding{display:inline-block;background:var(--kleur-b);padding:.55em .85em;margin:1.5rem 0 0;font-weight:600}

.blok{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);column-gap:3rem;padding-block:clamp(2rem,4vw,3rem);border-top:1px solid var(--lijn)}
.blok>*{grid-column:2;min-width:0}
.blok>h2{grid-column:1;grid-row:1 / span 20;font-size:clamp(1.45rem,2.6vw,2rem);letter-spacing:-.015em;margin:0 0 1rem;max-width:14ch}
.blok>p{max-width:40rem;margin:0 0 1rem}
.blok>ul{max-width:40rem;margin:0}
.blok>*:first-child:not(h2){margin-top:0}

.blok-keuze,.blok-formulier{border-top:0}
.blok-keuze{display:block;padding-top:0}
.blok-keuze>h2{max-width:none;margin-bottom:1.2rem}
.keuzes{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:clamp(.6rem,1.4vw,1.2rem)}
.keuzevlak{display:flex;flex-direction:column;justify-content:flex-end;gap:.8rem;min-height:clamp(20rem,52vh,34rem);padding:clamp(1.3rem,3vw,2.5rem);text-decoration:none;color:var(--inkt);background:var(--kleur-a);transition:background-color .15s}
.keuzevlak:nth-child(2){background:var(--kleur-b)}
.keuzevlak:nth-child(3){background:var(--kleur-a-sterk)}
.keuzevlak:hover{color:var(--inkt);background:var(--inkt);color:var(--wit)}
.keuzevlak strong{font-size:clamp(2.1rem,5.4vw,4.4rem);line-height:1;letter-spacing:-.025em;font-stretch:85%;hyphens:manual}
.keuzes:has(>:nth-child(3)) strong{font-size:clamp(1.8rem,3.2vw,2.6rem)}
.keuzevlak span{font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.3;max-width:26rem}

.kaarten{display:block}
.kaart{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem 1.5rem;padding-block:1rem;border-bottom:1px solid var(--lijn)}
.kaart:first-child{padding-top:0}
.kaart h3{font-size:1.35rem;margin:0}
.kaart p{grid-column:1;margin:0;max-width:34rem}
.kaartlink{grid-column:2;grid-row:1 / span 2;align-self:center;font-weight:600;white-space:nowrap}

.prijzen{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:.8rem}
.prijskaart{background:var(--zacht);padding:1.2rem 1.25rem 1.3rem}
.prijskaart h3{font-size:1.25rem;margin:0 0 .6rem}
.prijskaart p{margin:0;font-size:1rem;line-height:1.4}
.prijskaart .status{font-size:.9rem;color:var(--grijs);margin-bottom:.6rem}
.prijskaart .bedrag{font-size:1.55rem;font-weight:700;line-height:1.15;margin-bottom:.7rem;letter-spacing:-.01em;hyphens:manual}
.bijschrift{font-size:.95rem;color:var(--grijs);margin:1rem 0 0;max-width:40rem}

.tabel-scroll{overflow-x:auto}
table{border-collapse:collapse;width:100%;min-width:34rem;font-size:1rem;line-height:1.35;hyphens:manual}
th{text-align:left;font-weight:700;border-bottom:2px solid var(--inkt);padding:.5rem .8rem .5rem 0}
td{vertical-align:top;border-bottom:1px solid var(--lijn);padding:.7rem .8rem .7rem 0}

.formvak{background:var(--zacht);padding:clamp(1.25rem,3vw,2.25rem);max-width:40rem}
.formvak form{margin:0}
.formvak label{display:block;font-weight:600;margin:0 0 .3rem;line-height:1.3}
.formvak input:not([type=checkbox]),.formvak select{display:block;width:100%;font:inherit;color:var(--inkt);background:var(--wit);border:1.5px solid var(--inkt);border-radius:3px;padding:.65rem .75rem;margin:0 0 1rem}
.formvak .vinkje{display:flex;gap:.6rem;align-items:flex-start;font-weight:400;margin:.2rem 0 1rem}
.vinkje input{width:1.2rem;height:1.2rem;margin:.2rem 0 0;flex:none}
button{font:inherit;font-weight:700;background:var(--inkt);color:var(--wit);border:0;border-radius:3px;padding:.75rem 1.2rem;cursor:pointer}
button:hover{background:var(--kleur-b);color:var(--inkt);box-shadow:inset 0 0 0 2px var(--inkt)}
.bot-veld{position:absolute;left:-9999px;height:1px;overflow:hidden}

figure{margin:0}
figure img{max-height:34rem;width:auto}
figcaption{font-size:.95rem;color:var(--grijs);margin-top:.5rem}
.bronnen{font-size:1rem}
details{border-bottom:1px solid var(--lijn);padding-block:.75rem;max-width:40rem}
details:first-of-type{padding-top:0}
summary{cursor:pointer;font-weight:600}
details p{margin:.6rem 0 0}
.vervolg{font-size:1.2rem;padding-block:1rem}
.controle{font-size:.9rem;color:var(--grijs);border-top:1px solid var(--lijn);padding-block:1.2rem;margin:0}

.voet{background:var(--inkt);color:var(--wit);padding-block:2.5rem;margin-top:2.5rem;font-size:1rem;hyphens:manual}
.voet a{color:var(--wit)}
.voet p{margin:.5rem 0}
.voetlinks{display:flex;flex-wrap:wrap;gap:.2rem 1.4rem;list-style:none;margin:0 0 1.2rem;padding:0}
.voetlinks li{margin:0}

@media (max-width:760px){
  .blok{display:block}
  .blok>h2{max-width:none}
  .keuzes{grid-auto-flow:row}
  .keuzevlak{min-height:13rem}
  .keuzes:has(>:nth-child(3)) strong{font-size:2rem}
  .kop nav a,.voetlinks a,.kaartlink{display:inline-flex;align-items:center;min-height:44px}
  body{hyphens:auto}
  .kaart{display:block}
  .kaartlink{display:inline-block;margin-top:.4rem}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* Huisvriend, opbouw naar SecondKey */
@font-face{font-family:"Inter";src:url("/assets/fonts/inter.woff2") format("woff2");font-weight:100 900;font-display:swap}
.accent-living{--inkt:#14182b;--grijs:#5b6170;--oranje:#c4703a;--knop:#b4591f;--knop-donker:#964a18;--tint:#fbf7f3;--leisteen:#56737f;--link:#964a18;--zacht:#fbf3ec;--kleur-b:#ffe7d3;--lijn:#ebe6e0;font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:1.0625rem;background:#fff;hyphens:manual}
.accent-living h1,.accent-living h2,.accent-living h3{font-stretch:100%;letter-spacing:-.02em;font-weight:700}
.hv-verborgen{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.hv-paneel{position:relative;background-color:var(--oranje);background-image:linear-gradient(120deg,transparent 22%,rgba(255,255,255,.055) 22% 44%,transparent 44% 66%,rgba(255,255,255,.055) 66% 84%,transparent 84%);color:#fff;padding:clamp(.75rem,1.6vw,1.5rem) clamp(.75rem,2.6vw,2.5rem) clamp(3rem,6vw,5rem);border-bottom-left-radius:clamp(70px,12vw,190px)}
.hv-thuis{padding-bottom:clamp(15rem,31vw,29rem)}
.hv-nav{display:flex;align-items:center;gap:1rem 2rem;justify-content:space-between;flex-wrap:wrap;max-width:1240px;margin:0 auto;background:#fff;color:var(--inkt);border-radius:14px;padding:.6rem .7rem .6rem 1rem;box-shadow:0 6px 24px rgba(20,24,43,.1)}
.hv-nav .merk{font-size:1.15rem;letter-spacing:-.01em}
.hv-nav ul{display:flex;flex-wrap:wrap;gap:.1rem 1.6rem;list-style:none;margin:0;padding:0}
.hv-nav li{margin:0}
.hv-nav nav a{color:var(--inkt);text-decoration:none;font-size:.95rem;font-weight:500;display:inline-block;padding:.4rem 0;border-bottom:2px solid transparent}
.hv-nav nav a:hover,.hv-nav nav a[aria-current]{border-bottom-color:var(--oranje)}
.hv-navknop{background:var(--zacht);color:var(--knop-donker);border:1px solid #eccdb4;border-radius:999px;padding:.55rem 1.05rem;text-decoration:none;font-weight:600;font-size:.92rem}
.hv-navknop:hover{background:var(--knop);border-color:var(--knop);color:#fff}
.hv-opening{max-width:54rem;margin:clamp(2.5rem,6vw,5rem) auto 0;text-align:center}
.hv-opening h1{font-size:clamp(2.35rem,5.2vw,4.25rem);line-height:1.08;font-weight:600;margin:0 auto 1.1rem;max-width:20ch}
.hv-sub{font-size:clamp(1.1rem,1.7vw,1.3rem);font-weight:600;line-height:1.45;max-width:40rem;margin:0 auto}
.hv-opening .melding{color:var(--inkt);border-radius:999px;padding:.5em 1.1em;font-size:.95rem}
.hv-opening a{color:#fff}
.hv-pil{display:flex;gap:.4rem;max-width:30rem;margin:1.9rem auto 0;background:#fff;border-radius:999px;padding:.32rem}
.hv-pil input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:1rem;color:var(--inkt);padding:.55rem 1.1rem;border-radius:999px}
.hv-pil input::placeholder{color:#5b6170}
.hv-pil button{white-space:nowrap}
.accent-living button,.hv-knop{display:inline-block;background:var(--knop);color:#fff;border:0;border-radius:999px;padding:.72rem 1.5rem;font:inherit;font-weight:700;font-size:1rem;text-decoration:none;cursor:pointer;transition:background .15s}
.accent-living button:hover,.hv-knop:hover{background:var(--knop-donker);color:#fff;box-shadow:none}
.hv-licht{background:#fff;color:var(--knop-donker);box-shadow:inset 0 0 0 1.5px #dfb898}
.hv-licht:hover{box-shadow:none}
.hv-uitleg{max-width:33rem;margin:1rem auto 0;font-weight:600;font-size:1rem;line-height:1.4}
.hv-punten{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.8rem;list-style:none;margin:1.2rem 0 0;padding:0;font-weight:600;font-size:.98rem}
.hv-punten li{display:flex;align-items:center;gap:.5rem;margin:0}
.hv-punten svg{width:20px;height:20px}
.hv-product{width:min(1120px,calc(100% - 2.5rem));margin:calc(-1 * clamp(12.5rem,27vw,25.5rem)) auto 0;position:relative}
.hv-venster{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 30px 70px rgba(20,24,43,.2)}
.hv-venster img{width:100%}
.hv-balk{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#2d3036;color:#fff;padding:.7rem 1.2rem;font-weight:600;font-size:.95rem}
.hv-balk a{color:#fff;font-weight:500}
.hv-onder{color:var(--grijs);text-align:center;font-size:.95rem;margin:1rem 0 0}
.hv-rij{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:center;padding-block:clamp(3.5rem,7vw,6.5rem)}
.hv-tekst h2,.hv-lijst h2,.hv-vragen h2,.hv-slot h2{font-size:clamp(2rem,3.7vw,3rem);line-height:1.1;margin:0}
.hv-tekst h2::after{content:"";display:block;width:28px;height:3px;background:var(--oranje);margin:1.1rem 0}
.hv-tekst p{max-width:31rem;margin:0 0 1.5rem;line-height:1.6}
.hv-tekst .hv-daarom{font-size:.95rem;color:var(--grijs);margin-bottom:.7rem}
.hv-daarom span{background:var(--oranje);color:#fff;font-weight:600;border-radius:999px;padding:.16rem .7rem;margin-left:.2rem;background:var(--knop)}
.hv-foto{position:relative;max-width:32rem}
.accent-living .hv-foto img{width:100%;height:clamp(22rem,36vw,32rem);max-height:none;object-fit:cover;border-radius:16px}
.hv-zwevend{position:absolute;right:calc(-1 * clamp(0rem,3vw,3rem));bottom:clamp(2.5rem,6vw,5rem);width:min(17rem,74%);background:#fff;border-radius:14px;padding:1rem 1.15rem;box-shadow:0 18px 44px rgba(20,24,43,.18);font-size:.92rem;line-height:1.35}
.hv-zwevend h3{font-size:1rem;margin:0 0 .5rem}
.hv-zwevend ul{list-style:none;margin:0;padding:0}
.hv-zwevend li{position:relative;margin:.38rem 0;padding-left:1.25rem}
.hv-zwevend li::before{content:"";position:absolute;left:0;top:.38em;width:.62rem;height:.62rem;border-radius:50%;background:var(--oranje)}
.hv-foto figcaption{margin-top:.6rem;font-size:.85rem}
.hv-tint{background:var(--tint)}
.hv-toestel{position:relative;background:#f2dfce;border-radius:16px;padding:clamp(2rem,4vw,3rem) 0 0;height:clamp(24rem,36vw,32rem);overflow:hidden;display:flex;justify-content:center}
.accent-living .hv-toestel img{width:min(19rem,62%);height:auto;max-height:none;border-radius:20px 20px 0 0;box-shadow:0 18px 44px rgba(20,24,43,.2);align-self:flex-start}
.hv-toestel .hv-zwevend{right:clamp(.75rem,2vw,1.5rem);bottom:clamp(1rem,3vw,2rem);width:min(13.5rem,55%)}
.hv-kaartjes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:center}
.hv-kaartjes>div{display:grid;gap:1rem}
.hv-kaartjes article{background:#fff;border-radius:14px;padding:1.5rem 1.2rem;text-align:center;box-shadow:0 10px 30px rgba(20,24,43,.07)}
.hv-kaartjes h3{font-size:1.08rem;margin:.75rem 0 .45rem}
.hv-kaartjes p{margin:0;font-size:.94rem;line-height:1.45}
.hv-icoon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--zacht);color:var(--knop);flex:none}
.hv-icoon svg{width:22px;height:22px}
.hv-vragen{text-align:center;padding-block:clamp(3.5rem,7vw,6rem)}
.hv-midden{max-width:32rem;margin:1rem auto 0}
.hv-raster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.4rem clamp(1.5rem,3vw,3rem);text-align:left;margin:clamp(2.2rem,4vw,3.5rem) 0}
.hv-raster h3{font-size:1.1rem;line-height:1.25;margin:0 0 .5rem}
.hv-raster p{margin:0;line-height:1.5}
.hv-band{background-color:var(--oranje);background-image:linear-gradient(120deg,transparent 22%,rgba(255,255,255,.055) 22% 44%,transparent 44% 66%,rgba(255,255,255,.055) 66% 84%,transparent 84%);margin-bottom:clamp(6rem,10vw,8.5rem);height:clamp(9rem,14vw,12rem)}
.hv-band ul{list-style:none;display:flex;justify-content:center;gap:clamp(.75rem,2vw,2rem);padding-top:clamp(3.5rem,6vw,5.5rem);margin:0 auto;flex-wrap:wrap}
.hv-band li::before{content:"";position:absolute;inset:0;z-index:-1;background:#fff;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}
.hv-band li{position:relative;width:clamp(10rem,17vw,14rem);aspect-ratio:1/1.12;margin:0;filter:drop-shadow(0 10px 22px rgba(20,24,43,.16));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 1.25rem}
.hv-band strong{color:var(--knop);font-size:clamp(1.6rem,2.8vw,2.4rem);letter-spacing:-.02em;line-height:1.1}
.hv-band span{font-size:.86rem;font-weight:600;line-height:1.25;margin-top:.45rem;max-width:9.5rem}
.hv-tekening svg{width:100%;height:auto;display:block}
.hv-lijst h2{margin-bottom:1.6rem}
.hv-lijn{display:flex;gap:1rem;color:var(--inkt);text-decoration:none;padding-block:1rem;line-height:1.5}
.hv-lijn span:last-child{display:block;font-size:.98rem}
.hv-lijn strong{display:flex;align-items:center;gap:.5rem;font-size:1.08rem;margin-bottom:.25rem}
.hv-lijn strong svg{width:18px;height:18px;transition:transform .15s}
.hv-lijn:hover{color:var(--inkt)}
.hv-lijn:hover strong{color:var(--knop-donker)}
.hv-lijn:hover strong svg{transform:translateX(3px)}
.hv-actief{border-bottom:2px solid var(--oranje)}
.hv-actief strong{color:var(--knop-donker)}
.hv-slot{background:var(--tint);text-align:center;padding:clamp(3.5rem,7vw,5.5rem) 1.25rem}
.hv-slot p{margin:.9rem auto 1.5rem}
.hv-slot .hv-klein{margin:1rem 0 0;font-size:.95rem;font-weight:600}
.accent-living .voet{background:var(--leisteen);margin-top:0;padding-block:3rem}
.accent-living .prijskaart{background:#fff;border-radius:14px;box-shadow:0 10px 30px rgba(20,24,43,.08)}
.accent-living .prijskaart .bedrag{color:var(--knop-donker)}
.accent-living .formvak{background:var(--tint);border-radius:16px}
.accent-living .formvak input:not([type=checkbox]),.accent-living .formvak select{border:1px solid #cfc7be;border-radius:10px}
.accent-living figure img{border-radius:14px}
.accent-living summary{font-weight:600}
.hv-s{padding-block:clamp(3.5rem,6.5vw,6rem)}
.hv-s h2,.hv-formband h2,.hv-proza h2{font-size:clamp(1.8rem,3.2vw,2.75rem);line-height:1.12;margin:0}
.hv-s .hv-tekst h2::after,.hv-kop-midden h2::after{content:"";display:block;width:28px;height:3px;background:var(--oranje);margin:1rem 0 1.3rem}
.hv-kop-midden{text-align:center;margin-bottom:clamp(1.5rem,3vw,2.5rem)}
.hv-kop-midden h2::after{margin-inline:auto}
.hv-midtekst{max-width:40rem;margin:0 auto;line-height:1.6}
.hv-midtekst p{margin:0 0 .8rem}
.hv-rij-binnen{padding-block:0}
.hv-rij-binnen .hv-tekst .hv-knop{margin-top:1.4rem}
.accent-living .hv-foto-los img{height:clamp(19rem,30vw,27rem)}
.hv-toestel-kolom figcaption{margin-top:.6rem;font-size:.85rem}
.hv-vinkjes{list-style:none;margin:0;padding:0}
.hv-vinkjes li{display:flex;gap:.75rem;margin:.85rem 0;line-height:1.5}
.hv-vinkjes li:first-child{margin-top:0}
.hv-vinkjes svg{width:24px;height:24px;flex:none;margin-top:.05rem}
.hv-lijstrij{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(1.5rem,5vw,5rem);align-items:start}
.hv-witvlak{background:#fff;border-radius:16px;padding:clamp(1.3rem,3vw,2.2rem);box-shadow:0 10px 30px rgba(20,24,43,.08)}
.hv-stappen{list-style:none;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:1rem;margin:0;padding:0}
.hv-stappen li{background:#fff;border-radius:14px;padding:1.4rem 1.2rem;margin:0;box-shadow:0 10px 30px rgba(20,24,43,.07);line-height:1.45}
.hv-stappen p{margin:.8rem 0 0}
.hv-stappen strong{display:block;font-size:1.08rem;margin-bottom:.25rem}
.hv-nummer{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--knop);color:#fff;font-weight:700}
.hv-drie{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem}
.hv-drie article{background:#fff;border-radius:14px;padding:1.6rem 1.4rem;box-shadow:0 10px 30px rgba(20,24,43,.07)}
.hv-drie h3{font-size:1.15rem;margin:.8rem 0 .5rem}
.hv-drie p{margin:0;line-height:1.5}
.hv-knoppen{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}
.hv-naast{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.hv-formband{background-color:var(--oranje);background-image:linear-gradient(120deg,transparent 22%,rgba(255,255,255,.055) 22% 44%,transparent 44% 66%,rgba(255,255,255,.055) 66% 84%,transparent 84%);color:#fff;padding-block:clamp(3.5rem,7vw,6rem)}
.hv-formrij{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.hv-formrij>div>p{font-weight:600;font-size:1.15rem;line-height:1.45;margin:1rem 0 0;max-width:27rem}
.hv-formband .hv-punten{justify-content:flex-start}
.hv-formband .formvak{background:#fff;color:var(--inkt);max-width:none;box-shadow:0 24px 60px rgba(20,24,43,.2)}
.hv-formband .formvak a{color:var(--link)}
.accent-living .hv-s .formvak{max-width:none}
.hv-tabel table,.accent-living .hv-tabel table{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 10px 30px rgba(20,24,43,.07)}
.hv-tabel th{background:var(--leisteen);color:#fff;border:0;padding:.9rem 1rem}
.hv-tabel td{padding:.9rem 1rem;border-bottom:1px solid var(--lijn)}
.hv-tabel tr:last-child td{border-bottom:0}
.hv-tabel td:first-child{font-weight:600}
.hv-tabel tbody tr:first-child td{font-weight:700;color:var(--knop-donker);font-size:1.1rem}
.hv-tabel tbody tr:first-child td:first-child{color:var(--inkt);font-size:1rem}
.hv-tabel>h2,.hv-prijsblok>h2{text-align:center}
.hv-tabel>h2::after,.hv-prijsblok>h2::after{content:"";display:block;width:28px;height:3px;background:var(--oranje);margin:1rem auto 1.5rem}
.hv-prijsblok .prijzen{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),21rem));justify-content:center;gap:1rem}
.accent-living .prijskaart{padding:1.5rem}
.accent-living .hv-prijsblok .status{display:inline-block;background:var(--zacht);color:var(--knop-donker);font-weight:600;border-radius:999px;padding:.15rem .7rem;font-size:.85rem}
.hv-prijsblok .bedrag{font-size:1.65rem}
.hv-prijsblok .bijschrift{text-align:center;margin-inline:auto}
.hv-bronnen{padding-block:1.5rem}
.hv-bronnen h2{font-size:1.1rem}
.hv-raster-faq{margin-block:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),24rem));justify-content:center}
.hv-proza{max-width:44rem;margin:0 auto;padding:clamp(3rem,6vw,5rem) 1.25rem}
.hv-proza h2{margin:2.5rem 0 1rem;font-size:clamp(1.4rem,2.4vw,1.9rem)}
.hv-proza h2:first-child{margin-top:0}
.hv-proza p{line-height:1.6;margin:0 0 1rem}
.hv-proza>p:only-child{text-align:center;margin:0}
.accent-living .controle{text-align:center;border-top:0;padding-block:1.4rem;margin:0 auto}
.hv-kiezer{background:linear-gradient(#fff,#fff)}
@font-face{font-family:"Caveat";src:url("/assets/fonts/caveat.woff2") format("woff2");font-weight:400 700;font-display:swap}
.hv-kiezer-kop{text-align:center;margin-bottom:clamp(1.8rem,3vw,2.6rem)}
.hv-kiezer-kop h2{font-size:clamp(2rem,3.6vw,3rem)}
.hv-hand{font-family:"Caveat",cursive;font-size:1.65rem;color:var(--knop);margin:0 0 .3rem;transform:rotate(-4deg);display:inline-flex;align-items:flex-end;gap:.2rem;font-weight:600}
.hv-handpijl{width:56px;height:40px;margin-bottom:-1.4rem}
.hv-plannen{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--lijn);border-radius:16px;background:#fff;padding:.6rem;gap:.6rem}
.hv-plan{display:flex;flex-direction:column;border-radius:12px;border:1px solid var(--lijn);overflow:hidden;background:#fff}
.hv-plan-boven{padding:1.4rem 1.3rem 1.3rem;display:flex;flex-direction:column}
.hv-pil-label{display:inline-flex;align-items:center;gap:.4rem;align-self:flex-start;border:1px solid var(--lijn);border-radius:999px;padding:.15rem .65rem;font-size:.8rem;font-weight:600;margin:0 0 1rem;background:#fff;color:var(--inkt)}
.hv-pil-label span{width:6px;height:6px;border-radius:50%;background:var(--oranje)}
.hv-plan h3{font-size:1.35rem;margin:0 0 .4rem}
.hv-plan-regel{font-size:.95rem;line-height:1.45;margin:0 0 1.3rem;min-height:2.9em;color:var(--grijs)}
.hv-plan-bedrag{font-size:clamp(2.1rem,3.2vw,2.6rem);font-weight:700;letter-spacing:-.03em;line-height:1;margin:0}
.hv-plan-onder{font-size:.88rem;color:var(--grijs);margin:.45rem 0 1.3rem;min-height:2.5em}
.hv-plan-knop{display:block;text-align:center;background:var(--knop);color:#fff;text-decoration:none;font-weight:700;border-radius:999px;padding:.8rem 1rem;margin-top:auto}
.hv-plan-knop:hover{background:var(--knop-donker);color:#fff}
.hv-plan-onderkant{border-top:1px solid var(--lijn);padding:1.2rem 1.3rem 1.4rem;flex:1;background:#fff}
.hv-plan-kop{font-weight:700;font-size:.95rem;margin:0 0 .8rem}
.hv-plan-onderkant ul{list-style:none;margin:0;padding:0}
.hv-plan-onderkant li{display:flex;gap:.6rem;margin:.55rem 0;font-size:.95rem;line-height:1.4}
.hv-plan-onderkant svg{width:20px;height:20px;flex:none;margin-top:.05rem}
.hv-uitgelicht .hv-plan-boven{background:var(--oranje);color:#fff}
.hv-uitgelicht .hv-plan-regel,.hv-uitgelicht .hv-plan-onder{color:#fff}
.hv-uitgelicht .hv-pil-label{border-color:transparent;color:var(--knop-donker)}
.hv-uitgelicht .hv-plan-knop{background:#fff;color:var(--knop-donker)}
.hv-uitgelicht .hv-plan-knop:hover{background:var(--zacht);color:var(--knop-donker)}
.hv-uitgelicht{border-color:var(--oranje)}
.hv-kiezer .bijschrift{text-align:center;margin:1rem auto 0;max-width:none}
.hv-twijfel{display:flex;align-items:center;gap:1.2rem;background:#fbe9dc;border-radius:16px;padding:1.3rem 1.6rem;margin-top:clamp(1.8rem,3vw,2.6rem)}
.hv-twijfel img{width:56px;height:56px;transform:rotate(-8deg)}
.hv-twijfel div{flex:1}
.hv-twijfel h3{font-size:1.35rem;color:var(--knop-donker);margin:0 0 .2rem}
.hv-twijfel p{margin:0}
.hv-tabel td:nth-child(3),.hv-tabel th:nth-child(3){background:#fdf5ef}
.hv-tabel th:nth-child(3){background:var(--knop);color:#fff}
.hv-film{position:relative;width:min(19rem,62%);aspect-ratio:500/1082;border-radius:22px 22px 0 0;overflow:hidden;background:#f5f2ea;box-shadow:0 18px 44px rgba(20,24,43,.2);align-self:flex-start;border:6px solid #1f2430;border-bottom:0}
.hv-film-beeld{position:absolute;inset:0;width:100%;height:auto;max-height:none;border-radius:0}
.hv-film-beeld:not(:first-of-type){opacity:0}
.accent-living .hv-toestel .hv-film-beeld{width:100%;box-shadow:none;border-radius:0}
.hv-tik{position:absolute;left:26.5%;top:38.5%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:rgba(196,112,58,.35);border:2px solid #c4703a;opacity:0;pointer-events:none}
@media (prefers-reduced-motion:no-preference){
  .hv-film-beeld{opacity:0;animation:hv-film 16s ease-in-out infinite both;animation-delay:calc(var(--i) * 4s)}
  .hv-film-beeld:first-of-type{opacity:1}
  .hv-tik{animation:hv-tik 16s ease-out infinite}
  .hv-beweeg .hv-foto-los img{animation:hv-zoom 22s ease-in-out infinite alternate}
  .hv-beweeg .hv-vinkjes li{animation:hv-in .7s ease-out both}
  .hv-beweeg .hv-vinkjes li:nth-child(2){animation-delay:.12s}
  .hv-beweeg .hv-vinkjes li:nth-child(3){animation-delay:.24s}
  .hv-beweeg .hv-vinkjes li:nth-child(4){animation-delay:.36s}
  .hv-formband{background-size:200% 100%;animation:hv-banen 40s linear infinite alternate}
  .hv-nummer{animation:hv-puls 3.2s ease-in-out infinite}
  .hv-stappen li:nth-child(2) .hv-nummer{animation-delay:.8s}
  .hv-stappen li:nth-child(3) .hv-nummer{animation-delay:1.6s}
  .hv-stappen li:nth-child(4) .hv-nummer{animation-delay:2.4s}
  .hv-drie article,.hv-stappen li{transition:transform .2s ease,box-shadow .2s ease}
  .hv-drie article:hover,.hv-stappen li:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(20,24,43,.12)}
  @supports (animation-timeline:view()){
    .hv-beweeg .hv-stappen li,.hv-beweeg .hv-drie article,.hv-beweeg .hv-foto-los,.hv-beweeg .hv-tekst{animation:hv-in linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
    .hv-beweeg .hv-stappen li:nth-child(2),.hv-beweeg .hv-drie article:nth-child(2){animation-range:entry 8% entry 63%}
    .hv-beweeg .hv-stappen li:nth-child(3),.hv-beweeg .hv-drie article:nth-child(3){animation-range:entry 16% entry 71%}
    .hv-beweeg .hv-stappen li:nth-child(4){animation-range:entry 24% entry 79%}
  }
}
@keyframes hv-film{0%{opacity:0;transform:translateY(0)}4%{opacity:1}23%{opacity:1;transform:translateY(-3%)}27%,100%{opacity:0;transform:translateY(-3%)}}
@keyframes hv-tik{0%,40%{opacity:0;transform:scale(.6)}43%{opacity:1;transform:scale(1)}47%{opacity:0;transform:scale(1.5)}100%{opacity:0}}
@keyframes hv-zoom{from{transform:scale(1)}to{transform:scale(1.07)}}
@keyframes hv-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes hv-banen{from{background-position:0 0}to{background-position:100% 0}}
@keyframes hv-puls{0%,100%{box-shadow:0 0 0 0 rgba(196,112,58,.45)}50%{box-shadow:0 0 0 9px rgba(196,112,58,0)}}
.hv-foto-los{overflow:hidden;border-radius:16px}
.hv-foto-los figcaption{background:#fff}
.hv-bento-kop{margin-bottom:clamp(1.8rem,3vw,2.6rem)}
.hv-bento-kop h2{font-size:clamp(2.2rem,4.2vw,3.4rem);letter-spacing:-.03em;margin:0}
.hv-bento-kop p{font-size:clamp(1.5rem,2.8vw,2.3rem);color:#9aa0ae;font-weight:500;letter-spacing:-.02em;margin:.2rem 0 0;line-height:1.15}
.hv-bento{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.1rem}
.hv-bk{position:relative;border-radius:22px;padding:1.6rem 1.6rem 1.5rem;overflow:hidden;display:flex;flex-direction:column;gap:1.2rem;min-height:15rem}
.hv-bk h3{font-size:1.25rem;margin:0 0 .5rem}
.hv-bk-tekst p{margin:0;font-size:.98rem;line-height:1.5;max-width:30rem}
.hv-bk-hoog{grid-column:1/3;grid-row:1/3}
.hv-bk-breed{grid-column:3/7;flex-direction:row;align-items:flex-start}
.hv-bk-breed .hv-bk-tekst{flex:1}
.hv-bk-blauw{grid-column:3/5}
.hv-bk-oranje{grid-column:5/7}
.hv-bk-half:nth-of-type(5){grid-column:1/4}
.hv-bk-half:nth-of-type(6){grid-column:4/7}
.hv-bk-donker{background:var(--inkt);color:#fff}
.hv-bk-donker p{color:#c9ccd6}
.hv-bk-creme{background:linear-gradient(135deg,#fdf8f1,#f8e8d6)}
.hv-bk-blauw{background:#eef1fb}
.hv-bk-oranje{background:linear-gradient(160deg,#fbefe3,#f3d3b4)}
.hv-bk-licht{background:linear-gradient(135deg,#f3f6fb,#e8eef7)}
.hv-vb{display:inline-block;font-size:.72rem;font-weight:600;border-radius:999px;padding:.12rem .55rem;background:rgba(20,24,43,.07);color:var(--grijs)}
.hv-bk-donker .hv-vb{background:rgba(255,255,255,.12);color:#c9ccd6}
.hv-chat{display:flex;flex-direction:column;gap:.55rem;align-items:flex-start;margin-top:auto;position:relative;z-index:1}
.hv-chat p{margin:0;border-radius:14px;padding:.6rem .85rem;font-size:.92rem;line-height:1.4;max-width:92%}
.hv-vraag{background:#2a2f45;color:#fff;align-self:flex-end}
.hv-antwoord{background:#fff;color:var(--inkt)}
.hv-bk-donker .hv-antwoord{color:var(--inkt)}
.hv-thema>.hv-vb{justify-self:start}
.hv-status{background:var(--oranje);color:#fff;font-weight:700;border-radius:999px!important;padding:.4rem .9rem!important}
.hv-ai-lijn{position:absolute;left:0;right:0;bottom:3.4rem;width:100%;height:42%;opacity:.9}
.hv-bronchips{list-style:none;display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;position:relative;z-index:1}
.hv-bronchips li{background:#fff;color:var(--inkt);border-radius:10px;padding:.35rem .65rem;font-size:.82rem;font-weight:600;margin:0}
.hv-correctie{background:#fff;border-radius:16px;padding:1rem;width:min(22rem,100%);box-shadow:0 12px 30px rgba(20,24,43,.08);flex:none}
.hv-cor-kop{display:flex;justify-content:space-between;align-items:center;color:var(--grijs);font-size:.9rem;margin-bottom:.6rem}
.hv-cor-rij{display:flex;justify-content:space-between;gap:.8rem;border-radius:10px;padding:.55rem .7rem;font-size:.92rem;margin-top:.4rem}
.hv-fout{background:#fbf3f2}
.hv-fout span:last-child{color:#b3261e;font-weight:600}
.hv-goed{background:#eef7ee;color:#2e6b34;font-weight:600}
.hv-thema{display:grid;gap:.7rem;margin-top:auto}
.hv-thema>div{display:grid;grid-template-columns:4.5rem 1fr auto;align-items:center;gap:.7rem;font-size:.92rem}
.hv-thema i{height:9px;border-radius:9px;background:linear-gradient(90deg,#5aa469 var(--w),#e2e6ee var(--w))}
.hv-thema i.hv-min{background:linear-gradient(90deg,#d9534f var(--w),#e2e6ee var(--w))}
.hv-plus{color:#2e6b34;font-size:.82rem}
.hv-min-t{color:#b3261e;font-size:.82rem}
.hv-melding{margin-top:auto;display:flex;gap:.8rem;align-items:center;background:#fff;border-radius:14px;padding:.85rem 1rem;box-shadow:0 12px 30px rgba(20,24,43,.12);font-size:.92rem}
.hv-melding strong{display:block}
.hv-melding>span:nth-child(2){flex:1;color:var(--grijs)}
.hv-bel{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--zacht);color:var(--knop);flex:none}
.hv-bel svg{width:20px;height:20px}
.hv-pad{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:auto}
.hv-pad span{background:#2a2f45;color:#fff;border-radius:999px;padding:.4rem .85rem;font-size:.88rem;font-weight:600}
.hv-pad i{width:26px;height:2px;background:var(--oranje)}
.hv-pad .hv-pad-doel{background:var(--oranje)}
.hv-pad-zwak{margin-top:0;opacity:.55}
.hv-pad-zwak i{background:#6b7085}
.hv-stapels{list-style:none;margin:auto 0 0;padding:0;display:grid;gap:.45rem;justify-items:end}
.hv-stapels li{background:#fff;border-radius:12px;padding:.55rem .9rem;margin:0;font-size:.92rem;width:min(20rem,100%);color:var(--grijs)}
.hv-stapels li:first-child,.hv-stapels li:last-child{opacity:.55}
.hv-stapels .hv-nu{color:var(--inkt);font-weight:600;box-shadow:0 10px 26px rgba(20,24,43,.12);transform:translateX(-10px)}
.hv-bento-sectie{padding-bottom:clamp(3rem,5vw,4.5rem)}
.hv-daarna-kop{font-size:1.15rem;margin:2.2rem 0 1rem}
.hv-daarna{list-style:none;margin:0;padding:0;display:grid;gap:.8rem;position:relative}
.hv-daarna::before{content:"";position:absolute;left:17px;top:18px;bottom:18px;width:2px;background:#ead6c5}
.hv-daarna li{display:flex;gap:.9rem;align-items:center;margin:0;line-height:1.45;position:relative}
.hv-daarna span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fff;border:2px solid var(--oranje);color:var(--knop-donker);font-weight:700;flex:none}
.hv-naast .formvak{background:#fff;box-shadow:0 18px 44px rgba(20,24,43,.1)}
.hv-naast{align-items:center}
.hv-bento-onder{max-width:46rem;margin:clamp(1.8rem,3vw,2.4rem) auto 0;text-align:center;line-height:1.6;font-size:1.05rem}
@media (prefers-reduced-motion:no-preference){
  .hv-ai-lijn path:first-child{stroke-dasharray:600;stroke-dashoffset:600;animation:hv-teken 2.4s ease-out .3s forwards}
  .hv-status{animation:hv-in .6s ease-out 1.2s both}
  .hv-melding{animation:hv-melding 6s ease-in-out infinite}
  .hv-stapels .hv-nu{animation:hv-nu 4s ease-in-out infinite alternate}
}
@keyframes hv-teken{to{stroke-dashoffset:0}}
@keyframes hv-melding{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes hv-nu{from{transform:translateX(-10px)}to{transform:translateX(-18px)}}
/* Cohosting als verhaal */
.hv-hand-midden{justify-content:center}
.hv-taken-rij,.hv-grafiek-rij,.hv-plaatsen-rij,.hv-nagekeken-rij{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.hv-taken{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.hv-taken-kol{background:#f4f5f8;border-radius:18px;padding:1.2rem}
.hv-taken-wij{background:var(--oranje);color:#fff}
.hv-taken-kop{font-weight:700;margin:0 0 .8rem}
.hv-taken ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.hv-taken li{margin:0;border-radius:10px;padding:.55rem .75rem;font-size:.95rem;font-weight:600}
.hv-taken-van li{background:#fff;color:#9aa0ae;text-decoration:line-through}
.hv-taken-van .hv-blijft{color:var(--knop-donker);text-decoration:none;border:2px solid var(--oranje);background:#fff8f2}
.hv-taken-kol{position:relative}
.hv-hand-blijft{position:absolute;left:1rem;bottom:-2.6rem;font-size:1.35rem;margin:0}
.hv-hand-blijft .hv-handpijl{transform:rotate(200deg) scaleX(-1);margin:0 0 .4rem}
.hv-taken{margin-bottom:2.4rem}
.hv-taken-naar li{background:#fff;color:var(--inkt)}
.hv-tijdlijn{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;position:relative}
.hv-tijdlijn::before{content:"";position:absolute;left:12%;right:12%;top:22px;height:3px;background:var(--oranje);border-radius:3px}
.hv-tijdlijn li{position:relative;margin:0;text-align:center;line-height:1.45}
.hv-tijdlijn strong{display:block;font-size:1.1rem;margin:.9rem 0 .3rem}
.hv-tl-bol{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#fff;border:3px solid var(--oranje);color:var(--knop-donker);font-weight:700;position:relative}
.hv-grafiek{position:relative;background:#fff;border-radius:22px;padding:1.6rem;box-shadow:0 14px 40px rgba(20,24,43,.09)}
.hv-staven{margin-top:2.6rem}
.hv-vlak{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;height:16rem;align-items:end}
.hv-staaf{display:flex;flex-direction:column;justify-content:flex-end;height:100%}
.hv-labels{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;text-align:center}
.hv-labels p{margin:.6rem 0 0;font-size:.88rem;font-weight:600;color:var(--grijs)}
.hv-st-deel{height:var(--h);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;text-align:center;padding:0 .3rem}
.hv-st-basis{background:#e3e7ee;color:var(--inkt)}
.hv-st-onder{border-radius:0 0 10px 10px}
.hv-st-extra{display:grid;grid-template-columns:1fr 1fr;border-radius:10px 10px 0 0;overflow:hidden;margin-bottom:2px;padding:0}
.hv-st-helft{display:grid;place-items:center;color:#fff;padding:0 .2rem}
.hv-st-jij{background:#3f7d4b}
.hv-st-wij{background:var(--knop)}
.hv-nullijn{position:absolute;left:-.4rem;right:-.4rem;bottom:var(--h);border-top:2px dashed var(--knop);font-style:normal;pointer-events:none}
.hv-nullijn b{position:absolute;left:0;top:-1.45rem;font-size:.78rem;color:var(--knop-donker);background:#fff;padding:0 .3rem}
.hv-hand-grafiek{position:absolute;right:1.2rem;top:1.1rem;max-width:15rem;font-size:1.4rem;line-height:1.1;text-align:right}
.hv-hand-grafiek{flex-direction:column;align-items:flex-end}
.hv-hand-grafiek .hv-handpijl{transform:scaleX(-1) rotate(-15deg);margin:.1rem 3.5rem 0 0;width:50px;height:36px}
.hv-grafiek figcaption{font-size:.88rem;color:var(--grijs);margin-top:.8rem}
.hv-plaatsen{list-style:none;margin:0;padding:0;display:flex;gap:clamp(.6rem,2vw,1.2rem);justify-content:center}
.hv-plaatsen li{margin:0;width:clamp(3.4rem,9vw,5.5rem);color:var(--oranje)}
.hv-plaatsen svg{width:100%;height:auto;display:block}
.hv-nagekeken{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
.hv-nagekeken li{display:flex;align-items:center;gap:.8rem;background:#fff;border-radius:14px;padding:.95rem 1.1rem;margin:0;box-shadow:0 10px 30px rgba(20,24,43,.07);font-weight:600}
.hv-nagekeken svg{width:28px;height:28px;flex:none}
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    .hv-taken-van li:not(.hv-blijft){animation:hv-weg linear both;animation-timeline:view();animation-range:cover calc(18% + var(--n) * 5%) cover calc(26% + var(--n) * 5%)}
    .hv-taken-naar li{animation:hv-erbij linear both;animation-timeline:view();animation-range:cover calc(20% + var(--n) * 5%) cover calc(28% + var(--n) * 5%)}
    .hv-tijdlijn::before{transform-origin:left;animation:hv-groei linear both;animation-timeline:view();animation-range:entry 30% cover 45%}
    .hv-tijdlijn li{animation:hv-in linear both;animation-timeline:view();animation-range:entry calc(25% + var(--n) * 10%) cover calc(35% + var(--n) * 6%)}
    .hv-staaf{transform-origin:bottom;animation:hv-staaf linear both;animation-timeline:view();animation-range:entry 30% cover 50%}
    .hv-st-extra{animation:hv-in linear both;animation-timeline:view();animation-range:cover 35% cover 50%}
    .hv-plaatsen li{animation:hv-plop linear both;animation-timeline:view();animation-range:entry calc(30% + var(--n) * 8%) cover calc(40% + var(--n) * 5%)}
    .hv-nagekeken li{animation:hv-in linear both;animation-timeline:view();animation-range:entry calc(20% + var(--n) * 8%) cover calc(35% + var(--n) * 5%)}
    .hv-vink{stroke-dasharray:20;animation:hv-vinkje linear both;animation-timeline:view();animation-range:entry 60% cover 40%}
  }
  .hv-plaatsen li:hover{transform:translateY(-6px)}
  .hv-plaatsen li{transition:transform .2s}
}
@keyframes hv-weg{from{opacity:1;color:var(--inkt);text-decoration-color:transparent}to{opacity:.55;color:#9aa0ae;text-decoration-color:currentColor}}
@keyframes hv-erbij{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}
@keyframes hv-groei{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes hv-staaf{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes hv-plop{from{opacity:0;transform:scale(.4) translateY(20px)}to{opacity:1;transform:none}}
@keyframes hv-vinkje{from{stroke-dashoffset:20}to{stroke-dashoffset:0}}
/* Gastenwijzer als verhaal */
.hv-hand-film{position:absolute;right:-1rem;top:1.2rem;font-size:1.4rem;max-width:9rem;line-height:1.05;text-align:right;flex-direction:column;align-items:flex-end}
.hv-hand-film .hv-handpijl{transform:rotate(80deg) scaleX(-1);margin:0}
.hv-toestel-kolom{position:relative}
.hv-tijdlijn-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.hv-tijdlijn-3 p{margin:.9rem 0 0;font-weight:600}
.hv-gw-verder{margin-top:2.6rem}
.hv-functies{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.hv-functie{background:#fff;border-radius:20px;padding:1.3rem 1.3rem 1.5rem;box-shadow:0 10px 30px rgba(20,24,43,.07)}
.hv-functie h3{font-size:1.15rem;margin:1rem 0 .4rem}
.hv-functie p{margin:0;line-height:1.5;font-size:.97rem}
.hv-f-beeld{height:9.5rem;border-radius:14px;background:#fbf3ec;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:.6rem}
.hv-f-wifi .hv-f-beeld,.hv-f-poster .hv-f-beeld{background:#eef1fb}
.hv-f-kaartje{background:#2f3a33;color:#fff;border-radius:10px;padding:.55rem .8rem;font-size:.75rem;display:grid}
.hv-f-kaartje b{font-family:Georgia,serif;font-size:1.15rem;font-weight:400}
.hv-qr-teken{display:grid;grid-template-columns:repeat(4,14px);gap:3px;background:#fff;padding:8px;border-radius:8px}
.hv-qr-teken i{width:14px;height:14px;background:#14182b;border-radius:2px}
.hv-qr-teken i:nth-child(3n+2),.hv-qr-teken i:nth-child(7){background:#fff}
.hv-golven{position:relative;width:46px;height:46px}
.hv-golven b{position:absolute;left:50%;bottom:0;border:3px solid var(--oranje);border-color:var(--oranje) transparent transparent;border-radius:50%;transform:translateX(-50%)}
.hv-golven b:nth-child(1){width:14px;height:14px}
.hv-golven b:nth-child(2){width:30px;height:30px}
.hv-golven b:nth-child(3){width:46px;height:46px}
.hv-talen{position:relative;height:2.6rem;width:100%;text-align:center;font-family:Georgia,serif;font-size:2rem;color:#2f3a33}
.hv-talen span{position:absolute;inset:0;opacity:0}
.hv-talen span:first-child{opacity:1}
.hv-pin{position:relative;width:38px}
.hv-pin svg{width:38px;height:auto;display:block;position:relative;z-index:1}
.hv-pin i{position:absolute;left:50%;bottom:-6px;width:30px;height:8px;margin-left:-15px;border-radius:50%;background:rgba(196,112,58,.35)}
.hv-knopje{position:relative;background:var(--knop);color:#fff;border-radius:999px;padding:.6rem 1.1rem;font-weight:700;font-size:.85rem;overflow:hidden}
.hv-knopje b{position:absolute;inset:0;display:grid;place-items:center;background:#3f7d4b;opacity:0}
.hv-poster{width:5.2rem;height:7.2rem;background:#fff;border-radius:6px;box-shadow:0 8px 20px rgba(20,24,43,.12);display:grid;grid-template-rows:repeat(3,auto) 1fr;gap:5px;padding:8px}
.hv-poster i{height:6px;border-radius:3px;background:#e3e7ee}
.hv-poster i:first-child{width:70%;background:var(--oranje)}
.hv-poster span{border-radius:4px;background:repeating-linear-gradient(90deg,#14182b 0 4px,#fff 4px 7px)}
@media (prefers-reduced-motion:no-preference){
  .hv-talen span{animation:hv-taal 10s infinite;animation-delay:calc(var(--n) * 2s)}
  .hv-talen span:first-child{opacity:0}
  .hv-qr-teken i{animation:hv-qr 4s ease-in-out infinite;animation-delay:calc(var(--n) * .06s)}
  .hv-golven b{animation:hv-golf 2.4s ease-in-out infinite}
  .hv-golven b:nth-child(2){animation-delay:.25s}
  .hv-golven b:nth-child(3){animation-delay:.5s}
  .hv-pin{animation:hv-stuiter 2.2s ease-in-out infinite}
  .hv-knopje b{animation:hv-verstuurd 4s ease-in-out infinite}
  .hv-knopje{animation:hv-druk 4s ease-in-out infinite}
  .hv-poster{animation:hv-print 5s ease-in-out infinite}
  .hv-f-kaartje{animation:hv-melding 5s ease-in-out infinite}
  .hv-f-2{animation-delay:1.2s}
  .hv-functie{transition:transform .2s ease,box-shadow .2s ease}
  .hv-functie:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(20,24,43,.12)}
  @supports (animation-timeline:view()){
    .hv-functie{animation:hv-in linear both;animation-timeline:view();animation-range:entry calc(10% + var(--n) * 6%) cover calc(25% + var(--n) * 4%)}
  }
}
@keyframes hv-taal{0%{opacity:0;transform:translateY(12px)}3%,16%{opacity:1;transform:none}19%,100%{opacity:0;transform:translateY(-12px)}}
@keyframes hv-qr{0%,10%{transform:scale(0)}25%,85%{transform:scale(1)}100%{transform:scale(0)}}
@keyframes hv-golf{0%,100%{opacity:.25}50%{opacity:1}}
@keyframes hv-stuiter{0%,100%{transform:translateY(0)}40%{transform:translateY(-14px)}60%{transform:translateY(0)}}
@keyframes hv-verstuurd{0%,45%{opacity:0}55%,90%{opacity:1}100%{opacity:0}}
@keyframes hv-druk{0%,40%,60%,100%{transform:scale(1)}48%{transform:scale(.94)}}
@keyframes hv-print{0%{transform:translateY(40px);opacity:0}25%,85%{transform:none;opacity:1}100%{transform:translateY(-10px);opacity:0}}
/* Websitekiezer en Binnenkort */
.hv-onder-knop{text-align:center;margin-top:1.8rem}
.hv-onder-knop p{margin:0}
.hv-optie{display:flex;align-items:center;gap:1.1rem;margin-top:1rem;background:#fff;border:2px dashed var(--oranje);border-radius:16px;padding:1.1rem 1.4rem}
.hv-optie-plus{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--oranje);color:#fff;font-size:1.6rem;font-weight:700;flex:none}
.hv-optie div{flex:1}
.hv-optie h3{font-size:1.15rem;margin:0 0 .2rem}
.hv-optie p{margin:0;line-height:1.45}
.hv-optie .hv-optie-prijs{font-size:1.5rem;font-weight:700;color:var(--knop-donker);white-space:nowrap}
.hv-binnenkort-rij{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.hv-bk-lijst{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.hv-bk-lijst li{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:0;padding:1rem 1.2rem;border:1.5px dashed #d9cfc5;border-radius:14px;background:rgba(255,255,255,.6)}
.hv-bk-lijst h3{font-size:1.02rem;margin:0 0 .2rem}
.hv-bk-lijst li p{margin:0;font-size:.92rem;line-height:1.4;color:var(--grijs)}
.hv-bk-lijst .hv-bk-prijs{white-space:nowrap;font-weight:600;color:var(--grijs);font-size:.88rem;text-align:right}
.hv-binnenkort .bijschrift{margin-top:.8rem}
@media (max-width:860px){
  .hv-rij{grid-template-columns:minmax(0,1fr)}
  .hv-omgekeerd .hv-tekst{order:0}
  .hv-foto{max-width:none}
  .hv-zwevend{right:.75rem;bottom:2.5rem}
  .hv-raster{grid-template-columns:minmax(0,1fr)}
  .hv-nav nav{order:3;width:100%}
  .hv-nav ul{gap:0 1rem}
  .hv-nav nav a{font-size:.9rem;min-height:44px;display:inline-flex;align-items:center}
  .hv-thuis{padding-bottom:13rem}
  .hv-product{margin-top:-11rem}
  .hv-band{height:auto;padding-block:2rem;margin-bottom:3rem}
  .hv-band ul{padding-top:0}
  .hv-band li{width:calc(50% - .5rem);aspect-ratio:1/1.08;padding:0 .75rem}
  .hv-band span{font-size:.78rem}
  .hv-kaartjes{grid-template-columns:minmax(0,1fr)}
  .hv-lijstrij,.hv-naast,.hv-formrij{grid-template-columns:minmax(0,1fr)}
  .hv-stappen{grid-auto-flow:row}
  .hv-plannen{grid-template-columns:minmax(0,1fr)}
  .hv-binnenkort-rij{grid-template-columns:minmax(0,1fr)}
  .hv-bk-lijst li{flex-direction:column;align-items:flex-start}
  .hv-bk-lijst .hv-bk-prijs{text-align:left}
  .hv-optie{flex-wrap:wrap}
  .hv-functies{grid-template-columns:minmax(0,1fr)}
  .hv-hand-film{position:static;align-items:flex-start;text-align:left;margin-top:.6rem}
  .hv-hand-film .hv-handpijl{display:none}
  .hv-taken-rij,.hv-grafiek-rij,.hv-plaatsen-rij,.hv-nagekeken-rij{grid-template-columns:minmax(0,1fr)}
  .hv-tijdlijn{grid-template-columns:minmax(0,1fr);text-align:left}
  .hv-tijdlijn::before{left:22px;right:auto;top:10px;bottom:10px;width:3px;height:auto}
  .hv-tijdlijn li{text-align:left;padding-left:3.6rem;min-height:46px}
  .hv-tl-bol{position:absolute;left:0;top:0}
  .hv-tijdlijn strong{margin-top:.2rem}
  .hv-hand-grafiek{position:static;text-align:left;margin:.6rem 0 0}
  .hv-hand-grafiek{align-items:flex-start}
  .hv-hand-grafiek .hv-handpijl{display:none}
  .hv-vlak{height:13rem;gap:.6rem}
  .hv-labels{gap:.6rem}
  .hv-st-deel{font-size:.75rem}
  .hv-bento{grid-template-columns:minmax(0,1fr)}
  .hv-bento>.hv-bk{grid-column:auto!important;grid-row:auto!important}
  .hv-bk-breed{flex-direction:column}
  .hv-bk-hoog{min-height:24rem}
  .hv-twijfel{flex-wrap:wrap}
}
@media (max-width:480px){
  .accent-living .hv-tabel table{min-width:0;font-size:.88rem}
  .hv-tabel th,.hv-tabel td{padding:.7rem .55rem}
  .hv-pil{flex-direction:column;border-radius:20px;padding:.6rem}
  .hv-pil input{text-align:center}
  .hv-nav{gap:.3rem .5rem;padding:.5rem .55rem .25rem .7rem}
  .hv-navknop{font-size:.8rem;padding:.45rem .7rem;white-space:nowrap}
  .hv-nav .merk{font-size:1rem;gap:.4rem}
  .hv-nav .merk img{width:28px;height:28px}
}
