:root{--font-heading:"Archivo", sans-serif;--font-body:"Source Serif 4", serif;--font-mono:"IBM Plex Mono", monospace;--blauw:#106bfb;--blauw-diep:#0b4fc0;--nacht:#0a2a63;--wit:#fff;--grijs:#f2f4f7;--inkt:#111418;--zacht:#4f5866;--lijn:#d9dee6;--geel:#f6c400;--fout:#c4291c}body{background:var(--wit);color:var(--inkt)}::selection{background:var(--geel);color:var(--inkt)}:focus-visible{outline:2px solid var(--inkt);outline-offset:3px}.held :focus-visible,.belofte :focus-visible,.contact :focus-visible,.kop :focus-visible{outline-color:#fff}.afspraak :focus-visible{outline-color:var(--blauw-diep)}h1,h2{font-family:var(--site-serif);letter-spacing:-.025em;text-wrap:balance;font-weight:800;line-height:1.05}h2{font-size:clamp(32px,3.4vw,48px)}.ico{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.skip{background:var(--inkt);color:#fff;z-index:50;font-family:var(--site-serif);border-radius:8px;padding:12px 16px;position:absolute;top:-64px;left:16px}.skip:focus{top:16px}.knop{background:var(--blauw);color:#fff;min-height:52px;font-family:var(--site-serif);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 24px;font-size:16px;font-weight:700;text-decoration:none;transition:background-color .2s,transform .15s;display:inline-flex}.knop:hover{background:var(--blauw-diep)}.knop:active{transform:scale(.98)}.knop:disabled{opacity:.7;cursor:progress}.knop--wit{color:var(--blauw-diep);background:#fff}.knop--wit:hover{background:var(--grijs)}.knop--vol{width:100%}.kop{z-index:20;background:var(--blauw);color:#fff;font-family:var(--site-serif);transition:box-shadow .3s;position:sticky;top:0}.kop.is-gescrold{box-shadow:0 8px 24px -12px #0a2a6380}.kop__binnen{align-items:center;gap:32px;height:72px;display:flex}.kop__logo img{width:auto;height:32px}.kop__nav{gap:24px;margin-left:auto;font-size:15px;font-weight:600;display:flex}.kop__nav a{opacity:.85;padding:12px 0;text-decoration:none}.kop__nav a:hover{opacity:1;text-underline-offset:6px;text-decoration:underline}.kop__tel{font-variant-numeric:tabular-nums;background:#ffffff24;border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-weight:700;text-decoration:none;transition:background-color .2s;display:inline-flex}.kop__tel:hover{background:#ffffff3d}.held{background:var(--blauw);color:#fff;padding:48px 0 96px}.held__grid{grid-template-columns:1fr 440px;align-items:start;gap:64px;display:grid}.held h1{letter-spacing:-.035em;max-width:11ch;margin-top:24px;font-size:clamp(44px,6vw,88px);line-height:.98}.held__lead{color:#fff;max-width:40ch;margin-top:24px;font-size:20px;line-height:1.5}.held__feiten{flex-wrap:wrap;gap:32px 48px;margin:48px 0 0;padding:0;list-style:none;display:flex}.held__feiten li{gap:4px;display:grid}.held__feiten b{font-family:var(--site-serif);letter-spacing:-.03em;font-variant-numeric:tabular-nums;align-items:center;gap:12px;font-size:40px;font-weight:800;line-height:1;display:inline-flex}.held__feiten span{color:#fff;font-size:15px}.stip{background:#ffb547;border-radius:50%;flex:none;width:10px;height:10px}.is-open .stip{animation:puls 2.4s var(--ease-uit) infinite;background:#3ddc84}@keyframes puls{0%{box-shadow:0 0 #3ddc848c}70%,to{box-shadow:0 0 0 10px #3ddc8400}}.afspraak{color:var(--inkt);background:#fff;border-radius:16px;gap:16px;padding:32px;display:grid;box-shadow:0 32px 64px -32px #0a2a6399}.afspraak h2{font-size:28px}.afspraak__hint{color:var(--zacht);margin-top:-8px;font-size:16px}.veld{gap:8px;display:grid}.veld--twee{grid-template-columns:1fr 1fr;gap:12px}.veld--twee>div{align-content:start;gap:8px;display:grid}label{font-family:var(--site-serif);font-size:15px;font-weight:700}input,select{font:inherit;width:100%;min-height:48px;color:var(--inkt);caret-color:var(--blauw);background:#fff;border:1.5px solid #b9c1cd;border-radius:8px;padding:0 12px;font-size:16px;transition:border-color .15s,box-shadow .15s}input::placeholder{color:#6b7380}input:hover,select:hover{border-color:#8892a0}input:focus,select:focus{border-color:var(--blauw);outline:none;box-shadow:0 0 0 3px #106bfb40}[aria-invalid=true]{border-color:var(--fout)}.veld__hint{color:var(--zacht);font-size:14px}.veld__fout{color:var(--fout);font-size:14px;font-family:var(--site-serif);gap:8px;font-weight:600;display:flex}.veld__fout:before{content:"!";background:var(--fout);color:#fff;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font-size:12px;display:grid}.plaat{border:2px solid var(--inkt);background:var(--geel);border-radius:8px;align-items:stretch;transition:box-shadow .15s;display:flex;overflow:hidden}.plaat:focus-within{box-shadow:0 0 0 3px #106bfb59}.plaat__nl{color:#fff;width:40px;font-family:var(--site-mono);background:#1a3fa6;place-items:end center;padding-bottom:6px;font-size:13px;font-weight:700;display:grid}.plaat input{font-family:var(--site-mono);letter-spacing:.08em;text-transform:uppercase;text-align:center;min-height:60px;box-shadow:none;background:0 0;border:0;border-radius:0;font-size:26px;font-weight:700}.plaat input::placeholder{color:#11141873}.plaat input:focus{box-shadow:none}.plaat:has([aria-invalid=true]){border-color:var(--fout)}.honing{position:absolute;left:-9999px}.afspraak__ok{color:#12643a;font-family:var(--site-serif);background:#e7f6ee;border-radius:8px;align-items:flex-start;gap:8px;padding:12px 16px;font-size:15px;font-weight:600;display:flex}.afspraak__ok:not([hidden]){animation:in .3s var(--ease-uit)}@keyframes in{0%{opacity:0;transform:translateY(4px)}}.afspraak__of{text-align:center;color:var(--zacht);font-size:15px}.afspraak__of a{color:var(--blauw-diep);font-weight:700}.afspraak__demo{text-align:center;color:var(--zacht);border-top:1px dashed var(--lijn);padding-top:12px;font-size:14px}.band{height:clamp(240px,36vw,520px);overflow:hidden}.band img{object-fit:cover;object-position:50% 35%;width:100%;height:100%}.diensten{padding:96px 0}.diensten__grid{grid-template-columns:5fr 7fr;align-items:start;gap:64px;display:grid}.diensten__intro{gap:24px;display:grid;position:sticky;top:104px}.diensten__intro p{color:var(--zacht);max-width:40ch}.diensten__intro img{aspect-ratio:3/2;object-fit:cover;border-radius:12px;width:100%}.werkorder{border-collapse:collapse;width:100%}.werkorder tr{border-top:2px solid var(--inkt)}.werkorder tr:last-child{border-bottom:2px solid var(--inkt)}.werkorder th{font-family:var(--site-serif);letter-spacing:-.02em;text-align:left;vertical-align:top;width:40%;padding:24px 24px 24px 0;font-size:28px;font-weight:800}.werkorder td{color:var(--zacht);vertical-align:top;padding:28px 0 24px}.belofte{background:var(--nacht);color:#fff;padding:96px 0}.belofte__binnen{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:48px;display:flex}.belofte h2{max-width:16ch;font-size:clamp(36px,5vw,72px)}.belofte mark{background:var(--geel);color:var(--inkt);border-radius:4px;padding:0 12px}.reviews{padding:96px 0}.reviews__kop{flex-wrap:wrap;align-items:end;gap:32px;display:flex}.reviews__cijfer{font-family:var(--site-serif);letter-spacing:-.05em;color:var(--blauw);font-size:clamp(88px,12vw,160px);font-weight:800;line-height:.8}.reviews__kop h2{max-width:16ch;font-size:clamp(24px,2.4vw,32px)}.reviews__rij{grid-template-columns:repeat(3,1fr);gap:32px;margin-top:64px;display:grid}.reviews blockquote{border-top:2px solid var(--inkt);margin:0;padding-top:24px}.reviews blockquote p{font-size:18px;font-style:italic;line-height:1.6}footer{font-family:var(--site-serif);margin-top:16px;font-size:15px;font-weight:700}.occasions{background:var(--grijs);padding:96px 0}.occasions__grid{grid-template-columns:7fr 5fr;align-items:center;gap:64px;display:grid}.occasions__grid>img{aspect-ratio:4/3;object-fit:cover;border-radius:16px;width:100%}.occasions__grid>div{justify-items:start;gap:24px;display:grid}.occasions p{color:var(--zacht);max-width:42ch}.occasions blockquote{background:#fff;border-radius:12px;margin:0;padding:24px}.occasions blockquote p{color:var(--inkt);font-style:italic}.contact{background:var(--blauw);color:#fff;padding:96px 0 32px}.contact__grid{grid-template-columns:1fr 1fr;gap:64px;display:grid}.contact h2{font-size:clamp(28px,3vw,40px)}.contact__tel{font-family:var(--site-serif);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:24px 0;font-size:clamp(44px,6vw,80px);font-weight:800;text-decoration:none;display:block}.contact__tel:hover{text-underline-offset:8px;text-decoration:underline;text-decoration-thickness:3px}.contact p{margin-top:8px}.contact p a{text-underline-offset:4px}.contact__tijden{font-variant-numeric:tabular-nums;margin:0}.contact__tijden>div{border-top:1px solid #ffffff47;justify-content:space-between;padding:12px 0;display:flex}.contact__tijden dd{margin:0}.contact__tijden .is-vandaag{font-weight:700}.contact__tijden .is-vandaag dt:after{content:" (vandaag)";font-weight:400}.contact__nu{font-family:var(--site-serif);align-items:center;gap:12px;font-weight:700;border-top:0!important;justify-content:flex-start!important}.voet{border-top:1px solid #ffffff47;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:96px;padding-top:24px;font-size:14px;display:flex}.voet img{width:auto;height:24px}.belbalk{display:none}@media (width<=1000px){.held__grid,.diensten__grid,.occasions__grid,.contact__grid{grid-template-columns:1fr;gap:48px}.diensten__intro{position:static}.reviews__rij{grid-template-columns:1fr;gap:32px}}@media (width<=760px){.kop__nav{display:none}.kop__binnen{justify-content:space-between;height:64px}.kop__logo img{height:26px}.held{padding:16px 0 64px}.held h1{font-size:48px}.held__lead{font-size:18px}.held__feiten{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px;display:grid}.held__feiten span{font-size:14px}.held__feiten b{gap:8px;font-size:28px}.afspraak{padding:24px 20px}.veld--twee{grid-template-columns:1fr}.diensten,.reviews,.occasions,.belofte{padding:64px 0}.werkorder th,.werkorder td{width:auto;padding:0;display:block}.werkorder th{padding-top:20px;font-size:24px}.werkorder td{padding:8px 0 20px}.contact{padding:64px 0 112px}.voet{margin-top:64px}.belbalk{z-index:30;background:var(--nacht);border-radius:12px;gap:8px;padding:8px;display:flex;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 12px 32px -12px #0a2a6399}.belbalk .knop{flex:1;min-height:48px}}.belbalk{transform:translateY(160%)}.toon-belbalk .belbalk{transition:transform .3s var(--ease-uit);transform:none}
