/* ComputerHof 1.6: warm, legible and consistent across device sizes. */
.service-jump{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:44px}.service-jump a{padding:11px 18px;background:#eff5f8;color:#074968;border:1px solid #dce8ee;border-radius:30px;font-size:15px;font-weight:650;text-decoration:none}.device-group{scroll-margin-top:120px;margin:0 0 56px}.device-group h2{font-size:clamp(24px,3vw,34px);margin:0 0 22px}.device-group .service-grid{align-items:stretch}.device-group .service-card{display:flex;flex-direction:column;gap:12px;padding:28px;text-decoration:none}.device-group .service-card .text-link{margin-top:auto}.device-group .service-card p{margin:0 0 14px}.device-group .service-card h3{margin:0}.service-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:#e7f1f7;color:#066286}.service-icon svg{width:25px;height:25px}
.contact-grid{align-items:start}.appointment-card{margin-top:32px;padding:26px;border:1px solid #d7e6ef;border-radius:24px;background:linear-gradient(150deg,#f2f8fb,#fff)}.appointment-card h3{font-size:25px;margin:0 0 12px}.appointment-card p{font-size:15px}.appointment-card form{display:grid;gap:10px}.appointment-card label{font-weight:600;font-size:15px}.appointment-card input,.appointment-card select,.appointment-card textarea{box-sizing:border-box;width:100%;min-width:0;padding:12px;border:1px solid #b9cdd8;border-radius:10px;background:#fff;font:inherit;color:#123b51}.appointment-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.appointment-pair>div{display:grid;gap:8px}.appointment-card .button{white-space:normal;min-height:48px}.appointment-card .honey{position:absolute;left:-9999px}.contact-map-card{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center;margin:70px 0 20px;padding:36px;background:#eff5f8;border:1px solid #dce8ee;border-radius:30px}.contact-map{background:#07334b;border-radius:24px;overflow:hidden;color:#fff;position:relative;text-align:center}.contact-map svg{display:block;width:100%;height:auto}.contact-map small{display:block;font-size:11px;color:#bdd5e1;padding:0 12px 16px}.contact-map-card h2{font-size:clamp(26px,3.3vw,40px);line-height:1.14;margin:12px 0 18px}.contact-map-card p{line-height:1.7}.contact-map-card .text-link{display:inline-flex;align-items:center;gap:8px}
.chp-login{max-width:1080px;margin-inline:auto;gap:40px;align-items:start}.chp-login-kaart{border-radius:28px!important;padding:36px!important;border:1px solid #dce8ee!important;box-shadow:0 18px 55px #06304d0d!important}.chp-login-kop{text-align:center}.chp-login-kop .chp-login-ico{display:grid!important;place-items:center;width:62px;height:62px;margin:0 auto 20px!important;background:#eaf3f7!important;border-radius:20px!important}.chp-login svg{display:block;flex-shrink:0;margin:0!important}.chp-login-ico svg{width:28px!important;height:28px!important}.chp-keuze-ico{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;flex:0 0 42px!important;border-radius:14px!important}.chp-keuze-ico svg{width:20px!important;height:20px!important}.chp-keuze-kop{display:flex!important;align-items:center!important;gap:14px!important;padding:18px!important}.chp-keuze-kop>div{min-width:0}.chp-keuze-kop>div span{font-size:14px!important;line-height:1.5!important}.chp-keuze{border-radius:18px!important;overflow:hidden}.chp-login-kop h1{font-size:clamp(26px,3vw,36px)!important;line-height:1.15!important}.chp-login .chp-form{gap:17px}.chp-login input{min-height:48px}.chp-login input[type=checkbox]{min-height:0;width:18px;height:18px}.chp-login .chp-onthoud{display:flex;align-items:center;gap:10px}
.review-source{display:inline-flex;gap:8px;align-items:center;font-size:14px;margin-top:20px;color:#07577c}.review-source svg{width:18px;height:18px}.review-note{font-size:14px;color:#516979}.reviews-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}.reviews-summary h2{margin:0}.compact-reviews{align-items:stretch}.compact-reviews figure{min-width:0}.compact-reviews figcaption{margin-top:auto}.compact-reviews blockquote{flex:1}
@media(max-width:850px){.contact-map-card{grid-template-columns:1fr;gap:26px;padding:24px}.contact-map{max-width:520px;width:100%;margin:auto}.appointment-pair{grid-template-columns:1fr}}
@media(max-width:650px){
 .hero.hero-immersive{position:relative;min-height:680px;height:auto;padding:0;background:#062d46;isolation:isolate}.hero.hero-immersive picture{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:-2}.hero.hero-immersive .hero-backdrop{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:59% center!important;opacity:1}.hero.hero-immersive .hero-shade{display:block!important;position:absolute!important;inset:0!important;height:100%!important;z-index:-1;background:linear-gradient(90deg,#03283de8 0%,#03283dbb 53%,#03283d65 100%),linear-gradient(0deg,#03283de6,transparent 70%)!important}.hero.hero-immersive .hero-stage{position:relative;padding:88px 22px 44px!important;min-height:680px;display:flex;align-items:center}.hero.hero-immersive .hero-copy{padding:0!important;width:100%;max-width:470px;background:none;color:#fff}.hero.hero-immersive h1{font-size:clamp(33px,8.9vw,48px)!important;line-height:1.1;color:#fff!important;letter-spacing:-1.3px}.hero.hero-immersive h1 span{color:#cbe6f0!important}.hero.hero-immersive .hero-intro{font-size:17px;line-height:1.65;color:#edf4f7!important}.hero.hero-immersive .eyebrow,.hero.hero-immersive .hero-reassurance,.hero.hero-immersive .availability{color:#e0edf4!important}.hero.hero-immersive .eyebrow{font-size:12px;line-height:1.5;letter-spacing:.5px}.hero.hero-immersive .hero-actions{display:grid;gap:10px;grid-template-columns:1fr}.hero.hero-immersive .hero-actions .button{min-height:50px;font-size:16px}.hero.hero-immersive .button-outline{color:#fff!important;border-color:#ffffff65!important;background:#ffffff0a!important}.hero.hero-immersive .hero-person{display:none}.hero.hero-immersive .hero-customer{color:#fff;background:#052d467d;top:18px;right:18px;border-color:#ffffff30}.hero.hero-immersive .availability{font-size:13px;align-items:flex-start}.hero.hero-immersive .hero-reassurance{font-size:13px}.contact-map-card{margin-top:40px;padding:18px;border-radius:24px}.appointment-card{padding:20px}.service-jump{gap:8px}.service-jump a{font-size:14px;padding:10px 13px}.device-group .service-card{padding:24px}.chp-login-kaart{padding:24px 20px!important}.chp-keuze-kop{padding:15px!important}.chp-login{gap:24px}
}
@supports(corner-shape:squircle){.appointment-card,.contact-map-card,.contact-map,.device-group .service-card,.chp-login-kaart{corner-shape:squircle}}
@media(prefers-reduced-motion:reduce){.hero.hero-immersive .hero-backdrop{animation:none!important;transform:none!important}}

.appointment-card form.contact-form{padding:0;margin:0;border:0;box-shadow:none;border-radius:0;background:transparent}.appointment-card form.contact-form .button{margin-top:8px}.appointment-card .form-note{font-size:13px}.appointment-card .appointment-pair input{min-height:48px}.appointment-card .form-status{font-size:14px}
.availability-card{display:flex;gap:22px;align-items:center;padding:28px;margin:44px 0 20px;border:1px solid #d5e3ec;border-radius:24px;background:linear-gradient(125deg,#eff6fa,#fff)}.availability-card>div{flex:1}.availability-card strong{font-size:18px;line-height:1.4}.availability-card p{margin:8px 0}.availability-card small{display:block;font-size:13px;color:#516b7a}.availability-shield{display:grid;place-items:center;width:58px;height:64px;flex-shrink:0;color:#096081}.availability-shield svg{width:42px;height:42px}.availability-card .button{flex-shrink:0}@media(max-width:850px){.availability-card{flex-wrap:wrap;padding:22px}.availability-card .button{width:100%}.availability-card>div{min-width:180px}}
.appointment-card form.contact-form label{margin:2px 0 0}.appointment-card form.contact-form input,.appointment-card form.contact-form select{margin:0;min-height:46px;height:auto}.appointment-card form.contact-form textarea{margin:0;min-height:76px}.appointment-card form.contact-form p.form-note{margin:4px 0 0}.appointment-card .appointment-pair{gap:12px}.appointment-card .appointment-pair>div{gap:8px}
