/* Brochure palette and atmosphere. Form fields stay on opaque, quiet surfaces. */
:root{--pool:#1688bb;--navy:#09274c;--sun:#e4a132}
.button:hover{background:#173f6c}.header{border-bottom-color:#d8dce3}.brand-name,.hero-bottom strong{color:var(--navy)}
.expertise{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,#f7f4ec,#eaf3f6);padding-top:64px}
.expertise-lead{position:relative;isolation:isolate;color:#fff;padding-bottom:42px}
.expertise-lead:before{content:"";position:absolute;z-index:-1;top:-65px;bottom:-112px;width:100vw;left:50%;transform:translateX(-50%);background:linear-gradient(105deg,#061b3bf5 8%,#0b3454e8 57%,#0d5688ad),url('projects/villa-pool-natural-stone.webp') center 53%/cover}
.expertise-lead .section-top{border-color:#ffffff38}.expertise-lead .section-index{color:#f3c774}.expertise-lead .section-kicker{color:#fff}.expertise-lead .section-kicker [lang=en]{color:#cfe8f4}
.expertise-lead .section-titles h2,.quote-section .section-titles h2{font:800 46px/1.12 var(--sans);letter-spacing:-1.6px}.expertise-lead .section-titles em,.quote-section .section-titles em{font:inherit;color:#f0bc65}.expertise-lead .section-titles p{color:#e5f2fa}.expertise-lead .section-titles>[lang=en]{border-color:#ffffff3b}
.mood-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;max-width:970px;margin:0 auto}
.mood-item{margin:0;text-align:center;min-width:0}.mood-frame{width:min(100%,194px);aspect-ratio:1;margin:0 auto 16px;border:3px solid #e0a039;border-radius:50%;overflow:hidden;background:#d8e8ef;box-shadow:0 8px 28px #020e2570,0 0 0 7px #ffffff0e}.mood-frame img{width:100%;height:100%;object-fit:cover}.mood-item figcaption strong{display:flex;flex-direction:column;gap:2px;font-size:14px;letter-spacing:.7px;text-transform:uppercase;line-height:1.5}.mood-item figcaption strong [lang=en]{font-size:12px;color:#bfe4f8}.mood-item figcaption small{display:flex;justify-content:center;flex-wrap:wrap;gap:3px 7px;color:#d5e3ed;font-size:9px;margin-top:6px}
.services-grid{gap:18px}.service-card{background:#fffdf8;border:1px solid #dcd9cd;border-top:3px solid #d59a35;border-radius:5px;padding:27px 25px 22px;box-shadow:0 9px 24px #06274b0c}.service-card:hover{box-shadow:0 12px 30px #06274b1c;border-color:#d59a35}.service-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:50%;background:linear-gradient(135deg,#f2b94f,#c98620);color:#fff;margin-bottom:22px;box-shadow:0 3px 10px #b7751b22}.service-icon svg{width:27px;height:27px}.service-num{color:#9b762f;font-weight:700}.service-card h3{color:var(--navy)}.service-card p{color:#596a7a}.service-select{border-top:1px solid #e4dfd3;margin-top:20px;padding-top:15px;color:var(--navy)}.service-select>span:last-child{color:#ad7117;font-size:23px}.service-card--styling{background:linear-gradient(110deg,#fff2d8,#fffdf8 55%,#e6f3fa);border-top-color:#1688bb}
.remote-support{border-top:3px solid #d99b37;background:linear-gradient(115deg,#082448,#164c73);box-shadow:0 8px 25px #06274b0d}.remote-support h3{color:#fff}.remote-support p{color:#e2edf5}.remote-support-icon{color:#efb657}
.project-gallery{background:#fffdf9;border:1px solid #dcdedb;border-top:3px solid #d49a3e;border-radius:5px;padding:32px;margin-top:44px;box-shadow:0 9px 28px #06274b08}.project-tag{background:#0a2c52;color:#fff;border-color:#0a2c52}.comparison-label{background:#09274c;color:#fff}.project-comparison-item{border-color:#e0ddcf}.comparison-label>[lang=en]{color:#cce5f4}.project-thumbs img{transition:transform .25s}.project-photo-link:hover img{transform:scale(1.025)}
.local-grid{border-top-color:#d8dce2}.approach h3{color:var(--navy)}.approach-list li>span{color:#b3781e;font-weight:700}.area-card{background:linear-gradient(145deg,#09274c,#124b73);color:#fff;border:1px solid #c89b49;box-shadow:0 10px 26px #06274b12}.area-card .eyebrow,.area-card .area-heading svg{color:#f1be68}.area-card>h3 span,.area-card .area-note p,.area-card .text-link>[lang=en]{color:#dcebf4}.area-card .towns>span{background:#ffffff0d;border-color:#ffffff40;color:#f5f8fc}.area-card .area-note>[lang=en]{border-color:#ffffff35}.area-card .text-link{border-color:#e7b358;color:#f5c26d}.area-card .work-map-tools button,.area-card .work-map-open{color:#fff1d0}.area-card .work-map-tools [lang=en],.area-card .work-map figcaption{color:#d7e8f4}.area-card .work-map-legend i{border-color:#ff9a84;background:#e15b4528}.area-card .work-map-frame{border-color:#d6ad65}
.faq-block{border-top-color:#d8dce2}.faq-list details{background:#fffdfa;border:1px solid #dadde0;border-left:3px solid #d9a34e}.faq-list details[open]{border-left-color:#1688bb}.faq-list summary{color:var(--navy)}
.quote-section{position:relative;isolation:isolate;background:linear-gradient(105deg,#051a39f5 4%,#0b3158ee 62%,#105982ce),url('projects/villa-terrace.webp') center/cover;color:#fff;padding-top:72px}.quote-section .section-index{color:#f2c271}.quote-section .section-top{border-color:#ffffff35}.quote-time{color:#d2e9f5}.quote-section .section-titles p{color:#deedf7}.quote-section .section-titles>[lang=en]{border-color:#ffffff38}
.wizard{background:#fffdf8;border:1px solid #e7c588;border-radius:7px;box-shadow:0 18px 48px #010f2b50}.steps{background:linear-gradient(100deg,#f2e8d8,#e4f0f8);border-bottom-color:#d8e0e6}.step-button{color:#09274c}.step-button[aria-current=step]:after{background:#d39530;height:4px}.step-button[aria-current=step] .step-num{background:#0b2e56;color:#fff}.step-button .step-num{border-color:#a8b5c4}.form-heading h3{font-family:var(--sans);font-size:21px;font-weight:700;letter-spacing:-.45px}.type-option{background:#fff;border-color:#d2dbe2;border-radius:4px}.type-option:hover{border-color:#b88a3f;background:#fffbf2}.type-option:has(input:checked){background:#e8f3fa;border-color:#0c4674;box-shadow:inset 0 0 0 1px #0c4674}.type-option .option-icon{color:#b57b1e}.scope-option{background:#f0f5f8;border-color:#d4dee6;border-radius:3px}.scope-option:has(input:checked){background:#e4f2fa;border-color:#0c4674}.quote-section input,.quote-section select,.quote-section textarea{background:#fff;border-color:#c8d3dc}.quote-section #next-step{background:linear-gradient(100deg,#f3bf63,#dfa333);border-color:#d79b30;color:#09274c;font-weight:700}.quote-section #next-step:hover{background:#f8cc7e}.quote-section #next-step [lang=en]{opacity:1;color:#294360}.quote-section .whatsapp-button{background:#1e6b49;border-color:#1e6b49;color:#fff}
.summary-card{background:linear-gradient(145deg,#0b2c52f2,#124871f2);color:#fff;border:1px solid #cfaa61;border-top:4px solid #e6b056;border-radius:6px;box-shadow:0 10px 28px #010f2b24}.summary-header{border-color:#ffffff30}.summary-header .eyebrow,.summary-header>span:last-child{color:#f1c579}.summary-header .eyebrow [lang=en]{color:#e4d5b8}#live-summary>div{border-color:#ffffff26}#live-summary dt{color:#c0d9ea}#live-summary dd{color:#fff}#live-summary dd [lang=en],#live-summary dd[lang=en],#live-summary .summary-empty{color:#c0d5e4}.summary-bottom p{color:#c0d5e4}.summary-bottom>span{color:#efbd65}.direct-contact{background:#ffffff09;border:1px solid #ffffff35;border-radius:5px;padding:20px;margin:20px 0 0;color:#d7e8f5}.direct-contact>a{font-family:var(--sans);font-size:24px;font-weight:700}.direct-contact>p{color:#c4ddeb}.privacy-note{color:#d2e5f2}
@media(max-width:1024px){.expertise-lead .section-titles h2,.quote-section .section-titles h2{font-size:39px}.mood-row{gap:30px;max-width:760px}.mood-frame{max-width:170px}.project-gallery{padding:25px}.direct-contact>a{font-size:21px}}
@media(max-width:760px){.expertise-lead{padding-bottom:30px}.expertise-lead .section-titles h2,.quote-section .section-titles h2{font-size:32px;letter-spacing:-1px}.expertise-lead:before{bottom:-95px;background-position:62% 50%}.mood-row{gap:18px}.mood-frame{width:min(100%,145px);margin-bottom:13px}.mood-item figcaption strong{font-size:11px;letter-spacing:.3px}.mood-item figcaption strong [lang=en]{font-size:10px}.mood-item figcaption small{font-size:8px;line-height:1.5;flex-direction:column;gap:0}.service-card{padding:23px 22px 20px}.project-gallery{padding:23px 20px}.quote-section{padding-top:54px;background-position:60% center}.quote-aside{gap:16px}.direct-contact{padding:16px;margin-top:0}.direct-contact>a{font-size:19px}.form-heading h3{font-size:19px}}
@media(max-width:420px){.expertise-lead .section-titles h2,.quote-section .section-titles h2{font-size:28px;letter-spacing:-.9px}.mood-row{gap:13px}.mood-frame{border-width:2px;box-shadow:0 5px 18px #010f2b40,0 0 0 4px #ffffff0c}.mood-item figcaption strong{font-size:10px;line-height:1.5}.mood-item figcaption strong [lang=en]{font-size:9px}.mood-item figcaption small{font-size:7px}.project-gallery{padding:19px 16px}.service-card{padding:23px 20px 19px}.form-heading h3{font-size:18px}.direct-contact>a{font-size:20px}}
@media(prefers-reduced-motion:reduce){.project-thumbs img{transition:none}}
.section-index{display:flex;align-items:center;gap:8px;flex-wrap:wrap}#live-summary .summary-empty{display:flex;gap:3px 8px;flex-wrap:wrap}.step-button[disabled]{opacity:.58}
@media(max-width:420px){body[data-language=both] .expertise-lead .section-titles,body[data-language=both] .quote-section .section-titles{grid-template-columns:1fr;gap:22px}body[data-language=both] .expertise-lead .section-titles>[lang=en],body[data-language=both] .quote-section .section-titles>[lang=en]{border-left:0;padding-left:0;border-top:1px solid #ffffff3b;padding-top:22px}body[data-language=both] .expertise-lead .section-titles h2,body[data-language=both] .quote-section .section-titles h2{font-size:30px;hyphens:none;overflow-wrap:normal;word-break:normal}}
/* Two comparisons within the same confirmed team reference. */
.project-comparison-group{scroll-margin-top:120px;margin-top:28px}.project-comparison-group h4{display:flex;align-items:center;flex-wrap:wrap;gap:6px 15px;font:700 16px/1.5 var(--sans);margin:0 0 14px;color:var(--navy)}.project-comparison-group h4 [lang=en]{font-size:13px;font-weight:400;color:var(--muted)}
.project-photo-link .project-image-crop{display:block;position:relative;aspect-ratio:4/3;overflow:hidden}.project-image-crop>img,.project-dialog .project-image-crop>img{position:absolute;left:var(--source-left);top:var(--source-top);width:var(--source-width);height:var(--source-height);max-width:none;aspect-ratio:auto;object-fit:fill;transform:none!important}
.project-dialog #project-large-viewport.project-image-crop{display:block;position:relative;width:min(100%,86.6667dvh,1000px);aspect-ratio:4/3;margin-inline:auto;overflow:hidden;background:#061d3d}
@media(max-width:420px){.project-comparison-group{margin-top:24px}.project-comparison-group h4{font-size:15px}.project-comparison-group h4 [lang=en]{font-size:12px}}

.service-photo{display:block;position:relative;width:88px;height:88px;margin-bottom:26px}.service-photo>img{width:88px;height:88px;object-fit:cover;border-radius:50%;border:2px solid #c99a4a;box-shadow:0 4px 12px #06274b1c}.service-photo-source{position:absolute;left:0;right:0;top:91px;text-align:center;line-height:1.2;font:8px/1.2 var(--sans);color:#74623e}.service-photo-source span{display:block}#service-stone .service-photo>img{object-position:85% 44%}#service-repair .service-photo>img{object-position:55% 54%}#service-styling .service-photo>img{object-position:76% 50%}#service-interior .service-photo>img{object-position:33% 50%}
@media(max-width:420px){.service-photo,.service-photo>img{width:76px;height:76px}.service-photo-source{top:79px}}
.remote-support{display:grid;grid-template-columns:1.1fr 1fr;gap:0;padding:0;margin-top:34px;border:1px solid #c89b4e;border-top:4px solid #dfad52;border-radius:6px;overflow:hidden;background:radial-gradient(ellipse at 5% 0,#245b80 0,transparent 65%),#082448;box-shadow:0 15px 35px #06274b22}.remote-support-copy{padding:44px 42px;align-self:center}.remote-eyebrow{display:block;font-size:10px;line-height:1.7;letter-spacing:1.6px;color:#efc77e;margin-bottom:19px;font-weight:600}.remote-support h3{font:400 clamp(29px,3vw,40px)/1.16 var(--serif);margin:0 0 23px;color:#fff;max-width:21ch;text-wrap:balance}.remote-weekly{display:flex;align-items:center;gap:13px;padding:14px 17px;margin-bottom:23px;border-left:3px solid #edbd66;background:#ffffff0c;width:fit-content}.remote-weekly .remote-support-icon{width:30px;height:30px;flex:0 0 30px;margin:0;color:#efc77e}.remote-weekly strong{font-size:18px;line-height:1.4;color:#f8d494}.remote-support-copy>p{font-size:15px;line-height:1.85;color:#e5edf4;max-width:58ch}.remote-project-link{display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid #e1b86d;color:#fff;padding:10px 0;margin-top:18px;font-size:13px}.remote-project-link>span{font-size:22px;color:#f3ca80}.remote-support-visual{margin:0;position:relative;min-height:410px;align-self:stretch;background:#071a32}.remote-support-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.remote-support-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#041b39d9,transparent 48%)}.remote-support-visual figcaption{position:absolute;bottom:25px;left:28px;right:24px;z-index:1;font:400 25px/1.3 var(--serif);color:white}.remote-support-visual figcaption small{display:block;color:#f2cf8c;font:10px/1.4 var(--sans);letter-spacing:1px;margin-top:7px}
@media(max-width:1000px){.remote-support-copy{padding:32px 28px}.remote-weekly strong{font-size:16px}}
@media(max-width:760px){.remote-support{grid-template-columns:1fr;margin-top:26px}.remote-support-copy{padding:30px 25px}.remote-support h3{font-size:32px;max-width:22ch}.remote-eyebrow{font-size:9px}.remote-weekly{padding:12px 13px;gap:10px}.remote-weekly strong{font-size:16px}.remote-support-copy>p{font-size:15px}.remote-support-visual{min-height:260px}.remote-support-visual figcaption{left:24px;bottom:23px;font-size:24px}}
/* Compact flagpoles retain text labels and respect reduced-motion settings. */
.lang-toggle{gap:3px;padding:4px;align-items:center}.lang-toggle a{display:flex;align-items:center;gap:3px;padding:6px 7px;min-height:44px}.language-flag{width:29px;height:29px;overflow:visible;flex-shrink:0}.flag-cloth{transform-origin:6px 15px;animation:flag-breeze 4.8s ease-in-out infinite}.lang-toggle a:nth-child(2) .flag-cloth{animation-delay:-1.2s}.lang-toggle a:nth-child(3) .flag-cloth{animation-delay:-2.4s}.lang-toggle a:nth-child(4) .flag-cloth{animation-delay:-3.6s}@keyframes flag-breeze{0%,100%{transform:skewY(-2deg) scaleX(.97)}50%{transform:skewY(2deg) scaleX(1)}}@media(prefers-reduced-motion:reduce){.flag-cloth{animation:none}}
body[data-language=de] .bilingual{grid-template-columns:1fr}body[data-language=de] .bilingual>*{border:0;padding-left:0}body[data-language=de] .hero-title{font-size:clamp(46px,5.2vw,74px);white-space:normal}body[data-language=de] .hero-description{max-width:470px}body[data-language=de] .service-card h3{font-size:17px}
@media(max-width:760px){.lang-toggle a{padding:4px 6px;gap:2px}.language-flag{width:25px;height:25px}.lang-toggle{gap:0}body[data-language=de] .hero-title{font-size:54px}}
@media(max-width:600px){.header-inner{flex-wrap:wrap;padding-block:9px;row-gap:4px}.header-actions{margin-left:auto}.lang-toggle a{padding:4px}.language-flag{width:22px;height:26px}}
/* Company introduction on the opening page. */
.company-intro{padding:38px 0 48px;border-top:1px solid var(--gold);scroll-margin-top:120px}.company-intro>.bilingual{gap:42px}.company-intro h2{font:400 clamp(25px,2.6vw,36px)/1.2 var(--serif);color:var(--navy);margin-bottom:18px}.company-intro p{font-size:14px;line-height:1.85;max-width:64ch}.company-intro p+p{margin-top:13px}.company-intro .bilingual>[lang=en]{padding-left:42px}
@media(max-width:760px){.company-intro{padding:28px 0 34px}.company-intro>.bilingual{grid-template-columns:1fr;gap:26px}.company-intro .bilingual>[lang=en]{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:26px}.company-intro h2{font-size:28px}.company-intro p{font-size:14px}}

.project-photo-link .project-image-crop,.project-dialog #project-large-viewport.project-image-crop{aspect-ratio:var(--crop-aspect,4/3)}
#buitenmuur-voor-na .project-photo-link>img{aspect-ratio:1536/686;object-fit:cover;object-position:center 65%}
/* Brand vehicle alongside the service-area map; full image remains visible. */
.area-vehicle{margin:0 0 32px;background:var(--navy);border:1px solid #b98a3b}.area-vehicle img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.area-vehicle figcaption{padding:9px 14px;display:flex;flex-wrap:wrap;gap:6px 14px;color:#f5e8c8;font-size:10px;letter-spacing:.7px}.area-vehicle figcaption [lang=en]{opacity:.8}
@media(max-width:760px){.local-grid>.area-card{order:0}.local-grid>.approach{order:1}.area-vehicle{margin-bottom:26px}}

/* Handwritten before/after captions remain separate from the original photos. */
@font-face{font-family:TLHandwriting;src:url('./fonts/tl-handwriting.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
.project-comparison .project-photo-link{position:relative;isolation:isolate;overflow:hidden}
.comparison-handwriting{position:absolute;z-index:2;top:16px;left:22px;color:#fff;font:400 clamp(52px,5.8vw,82px)/1 TLHandwriting,cursive;transform:rotate(-7deg);text-shadow:0 2px 9px #0009;pointer-events:none;letter-spacing:0}
.project-comparison-item:nth-child(2) .comparison-handwriting{transform:rotate(5deg);left:26px}
#buitenkeuken-voor-na .project-photo-link>img{aspect-ratio:3/2;object-fit:cover;object-position:center}
@media(max-width:760px){.comparison-handwriting{font-size:66px;top:14px;left:18px}}
/* Keep the complete new entrance overview visible. */
#toegang-voor-na .project-photo-link>img{aspect-ratio:1889/1006;object-fit:cover;object-position:center}
/* Stronger typography and a vivid navy, pool-blue and coral brand palette. */
:root{--muted:#3d5367;--gold:#d38a10;--line:#bdcbd7;--serif:Arial,Helvetica,sans-serif}
body{font-size:18px;color:#09274c;line-height:1.7}
h1,h2,h3,h4{font-family:Arial,Helvetica,sans-serif!important;font-weight:800!important;letter-spacing:-.035em}
.hero h1,.hero-title,body[data-language=de] .hero-title{font-size:clamp(46px,5.3vw,76px);line-height:1.04;white-space:normal;letter-spacing:-.055em}
.hero-title em{font-style:normal;color:#cc7410}
.hero-description p,.company-intro p,.section-titles p,.service-card p{font-size:18px;font-weight:500;line-height:1.75;color:#203e59}
.hero-bottom strong{font-size:15px}.nav a{font-size:16px;font-weight:700}.header-cta{font-size:16px;font-weight:700}.lang-toggle a{font-size:13px;font-weight:700}
.company-intro h2,.section-titles h2{font-size:clamp(32px,3.8vw,50px);line-height:1.12}
.eyebrow{font-size:13px;font-weight:800;letter-spacing:1.4px;color:#a6530c}
.expertise{background:linear-gradient(140deg,#fff8e9 0%,#edf8ff 52%,#e2f4fc 100%)}
.service-card{border:1px solid #cbd5df;border-top:5px solid #dc941c;border-radius:10px;padding:30px;box-shadow:0 8px 24px #0824480b}
.service-card:nth-child(3n+2){border-top-color:#087fbc}.service-card:nth-child(3n){border-top-color:#da4e3e}
.service-card h3,body[data-language=de] .service-card h3{font-size:23px;line-height:1.25}.service-select{font-size:16px;font-weight:800}.service-num{font-size:16px;font-weight:800;color:#ac5f0d}
.approach h3{font-size:clamp(32px,3.2vw,44px);line-height:1.12;margin-bottom:28px}
.approach-list>li{padding:25px 24px;margin-bottom:14px;border:1px solid #c9d6e0;border-left:6px solid #eea92d;background:#fff;border-radius:8px;box-shadow:0 5px 18px #09274c0a;gap:20px}
.approach-list>li:nth-child(2){border-left-color:#0583bf}.approach-list>li:nth-child(3){border-left-color:#df4e3d}
.approach-list>li>span{display:grid;place-items:center;min-width:43px;height:43px;background:#0b315c;color:#fff;font-size:20px;font-weight:800;border-radius:50%;padding:0}
.approach-list strong{font-size:22px;font-weight:800;line-height:1.3}.approach-list p{font-size:17px;line-height:1.65;color:#28465f;margin-top:8px}
.area-card{border:2px solid #e9a02c;box-shadow:0 15px 35px #09274c20}.area-card h3{font-size:32px}.area-card .towns span,.area-card .towns a{font-size:15px;padding:8px 12px}.area-card p{font-size:16px;line-height:1.7}.area-card .text-link{font-size:18px;font-weight:800}
.work-map-tools,.work-map-tools button{font-size:14px}.work-map figcaption,.work-map-open{font-size:13px}
.faq-block{margin-top:60px;border-top:4px solid #da8b16;padding-top:36px}.faq-heading h3{font-size:38px;margin-bottom:24px}
.faq-list{gap:16px 24px}.faq-list details{padding:0;border:1px solid #b8ccdc!important;border-radius:8px;overflow:hidden;background:white;box-shadow:0 5px 20px #09274c0c}
.faq-list summary{padding:22px 24px;font-size:19px;font-weight:800;line-height:1.4;background:#0a315a;color:white;border:0!important;min-height:98px;align-items:center}
.faq-list summary>span:last-child{font-size:29px;color:#ffc34d;flex-shrink:0}.faq-list details[open] summary{background:#086da0}.faq-answer{padding:22px 24px}.faq-answer p{font-size:17px;line-height:1.75;color:#1b3a54}
.remote-support h3{font-size:clamp(32px,3.6vw,47px)}.remote-support-copy>p{font-size:18px}.remote-weekly strong{font-size:22px}.remote-project-link{font-size:17px;font-weight:700}
.project-gallery{padding:34px;border-top-width:5px}.project-gallery h3{font-size:34px}.project-description p{font-size:18px}.project-comparison-group h4{font-size:25px}.project-gallery .comparison-note{font-size:14px;color:#3c5265}.project-comparison-item figcaption{font-size:15px;line-height:1.5;padding:16px}.project-gallery .gallery-all{font-size:18px;font-weight:800}
.service-depth{margin-top:48px;padding:42px 0;scroll-margin-top:120px}.service-depth>h2{font-size:clamp(32px,3.4vw,46px);line-height:1.12;margin:12px 0 28px;max-width:22ch}.service-depth-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.service-depth article{display:flex;flex-direction:column;position:relative;padding:30px;background:#092d54;color:white;border-radius:12px;border-top:6px solid #eda92f;box-shadow:0 12px 30px #09274c16}
.service-depth article:nth-child(2){background:#087ba9;border-color:#f9bd42}.service-depth article:nth-child(3){background:#bd4332;border-color:#ffbd45}
.depth-number{font-size:16px;font-weight:800;color:#ffcf76;letter-spacing:2px}.service-depth article h3{font-size:28px;line-height:1.16;margin:18px 0}.service-depth article p{font-size:17px;line-height:1.75;color:#fff}.service-depth ul{padding-left:20px;margin:22px 0;font-size:16px;font-weight:700;line-height:1.6}.service-depth li+li{margin-top:10px}.depth-link{display:flex;justify-content:space-between;gap:20px;font-size:17px;font-weight:800;margin-top:auto;padding-top:20px;border-top:1px solid #ffffff66}.depth-link span{font-size:26px;color:#ffce78}
.project-story{margin-top:52px;padding:38px;background:#fff5e1;border:1px solid #e9b965;border-left:7px solid #e09b20;border-radius:10px;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;scroll-margin-top:120px}.project-story h2{font-size:clamp(30px,3vw,41px);line-height:1.14;margin:14px 0 20px}.project-story p{font-size:18px;line-height:1.75;color:#24435d}.story-points{display:grid;gap:20px}.story-points>div{padding:23px;background:#fff;border-radius:8px;border-top:4px solid #0c7bab}.story-points>div:nth-child(2){border-top-color:#d65a3f}.story-points strong{font-size:23px;font-weight:800}.story-points p{font-size:17px;margin-top:9px}
.quote-heading h2{font-size:clamp(36px,4vw,56px)}.quote-description p{font-size:18px}.steps button{font-size:16px}.quote-form h3{font-size:28px}.type-option{font-size:17px}.quote-form label{font-size:16px;font-weight:700}.quote-form input,.quote-form select,.quote-form textarea{font-size:17px}
@media(max-width:1000px){.nav{gap:17px}.nav a{font-size:14px}.header-actions{gap:12px}.service-depth-grid{grid-template-columns:1fr}.service-depth article{padding:30px}.service-depth article p{max-width:75ch}.project-story{grid-template-columns:1fr}.approach-list>li{padding:22px 18px}}
@media(max-width:760px){body{font-size:17px}.hero h1,.hero-title,body[data-language=de] .hero-title{font-size:clamp(41px,10.8vw,62px)}.hero-description p,.company-intro p,.section-titles p,.service-card p{font-size:17px}.service-card h3,body[data-language=de] .service-card h3{font-size:24px}.service-depth{padding:30px 0;margin-top:28px}.service-depth article{padding:26px}.project-story{padding:27px 23px;gap:24px}.project-story p{font-size:17px}.project-gallery{padding:22px 17px}.project-gallery h3{font-size:29px}.project-comparison-group h4{font-size:23px}.faq-list{grid-template-columns:1fr}.faq-list summary{font-size:18px;min-height:82px;padding:20px}.faq-heading h3{font-size:32px}.approach h3{font-size:34px}.approach-list strong{font-size:21px}.approach-list p{font-size:17px}.remote-support-copy>p{font-size:17px}.remote-weekly strong{font-size:20px}}
/* Override the older per-language compact type settings as well. */
body[data-language] .service-card h3{font-size:24px}body[data-language] .service-card p,body[data-language] .hero-description p{font-size:18px;line-height:1.75}body[data-language] .hero-title{font-size:clamp(46px,5.3vw,76px);line-height:1.04;white-space:normal}body[data-language] .section-titles h2{font-size:clamp(32px,3.8vw,50px);line-height:1.12}
@media(max-width:760px){body[data-language] .hero-title{font-size:clamp(41px,10.8vw,62px)}body[data-language] .hero-description p,body[data-language] .service-card p{font-size:17px}body[data-language] .service-card h3{font-size:24px}.header-cta{font-size:13px}.lang-toggle a{font-size:12px}}
/* Enquiry builder: bold, colourful choices with an unmistakable selected state. */
#offerte .section-titles h2{font-size:clamp(38px,4.5vw,62px);line-height:1.08;font-weight:800}
#offerte .section-titles p{font-size:19px;line-height:1.75;color:#fff}
#offerte .section-index,#offerte .quote-time{font-size:14px;font-weight:800;letter-spacing:1.3px;color:#ffd17a}
#offerte .wizard{border:2px solid #efb346;border-radius:12px;overflow:hidden;box-shadow:0 18px 45px #00142d50}
#offerte .steps{padding:16px;gap:10px;background:#e7f3fb;border-bottom:2px solid #c1d4e4;align-items:stretch}
#offerte .step-button{padding:14px 12px;gap:10px;border-radius:8px;background:#fff;color:#24445e;font-size:16px;font-weight:800;line-height:1.35;opacity:1;min-height:76px;border:1px solid #b8cddd;min-width:0}
#offerte .step-button[disabled]{color:#536677;background:#eff3f6;opacity:1}
#offerte .step-button[aria-current=step]{background:#087cae;color:#fff;border-color:#087cae;box-shadow:0 5px 12px #087cae30}
#offerte .step-button.is-complete{background:#e1f4ec;color:#0c6045;border-color:#72bca2}
#offerte .step-button:after{display:none}
#offerte .step-num{width:32px;height:32px;flex:0 0 32px;border:2px solid currentColor;font-size:16px;font-weight:800;background:transparent;color:inherit}
#offerte .step-button[aria-current=step] .step-num{background:#fff;color:#075e89;border-color:white}
#offerte #quote-form{padding:34px;background:#fffcf5}
#offerte .form-heading h3{font-size:32px;line-height:1.2;font-weight:800}
#offerte .form-sub,#offerte .form-sub p{font-size:17px;line-height:1.7;color:#344f66}
#offerte .type-options{gap:15px;margin-top:27px}
#offerte .type-option{--choice:#0c78ac;display:flex;padding:23px 20px;min-height:108px;gap:15px;border:2px solid #c3d3df;border-left:6px solid var(--choice);border-radius:9px;background:#eef7ff;box-shadow:0 5px 12px #09274c08;transition:background .15s,border-color .15s,box-shadow .15s}
#offerte .type-option:nth-of-type(3n+2){--choice:#bf4937;background:#fff1e9}
#offerte .type-option:nth-of-type(3n){--choice:#94610b;background:#fff5dc}
#offerte .option-label,#offerte .option-label [lang]{font-size:18px;line-height:1.4;font-weight:800;color:#092d50;overflow-wrap:anywhere}
#offerte .option-icon{width:37px;flex:0 0 37px;color:var(--choice)}
#offerte .option-icon svg{width:37px;height:37px;stroke-width:1.6}
#offerte .option-check{width:25px;height:25px;border:2px solid #688499;border-radius:5px;background:#fff}
#offerte .option-check:after{font-size:19px;font-weight:800}
#offerte .type-option:hover{border-color:var(--choice);box-shadow:0 7px 19px #09274c20}
#offerte .type-option:has(input:checked){background:#0b416d;border-color:#0b416d;border-left-color:#ffc34f;box-shadow:0 7px 18px #09274c30}
#offerte .type-option:has(input:checked) .option-label,#offerte .type-option:has(input:checked) .option-label [lang]{color:#fff}
#offerte .type-option:has(input:checked) .option-icon{color:#ffd174}
#offerte .type-option:has(input:checked) .option-check{background:#ffc34f;border-color:#ffc34f}
#offerte .type-option:has(input:checked) .option-check:after{color:#082448}
#offerte .type-option:has(input:focus-visible){outline:3px solid #e75d3e;outline-offset:4px}
#offerte .form-actions{margin-top:28px;padding-top:24px}
#offerte .button,#offerte #next-step{font-size:18px;font-weight:800;min-height:58px;padding:18px 26px;border-radius:7px}
#offerte #next-step{background:#e75b38;color:#fff;border:2px solid #e75b38;box-shadow:0 5px 13px #a8372528}
#offerte #next-step:hover{background:#bc3e21;border-color:#bc3e21}
#offerte .required-note{font-size:14px;color:#425b70}
#offerte #quote-form label:not(.type-option),#offerte #quote-form legend{font-size:17px;font-weight:800}
#offerte #quote-form input:not([type=checkbox]):not([type=radio]),#offerte #quote-form select,#offerte #quote-form textarea{font-size:18px;padding:15px;border:2px solid #9db6c9;border-radius:6px;color:#09274c;background:#fff}
#offerte .summary-card{padding:30px;border:2px solid #efb346;border-top:7px solid #ffc34f;border-radius:10px;background:linear-gradient(145deg,#092c54,#086993);box-shadow:0 15px 35px #00162d30}
#offerte .summary-header .eyebrow{font-size:15px;font-weight:800;line-height:1.5;color:#ffcf72;letter-spacing:1px}
#offerte #live-summary>div{padding:21px 0;border-color:#ffffff40}
#offerte #live-summary dt{font-size:14px;font-weight:700;color:#d4eafb;margin-bottom:8px}
#offerte #live-summary dd{font-size:20px;font-weight:700;color:#fff;line-height:1.5}
#offerte #live-summary dd em{font-size:18px;font-style:normal;font-weight:500;color:#d6e5f1}
#offerte .summary-bottom strong{font-size:18px;color:#fff}
#offerte .summary-bottom p{font-size:15px;line-height:1.7;color:#e3eff6;margin-top:10px}
#offerte .direct-contact{padding:25px;background:#fff4d9;border:2px solid #f0b541;border-radius:9px;color:#09274c}
#offerte .direct-contact p{font-size:17px;font-weight:700;color:#09274c}
#offerte .direct-contact>a{font-size:clamp(22px,2.3vw,31px);font-weight:800;color:#09274c;line-height:1.4;overflow-wrap:anywhere}
#offerte .direct-contact small{font-size:14px;color:#24445e}
#offerte .privacy-note{font-size:13px;line-height:1.6;color:#eef7ff}
@media(max-width:1100px){#offerte .quote-layout{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}#offerte .steps{gap:7px;padding:12px}#offerte .step-button{font-size:14px;padding:13px 8px;gap:7px}#offerte #quote-form{padding:27px}#offerte .type-option{padding:20px 15px}#offerte .option-label,#offerte .option-label [lang]{font-size:17px}#offerte .summary-card{padding:25px}}
@media(max-width:760px){#offerte .quote-layout{grid-template-columns:1fr}#offerte .steps{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:13px}#offerte .step-button{font-size:15px;min-height:68px}#offerte #quote-form{padding:26px 20px}#offerte .form-heading h3{font-size:29px}#offerte .type-options{grid-template-columns:1fr}#offerte .type-option{min-height:92px;padding:22px 18px}#offerte .option-label,#offerte .option-label [lang]{font-size:18px}#offerte .quote-aside{display:block}#offerte .direct-contact{margin-top:20px}#offerte .summary-card{padding:26px}#offerte .section-titles p{font-size:18px}}

#offerte .direct-contact>span{font-size:17px;font-weight:700;color:#09274c}
/* Tennis photos retain their panoramic framing, including the full court. */
#tennis-voor-na .project-photo-link>img{aspect-ratio:3/1;object-fit:contain;background:#e9eef2}
#tennis-voor-na .comparison-handwriting{font-size:clamp(42px,4.6vw,66px);top:12px}

/* Consistent comparison frames; full images remain available in the lightbox. */
.project-comparison .project-photo-link{display:block;position:relative;aspect-ratio:4/3;overflow:hidden;background:#e9eef2}
.project-comparison .project-photo-link>img,
#buitenmuur-voor-na .project-photo-link>img,
#buitenkeuken-voor-na .project-photo-link>img,
#toegang-voor-na .project-photo-link>img,
#tennis-voor-na .project-photo-link>img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:contain;object-position:center;background:#e9eef2}
.project-comparison .project-photo-link>.project-image-crop{width:100%;height:100%;aspect-ratio:4/3}

.remote-support{grid-template-columns:1fr}.remote-support-copy{width:100%}.remote-support h3,.remote-support-copy>p{max-width:70ch}

.remote-support{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center}.remote-support-copy{min-width:0}.remote-support h3{max-width:24ch}.remote-camera-art{padding:30px 30px 30px 0;min-width:0}.remote-camera-art img{display:block;width:100%;height:auto;object-fit:contain;border-radius:12px}@media(max-width:760px){.remote-support{grid-template-columns:1fr}.remote-camera-art{padding:0 28px 28px;max-width:480px;margin:auto}}

.company-name{white-space:nowrap;display:inline-block}.inline-trident{display:inline-block!important;width:.8em!important;height:1.05em!important;max-width:none;object-fit:contain;vertical-align:-.13em;margin-left:.22em}
.photo-trident{position:absolute;left:15px;bottom:15px;z-index:3;width:34px;height:44px;background:url('./trident-mark.svg') center/contain no-repeat;filter:drop-shadow(0 1px 2px #001a32);pointer-events:none}
#project-large-viewport{position:relative}#project-large-viewport::after{content:"";position:absolute;left:18px;bottom:18px;width:38px;height:50px;background:url('./trident-mark.svg') center/contain no-repeat;filter:drop-shadow(0 1px 2px #001a32);pointer-events:none;z-index:4}
@media(max-width:760px){.photo-trident{left:10px;bottom:10px;width:27px;height:35px}.brand-name{font-size:clamp(14px,3.3vw,23px)}}

/* Four adjacent navigation keys, with language choice kept on the upper row. */
.header .header-inner{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding-top:14px;padding-bottom:17px;min-height:0}
.header .brand{margin-right:auto}.header .header-actions{margin-left:auto}.header .nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));order:3;flex-basis:100%;width:100%;max-width:900px;margin:0 auto;gap:12px}
.header .nav>a{display:flex;align-items:center;justify-content:center;gap:7px;text-align:center;min-width:0;min-height:56px;padding:12px 15px;white-space:nowrap;border:1px solid #c8cfd7;border-bottom:4px solid #8e9dad;border-radius:9px;background:linear-gradient(#fffefa,#e5eaf0);box-shadow:0 4px 0 #b4bfcb,0 7px 12px #061d3d18;color:#0c2e53;font-size:16px;font-weight:800;line-height:1.2;transition:transform .12s,box-shadow .12s,background .12s}
.header .nav>a:hover{background:linear-gradient(#fff8e6,#f6dfac);border-color:#c89438}.header .nav>a:active{transform:translateY(4px);box-shadow:0 0 0 #b4bfcb}
.header .nav>.nav-project-key{background:linear-gradient(#224f79,#0b2e53);color:#fff;border-color:#193e60;border-bottom-color:#061d35;box-shadow:0 4px 0 #061d35,0 7px 12px #061d3d25}
.header .nav>.nav-project-key:hover{background:linear-gradient(#306591,#153f65)}
html{scroll-padding-top:180px}
@media(max-width:600px){.header .header-inner{gap:9px;padding-top:9px;padding-bottom:13px}.header .nav{gap:7px}.header .nav>a{font-size:12px;min-height:48px;padding:9px 5px;white-space:normal;border-radius:7px}.header .nav>a>span[aria-hidden]{display:none}.header .brand-symbol{width:25px}.header .brand-name{font-size:13px;letter-spacing:.7px}.header .brand-name small{font-size:5px;letter-spacing:1px}.header .lang-toggle a{padding:3px}.header .language-flag{width:20px;height:24px}.header .header-actions{gap:0}html{scroll-padding-top:160px}}
@media(prefers-reduced-motion:reduce){.header .nav>a{transition:none}}

.header .nav{grid-template-columns:repeat(5,minmax(0,1fr));max-width:1100px}
.header .nav>.nav-project-key{background:linear-gradient(#fffefa,#e5eaf0);color:#0c2e53;border:1px solid #c8cfd7;border-bottom:4px solid #8e9dad;box-shadow:0 4px 0 #b4bfcb,0 7px 12px #061d3d18}
.header .nav>.nav-project-key:hover{background:linear-gradient(#fff8e6,#f6dfac);border-color:#c89438}
.header .nav>.nav-project-key:active{box-shadow:0 0 0 #b4bfcb}
@media(max-width:600px){.header .nav{gap:6px}.header .nav>a{font-size:11px;padding-inline:4px}}

/* Center the larger brand independently of the language controls. */
.header .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
.header .brand{grid-column:2;grid-row:1;justify-self:center;margin:0;gap:14px}
.header .brand-name{font-size:29px;letter-spacing:2px}
.header .brand-name small{font-size:8px;letter-spacing:3px}
.header .brand-symbol{width:40px;height:52px}
.header .header-actions{grid-column:3;grid-row:1;justify-self:end;margin:0}
.header .nav{grid-column:1/-1;grid-row:2;justify-self:center}
@media(min-width:601px) and (max-width:1100px){.header .header-inner{grid-template-columns:minmax(0,1fr) auto;column-gap:20px}.header .brand{grid-column:1;justify-self:center}.header .header-actions{grid-column:2}.header .brand-name{font-size:25px}}
@media(max-width:600px){.header .header-inner{grid-template-columns:minmax(0,1fr) auto;gap:10px 8px}.header .brand{grid-column:1;gap:6px;justify-self:center}.header .header-actions{grid-column:2}.header .brand-name{font-size:15px;letter-spacing:.5px}.header .brand-name small{font-size:5px;letter-spacing:1px}.header .brand-symbol{width:25px;height:34px}}

/* Language controls alongside the menu, at the right edge of the header. */
.header .header-inner{width:calc(100% - 40px);max-width:none;grid-template-columns:minmax(0,1fr) auto;column-gap:24px}
.header .brand{grid-column:1/-1;grid-row:1;justify-self:center}
.header .nav{grid-column:1;grid-row:2;width:100%;max-width:1100px;justify-self:center;margin:0}
.header .header-actions{grid-column:2;grid-row:2;justify-self:end;align-self:center;margin:0}
@media(max-width:600px){.header .header-inner{width:calc(100% - 16px);column-gap:8px}.header .nav{gap:4px}.header .nav>a{font-size:10px;padding:8px 3px}.header .lang-toggle{display:grid;grid-template-columns:repeat(2,auto);gap:0}.header .lang-toggle a{padding:2px;font-size:9px;gap:2px}.header .language-flag{width:17px;height:20px}}
/* Rich colour for the enquiry choices, with a distinct gold selected state. */
#offerte .steps{background:linear-gradient(120deg,#082a51,#075e7b);border-bottom:4px solid #e9ad39}
#offerte .step-button,#offerte .step-button[disabled]{background:#e9f2f7;color:#26475e;border-color:#d2e2ed}
#offerte .step-button[aria-current=step]{background:linear-gradient(135deg,#bd4126,#92301e);color:#fff;border-color:#ed9673;box-shadow:0 5px 12px #001a3840}
#offerte .step-button[aria-current=step] .step-num{color:#a13621}
#offerte .step-button.is-complete{background:#d7f1e7;color:#124e3e;border-color:#63b59a}
#offerte #quote-form{background:linear-gradient(145deg,#fffdf7,#f4ebda)}
#offerte .form-heading{border-left:6px solid #c7472d;padding-left:17px}
#offerte .type-option{--choice:#046182;background:linear-gradient(125deg,#087395,#034462);border-color:#077295;border-left:6px solid #57cadd;box-shadow:0 6px 0 #012f48,0 10px 17px #09274c20}
#offerte .type-option:nth-of-type(3n+2){--choice:#ad3627;background:linear-gradient(125deg,#bd472d,#882a20);border-color:#ae3927;border-left-color:#f5a074;box-shadow:0 6px 0 #652017,0 10px 17px #09274c20}
#offerte .type-option:nth-of-type(3n){--choice:#225847;background:linear-gradient(125deg,#286c57,#143f34);border-color:#26634f;border-left-color:#e9bf66;box-shadow:0 6px 0 #103127,0 10px 17px #09274c20}
#offerte .type-option .option-label,#offerte .type-option .option-label [lang]{color:#fff}
#offerte .type-option .option-icon{color:#ffe1a0}
#offerte .type-option .option-check{border-color:#fff;background:#ffffffed}
#offerte .type-options{gap:21px 16px}
#offerte .type-option:hover{filter:brightness(1.09);border-color:#ffe1a0}
#offerte .type-option:has(input:checked){background:linear-gradient(125deg,#ffda7b,#e8b344);border-color:#925c0b;border-left-color:#092c54;box-shadow:0 6px 0 #8b5a11,0 10px 18px #09274c25;filter:none}
#offerte .type-option:has(input:checked) .option-label,#offerte .type-option:has(input:checked) .option-label [lang],#offerte .type-option:has(input:checked) .option-icon{color:#092c54}
#offerte .type-option:has(input:checked) .option-check{background:#092c54;border-color:#092c54}
#offerte .type-option:has(input:checked) .option-check:after{color:#fff}
#offerte .summary-card{background:linear-gradient(145deg,#072544 15%,#005e7d);border-color:#efbb52;border-top-color:#ffce68}
#offerte #live-summary>div{padding:17px 18px;margin:10px 0;background:#ffffff0e;border:1px solid #ffffff25;border-left:4px solid #e7b65a;border-radius:6px}
#offerte #next-step{background:linear-gradient(135deg,#bd4126,#94301b);border-color:#94301b;box-shadow:0 5px 0 #662317;color:#fff}
#offerte #next-step:hover{background:#8c2c19}

.page-content{padding-top:42px;padding-bottom:64px;min-height:55vh}.page-content .expertise-lead{padding-top:0}.page-title,.page-intro h1{font-size:clamp(34px,4vw,54px);line-height:1.1;font-weight:800;color:#0c2e53;margin:12px 0 24px}.page-intro{margin-bottom:32px}.page-content .project-story{margin-top:0}.page-content .project-gallery{margin-top:32px}.page-content .local-grid{margin-top:0}.home-support{padding-bottom:64px}.header .nav>a[aria-current=page]{background:linear-gradient(#ffdf93,#f0c467);border-color:#bd8d32;border-bottom-color:#96631d;color:#082448;box-shadow:0 4px 0 #96631d,0 7px 12px #061d3d18}.header .nav>a[aria-current=page]:active{box-shadow:none}.service-select{display:flex}.page-content .page-title em{color:#bb472a;font-style:normal}

.company-details{font-style:normal;display:flex;flex-wrap:wrap;gap:10px 24px;line-height:1.7;font-size:16px}.company-details a{text-decoration:underline;text-underline-offset:4px}.footer>.company-details{width:calc(100% - 80px);max-width:1320px;margin:0 auto;padding:20px 0;border-top:1px solid #ffffff30;color:#fff}.company-contact{padding-top:12px;padding-bottom:60px}.company-contact .company-details{padding:28px;border-left:5px solid #d9a13c;background:#fff4d9;color:#092c54}.company-contact h2{font-size:30px}.company-details strong{flex-basis:100%}
