:root{--primary:#075aa8;--secondary:#d7262f;--ink:#132238;--muted:#637083;--light:#f4f7fa;--line:#dfe5eb;--white:#fff;--radius:20px;--shadow:0 20px 55px rgba(19,34,56,.12);--container:min(1180px,calc(100% - 40px))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:var(--container);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:1rem;top:-10rem;z-index:9999;background:#fff;padding:.7rem 1rem;border-radius:8px;box-shadow:var(--shadow)}.skip-link:focus{top:1rem}.topbar{background:#0d1c2e;color:#dce6ef;font-size:.82rem}.topbar-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar a{color:#fff}.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(19,34,56,.08);transition:.25s}.site-header.is-scrolled{box-shadow:0 10px 30px rgba(19,34,56,.08)}.header-inner{height:88px;display:flex;align-items:center;gap:30px}.brand{flex:0 0 315px}.brand img{width:100%;height:70px;object-fit:contain;object-position:left center}.site-navigation{margin-left:auto}.site-navigation ul,.fallback-menu{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}.site-navigation a{font-weight:700;font-size:.92rem;position:relative;padding:32px 0}.site-navigation a:after{content:"";position:absolute;left:0;right:100%;bottom:22px;height:3px;border-radius:3px;background:var(--secondary);transition:.25s}.site-navigation a:hover:after,.site-navigation .current>a:after,.site-navigation .active>a:after{right:0}.header-call{display:flex;flex-direction:column;background:var(--primary);color:#fff;border-radius:12px;padding:10px 17px;font-weight:800;line-height:1.2;box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 26%,transparent)}.header-call span{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;opacity:.78}.nav-toggle{display:none;border:0;background:transparent;padding:10px}.nav-toggle span:not(.sr-only){display:block;width:26px;height:2px;background:var(--ink);margin:5px 0;transition:.25s}.hero{position:relative;min-height:690px;overflow:hidden;background:#0c243d;color:#fff}.hero-media{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,24,43,.94) 0%,rgba(6,24,43,.78) 47%,rgba(6,24,43,.2) 100%),url('../images/optimized/badkamer-renovatie-enschede-luxe.webp') center/cover no-repeat;transform:scale(1.015)}.hero:after{content:"";position:absolute;inset:auto -8% -45% 42%;height:630px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 48%,transparent),transparent 67%);filter:blur(10px)}.hero-grid{position:relative;z-index:2;min-height:690px;display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--secondary);font-size:.77rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.eyebrow:before{content:"";width:32px;height:3px;border-radius:4px;background:currentColor}.hero h1{max-width:790px;font-size:clamp(2.8rem,5.6vw,5.35rem);line-height:1.03;letter-spacing:-.055em;margin:18px 0 25px}.hero-copy>p{max-width:700px;font-size:1.16rem;color:#dce6ef;margin:0 0 32px}.hero-actions{display:flex;gap:13px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:11px;font-weight:800;transition:.22s;border:1px solid transparent}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--secondary);color:#fff;box-shadow:0 14px 32px color-mix(in srgb,var(--secondary) 28%,transparent)}.button-ghost{border-color:rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.06)}.button-dark{background:var(--ink);color:#fff}.button-light{background:#fff;color:var(--primary)}.hero-trust{display:flex;gap:24px;flex-wrap:wrap;margin-top:35px;color:#dce6ef;font-size:.84rem;font-weight:700}.hero-trust span:before{content:"✓";color:#61d397;margin-right:7px}.hero-card{align-self:end;margin-bottom:65px;background:rgba(255,255,255,.96);color:var(--ink);padding:32px;border-radius:var(--radius);box-shadow:var(--shadow);border-top:5px solid var(--secondary)}.hero-card-label{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--primary)}.hero-card h2{font-size:1.55rem;line-height:1.25;margin:12px 0 18px}.hero-card ul{list-style:none;padding:0;margin:0 0 20px}.hero-card li{padding:9px 0;border-bottom:1px solid var(--line);font-size:.9rem}.hero-card li:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--secondary);margin-right:10px}.hero-card a{display:flex;justify-content:space-between;gap:15px;color:var(--primary);font-weight:800;font-size:.88rem}.section{padding:105px 0}.section-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:end;margin-bottom:48px}.section-heading h2,.project-copy h2,.showcase-copy h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.12;letter-spacing:-.045em;margin:12px 0 0}.section-heading p{color:var(--muted);margin:0}.services{background:var(--light)}.service-grid,.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card,.module-card{background:#fff;border:1px solid #e5eaf0;border-radius:18px;padding:28px;box-shadow:0 12px 35px rgba(19,34,56,.05);transition:.25s}.service-card:hover,.module-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:transparent}.service-card .icon{width:54px;height:54px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--primary) 11%,white);color:var(--primary)}.service-card svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.service-card h3{font-size:1.2rem;margin:20px 0 9px}.service-card p{color:var(--muted);font-size:.89rem;margin:0 0 20px}.service-card a{font-weight:800;color:var(--primary);font-size:.82rem}.project-feature{background:#fff}.project-grid,.showcase-grid{display:grid;grid-template-columns:1.07fr .93fr;gap:72px;align-items:center}.project-image,.showcase-image{position:relative}.project-image img,.showcase-image img{width:100%;height:590px;object-fit:cover;border-radius:24px}.project-image:after,.showcase-image:after{content:"";position:absolute;inset:22px -22px -22px 22px;border:2px solid color-mix(in srgb,var(--primary) 25%,transparent);border-radius:24px;z-index:-1}.project-badge{position:absolute;left:22px;bottom:22px;background:#fff;color:var(--ink);font-weight:800;padding:11px 16px;border-radius:10px;box-shadow:var(--shadow)}.project-copy>p,.showcase-copy>p{color:var(--muted);font-size:1.03rem}.project-facts{display:grid;gap:0;margin:30px 0}.project-facts div{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.project-facts strong{color:var(--primary)}.project-facts span{color:var(--muted)}.showcase{background:#0d1c2e;color:#fff;overflow:hidden}.showcase-grid{grid-template-columns:.9fr 1.1fr}.showcase-copy>p{color:#c4d0dc}.showcase-image img{height:520px}.check-list{list-style:none;padding:0;margin:26px 0}.check-list li{padding:7px 0;color:#e6edf4}.check-list li:before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#2dba79;color:#fff;margin-right:10px;font-size:.76rem}.text-link{font-weight:800;color:#fff;border-bottom:2px solid var(--secondary);padding-bottom:5px}.news{background:var(--light)}.news-grid,.news-module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.news-card{background:#fff;border-radius:18px;overflow:hidden;border:1px solid #e3e9ef;box-shadow:0 14px 35px rgba(19,34,56,.06)}.news-image{height:235px;position:relative;overflow:hidden}.news-image img{width:100%;height:100%;object-fit:cover;transition:.4s}.news-card:hover .news-image img{transform:scale(1.04)}.news-image>span{position:absolute;top:15px;left:15px;background:var(--primary);color:#fff;border-radius:8px;padding:7px 10px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.news-body{padding:25px}.news-body time{color:var(--secondary);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.news-body h3{font-size:1.28rem;line-height:1.28;margin:8px 0 12px}.news-body p{color:var(--muted);font-size:.9rem}.news-body a{display:inline-block;margin-top:8px;color:var(--primary);font-weight:800;font-size:.82rem}.gallery-section{padding-top:40px}.gallery-light{background:#fff}.gallery-dark{background:#f5f8fb}.gallery-grid{display:grid;gap:22px}.gallery-grid-4{grid-template-columns:repeat(4,1fr)}.gallery-grid-3{grid-template-columns:repeat(3,1fr)}.gallery-card{background:#fff;border:1px solid #e5eaf0;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(19,34,56,.05)}.gallery-card img{width:100%;height:260px;object-fit:cover}.gallery-card figcaption{padding:16px 18px;font-weight:800;color:var(--ink)}.news-poster img{object-fit:cover;background:#fff}.gallery-dark .section-heading p{color:var(--muted)}.vacation-art{height:235px;position:relative;display:grid;place-items:center;background:linear-gradient(145deg,#075aa8,#0d1c2e);overflow:hidden}.vacation-art:before,.vacation-art:after{content:"";position:absolute;border-radius:50%;border:2px solid rgba(255,255,255,.15)}.vacation-art:before{width:270px;height:270px;left:-80px;top:-100px}.vacation-art:after{width:170px;height:170px;right:-40px;bottom:-70px}.vacation-art .sun{position:absolute;width:78px;height:78px;border-radius:50%;background:#ffca45;right:37px;top:30px;box-shadow:0 0 0 14px rgba(255,202,69,.12)}.vacation-art .tool{font-size:6.5rem;font-weight:900;font-style:italic;color:#fff;z-index:1;text-shadow:8px 8px 0 var(--secondary)}.cta-band{padding:65px 0;background:var(--primary);color:#fff}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-inner .eyebrow{color:#fff;opacity:.8}.cta-inner h2{font-size:clamp(1.8rem,3.5vw,3rem);line-height:1.18;margin:10px 0}.component-home:empty{display:none}.component-home{width:var(--container);margin-inline:auto}.module-zone{padding:45px 0}.inner-hero{padding:90px 0;background:linear-gradient(135deg,#0d1c2e,#075aa8);color:#fff}.inner-hero h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.08;margin:14px 0 0;letter-spacing:-.05em}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:45px;padding-block:70px}.content-layout:not(:has(.sidebar)){grid-template-columns:1fr}.content-main{min-width:0}.sidebar{display:grid;gap:20px;align-content:start}.site-footer{background:#091522;color:#cbd5df;padding:72px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:55px}.footer-brand img{width:290px;height:82px;object-fit:contain;object-position:left center;filter:none}.footer-brand p{max-width:340px;color:#9faebe}.footer-grid h2{color:#fff;font-size:.9rem;text-transform:uppercase;letter-spacing:.09em;margin:8px 0 20px}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;gap:9px}.footer-grid a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.1);margin-top:50px;padding-top:20px;font-size:.78rem;color:#8b9aaa}.mobile-call{display:none}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:none}.module-card h2,.module-card h3{margin-top:0}.mod-articlescategory,.mod-list{list-style:none;padding:0}.mod-articlescategory li,.mod-list li{padding:10px 0;border-bottom:1px solid var(--line)}
@media(max-width:1050px){.header-call{display:none}.service-grid,.module-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid-4{grid-template-columns:repeat(2,1fr)}.gallery-grid-3{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr .72fr;gap:35px}.site-navigation ul,.fallback-menu{gap:18px}.brand{flex-basis:275px}.project-grid,.showcase-grid{gap:45px}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{display:none}}
@media(max-width:820px){:root{--container:min(100% - 30px,1180px)}.topbar-inner{justify-content:center}.topbar-inner>span{display:none}.header-inner{height:72px}.brand{flex-basis:235px}.brand img{height:58px}.nav-toggle{display:block;margin-left:auto;z-index:4}.site-navigation{position:fixed;inset:72px 0 auto 0;background:#fff;box-shadow:0 20px 35px rgba(19,34,56,.14);padding:15px 25px 28px;transform:translateY(-130%);opacity:0;visibility:hidden;transition:.3s}.site-navigation.is-open{transform:none;opacity:1;visibility:visible}.site-navigation ul,.fallback-menu{display:block}.site-navigation li{border-bottom:1px solid var(--line)}.site-navigation a{display:block;padding:15px 0}.site-navigation a:after{display:none}.hero,.hero-grid{min-height:auto}.hero-grid{display:block;padding:95px 0 70px}.hero h1{font-size:clamp(2.65rem,11vw,4.3rem)}.hero-card{margin:45px 0 0;max-width:540px}.section{padding:75px 0}.section-heading{grid-template-columns:1fr;gap:20px}.project-grid,.showcase-grid{grid-template-columns:1fr}.project-image img,.showcase-image img{height:480px}.project-image:after,.showcase-image:after{display:none}.showcase-copy{order:2}.showcase-image{order:1}.news-grid,.news-module-grid{grid-template-columns:1fr 1fr}.gallery-grid-3,.gallery-grid-4{grid-template-columns:1fr 1fr}.news-card:last-child{grid-column:span 2}.cta-inner{align-items:flex-start;flex-direction:column}.content-layout{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2}}
@media(max-width:560px){body{padding-bottom:58px}.topbar{display:none}.header-inner{height:68px}.brand{flex-basis:210px}.site-navigation{inset:68px 0 auto}.hero-grid{padding:75px 0 55px}.hero-media{background-position:60% center}.hero-actions{display:grid}.button{width:100%}.hero-trust{display:grid;gap:8px}.hero-card{padding:24px}.service-grid,.module-grid,.news-grid,.news-module-grid,.gallery-grid-3,.gallery-grid-4{grid-template-columns:1fr}.news-card:last-child{grid-column:auto}.project-image img,.showcase-image img{height:390px}.project-facts div{grid-template-columns:1fr;gap:3px}.section-heading h2,.project-copy h2,.showcase-copy h2{font-size:2rem}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-grid>div:nth-child(3){display:none}.footer-bottom{display:block}.mobile-call{display:flex;position:fixed;z-index:1200;left:0;right:0;bottom:0;height:58px;align-items:center;justify-content:center;background:var(--secondary);color:#fff;font-weight:900;box-shadow:0 -8px 25px rgba(19,34,56,.18)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Wolsink 1.2 additions */
.hero-media{background:linear-gradient(90deg,rgba(6,24,43,.94) 0%,rgba(6,24,43,.8) 47%,rgba(6,24,43,.28) 100%),url('../images/optimized/badkamer-renovatie-enschede-luxe.webp') center/cover no-repeat}
.electra-feature{background:#fff}
.poster-image img{height:auto;max-height:720px;object-fit:contain;background:#061b31}
.airco-calculator-section{background:linear-gradient(145deg,#0b1b2d,#10395f);color:#fff;overflow:hidden;position:relative}
.airco-calculator-section:before{content:"";position:absolute;width:620px;height:620px;border-radius:50%;right:-260px;top:-310px;background:radial-gradient(circle,rgba(7,90,168,.6),transparent 68%)}
.airco-calculator-section .container{position:relative;z-index:1}
.airco-calculator-section .section-heading p{color:#c8d5e1}
.airco-calculator-shell{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:24px;align-items:start}
.airco-calculator-form,.airco-result{background:#fff;color:var(--ink);border-radius:22px;box-shadow:0 24px 60px rgba(0,0,0,.22)}
.airco-calculator-form{padding:30px}
.calculator-intro{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.calculator-intro p{max-width:480px;margin:0;color:var(--muted);font-size:.9rem}
.calculator-field{display:grid;gap:7px}
.calculator-field>span{font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#38506a}
.calculator-field input,.calculator-field select{width:100%;min-height:48px;border:1px solid #cfd9e3;border-radius:10px;background:#fff;padding:9px 12px;color:var(--ink);outline:none}
.calculator-field input:focus,.calculator-field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 15%,transparent)}
.calculator-field-count{min-width:190px}
.airco-room-list{display:grid;gap:16px;margin-top:22px}
.airco-room-card{border:1px solid #dfe7ee;border-radius:16px;padding:20px;background:#f8fafc}
.airco-room-card h3{margin:0 0 16px;font-size:1.05rem;display:flex;align-items:center;gap:10px}
.airco-room-card h3 span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--primary);color:#fff;font-size:.75rem}
.airco-room-fields{display:grid;grid-template-columns:1.15fr .8fr 1fr 1fr .65fr;gap:12px}
.calculator-actions{display:flex;align-items:center;gap:18px;margin-top:24px}
.calculator-reset{border:0;background:transparent;color:var(--primary);font-weight:800;cursor:pointer;padding:12px}
.airco-result{padding:30px;position:sticky;top:125px;min-height:330px}
.result-placeholder{display:grid;place-items:center;text-align:center;min-height:270px;color:var(--muted)}
.result-placeholder h3{color:var(--ink);margin:12px 0 4px}
.result-placeholder p{max-width:270px;margin:0}
.result-icon{display:grid;place-items:center;width:68px;height:68px;border-radius:20px;background:color-mix(in srgb,var(--primary) 12%,white);color:var(--primary);font-size:2rem}
.result-heading{padding-bottom:18px;border-bottom:1px solid var(--line)}
.result-heading span{display:block;color:var(--secondary);font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em}
.result-heading h3{margin:5px 0 0;font-size:1.55rem;line-height:1.25}
.result-room-list{display:grid;gap:12px;margin:18px 0}
.result-room{display:grid;grid-template-columns:1fr auto;gap:10px;border:1px solid #e1e8ef;border-radius:12px;padding:13px 14px;background:#f8fafc}
.result-room strong{font-size:.92rem}
.result-room small{display:block;color:var(--muted);margin-top:2px}
.result-capacity{text-align:right;color:var(--primary);font-weight:900;white-space:nowrap}
.result-capacity small{color:var(--muted);font-weight:600}
.result-total{display:flex;justify-content:space-between;gap:18px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:800}
.result-total strong{color:var(--primary);font-size:1.15rem}
.result-note{color:var(--muted);font-size:.84rem;margin:15px 0 20px}
.airco-result .button{width:100%}
.result-error{padding:18px;border-radius:12px;background:#fff2f2;color:#8c2020;border:1px solid #f3c7c7}
.calculator-disclaimer{max-width:980px;margin:22px auto 0;text-align:center;color:#b7c8d7;font-size:.8rem}
.gallery-section{padding-top:55px}
.gallery-light{background:#fff}
.gallery-dark{background:#f4f7fa}
.gallery-grid{display:grid;gap:22px}
.gallery-grid-4{grid-template-columns:repeat(4,1fr)}
.gallery-grid-3{grid-template-columns:repeat(3,1fr)}
.gallery-card{margin:0;background:#fff;border:1px solid #e5eaf0;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(19,34,56,.06)}
.gallery-card img{width:100%;height:260px;object-fit:cover}
.gallery-card figcaption{padding:16px 18px;font-weight:800;color:var(--ink)}
.news-poster img{object-fit:cover;background:#fff}
.footer-brand img{filter:none}

@media(max-width:1100px){
  .airco-room-fields{grid-template-columns:1fr 1fr 1fr}
  .airco-calculator-shell{grid-template-columns:1fr}
  .airco-result{position:static;min-height:0}
  .gallery-grid-4{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
  .calculator-intro{align-items:stretch;flex-direction:column}
  .calculator-field-count{min-width:0}
  .airco-room-fields{grid-template-columns:1fr 1fr}
  .gallery-grid-3,.gallery-grid-4{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .airco-calculator-form,.airco-result{padding:20px;border-radius:16px}
  .airco-room-card{padding:16px}
  .airco-room-fields{grid-template-columns:1fr}
  .calculator-actions{align-items:stretch;flex-direction:column}
  .calculator-actions .button,.calculator-reset{width:100%}
  .gallery-grid-3,.gallery-grid-4{grid-template-columns:1fr}
  .gallery-card img{height:235px}
  .poster-image img{max-height:none}
}

.result-calculated{margin:10px 0 18px;color:var(--muted);font-size:.84rem;font-weight:700}

/* Quote request forms */
.quote-section{background:#f4f7fa;border-top:1px solid #e5ebf1;border-bottom:1px solid #e5ebf1}
.quote-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:58px;align-items:start}
.quote-intro{position:sticky;top:125px}
.quote-intro h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.12;letter-spacing:-.045em;margin:14px 0 18px}
.quote-intro>p{color:var(--muted);font-size:1rem}
.quote-steps{display:grid;gap:10px;margin:28px 0}
.quote-steps div{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid #dfe7ee;border-radius:13px;padding:12px 14px}
.quote-steps strong{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:var(--primary);color:#fff}
.quote-steps span{font-weight:800;color:var(--ink)}
.quote-mail-note{font-size:.84rem!important;padding:14px 16px;border-left:4px solid var(--secondary);background:#fff;border-radius:0 10px 10px 0}
.quote-form-card{background:#fff;border:1px solid #dfe7ee;border-radius:22px;padding:32px;box-shadow:0 20px 55px rgba(19,34,56,.09)}
.quote-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.quote-field{display:grid;gap:7px}
.quote-field-wide{grid-column:1/-1}
.quote-field>span,.quote-upload label>strong{font-size:.76rem;text-transform:uppercase;letter-spacing:.075em;font-weight:850;color:#38506a}
.quote-field input,.quote-field select,.quote-field textarea{width:100%;border:1px solid #cfd9e3;border-radius:10px;background:#fff;padding:12px 13px;color:var(--ink);outline:none}
.quote-field input,.quote-field select{min-height:49px}
.quote-field textarea{resize:vertical;min-height:105px;line-height:1.5}
.quote-field input:focus,.quote-field select:focus,.quote-field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}
.quote-upload{border:2px dashed #b9c8d6;border-radius:14px;padding:18px;background:#f8fafc;transition:.2s}
.quote-upload.has-files{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 5%,white)}
.quote-upload.has-error{border-color:#bd2f2f;background:#fff5f5}
.quote-upload label{display:grid;gap:5px;margin-bottom:12px;cursor:pointer}
.quote-upload label>span{color:var(--muted);font-size:.87rem;line-height:1.45}
.quote-upload input[type=file]{width:100%;font-size:.86rem}
.quote-upload input[type=file]::file-selector-button{border:0;border-radius:9px;background:var(--primary);color:#fff;padding:10px 14px;font-weight:800;margin-right:12px;cursor:pointer}
.upload-status{display:block;margin-top:10px;color:var(--muted);font-size:.82rem;font-weight:700}
.quote-consent{display:flex;align-items:flex-start;gap:11px;padding:14px;border-radius:10px;background:#f8fafc;color:#40566b;font-size:.86rem}
.quote-consent input{margin-top:4px;flex:0 0 auto}
.quote-submit{margin-top:22px;min-width:270px}
.quote-submit:disabled{opacity:.65;cursor:wait;transform:none}
.quote-limit-note{margin:10px 0 0;color:var(--muted);font-size:.78rem}
.quote-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.quote-errors,.quote-success{border-radius:13px;padding:17px 18px;margin-bottom:22px}
.quote-errors{background:#fff2f2;border:1px solid #efc1c1;color:#842323}
.quote-errors ul{margin:8px 0 0;padding-left:20px}
.quote-success{background:#eefaf4;border:1px solid #b8e2ca;color:#165e38}
.quote-success p{margin:5px 0 0}
.result-actions{display:grid;gap:9px}
.result-call-link{text-align:center;color:var(--primary);font-weight:800;font-size:.85rem}
.is-inner .quote-section{padding-top:75px;padding-bottom:85px}

@media(max-width:980px){
  .quote-layout{grid-template-columns:1fr;gap:32px}
  .quote-intro{position:static}
  .quote-steps{grid-template-columns:repeat(3,1fr)}
  .quote-steps div{align-items:flex-start;flex-direction:column}
}
@media(max-width:680px){
  .quote-form-card{padding:21px;border-radius:16px}
  .quote-form-grid{grid-template-columns:1fr}
  .quote-field-wide{grid-column:auto}
  .quote-steps{grid-template-columns:1fr}
  .quote-steps div{align-items:center;flex-direction:row}
  .quote-submit{width:100%;min-width:0}
}

/* Legal and privacy - version 1.4 */
.quote-privacy-note{padding:14px 16px;background:#fff8ee;border:1px solid #f4d5ae;border-radius:10px;font-size:.84rem!important;color:#65451f!important}
.quote-legal-box{display:grid;gap:11px;padding:18px;border:1px solid #d9e3ec;border-radius:13px;background:#f8fafc}
.quote-legal-box h3{margin:0 0 2px;font-size:1rem;color:var(--ink)}
.quote-legal-box>p{margin:1px 0 0;color:var(--muted);font-size:.76rem;line-height:1.55}
.quote-consent{background:#fff;border:1px solid #e0e7ee}
.quote-consent a{color:var(--primary);font-weight:800;text-decoration:underline;text-underline-offset:2px}
.legal-hero{padding:72px 0}
.legal-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:48px;align-items:start;padding-block:64px 90px}
.legal-document{min-width:0;color:#22364a}
.legal-document>p,.legal-document li{color:#44596c}
.legal-document h2{margin:38px 0 12px;font-size:1.55rem;line-height:1.25;color:#10263d}
.legal-document h2:first-of-type{margin-top:25px}
.legal-document ul,.legal-document ol{padding-left:23px}
.legal-document li{margin:8px 0}
.legal-document address{padding:18px 20px;border-left:4px solid var(--primary);background:#f6f9fc;border-radius:0 12px 12px 0;font-style:normal;color:#40566b}
.legal-document a{color:var(--primary);text-decoration:underline;text-underline-offset:2px}
.legal-meta{padding:12px 15px;background:#edf6ff;border-radius:10px;color:#31506c!important}
.legal-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid #dde5ec}
.legal-toolbar .button{text-decoration:none}
.legal-download{font-weight:800}
.legal-table-wrap{overflow-x:auto;border:1px solid #dfe6ed;border-radius:12px}
.legal-table{width:100%;border-collapse:collapse;background:#fff;min-width:620px}
.legal-table th,.legal-table td{padding:13px 15px;text-align:left;vertical-align:top;border-bottom:1px solid #e3e9ef}
.legal-table th{background:#f4f7fa;color:#18324c}
.legal-sidebar{position:sticky;top:125px;display:grid;gap:7px;padding:22px;background:#f5f8fb;border:1px solid #dfe6ed;border-radius:16px}
.legal-sidebar h2{font-size:1rem;margin:0 0 8px;text-transform:uppercase;letter-spacing:.07em}
.legal-sidebar>a{padding:10px 12px;border-radius:9px;font-weight:750;color:#36506a}
.legal-sidebar>a:hover,.legal-sidebar>a.active{background:var(--primary);color:#fff}
.legal-sidebar p{font-size:.8rem;color:var(--muted);margin:12px 0 0}
.cookie-notice{position:fixed;z-index:1400;left:20px;right:20px;bottom:20px;max-width:980px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:17px 18px 17px 20px;background:#fff;color:#1a3047;border:1px solid #cfdae4;border-radius:14px;box-shadow:0 18px 55px rgba(7,28,49,.22)}
.cookie-notice[hidden]{display:none}
.cookie-notice>div{display:grid;gap:3px}
.cookie-notice span{font-size:.84rem;color:#526678}
.cookie-notice a{color:var(--primary);font-weight:800;text-decoration:underline}
.cookie-notice button{border:0;border-radius:9px;background:var(--primary);color:#fff;padding:10px 15px;font-weight:850;cursor:pointer}

@media(max-width:1050px){
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-grid>div:last-child{display:flex}
  .legal-layout{grid-template-columns:1fr}
  .legal-sidebar{position:static;grid-template-columns:repeat(2,1fr)}
  .legal-sidebar h2,.legal-sidebar p{grid-column:1/-1}
}
@media(max-width:560px){
  .footer-grid>div:nth-child(3){display:flex}
  .legal-layout{padding-block:42px 72px}
  .legal-toolbar{align-items:stretch;flex-direction:column}
  .legal-toolbar .button,.legal-download{text-align:center;width:100%}
  .legal-sidebar{grid-template-columns:1fr}
  .legal-sidebar h2,.legal-sidebar p{grid-column:auto}
  .cookie-notice{bottom:70px;left:10px;right:10px;align-items:stretch;flex-direction:column}
  .cookie-notice button{width:100%}
}
@media print{
  .topbar,.site-header,.site-footer,.mobile-call,.cookie-notice,.legal-sidebar,.legal-toolbar{display:none!important}
  body{padding:0!important;color:#000;background:#fff}
  .legal-hero{padding:0 0 20px;background:#fff;color:#000}
  .legal-hero .eyebrow{display:none}
  .legal-layout{display:block;width:100%;padding:0}
  .legal-document{font-size:10pt}
  .legal-document h2{break-after:avoid}
  .legal-table{min-width:0}
}

/* Wolsink 1.4.2 — service pages and compact dropdown navigation */
.header-inner{height:82px;gap:24px}
.brand{flex:0 0 225px}
.brand img{width:auto;max-width:225px;height:68px;object-fit:contain;object-position:left center}
.site-navigation{min-width:0}
.site-navigation>ul{gap:24px}
.site-navigation>ul>li{position:relative;white-space:nowrap}
.site-navigation>ul>li>a{padding:29px 0;font-size:.91rem}

.site-navigation .service-parent{display:flex;align-items:center;gap:5px}
.site-navigation .service-parent>a{display:block}
.site-navigation .submenu-toggle{display:inline-grid;place-items:center;width:26px;height:26px;border:0;background:transparent;color:var(--ink);cursor:pointer;border-radius:7px;padding:0;transition:.2s}
.site-navigation .submenu-toggle:after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:.2s}
.site-navigation .service-parent:hover .submenu-toggle,.site-navigation .service-parent:focus-within .submenu-toggle{background:#eef5fb;color:var(--primary)}
.site-navigation .service-submenu{position:absolute;z-index:40;left:-20px;top:calc(100% - 14px);display:grid!important;align-items:stretch!important;gap:0!important;min-width:245px;padding:10px!important;margin:0!important;background:#fff;border:1px solid #e0e8ef;border-radius:14px;box-shadow:0 18px 48px rgba(19,34,56,.16);opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;transition:.18s}
.site-navigation .service-parent:hover>.service-submenu,.site-navigation .service-parent:focus-within>.service-submenu,.site-navigation .service-parent.submenu-open>.service-submenu{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.site-navigation .service-submenu li{width:100%;border:0!important}
.site-navigation .service-submenu a{display:block!important;padding:10px 12px!important;border-radius:9px;font-size:.88rem;font-weight:750;color:#2c4359}
.site-navigation .service-submenu a:after{display:none!important}
.site-navigation .service-submenu a:hover,.site-navigation .service-submenu .active>a,.site-navigation .service-submenu .current>a{background:#eef6fd;color:var(--primary)}
.site-navigation .service-parent.has-active-service>a:after{right:0}

.service-detail-hero{padding:58px 0;background:linear-gradient(135deg,#071a2e 0%,#0b3b68 100%);color:#fff;overflow:hidden;position:relative}
.service-detail-hero:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;top:-250px;background:radial-gradient(circle,rgba(25,112,187,.55),transparent 68%);pointer-events:none}
.service-detail-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center}
.service-detail-copy h1{font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.04;letter-spacing:-.05em;margin:17px 0 20px;max-width:680px}
.service-detail-copy>p{font-size:1.06rem;color:#d8e5ef;max-width:650px;margin:0 0 24px}
.service-brand-pills{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 26px}
.service-brand-pills span{display:inline-flex;align-items:center;min-height:34px;padding:0 13px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.08);font-size:.78rem;font-weight:800;color:#fff}
.service-detail-actions{display:flex;gap:11px;flex-wrap:wrap}
.service-detail-media{height:380px;display:grid;place-items:center;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 25px 65px rgba(0,0,0,.24)}
.service-detail-media img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;margin:0!important;padding:22px;background:#fff;border-radius:0!important;box-shadow:none!important}
.service-detail-media-photo img{object-fit:cover!important;padding:0}
.service-media-fallback{display:grid;place-items:center;gap:8px;color:var(--primary);text-align:center}
.service-media-fallback span{font-size:6rem;line-height:1}
.service-media-fallback strong{font-size:1.25rem}
.service-detail-media.has-image .service-media-fallback{display:none}

.is-service-detail .content-layout{padding-block:50px 35px;display:block}
.is-service-detail .content-main{width:min(100%,980px);margin-inline:auto}
.is-service-detail .content-main .article-info,
.is-service-detail .content-main .article-info-term,
.is-service-detail .content-main dl.article-info,
.is-service-detail .content-main .icons,
.is-service-detail .content-main .fields-container{display:none!important}
.is-service-detail .content-main .page-header:has(h1),
.is-service-detail .content-main .page-header:has(h2){margin-top:0}
.is-service-detail .content-main .item-page{font-size:1rem;color:#42566a}
.is-service-detail .content-main .item-page h2,
.is-service-detail .content-main .item-page h3{color:var(--ink);line-height:1.2;letter-spacing:-.025em}
.is-service-detail .content-main .item-page h2{font-size:clamp(1.8rem,3vw,2.5rem);margin:42px 0 14px}
.is-service-detail .content-main .item-page h3{font-size:1.25rem;margin:28px 0 10px}
.is-service-detail .content-main .item-page p{max-width:860px}
.is-service-detail .content-main .item-page img{display:block!important;width:auto!important;max-width:min(100%,760px)!important;height:auto!important;max-height:420px!important;object-fit:contain!important;margin:28px auto!important;border-radius:18px;box-shadow:0 14px 38px rgba(19,34,56,.09)}
.is-service-detail .content-main .item-page p.image-only,.is-service-detail .content-main .item-page figure.service-content-figure{max-width:none;text-align:center;margin:28px auto}
.is-service-detail .content-main .item-page .service-duplicate{display:none!important}
.is-service-detail .content-main .item-page a.service-content-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:10px;background:var(--secondary);color:#fff;font-weight:850;box-shadow:0 12px 26px color-mix(in srgb,var(--secondary) 25%,transparent)}
.is-service-detail .content-main .item-page .service-inline-brands{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 20px}
.is-service-detail .content-main .item-page .service-inline-brands span{padding:7px 11px;border-radius:999px;background:#eef5fb;color:var(--primary);font-weight:800;font-size:.78rem}
.is-service-detail .inner-meterkast-feature{margin-top:15px}

@media(max-width:1080px){
  .brand{flex-basis:190px}.brand img{max-width:190px;height:62px}
  .site-navigation>ul{gap:17px}.site-navigation>ul>li>a{font-size:.86rem}
  .service-detail-hero-grid{grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:820px){
  .header-inner{height:72px}.brand{flex-basis:185px}.brand img{height:60px;max-width:185px}
  .site-navigation>ul{display:block!important}
  .site-navigation .service-parent{display:grid;grid-template-columns:1fr auto;gap:0}
  .site-navigation .service-parent>a{grid-column:1/2}
  .site-navigation .submenu-toggle{grid-column:2/3;grid-row:1;width:48px;height:48px;align-self:center}
  .site-navigation .service-submenu{position:static!important;grid-column:1/-1;display:none!important;min-width:0;padding:3px 0 8px 14px!important;border:0;border-radius:0;box-shadow:none;opacity:1;visibility:visible;transform:none;pointer-events:auto;background:#f7fafc}
  .site-navigation .service-parent.submenu-open>.service-submenu{display:grid!important}
  .site-navigation .service-submenu a{padding:10px 13px!important}
  .service-detail-hero{padding:48px 0}
  .service-detail-hero-grid{grid-template-columns:1fr;gap:30px}
  .service-detail-media{height:340px}
}
@media(max-width:560px){
  .brand{flex-basis:165px}.brand img{max-width:165px;height:54px}
  .service-detail-copy h1{font-size:2.45rem}
  .service-detail-actions{display:grid}.service-detail-actions .button{width:100%}
  .service-detail-media{height:270px;border-radius:16px}
  .is-service-detail .content-layout{padding-block:34px 22px}
  .is-service-detail .content-main .item-page img{max-height:300px!important;border-radius:13px}
}

/* Wolsink 1.4.3 — service page cleanup, airco comparison and readability */
.service-duplicate-block{display:none!important}

/* Keep inner Joomla article content calm and readable below the custom service hero. */
.is-service-detail .content-layout{padding-top:46px;padding-bottom:42px}
.is-service-detail .content-main{width:min(100%,920px);margin-inline:auto}
.is-service-detail .content-main .item-page{color:#3d5369;line-height:1.75}
.is-service-detail .content-main .item-page>div,
.is-service-detail .content-main .item-page>section{max-width:920px;margin-inline:auto}
.is-service-detail .content-main .item-page h2{margin-top:38px;margin-bottom:13px;color:#10253e!important}
.is-service-detail .content-main .item-page h3{margin-top:25px;margin-bottom:8px;color:#10253e!important}
.is-service-detail .content-main .item-page p{max-width:820px;color:#425b72!important}
.is-service-detail .content-main .item-page ul,
.is-service-detail .content-main .item-page ol{max-width:820px;margin:18px 0 28px;padding-left:24px;color:#425b72!important}
.is-service-detail .content-main .item-page li,
.is-service-detail .content-main .item-page li span,
.is-service-detail .content-main .item-page li strong{color:#425b72!important;opacity:1!important}
.is-service-detail .content-main .item-page li{padding:5px 0}
.is-service-detail .content-main .item-page img{max-width:min(100%,620px)!important;max-height:350px!important;margin:24px auto 34px!important}
.is-electra-service .content-main .item-page img{max-width:min(100%,580px)!important}

/* Airco hero: show several actual airco images from the Joomla article in one compact gallery. */
.service-detail-airco-gallery{background:rgba(255,255,255,.08);padding:12px;height:410px}
.service-detail-media.has-gallery{overflow:hidden}
.service-detail-media.has-gallery>.airco-hero-gallery{display:grid;width:100%;height:100%;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:10px}
.airco-hero-gallery.count-1{grid-template-columns:1fr;grid-template-rows:1fr}
.airco-hero-gallery.count-2{grid-template-columns:1fr 1fr;grid-template-rows:1fr}
.airco-hero-gallery.count-3 .airco-hero-card:first-child{grid-row:1/3}
.airco-hero-card{position:relative;margin:0!important;min-width:0;min-height:0;background:#fff;border-radius:13px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.11)}
.service-detail-media.has-gallery .airco-hero-card img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;margin:0!important;padding:14px!important;background:#fff!important;border-radius:0!important;box-shadow:none!important}
.airco-hero-card figcaption{position:absolute;left:10px;bottom:10px;padding:5px 9px;border-radius:999px;background:rgba(7,31,59,.88);color:#fff;font-size:.68rem;font-weight:850;letter-spacing:.04em}

/* Airco decision/compare content. */
.airco-advice-section{background:#f6f8fb;border-top:1px solid #e7edf2}
.airco-option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:56px}
.airco-option-card{position:relative;background:#fff;border:1px solid #e0e8ef;border-radius:20px;padding:28px;box-shadow:0 16px 42px rgba(19,34,56,.07)}
.airco-option-card .option-number{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eaf3fb;color:var(--primary);font-weight:900;font-size:.78rem}
.airco-option-card h3{margin:18px 0 10px;font-size:1.35rem;color:#10253e}
.airco-option-card p{margin:0;color:#5a6e81}
.airco-option-card ul{list-style:none;margin:20px 0 0;padding:0}
.airco-option-card li{position:relative;padding:7px 0 7px 25px;color:#405a72;font-size:.9rem}
.airco-option-card li:before{content:"✓";position:absolute;left:0;top:7px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:#2dbb7b;color:#fff;font-size:.65rem;font-weight:900}
.airco-compare-block{display:grid;grid-template-columns:.78fr 1.22fr;gap:42px;align-items:start;background:#0d2238;color:#fff;border-radius:24px;padding:38px;margin:0 0 48px;box-shadow:0 22px 60px rgba(13,34,56,.18)}
.airco-compare-copy h2{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.13;margin:12px 0 16px}
.airco-compare-copy p{color:#c8d5e1;margin:0}
.airco-compare-table-wrap{overflow:auto;border-radius:15px;background:#fff}
.airco-compare-table{width:100%;border-collapse:collapse;color:#243c54;min-width:520px}
.airco-compare-table th{padding:13px 16px;text-align:left;background:#eef4f8;color:#0e2f50;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}
.airco-compare-table td{padding:13px 16px;border-top:1px solid #e5ebf0;vertical-align:top;font-size:.9rem}
.airco-compare-table td:first-child{font-weight:850;color:var(--primary);width:180px}
.airco-brand-section{background:#fff;border:1px solid #e0e8ef;border-radius:22px;padding:34px;margin-bottom:28px}
.airco-brand-heading{display:grid;grid-template-columns:.65fr 1.35fr;column-gap:34px;align-items:end;margin-bottom:24px}
.airco-brand-heading .eyebrow{grid-column:1/-1}
.airco-brand-heading h2{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.15;margin:11px 0 0;color:#10253e}
.airco-brand-heading p{margin:11px 0 0;color:#5b6f82}
.airco-brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}
.airco-brand-grid article{display:grid;gap:5px;padding:18px;border-radius:14px;background:#f6f9fb;border:1px solid #e3eaf0}
.airco-brand-grid strong{font-size:1.06rem;color:#0f365c}
.airco-brand-grid span{font-size:.82rem;color:#66798b}
.airco-practical-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:26px}
.practical-card{background:#fff;border:1px solid #e0e8ef;border-radius:16px;padding:22px}
.practical-card h3{margin:0 0 9px;color:#10253e;font-size:1.05rem}
.practical-card p{margin:0;color:#5c7084;font-size:.88rem}

/* Navigation cleanup: compact primary navigation, submenu stays under Diensten. */
.site-navigation>ul{align-items:center}
.site-navigation>ul>li>a{font-weight:800}
.site-navigation .service-parent>a{padding-right:2px}

@media(max-width:1080px){
  .airco-option-grid{grid-template-columns:1fr 1fr}
  .airco-option-card:last-child{grid-column:1/-1}
  .airco-brand-grid{grid-template-columns:1fr 1fr}
  .airco-practical-grid{grid-template-columns:1fr 1fr}
  .airco-compare-block{grid-template-columns:1fr;gap:28px}
}
@media(max-width:820px){
  .service-detail-airco-gallery{height:360px}
  .airco-option-grid{grid-template-columns:1fr}
  .airco-option-card:last-child{grid-column:auto}
  .airco-brand-heading{grid-template-columns:1fr}
  .airco-brand-grid{grid-template-columns:1fr 1fr}
  .airco-practical-grid{grid-template-columns:1fr 1fr}
  .airco-compare-block{padding:28px}
}
@media(max-width:560px){
  .is-service-detail .content-layout{padding-top:28px}
  .service-detail-airco-gallery{height:330px;padding:9px}
  .service-detail-media.has-gallery>.airco-hero-gallery{gap:7px}
  .airco-hero-card figcaption{left:7px;bottom:7px;font-size:.6rem}
  .airco-brand-grid,.airco-practical-grid{grid-template-columns:1fr}
  .airco-brand-section{padding:24px}
  .airco-compare-block{padding:23px;border-radius:18px}
  .airco-compare-table{min-width:460px}
}


/* Wolsink 1.4.4 — robust Joomla menu cleanup and larger airco hero gallery */
/* The helper item is removed with JS; hide common Joomla helper classes while JS initializes. */
.site-navigation .nav-header,
.site-navigation .mod-menu__heading{font-style:normal}

.service-detail-airco{padding:72px 0 76px}
.service-detail-airco .service-detail-hero-grid{grid-template-columns:.88fr 1.12fr;gap:54px;align-items:center}
.service-detail-airco-gallery{height:500px;padding:15px;background:rgba(255,255,255,.09);position:relative}
.service-detail-airco-gallery.has-gallery{place-items:stretch}
.service-detail-media.has-gallery>.airco-hero-gallery{gap:13px;padding-bottom:34px}
.airco-hero-card{border-radius:15px}
.service-detail-media.has-gallery .airco-hero-card img{padding:18px!important}
.airco-hero-card figcaption{display:none!important}
.airco-gallery-note{position:absolute;left:15px;right:15px;bottom:10px;text-align:center;color:#dce8f2;font-size:.72rem;font-weight:750;letter-spacing:.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media(max-width:1080px){
  .service-detail-airco .service-detail-hero-grid{grid-template-columns:.92fr 1.08fr;gap:34px}
  .service-detail-airco-gallery{height:450px}
}
@media(max-width:820px){
  .service-detail-airco{padding:52px 0 58px}
  .service-detail-airco .service-detail-hero-grid{grid-template-columns:1fr}
  .service-detail-airco-gallery{height:430px}
}
@media(max-width:560px){
  .service-detail-airco-gallery{height:390px;padding:9px}
  .service-detail-media.has-gallery>.airco-hero-gallery{gap:7px;padding-bottom:31px}
  .airco-gallery-note{left:9px;right:9px;bottom:7px;font-size:.62rem}
}
\n\n/* Wolsink 1.4.5 — deterministic main navigation + compact mobile call bar */
.site-navigation .wolsink-main-menu{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}
.site-navigation .wolsink-main-menu>li{position:relative;white-space:nowrap}
.site-navigation .wolsink-main-menu>li>a{font-weight:800;font-size:.91rem;padding:29px 0;display:block}
@media(max-width:1080px){.site-navigation .wolsink-main-menu{gap:17px}.site-navigation .wolsink-main-menu>li>a{font-size:.86rem}}
@media(max-width:820px){.site-navigation .wolsink-main-menu{display:block!important}.site-navigation .wolsink-main-menu>li{white-space:normal}}
@media(max-width:560px){body{padding-bottom:48px}.mobile-call{height:48px;font-size:.9rem;letter-spacing:.01em;gap:5px}.mobile-call span{font-weight:800;opacity:.92}}

/* Wolsink 1.4.6 — uniforme dienstenpagina's, schone Joomla metadata en nette aircogalerij */
/* Joomla artikelmetadata hoort niet op de publieke bedrijfssite zichtbaar te zijn. */
.article-info,
.article-info-term,
dl.article-info,
.com-content-article__info,
.createdby,
.published,
.category-name,
.parent-category-name,
.modified,
.hits{display:none!important}

/* Alle dienstpagina's gebruiken dezelfde template-opbouw als Airco en Electra. */
.is-service-detail .content-main .page-header{display:none!important}
.is-service-detail .content-layout{padding-top:52px;padding-bottom:58px}
.is-service-detail .content-main{width:min(100%,980px)}
.is-service-detail .content-main .item-page{font-size:1rem;line-height:1.76;color:#425b72}
.is-service-detail .content-main .item-page>p:first-of-type{margin-top:0}
.service-hero-source,.service-hero-source-wrap{display:none!important}
.service-detail-dynamic-media{background:#f3f8fb}
.service-detail-dynamic-media.has-image{place-items:stretch}
.service-detail-dynamic-media.has-image img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;padding:0!important;background:#eef6fa!important}
.is-warmtepomp-service .service-detail-dynamic-media.has-image img,
.is-ventilatie-service .service-detail-dynamic-media.has-image img,
.is-data-service .service-detail-dynamic-media.has-image img{object-fit:contain!important}

/* Dezelfde visuele maatvoering op alle zes diensten. */
.service-detail-sanitar,
.service-detail-sanitair,
.service-detail-warmtepomp,
.service-detail-ventilatie,
.service-detail-data,
.service-detail-electra{padding:66px 0 70px}
.service-detail-sanitar .service-detail-hero-grid,
.service-detail-sanitair .service-detail-hero-grid,
.service-detail-warmtepomp .service-detail-hero-grid,
.service-detail-ventilatie .service-detail-hero-grid,
.service-detail-data .service-detail-hero-grid,
.service-detail-electra .service-detail-hero-grid{grid-template-columns:1fr 1fr;gap:54px}

/* Airco: geen ongelijke hoge kaart meer bij drie afbeeldingen. */
.service-detail-airco-gallery{height:430px!important;padding:12px!important}
.service-detail-airco-gallery.has-gallery{display:grid!important;grid-template-rows:minmax(0,1fr) auto;gap:9px;place-items:stretch!important}
.service-detail-media.has-gallery>.airco-hero-gallery{padding-bottom:0!important;gap:10px!important;min-height:0}
.service-detail-media.has-gallery>.airco-hero-gallery.count-3{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:1fr!important}
.service-detail-media.has-gallery>.airco-hero-gallery.count-3 .airco-hero-card:first-child{grid-row:auto!important;grid-column:auto!important}
.service-detail-media.has-gallery>.airco-hero-gallery.count-4{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
.airco-hero-card{display:grid;place-items:center;border-radius:14px!important}
.service-detail-media.has-gallery .airco-hero-card img{padding:12px!important;object-position:center!important}
.airco-gallery-note{position:static!important;align-self:end;min-height:22px;display:flex;align-items:center;justify-content:center;color:#dce8f2;font-size:.69rem;line-height:1.2;padding:0 5px;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}

@media(max-width:1080px){
  .service-detail-sanitar .service-detail-hero-grid,
  .service-detail-sanitair .service-detail-hero-grid,
  .service-detail-warmtepomp .service-detail-hero-grid,
  .service-detail-ventilatie .service-detail-hero-grid,
  .service-detail-data .service-detail-hero-grid,
  .service-detail-electra .service-detail-hero-grid{gap:34px}
  .service-detail-airco-gallery{height:400px!important}
}
@media(max-width:820px){
  .service-detail-sanitar,
  .service-detail-sanitair,
  .service-detail-warmtepomp,
  .service-detail-ventilatie,
  .service-detail-data,
  .service-detail-electra{padding:50px 0 56px}
  .service-detail-sanitar .service-detail-hero-grid,
  .service-detail-sanitair .service-detail-hero-grid,
  .service-detail-warmtepomp .service-detail-hero-grid,
  .service-detail-ventilatie .service-detail-hero-grid,
  .service-detail-data .service-detail-hero-grid,
  .service-detail-electra .service-detail-hero-grid{grid-template-columns:1fr;gap:28px}
  .service-detail-airco-gallery{height:380px!important}
  .service-detail-media.has-gallery>.airco-hero-gallery.count-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .service-detail-airco-gallery{height:auto!important;min-height:420px;padding:8px!important}
  .service-detail-media.has-gallery>.airco-hero-gallery.count-3{grid-template-columns:1fr!important;grid-template-rows:repeat(3,150px)!important}
  .service-detail-media.has-gallery>.airco-hero-gallery.count-4{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,160px)!important}
  .airco-gallery-note{font-size:.61rem;padding:3px 4px 0}
  .is-service-detail .content-layout{padding-top:34px;padding-bottom:38px}
}

/* Wolsink 1.4.7 — slideshow sanitair, LG-airco en vloerverwarming */
.service-grid{grid-template-columns:repeat(5,minmax(0,1fr))}

/* Airco hero: altijd vier gelijke kaarten, zonder scheve hoogtes. */
.service-detail-airco-gallery{height:470px!important}
.service-detail-media.has-gallery>.airco-hero-gallery.count-4{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;gap:12px!important;height:100%;min-height:0}
.service-detail-media.has-gallery .airco-hero-card{min-width:0;min-height:0;background:#fff;border:1px solid rgba(7,90,168,.12);overflow:hidden;box-shadow:none!important}
.service-detail-media.has-gallery .airco-hero-card img{width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;object-position:center!important;padding:14px!important;margin:0!important;background:#fff!important}
.airco-hero-placeholder{display:grid;place-items:center;text-align:center;color:#075aa8;padding:20px}.airco-hero-placeholder span{display:block;font-size:.75rem;color:#6b8092;margin-top:4px}

/* Sanitair: losse verticale artikelafbeeldingen vervangen door één rustige slideshow. */
.sanitair-gallery-source{display:none!important}
.bathroom-slider-section{background:#f5f8fb;padding-top:72px}
.bathroom-slider{position:relative;max-width:1040px;margin:0 auto;background:#071f3b;border-radius:24px;padding:16px;box-shadow:0 24px 60px rgba(19,34,56,.14);overflow:hidden}
.bathroom-slider-stage{position:relative;height:620px;border-radius:18px;overflow:hidden;background:#0d1c2e}
.bathroom-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .45s ease;display:grid;grid-template-rows:minmax(0,1fr) auto;background:#0d1c2e}
.bathroom-slide.is-active{opacity:1;visibility:visible;z-index:2}
.bathroom-slide img{width:100%;height:100%;min-height:0;object-fit:contain;background:#0d1c2e}
.bathroom-slide figcaption{padding:14px 18px;background:#fff;color:#14263a;font-weight:850;font-size:.94rem}
.bathroom-slider-arrow{position:absolute;z-index:4;top:45%;transform:translateY(-50%);width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:#075aa8;font-size:2rem;line-height:1;display:grid;place-items:center;box-shadow:0 8px 25px rgba(0,0,0,.18);cursor:pointer}
.bathroom-slider-arrow.prev{left:28px}.bathroom-slider-arrow.next{right:28px}
.bathroom-slider-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-top:12px}
.bathroom-slider-thumbs button{border:2px solid transparent;background:transparent;padding:0;border-radius:11px;overflow:hidden;cursor:pointer;opacity:.65;transition:.2s}
.bathroom-slider-thumbs button.is-active{border-color:#f36f21;opacity:1}
.bathroom-slider-thumbs img{width:100%;height:82px;object-fit:cover}

/* Vloerverwarming */
.service-detail-vloerverwarming{padding:66px 0 70px}
.service-detail-vloerverwarming .service-detail-hero-grid{grid-template-columns:1fr 1fr;gap:54px}
.floor-heating-hero-art{background:linear-gradient(145deg,#eff7fc,#dbeefb);display:grid;place-items:center;padding:22px!important}
.floor-heating-hero-art svg{width:100%;height:100%;max-height:420px}
.is-vloerverwarming-service .content-layout{display:none!important}
.floor-systems-section{background:#f5f8fb}
.floor-system-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.floor-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.floor-system-card,.floor-compare-card,.floor-source-grid article{background:#fff;border:1px solid #e4eaf0;border-radius:20px;padding:28px;box-shadow:0 12px 34px rgba(19,34,56,.06)}
.floor-system-card h3,.floor-compare-card h3{font-size:1.35rem;margin:10px 0 12px;color:#14263a}
.floor-system-card p,.floor-compare-card p,.floor-source-grid span{color:#5b7184}
.floor-system-card ul,.floor-compare-card ul{padding-left:20px;margin:18px 0 0;color:#425b72}
.floor-system-card li,.floor-compare-card li{margin:7px 0}.floor-package-steps{padding-left:22px;margin:18px 0 0;color:#425b72}.floor-package-steps li{margin:8px 0}.floor-package-card{border-top:4px solid #f36f21}.floor-insulation-section{background:#f5f8fb}.floor-source-link{margin-top:18px}.floor-source-link a{font-weight:800;color:#075aa8;text-decoration:none}.floor-source-link a:hover{text-decoration:underline}.quote-grid-inner{margin:0}.quote-help{margin:8px 0 0;color:#5b7184;font-size:.9rem}
.floor-system-card .option-number{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#edf6ff;color:#075aa8;font-weight:900;font-size:.76rem}
.floor-screed-section{background:#fff}
.floor-compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.floor-compare-card:first-child{border-top:4px solid #075aa8}.floor-compare-card:last-child{border-top:4px solid #f36f21}
.floor-note{margin-top:22px;padding:20px 24px;border-radius:16px;background:#0d1c2e;color:#fff;display:grid;grid-template-columns:190px 1fr;gap:20px;align-items:center}.floor-note span{color:#d6e1ea}
.floor-heat-source-section{background:#f5f8fb;padding-top:76px}
.floor-source-grid article{display:flex;flex-direction:column;gap:7px}.floor-source-grid strong{color:#075aa8;font-size:1.06rem}
.quote-field[hidden]{display:none!important}

@media(max-width:1250px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1050px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bathroom-slider-stage{height:540px}}
@media(max-width:820px){
  .service-detail-vloerverwarming .service-detail-hero-grid{grid-template-columns:1fr;gap:28px}
  .floor-system-grid,.floor-source-grid{grid-template-columns:1fr}
  .floor-compare-grid{grid-template-columns:1fr}
  .floor-note{grid-template-columns:1fr;gap:5px}
  .bathroom-slider-stage{height:500px}
  .bathroom-slider-thumbs{grid-template-columns:repeat(3,1fr)}
  .bathroom-slider-thumbs img{height:72px}
  .service-detail-airco-gallery{height:430px!important}
}
@media(max-width:560px){
  .service-grid{grid-template-columns:1fr}
  .bathroom-slider-section{padding-top:45px}
  .bathroom-slider{padding:9px;border-radius:18px}
  .bathroom-slider-stage{height:420px;border-radius:13px}
  .bathroom-slider-arrow{width:42px;height:42px}.bathroom-slider-arrow.prev{left:16px}.bathroom-slider-arrow.next{right:16px}
  .bathroom-slider-thumbs{grid-template-columns:repeat(3,1fr);gap:6px}.bathroom-slider-thumbs img{height:62px}
  .service-detail-airco-gallery{height:auto!important;min-height:520px!important}
  .service-detail-media.has-gallery>.airco-hero-gallery.count-4{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,220px)!important}
  .floor-system-card,.floor-compare-card,.floor-source-grid article{padding:22px}
}


/* Wolsink 1.4.10 — badkamerslideshow als volledige blauwe sectie */
.bathroom-slider-section{
  position:relative;
  overflow:hidden;
  background:linear-gradient(100deg,#082744 0%,#0b3f73 52%,#075aa8 100%)!important;
  color:#fff;
  padding:78px 0 84px!important;
}
.bathroom-slider-section:after{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-180px;
  bottom:-300px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.12),rgba(255,255,255,0) 68%);
  pointer-events:none;
}
.bathroom-slider-section>.container{position:relative;z-index:1}
.bathroom-slider-section .section-heading{margin-bottom:30px}
.bathroom-slider-section .section-heading h2{color:#fff!important}
.bathroom-slider-section .section-heading p{color:#dbe9f5!important;max-width:650px}
.bathroom-slider-section .eyebrow{color:#ff4a4f!important}
.bathroom-slider{
  max-width:1120px!important;
  background:rgba(3,24,45,.42)!important;
  border:1px solid rgba(255,255,255,.14);
  border-radius:24px!important;
  padding:18px!important;
  box-shadow:0 26px 65px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(4px);
}
.bathroom-slider-stage{
  height:620px;
  background:#061c33!important;
  border:1px solid rgba(255,255,255,.09);
}
.bathroom-slide{background:#061c33!important}
.bathroom-slide img{background:#061c33!important;padding:8px}
.bathroom-slide figcaption{
  background:linear-gradient(90deg,#071f3b,#0b3967)!important;
  color:#fff!important;
  border-top:1px solid rgba(255,255,255,.09);
  padding:15px 20px!important;
}
.bathroom-slider-arrow{
  background:rgba(255,255,255,.94)!important;
  color:#075aa8!important;
  border:1px solid rgba(255,255,255,.6)!important;
}
.bathroom-slider-thumbs{
  padding-top:2px;
}
.bathroom-slider-thumbs button{
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(255,255,255,.08)!important;
}
.bathroom-slider-thumbs button.is-active{
  border-color:#f36f21!important;
  box-shadow:0 0 0 2px rgba(243,111,33,.18);
}
.bathroom-slider-thumbs img{background:#fff}
@media(max-width:820px){
  .bathroom-slider-section{padding:58px 0 64px!important}
  .bathroom-slider{padding:12px!important}
  .bathroom-slider-stage{height:500px}
}
@media(max-width:560px){
  .bathroom-slider-section{padding:46px 0 52px!important}
  .bathroom-slider-section .section-heading{margin-bottom:22px}
  .bathroom-slider{padding:8px!important;border-radius:17px!important}
  .bathroom-slider-stage{height:410px}
}


/* 1.4.11 Verwarming pagina */
.heating-hero-panel{display:grid;grid-template-columns:1.3fr .9fr;gap:1rem;align-items:stretch}.heating-hero-main,.heating-hero-side article{background:#fff;border:1px solid rgba(7,90,168,.12);border-radius:24px;box-shadow:0 18px 34px rgba(7,37,73,.08);overflow:hidden}.heating-hero-main img,.heating-hero-side article img{width:100%;height:100%;object-fit:cover;display:block}.heating-hero-main{min-height:420px}.heating-hero-side{display:grid;grid-template-rows:1fr 1fr;gap:1rem}.heating-hero-side article{position:relative;min-height:200px;background:linear-gradient(180deg,#fff 0%,#f4f8fd 100%)}.heating-hero-side article span{position:absolute;left:1rem;right:1rem;bottom:1rem;padding:.7rem .9rem;border-radius:14px;background:rgba(7,37,73,.82);color:#fff;font-weight:700;text-align:center}
.heating-overview-section,.heating-product-section{background:linear-gradient(180deg,#f7fbff 0%,#ffffff 100%)}.heating-solution-grid,.heating-subsidy-grid,.heating-product-grid{display:grid;gap:1.5rem}.heating-solution-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.heating-solution-card,.heating-subsidy-card,.heating-product-card{background:#fff;border:1px solid rgba(7,90,168,.12);border-radius:28px;padding:1.6rem;box-shadow:0 16px 36px rgba(7,37,73,.07)}.heating-solution-card h3,.heating-subsidy-card h3,.heating-product-copy h3{margin:.6rem 0 .7rem}.heating-solution-card ul,.heating-subsidy-card ul{margin:1rem 0 0;padding-left:1.1rem;color:#496177}.heating-solution-card li,.heating-subsidy-card li{margin:.45rem 0}.heating-subsidy-grid{grid-template-columns:1fr 1fr}.heating-note{margin-top:1rem;padding:1rem 1.1rem;border-radius:18px;background:#f4f8fd;color:#24435f;display:grid;gap:.4rem}.heating-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.heating-product-card{padding:0;overflow:hidden;display:grid;grid-template-rows:auto 1fr}.heating-product-card figure{margin:0;background:#eef5fb;min-height:240px;display:flex;align-items:center;justify-content:center}.heating-product-card figure img{width:100%;height:100%;object-fit:cover;display:block}.heating-product-copy{padding:1.35rem 1.4rem 1.5rem}.heating-product-copy p{margin:0;color:#4f667d}.heating-cta{margin-top:1.8rem;padding:1.4rem 1.5rem;border-radius:24px;background:#092f52;color:#fff;display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center}.heating-cta strong{font-size:1.05rem}.heating-cta span{color:#d3e6f7}
@media (max-width: 980px){.heating-hero-panel,.heating-solution-grid,.heating-subsidy-grid,.heating-product-grid,.heating-cta{grid-template-columns:1fr}.heating-hero-main{min-height:300px}.heating-hero-side{grid-template-rows:none}.heating-cta{padding:1.25rem}.heating-product-card figure{min-height:210px}}
@media (max-width: 720px){.heating-solution-card,.heating-subsidy-card,.heating-product-copy{padding:1.2rem}.heating-hero-panel{gap:.85rem}.heating-hero-side{gap:.85rem}.heating-product-card figure{min-height:190px}}


/* 1.4.12 - verwarming beeldverhouding */
.heating-hero-main,.heating-hero-side article{background:linear-gradient(180deg,#ffffff 0%,#f4f8fd 100%)}
.heating-hero-main img,.heating-hero-side article img{object-fit:contain;padding:1rem;box-sizing:border-box}
.heating-product-card figure{aspect-ratio:4/3;min-height:0;background:linear-gradient(180deg,#ffffff 0%,#f4f8fd 100%);padding:1rem;box-sizing:border-box}
.heating-product-card figure img{object-fit:contain;max-width:100%;max-height:100%}
@media (max-width:720px){.heating-product-card figure{aspect-ratio:1/1}.heating-hero-main img,.heating-hero-side article img{padding:.65rem}}


/* 1.4.13 Verwarming rekentool en offerte */
.heating-calculator-section{background:linear-gradient(145deg,#081d34,#0a4f89);color:#fff;position:relative;overflow:hidden}.heating-calculator-section:before{content:"";position:absolute;inset:auto -220px -360px auto;width:680px;height:680px;border-radius:50%;background:radial-gradient(circle,rgba(49,139,215,.52),transparent 68%)}.heating-calculator-section .container{position:relative;z-index:1}.heating-calculator-section .section-heading p{color:#c8d8e7}.heating-calculator-shell{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:24px;align-items:start}.heating-calculator-form,.heating-result{background:#fff;color:var(--ink);border-radius:24px;box-shadow:0 24px 60px rgba(0,0,0,.2)}.heating-calculator-form{padding:28px}.heating-result{padding:28px;position:sticky;top:120px}.heating-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.heating-question-card{margin:0;padding:18px;border:1px solid #dce5ed;border-radius:18px;background:#f8fbfe;display:grid;gap:14px}.heating-question-card legend{padding:0 8px;color:#092d50;font-weight:900;font-size:1rem}.heating-question-wide{grid-column:1/-1}.heating-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.heating-help{margin:0;color:#667c90;font-size:.82rem}.heating-question-card.is-floor-only{opacity:.55}.heating-question-card.is-floor-only .heating-two-col,.heating-question-card.is-floor-only .heating-help{display:none}.heating-result-badge{display:inline-flex;padding:.48rem .75rem;border-radius:999px;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;margin-bottom:14px}.heating-result-badge.good{background:#e6f7ee;color:#16734a}.heating-result-badge.hybrid{background:#fff1e4;color:#b95c0a}.heating-result-badge.review{background:#edf4fb;color:#075aa8}.heating-result-explanation{color:#526a80}.heating-result-facts{display:grid;gap:10px;margin:20px 0}.heating-result-facts>div{padding:14px 16px;border-radius:14px;background:#f4f8fc;display:grid;gap:4px}.heating-result-facts strong{color:#0b2d4e}.heating-result-facts span{color:#5a7187;font-size:.9rem}.heating-product-card figure img{object-fit:contain;background:#fff}.heating-product-card figure img[src*="heating-intergas-cv"]{padding:28px}.heating-hero-main img,.heating-hero-side article img{object-fit:contain;background:#fff}.quote-form textarea[readonly]{background:#f6f9fc;color:#3f5870}
@media(max-width:980px){.heating-calculator-shell{grid-template-columns:1fr}.heating-result{position:static}.heating-question-grid{grid-template-columns:1fr}.heating-question-wide{grid-column:auto}.heating-two-col{grid-template-columns:1fr}}
@media(max-width:640px){.heating-calculator-form,.heating-result{padding:20px;border-radius:18px}.heating-question-card{padding:15px}}

/* 1.4.14 - uitgebreide verwarming rekentool */
.heating-data-note{margin:-.2rem 0 1.4rem;padding:1rem 1.15rem;border:1px solid rgba(255,255,255,.2);border-radius:18px;background:rgba(255,255,255,.08);display:grid;grid-template-columns:auto 1fr;gap:.8rem 1rem;align-items:start}.heating-data-note strong{color:#fff}.heating-data-note span{color:#d5e5f3;line-height:1.55}.heating-three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.calculator-field small{display:block;margin-top:.35rem;color:#71869a;font-size:.76rem;line-height:1.4}.heating-reference{margin:0;padding:.72rem .8rem;border-radius:12px;background:#edf5fc;color:#526b82;font-size:.78rem;line-height:1.45}.heating-consumption-card{background:linear-gradient(180deg,#f8fbfe,#f2f8fd)}.heating-power-box{margin:18px 0;padding:16px;border-radius:16px;background:linear-gradient(145deg,#082f53,#0b5f9d);color:#fff;display:grid;gap:7px}.heating-power-box strong{font-size:.96rem}.heating-power-box span{color:#dcecf9}.heating-power-box b{color:#fff}.heating-power-box small{color:#c3d9ea;line-height:1.45}.heating-result-facts>div:nth-child(3){background:#f7f3e9}.heating-result-facts>div:nth-child(3) strong{color:#725514}
@media(max-width:980px){.heating-three-col{grid-template-columns:1fr 1fr}.heating-data-note{grid-template-columns:1fr}}
@media(max-width:640px){.heating-three-col{grid-template-columns:1fr}}


/* 1.4.15 - Airco uitlijning, merkkaarten en gesplitst sanitair */
.airco-legacy-brands{display:none!important}
.service-detail-airco-gallery{height:auto!important;min-height:0!important;aspect-ratio:1.16/1;padding:10px!important;box-sizing:border-box}
.service-detail-media.has-gallery>.airco-hero-gallery.count-4{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;gap:10px!important;height:100%!important;min-height:0!important;overflow:hidden}
.service-detail-media.has-gallery .airco-hero-card{display:grid!important;grid-template-rows:minmax(0,1fr) 28px!important;min-height:0!important;overflow:hidden!important;border-radius:14px!important;background:#fff!important}
.airco-hero-image-stage{position:relative;min-height:0;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center;padding:10px}
.service-detail-media.has-gallery .airco-hero-image-stage img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;padding:0!important;margin:0!important;box-sizing:border-box!important;background:#fff!important}
.airco-hero-brand{display:flex;align-items:center;justify-content:center;background:#eff6fc;color:#0b3e6c;font-size:.72rem;font-weight:900;letter-spacing:.02em;border-top:1px solid #dbe9f5}
.airco-gallery-note{padding-top:7px!important;color:#d9e9f7!important;text-align:center;font-size:.66rem!important}
.airco-brand-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch}
.airco-brand-grid .airco-brand-card{padding:0!important;overflow:hidden;display:grid;grid-template-rows:160px 1fr;border-radius:18px!important;background:#fff!important;box-shadow:0 10px 30px rgba(7,37,73,.07)}
.airco-brand-image{display:flex;align-items:center;justify-content:center;min-height:0;padding:14px;background:linear-gradient(180deg,#fff,#f6f9fc);border-bottom:1px solid #e3eaf0}
.airco-brand-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.airco-brand-copy{display:grid;gap:5px;padding:15px 16px 17px}.airco-brand-copy strong{font-size:1.06rem;color:#0f365c}.airco-brand-copy span{font-size:.8rem;line-height:1.45;color:#66798b}

.sanitary-choice-section{background:#f5f8fb}.sanitary-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.sanitary-choice-card{background:#fff;border:1px solid #e1e9f0;border-radius:24px;padding:28px;box-shadow:0 16px 36px rgba(7,37,73,.06)}.sanitary-choice-card h3{font-size:1.55rem;margin:12px 0}.sanitary-choice-card p{color:#52697e}.sanitary-choice-card ul{padding-left:20px;color:#405a71}.sanitary-choice-card li{margin:7px 0}.sanitary-choice-card .button{margin-top:10px}
.sanitary-gallery-section{padding-top:72px!important}.toilet-gallery-section{background:linear-gradient(100deg,#061d34 0%,#0a365f 52%,#0a5a96 100%)!important}.toilet-slider{max-width:920px!important}.bathroom-slider-thumbs-small{grid-template-columns:repeat(2,minmax(0,190px))!important;justify-content:center}.bathroom-slider-thumbs-small img{height:100px!important}.toilet-slider .bathroom-slider-stage{height:560px}

@media(max-width:980px){
  .airco-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .sanitary-choice-grid{grid-template-columns:1fr}
  .service-detail-airco-gallery{aspect-ratio:auto;min-height:420px!important}
}
@media(max-width:560px){
  .service-detail-airco-gallery{min-height:420px!important;height:auto!important}
  .service-detail-media.has-gallery>.airco-hero-gallery.count-4{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,190px)!important}
  .service-detail-media.has-gallery .airco-hero-card{grid-template-rows:minmax(0,1fr) 26px!important}
  .airco-hero-image-stage{padding:7px}.airco-hero-brand{font-size:.63rem}
  .airco-brand-grid{grid-template-columns:1fr!important}.airco-brand-grid .airco-brand-card{grid-template-rows:190px 1fr}
  .sanitary-choice-card{padding:22px}.toilet-slider .bathroom-slider-stage{height:430px}
  .bathroom-slider-thumbs-small{grid-template-columns:repeat(2,1fr)!important}.bathroom-slider-thumbs-small img{height:78px!important}
}


/* 1.4.16 - Klikbare aircomerken met informatie-popup */
.airco-brand-card-interactive{cursor:pointer;position:relative;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;border:1px solid #e3eaf0!important}
.airco-brand-card-interactive::after{content:'Meer info';position:absolute;top:12px;right:12px;padding:6px 9px;border-radius:999px;background:#0b3e6c;color:#fff;font-size:.66rem;font-weight:900;letter-spacing:.02em;box-shadow:0 5px 16px rgba(7,37,73,.18)}
.airco-brand-card-interactive:hover,.airco-brand-card-interactive:focus-visible{transform:translateY(-4px);box-shadow:0 18px 40px rgba(7,37,73,.13)!important;border-color:#0b64ae!important;outline:none}
.airco-brand-card-interactive:focus-visible{box-shadow:0 0 0 4px rgba(9,100,174,.17),0 18px 40px rgba(7,37,73,.13)!important}
.airco-brand-modal[hidden]{display:none!important}.airco-brand-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:24px}.airco-brand-modal-backdrop{position:absolute;inset:0;background:rgba(2,16,29,.72);backdrop-filter:blur(5px)}.airco-brand-modal-dialog{position:relative;width:min(980px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;background:#fff;border-radius:28px;box-shadow:0 28px 90px rgba(0,0,0,.34)}.airco-brand-modal-close{position:absolute;right:16px;top:16px;z-index:4;width:44px;height:44px;border:0;border-radius:50%;background:#0b2e4f;color:#fff;font-size:1.8rem;line-height:1;cursor:pointer}.airco-brand-modal-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);min-height:560px}.airco-brand-modal-image{background:linear-gradient(145deg,#eaf3fb,#fff);display:flex;align-items:center;justify-content:center;padding:42px}.airco-brand-modal-image img{display:block;width:100%;height:100%;max-height:430px;object-fit:contain;object-position:center}.airco-brand-modal-content{padding:52px 52px 44px}.airco-brand-modal-content h2{font-size:clamp(2rem,4vw,3rem);line-height:1.03;margin:12px 0 18px;color:#10253e}.airco-brand-modal-intro{font-size:1rem;line-height:1.7;color:#52697e}.airco-brand-modal-content h3{margin:26px 0 10px;color:#10253e}.airco-brand-modal-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}.airco-brand-modal-list li{position:relative;padding-left:28px;color:#425b72;line-height:1.5}.airco-brand-modal-list li::before{content:'✓';position:absolute;left:0;top:0;color:#15a56a;font-weight:900}.airco-brand-modal-suitable{display:grid;gap:4px;margin-top:24px;padding:16px 18px;border-radius:17px;background:#edf6fd;color:#214866}.airco-brand-modal-suitable strong{color:#0b3e6c}.airco-brand-modal-note{margin:16px 0 0;font-size:.82rem;color:#748698}.airco-brand-modal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.airco-brand-modal-open{overflow:hidden}
@media(max-width:760px){.airco-brand-modal{padding:10px}.airco-brand-modal-dialog{width:100%;max-height:calc(100vh - 20px);border-radius:22px}.airco-brand-modal-layout{grid-template-columns:1fr}.airco-brand-modal-image{min-height:250px;padding:28px 36px}.airco-brand-modal-image img{max-height:230px}.airco-brand-modal-content{padding:30px 24px 28px}.airco-brand-modal-content h2{padding-right:40px}.airco-brand-modal-actions{display:grid}.airco-brand-modal-actions .button{width:100%}}


/* 1.4.17 - installatiecheck, reviews, werkgebied, veilige electra-FAQ en meterkast-check */
.installation-check-section{background:linear-gradient(180deg,#f3f7fb 0%,#fff 100%)}
.installation-check-shell,.meter-check-shell{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;background:#fff;border:1px solid #e2e9f0;border-radius:26px;padding:28px;box-shadow:0 20px 45px rgba(19,34,56,.07)}
.installation-check-form,.meter-check-form{display:grid;gap:22px}.installation-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.installation-check-grid label,.meter-check-connection{display:grid;gap:7px;font-weight:800;color:var(--ink)}
.installation-check-grid input,.installation-check-grid select,.meter-check-connection select{width:100%;border:1px solid #cfd9e3;border-radius:12px;padding:12px 14px;background:#fff;color:var(--ink)}
.installation-check-options,.meter-check-form fieldset{border:0;margin:0;padding:0}.installation-check-options legend,.meter-check-form legend{font-weight:900;margin-bottom:13px}.installation-check-options,.meter-check-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.installation-check-options legend{grid-column:1/-1}.installation-check-options label,.meter-check-options label{display:flex;align-items:center;gap:10px;padding:12px 13px;border:1px solid #dce5ed;border-radius:12px;background:#f8fbfd;font-weight:750;cursor:pointer}.installation-check-options input,.meter-check-options input{width:18px;height:18px;accent-color:var(--primary)}
.installation-check-result,.meter-check-result{border-radius:20px;background:linear-gradient(135deg,#0b2744,#075aa8);color:#fff;padding:24px;min-height:310px}.installation-check-result .result-placeholder,.meter-check-result .result-placeholder{height:100%;display:grid;place-content:center;gap:8px;text-align:center;color:#d9e7f4}.installation-check-result h3,.meter-check-result h3{margin:0 0 10px;font-size:1.55rem}.check-result-list{display:grid;gap:10px;margin-top:18px}.check-result-item{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:13px 14px}.check-result-item strong{display:block;margin-bottom:3px}.check-result-item span{font-size:.9rem;color:#dce9f4}.check-result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.check-result-actions a,.check-result-actions button{min-height:44px;padding:0 16px;border-radius:10px;border:0;font-weight:800;cursor:pointer}.check-result-actions a{background:#fff;color:#0a3359}.check-result-actions button{background:var(--secondary);color:#fff}
.reviews-section{background:#fff}.review-summary-card{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:28px 30px;border-radius:24px;background:linear-gradient(135deg,#f7fbff,#eef5fb);border:1px solid #dce7f0}.review-kicker{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:var(--primary)}.review-summary-copy h3{font-size:1.7rem;margin:7px 0 8px}.review-summary-copy p{margin:0;color:var(--muted)}.review-score strong{font-size:1.45rem;color:var(--ink)}.review-module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.workarea-section{background:#0c243d;color:#fff;overflow:hidden}.workarea-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.workarea-copy h2{font-size:clamp(2.1rem,4vw,3.5rem);line-height:1.1;margin:14px 0}.workarea-copy p{color:#c7d7e5;margin-bottom:25px}.workarea-map-card{position:relative;padding:34px;border-radius:28px;background:linear-gradient(135deg,#0e4e86,#0b6bbd);box-shadow:0 22px 50px rgba(0,0,0,.18)}.twente-badge{display:inline-flex;padding:8px 12px;border-radius:999px;background:#fff;color:#075aa8;font-weight:900;margin-bottom:18px}.place-chips{display:flex;flex-wrap:wrap;gap:10px}.place-chips span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);font-weight:800}.workarea-map-card p{margin:22px 0 0;color:#dceaf6;font-size:.9rem}
.electrical-faq-section{background:#f5f8fb}.simple-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.simple-faq{background:#fff;border:1px solid #dfe7ef;border-radius:16px;padding:0 18px}.simple-faq summary{cursor:pointer;font-weight:900;padding:18px 0;list-style:none}.simple-faq summary::-webkit-details-marker{display:none}.simple-faq summary:after{content:'+';float:right;color:var(--primary);font-size:1.3rem}.simple-faq[open] summary:after{content:'–'}.simple-faq p{color:var(--muted);margin:0 0 18px}.faq-danger-note{margin-top:20px;display:grid;grid-template-columns:180px 1fr;gap:18px;padding:18px 20px;border-radius:16px;background:#fff3f3;border:1px solid #f0c9cc}.faq-danger-note strong{color:#b41f29}.faq-danger-note span{color:#6d4548}
.meter-future-section{background:#fff}.meter-check-options{margin-top:10px}.meter-check-result .meter-status{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.13);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.meter-check-result ul{padding-left:18px;color:#dce9f4}.meter-check-result li{margin:7px 0}
@media (max-width:980px){.installation-check-shell,.meter-check-shell,.workarea-layout{grid-template-columns:1fr}.review-module-grid{grid-template-columns:1fr}.review-summary-card{align-items:flex-start}.simple-faq-grid{grid-template-columns:1fr}}
@media (max-width:720px){.installation-check-grid,.installation-check-options,.meter-check-options{grid-template-columns:1fr}.installation-check-shell,.meter-check-shell{padding:18px;border-radius:20px}.review-summary-card{display:grid;padding:22px}.workarea-map-card{padding:24px}.faq-danger-note{grid-template-columns:1fr}.installation-check-result,.meter-check-result{min-height:240px}}

/* 1.4.18 - vernieuwde Diensten- en Contactpagina */
.landing-hero{position:relative;overflow:hidden;background:linear-gradient(105deg,#082744 0%,#0b3f73 52%,#075aa8 100%);color:#fff;padding:78px 0 82px}
.landing-hero:after{content:"";position:absolute;width:620px;height:620px;border-radius:50%;right:-260px;bottom:-410px;background:radial-gradient(circle,rgba(255,255,255,.14),rgba(255,255,255,0) 68%);pointer-events:none}
.landing-hero>.container{position:relative;z-index:2}
.landing-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:64px;align-items:center}
.landing-hero-copy h1{font-size:clamp(2.65rem,5vw,4.8rem);line-height:1.03;letter-spacing:-.052em;margin:15px 0 24px;max-width:780px}
.landing-hero-copy>p{max-width:690px;color:#d8e7f3;font-size:1.08rem;margin:0 0 30px}
.landing-hero .button-ghost{border-color:rgba(255,255,255,.34)}
.services-hero-collage{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;gap:12px;height:430px;padding:12px;border-radius:28px;background:rgba(4,28,52,.34);border:1px solid rgba(255,255,255,.14);box-shadow:0 28px 65px rgba(2,18,34,.22)}
.services-hero-collage figure{margin:0;overflow:hidden;border-radius:18px;background:#fff;min-width:0;min-height:0}
.services-hero-collage .collage-large{grid-row:1/3}
.services-hero-collage img{width:100%;height:100%;object-fit:cover;object-position:center}
.services-hero-collage figure:nth-child(2) img{object-fit:contain;padding:15px;background:#fff}

.services-landing-section{background:linear-gradient(180deg,#f4f8fc 0%,#fff 100%)}
.services-landing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.service-landing-card{display:grid;grid-template-rows:230px 1fr;background:#fff;border:1px solid #dfe7ef;border-radius:22px;overflow:hidden;box-shadow:0 14px 38px rgba(19,34,56,.065);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.service-landing-card:hover{transform:translateY(-5px);box-shadow:0 24px 48px rgba(19,34,56,.12);border-color:#c9d9e7}
.service-landing-media{display:block;overflow:hidden;background:#edf5fb;border-bottom:1px solid #e3eaf0}
.service-landing-media img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .35s ease}
.service-landing-card:hover .service-landing-media img{transform:scale(1.025)}
.service-landing-media-contain img{object-fit:contain;padding:18px;background:linear-gradient(145deg,#f5f9fc,#fff)}
.service-landing-art{display:grid;place-items:center;background:#edf6fc}
.service-landing-art svg{width:100%;height:100%;display:block}
.service-landing-copy{display:flex;flex-direction:column;padding:24px 24px 22px}
.service-landing-kicker{color:var(--secondary);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.service-landing-copy h3{font-size:1.42rem;line-height:1.18;margin:8px 0 9px;color:var(--ink)}
.service-landing-copy p{color:var(--muted);font-size:.91rem;margin:0 0 17px}
.service-landing-tags{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 20px}
.service-landing-tags span{padding:5px 9px;border-radius:999px;background:#eef5fb;color:#31536f;font-size:.69rem;font-weight:850}
.service-card-link{margin-top:auto;color:var(--primary);font-weight:900;font-size:.84rem;display:inline-flex;align-items:center;gap:6px}
.services-process-section{background:#fff;padding-top:78px}
.services-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.services-process-grid article{position:relative;background:#0b2948;color:#fff;border-radius:22px;padding:30px;overflow:hidden;min-height:225px}
.services-process-grid article:after{content:"";position:absolute;width:170px;height:170px;right:-70px;bottom:-100px;border-radius:50%;background:rgba(255,255,255,.07)}
.services-process-grid article>span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#fff;color:var(--primary);font-weight:950;font-size:.75rem}
.services-process-grid h3{font-size:1.3rem;margin:18px 0 9px}
.services-process-grid p{margin:0;color:#cbddeb;font-size:.91rem}
.services-cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}

.contact-hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:70px;align-items:center}
.contact-hero-card{background:#fff;color:var(--ink);padding:30px;border-radius:24px;border-top:5px solid var(--secondary);box-shadow:0 24px 60px rgba(2,19,36,.2)}
.contact-hero-card h2{font-size:1.65rem;line-height:1.18;margin:10px 0 9px}
.contact-hero-card>p{margin:0 0 20px;color:var(--muted)}
.contact-hero-list{display:grid;border-top:1px solid #e5ebf0}
.contact-hero-list>a,.contact-hero-list>span{display:grid;grid-template-columns:110px 1fr;gap:15px;padding:13px 0;border-bottom:1px solid #e5ebf0;align-items:center}
.contact-hero-list strong{color:var(--primary);font-size:.82rem}
.contact-hero-list span,.contact-hero-list em{font-style:normal;color:#435c72;font-size:.9rem;overflow-wrap:anywhere}
.contact-actions-section{padding:70px 0;background:#f4f8fc}
.contact-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.contact-action-card{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;background:#fff;border:1px solid #dce5ed;border-radius:22px;padding:24px;box-shadow:0 13px 34px rgba(19,34,56,.055);transition:.2s}
.contact-action-card:hover{transform:translateY(-4px);box-shadow:0 20px 42px rgba(19,34,56,.11);border-color:#c8d8e6}
.contact-action-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#eaf4fb;color:var(--primary);font-size:1.45rem}
.contact-action-card small{display:block;color:var(--secondary);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.62rem}
.contact-action-card h2{font-size:1.3rem;margin:4px 0 1px}.contact-action-card p{margin:0;color:var(--muted);font-size:.86rem;overflow-wrap:anywhere}.contact-action-card b{color:var(--primary);font-size:1.4rem}
.contact-detail-section{background:#fff}
.contact-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:start}
.contact-route-panel,.company-detail-panel{border-radius:26px;padding:32px;border:1px solid #dee7ef;box-shadow:0 16px 40px rgba(19,34,56,.055)}
.contact-route-panel{background:#f8fbfd}.company-detail-panel{background:#0b2948;color:#fff;border-color:#0b2948}
.contact-route-panel h2,.company-detail-panel h2{font-size:clamp(1.85rem,3vw,2.55rem);line-height:1.13;margin:12px 0 10px}.contact-route-panel>p{color:var(--muted);margin:0 0 22px}.company-detail-panel .eyebrow{color:#ff6670}
.contact-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.contact-route-grid a{display:grid;gap:2px;padding:15px 16px;border-radius:14px;background:#fff;border:1px solid #dce5ed;transition:.18s}.contact-route-grid a:hover{border-color:#9fc2df;transform:translateY(-2px)}.contact-route-grid strong{color:#14324e}.contact-route-grid span{color:#61778a;font-size:.79rem}
.company-detail-panel dl{margin:24px 0 0}.company-detail-panel dl>div{display:grid;grid-template-columns:100px 1fr;gap:14px;padding:13px 0;border-top:1px solid rgba(255,255,255,.13)}.company-detail-panel dt{font-weight:850;color:#96c3e7;font-size:.79rem}.company-detail-panel dd{margin:0;color:#fff;overflow-wrap:anywhere}.company-detail-panel a{text-decoration:underline;text-decoration-color:rgba(255,255,255,.25);text-underline-offset:3px}
.contact-note-section{padding:0 0 92px;background:#fff}.contact-note-card{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:30px 34px;border-radius:24px;background:linear-gradient(120deg,#eef6fc,#f9fbfd);border:1px solid #dce7f0}.contact-note-card h2{font-size:1.65rem;line-height:1.2;margin:8px 0}.contact-note-card p{margin:0;color:var(--muted);max-width:760px}
.is-services-landing .content-layout,.is-contact-landing .content-layout{display:none!important}

@media(max-width:1080px){.services-landing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-hero-grid,.contact-hero-grid{gap:38px}.services-hero-collage{height:380px}}
@media(max-width:900px){.landing-hero-grid,.contact-hero-grid,.contact-detail-grid{grid-template-columns:1fr}.services-hero-collage{height:360px}.contact-action-grid,.services-process-grid{grid-template-columns:1fr}.contact-hero-card{max-width:680px}.services-cta-actions{justify-content:flex-start}.cta-inner{align-items:flex-start}}
@media(max-width:680px){.landing-hero{padding:56px 0 60px}.landing-hero-copy h1{font-size:clamp(2.35rem,11vw,3.6rem)}.services-hero-collage{grid-template-columns:1fr 1fr;grid-template-rows:230px 150px;height:auto;padding:9px}.services-hero-collage .collage-large{grid-row:auto;grid-column:1/3}.services-landing-grid{grid-template-columns:1fr}.service-landing-card{grid-template-rows:210px 1fr}.contact-route-grid{grid-template-columns:1fr}.contact-route-panel,.company-detail-panel{padding:24px}.contact-action-card{padding:20px}.contact-note-card{display:grid;padding:24px}.contact-note-card .button{width:100%}.contact-hero-list>a,.contact-hero-list>span{grid-template-columns:90px 1fr}.services-process-grid article{min-height:0}}


/* 1.4.19 - vernieuwde Nieuwspagina */
.news-landing-hero{background:linear-gradient(112deg,#071f38 0%,#0a3f70 58%,#075aa8 100%);overflow:hidden}
.news-hero-grid{align-items:center}
.news-hero-feature{background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 26px 62px rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.2)}
.news-hero-feature-media{height:315px;background:#eaf2f8;overflow:hidden}.news-hero-feature-media img{width:100%;height:100%;object-fit:cover;display:block}
.news-hero-feature-copy{padding:24px 26px 26px}.news-hero-feature-copy>span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eaf4fb;color:var(--primary);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.news-hero-feature-copy h2{font-size:1.65rem;line-height:1.18;margin:12px 0 8px}.news-hero-feature-copy p{color:var(--muted);margin:0 0 14px}.news-hero-feature-copy a{font-weight:900;color:var(--primary)}
.news-landing-section{background:linear-gradient(180deg,#f3f7fb 0%,#fff 100%)}
.news-landing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}.news-landing-card{background:#fff;border:1px solid #dce6ef;border-radius:24px;overflow:hidden;box-shadow:0 14px 36px rgba(18,41,64,.06);display:grid;grid-template-rows:auto 1fr;transition:.2s}.news-landing-card:hover{transform:translateY(-4px);box-shadow:0 22px 46px rgba(18,41,64,.12)}.news-landing-card-wide{grid-column:span 3;grid-template-columns:1.06fr .94fr;grid-template-rows:none}.news-landing-card-wide .news-landing-media{min-height:390px}
.news-landing-media{height:250px;position:relative;display:block;background:#eaf2f8;overflow:hidden}.news-landing-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.news-landing-card:hover .news-landing-media img{transform:scale(1.025)}.news-landing-media>span{position:absolute;left:16px;top:16px;background:#0a2b4a;color:#fff;padding:7px 11px;border-radius:999px;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;box-shadow:0 8px 20px rgba(0,0,0,.15)}
.news-landing-copy{padding:23px 24px 25px;display:flex;flex-direction:column}.news-landing-copy time{font-size:.73rem;color:var(--secondary);font-weight:900;text-transform:uppercase;letter-spacing:.07em}.news-landing-copy h3{font-size:1.35rem;line-height:1.2;margin:9px 0 9px}.news-landing-copy p{color:var(--muted);margin:0 0 18px;line-height:1.65}.news-landing-copy a{margin-top:auto;color:var(--primary);font-weight:900}
.news-cta-section{padding:0 0 90px;background:#fff}.news-cta-card{display:flex;align-items:center;justify-content:space-between;gap:36px;border-radius:28px;padding:34px 38px;background:linear-gradient(120deg,#eef6fc,#f9fbfd);border:1px solid #dbe7f0}.news-cta-card h2{font-size:1.9rem;margin:9px 0 7px}.news-cta-card p{margin:0;color:var(--muted);max-width:700px}.is-news-landing .content-layout{display:none!important}
@media(max-width:980px){.news-landing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-landing-card-wide{grid-column:span 2;grid-template-columns:1fr 1fr}.news-hero-feature-media{height:280px}.news-cta-card{align-items:flex-start;display:grid}.news-cta-card .services-cta-actions{justify-content:flex-start}}
@media(max-width:680px){.news-landing-grid{grid-template-columns:1fr}.news-landing-card-wide{grid-column:auto;grid-template-columns:1fr}.news-landing-card-wide .news-landing-media,.news-landing-media{height:230px;min-height:0}.news-hero-feature-media{height:235px}.news-hero-feature-copy{padding:21px}.news-cta-card{padding:25px}.news-cta-card .services-cta-actions{display:grid;width:100%}.news-cta-card .button{width:100%}}


/* 1.4.20 - vernieuwde Projectenpagina */
.project-landing-hero{background:linear-gradient(115deg,#071f38 0%,#0a3a68 55%,#075aa8 100%)}
.project-hero-grid{align-items:center}
.project-hero-showcase{background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 28px 62px rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.18)}
.project-hero-showcase-media{height:330px;background:#eaf2f8;overflow:hidden}.project-hero-showcase-media img{width:100%;height:100%;object-fit:cover;display:block}
.project-hero-showcase-copy{padding:24px 26px 28px}.project-hero-showcase-copy>span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eaf4fb;color:var(--primary);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.project-hero-showcase-copy h2{font-size:1.68rem;line-height:1.18;margin:12px 0 8px}.project-hero-showcase-copy p{color:var(--muted);margin:0}
.project-story-section{background:linear-gradient(180deg,#f4f8fc 0%,#fff 100%);padding-bottom:72px}
.project-story-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:26px;align-items:start}
.project-story-card,.project-story-panel{border-radius:26px;padding:32px;border:1px solid #dde7ef;box-shadow:0 16px 40px rgba(19,34,56,.055)}
.project-story-card{background:#fff}.project-story-panel{background:#0b2948;color:#fff;border-color:#0b2948}
.project-story-card h2,.project-story-panel h2{font-size:clamp(1.9rem,3vw,2.55rem);line-height:1.14;margin:12px 0 12px}.project-story-card p{margin:0 0 15px;color:var(--muted)}.project-story-card p:last-child{margin-bottom:0}
.project-story-panel .eyebrow{color:#ff6670}.project-story-points{display:grid;gap:0;margin-top:18px}.project-story-points div{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:14px 0;border-top:1px solid rgba(255,255,255,.12)}.project-story-points strong{color:#9fd0f1;font-size:.82rem}.project-story-points span{color:#e2ecf5;font-size:.92rem}
.project-realisation-section{background:#fff;padding-top:78px}.project-realisation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project-realisation-card{position:relative;background:#fff;border:1px solid #dce6ef;border-radius:24px;padding:28px;box-shadow:0 14px 36px rgba(18,41,64,.06);transition:.2s}.project-realisation-card:hover{transform:translateY(-4px);box-shadow:0 22px 44px rgba(18,41,64,.11)}.project-realisation-card>span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eaf4fb;color:var(--primary);font-weight:950;font-size:.78rem}.project-realisation-card h3{font-size:1.28rem;line-height:1.22;margin:18px 0 10px}.project-realisation-card p{margin:0;color:var(--muted);font-size:.92rem}
.project-gallery-showcase-section{background:linear-gradient(100deg,#061d34 0%,#0a365f 52%,#0a5a96 100%)!important}.project-gallery-showcase-section .section-heading p{color:#d8e7f3}.project-slider{max-width:980px!important}.project-slider .bathroom-slider-stage{height:585px}.project-slider .bathroom-slider-thumbs{grid-template-columns:repeat(5,1fr)}.project-slider .bathroom-slider-thumbs img{height:86px;background:#fff}
.project-cta-section{padding:0 0 92px;background:#fff}.project-cta-card{display:flex;align-items:center;justify-content:space-between;gap:36px;border-radius:28px;padding:34px 38px;background:linear-gradient(120deg,#eef6fc,#f9fbfd);border:1px solid #dbe7f0}.project-cta-card h2{font-size:1.9rem;line-height:1.16;margin:9px 0 7px}.project-cta-card p{margin:0;color:var(--muted);max-width:720px}.is-projects-landing .content-layout{display:none!important}
@media(max-width:1040px){.project-realisation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-story-grid{grid-template-columns:1fr}.project-cta-card{display:grid;align-items:flex-start}}
@media(max-width:700px){.project-hero-showcase-media{height:240px}.project-realisation-grid{grid-template-columns:1fr}.project-story-card,.project-story-panel{padding:24px}.project-story-points div{grid-template-columns:1fr;gap:4px}.project-slider .bathroom-slider-stage{height:340px}.project-slider .bathroom-slider-thumbs{grid-template-columns:repeat(3,1fr)}.project-slider .bathroom-slider-thumbs img{height:72px}.project-cta-card{padding:25px}.project-cta-card .services-cta-actions{display:grid;width:100%}.project-cta-card .button{width:100%}}


/* 1.4.21 - uitgebreid projectverhaal zonder nummering */
.project-realisation-prose{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.project-realisation-prose .project-realisation-card{padding:30px 31px;display:block;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.project-realisation-prose .project-realisation-card>span{display:none!important}
.project-realisation-prose .project-realisation-card h3{font-size:1.36rem;line-height:1.24;margin:0 0 13px;color:#122c45}
.project-realisation-prose .project-realisation-card p{font-size:.94rem;line-height:1.72;margin:0 0 13px;color:#526b80}
.project-realisation-prose .project-realisation-card p:last-child{margin-bottom:0}
.project-realisation-card-wide{grid-column:1/-1}
.project-slider .bathroom-slide figcaption{font-size:.9rem;line-height:1.35;padding:15px 18px}
@media(max-width:820px){.project-realisation-prose{grid-template-columns:1fr}.project-realisation-card-wide{grid-column:auto}}

/* 1.4.23 - algemeen contactformulier */
.contact-form-section{background:linear-gradient(180deg,#f4f8fc 0%,#fff 100%);padding-top:76px}
.contact-form-layout{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr);gap:26px;align-items:start}
.contact-form-card,.contact-form-help{border-radius:26px;border:1px solid #dde7ef;box-shadow:0 16px 42px rgba(19,34,56,.065)}
.contact-form-card{background:#fff;padding:32px}.contact-form-help{background:linear-gradient(145deg,#092845,#0b3d6b);color:#fff;padding:32px;position:sticky;top:110px}.contact-form-help .eyebrow{color:#ff737b}.contact-form-help h2{font-size:2rem;line-height:1.1;margin:12px 0 20px}.contact-help-list{display:grid;margin-bottom:25px}.contact-help-list>div{padding:16px 0;border-top:1px solid rgba(255,255,255,.14);display:grid;gap:5px}.contact-help-list strong{color:#a9d4f3}.contact-help-list span{font-size:.9rem;line-height:1.55;color:#e0ebf4}.contact-form-help .button{width:100%}
.contact-general-form{display:grid;gap:22px}.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.contact-form-grid label{display:grid;gap:7px;align-content:start}.contact-form-grid label>span{font-weight:850;color:#18344f;font-size:.9rem}.contact-form-grid label>small{font-size:.72rem;color:#708395;line-height:1.4}.contact-form-grid input,.contact-form-grid select,.contact-form-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cfdbe5;border-radius:13px;background:#fff;color:#132d46;padding:13px 14px;font:inherit;transition:border-color .16s,box-shadow .16s}.contact-form-grid textarea{resize:vertical;min-height:170px;line-height:1.55}.contact-form-grid input:focus,.contact-form-grid select:focus,.contact-form-grid textarea:focus{outline:none;border-color:#5a9dce;box-shadow:0 0 0 4px rgba(7,90,168,.1)}.contact-form-wide{grid-column:1/-1}.contact-privacy-check{display:flex;align-items:flex-start;gap:11px;padding:15px 16px;border-radius:14px;background:#f6f9fc;border:1px solid #e0e8ef;color:#526a7f;font-size:.83rem;line-height:1.5}.contact-privacy-check input{flex:0 0 auto;width:18px;height:18px;margin-top:2px;accent-color:var(--primary)}.contact-privacy-check a{color:var(--primary);text-decoration:underline;text-underline-offset:2px}.contact-form-submit{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.contact-form-submit>span{color:#6d8092;font-size:.79rem}.contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-form-errors,.contact-form-success{border-radius:16px;padding:16px 18px;margin-bottom:22px;display:grid;gap:7px}.contact-form-errors{background:#fff0f1;border:1px solid #efc8cc;color:#7e2c34}.contact-form-errors ul{margin:3px 0 0;padding-left:20px}.contact-form-errors li{margin:4px 0}.contact-form-success{background:#ecf8f2;border:1px solid #bee2cf;color:#205a3f}.contact-form-success strong{font-size:1.05rem}.contact-form-success span{font-size:.88rem;line-height:1.5}
@media(max-width:900px){.contact-form-layout{grid-template-columns:1fr}.contact-form-help{position:static}}
@media(max-width:620px){.contact-form-card,.contact-form-help{padding:23px}.contact-form-grid{grid-template-columns:1fr}.contact-form-wide{grid-column:auto}.contact-form-submit{display:grid}.contact-form-submit .button{width:100%}}
