@font-face{font-family:Manrope;src:url('assets/fonts/manrope.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url('assets/fonts/inter.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--slate:#344756;--blue:#647784;--navy:#253847;--paper:#f5f4f0;--stone:#e9e9e5;--ink:#303538;--muted:#687176;--line:#d2d7d7;--oak:#bca98c;--pad:7%}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.8 Inter,Arial,Helvetica,sans-serif}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Manrope,Arial,Helvetica,sans-serif;font-weight:400;line-height:1.12;letter-spacing:-.04em}h1{font-size:clamp(48px,5.6vw,84px)}h2{font-size:clamp(34px,3.5vw,54px)}h3{font-size:24px;letter-spacing:-.025em}p{max-width:780px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,summary,input,select,textarea{outline-offset:5px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--blue)}button{color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}.eyebrow{font-size:10px;line-height:1.6;letter-spacing:1.9px;text-transform:uppercase;margin-bottom:22px;color:var(--slate)}.skip{position:fixed;top:-100px;left:20px;background:var(--paper);padding:15px;z-index:100}.skip:focus{top:0}header{position:relative;height:108px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);z-index:30}.brand{width:228px;flex-shrink:0;display:block}.brand img{display:block;width:100%;height:auto;object-fit:contain}header.over-image{position:absolute;inset:0 0 auto;color:#fff;border-color:#ffffff40}.over-image .brand img{filter:brightness(0) invert(1)}#mainnav{display:flex;align-items:center;gap:22px;font-size:10px;line-height:1.5}#mainnav>a{padding:14px 0;white-space:nowrap}.nav-contact{border-bottom:1px solid currentColor}.nav-group{position:relative}.nav-group summary{list-style:none;cursor:pointer;display:flex;gap:6px;align-items:center;padding:14px 0;white-space:nowrap}.nav-group summary::-webkit-details-marker{display:none}.nav-dropdown{position:absolute;top:100%;left:-25px;background:var(--paper);color:var(--ink);border:1px solid var(--line);box-shadow:0 15px 40px #25384718;min-width:270px;padding:15px 25px}.nav-dropdown a{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.nav-dropdown a:hover{color:var(--blue)}.nav-dropdown a:last-child{border:0}.nav-overview{color:var(--slate);font-weight:600}.menu-toggle{display:none;background:none;border:0;font-size:11px;letter-spacing:1px;padding:15px 0}.hero{height:100svh;min-height:760px;max-height:1150px;position:relative;display:flex;align-items:flex-end;background:var(--navy);color:white}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#101c2860 0%,#101c2812 35%,#101c28aa 100%)}.hero-content{position:relative;z-index:1;padding:0 var(--pad) 115px;width:100%;max-width:1350px}.hero .eyebrow{color:#e4e9ed}.hero h1{font-size:clamp(62px,6.5vw,100px);line-height:1.02;letter-spacing:-.055em;max-width:1100px;margin-bottom:30px}.hero p{font-size:15px;line-height:1.9;max-width:520px;color:#e7ecee}.hero-actions{display:flex;gap:50px;margin-top:22px}.textlink{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:18px 0;border-bottom:1px solid currentColor;font-size:10px;letter-spacing:1.3px;text-transform:uppercase;line-height:1.5}.textlink span{font-size:22px}.hero-foot{position:absolute;z-index:2;bottom:30px;left:4%;right:4%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.1px;text-transform:uppercase}.section{padding:100px var(--pad)}.section h2+p{margin-top:25px}.section p+p{margin-top:22px}.section h2{max-width:820px}.lead{font-size:16px;line-height:1.95;max-width:700px;margin-top:26px;color:var(--muted)}.topic,.split{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.topic p{color:var(--muted)}.topic .eyebrow{margin-top:3px}.tone-light{background:var(--stone)}.tone-dark{background:var(--slate);color:var(--paper)}.tone-dark .eyebrow,.tone-dark .lead,.tone-dark p,.tone-dark .note{color:#d2dce2}.tone-dark .textlink{color:#fff}.page-intro{padding:55px var(--pad) 65px}.breadcrumb{font-size:10px;color:var(--muted);letter-spacing:.5px;line-height:1.8;margin-bottom:50px}.breadcrumb a:hover{text-decoration:underline}.page-intro h1{max-width:1100px;margin-bottom:26px}.page-intro p{max-width:790px;color:var(--muted);font-size:16px;line-height:1.95}.jumpnav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px var(--pad);display:flex;gap:35px;flex-wrap:wrap;font-size:11px;color:var(--slate)}.jumpnav a:hover{text-decoration:underline}.page-image{margin:0 var(--pad)}figure{min-width:0}figure button{display:block;position:relative;width:100%;padding:0;border:0;background:var(--stone);cursor:zoom-in}figure img{display:block;width:100%;height:100%;object-fit:cover}figure figcaption{font-size:10px;line-height:1.7;color:var(--muted);padding-top:12px}figure figcaption a{text-decoration:underline;text-underline-offset:3px}figure.page-image img{height:560px}.technical-image img{object-fit:contain!important;background:white}.tone-dark figcaption{color:#c8d4db}.expand-mark{position:absolute;bottom:18px;right:18px;border:1px solid #fff8;color:#fff;background:#25384775;width:36px;height:36px;display:grid;place-items:center;opacity:0;transition:opacity .2s}figure button:hover .expand-mark,figure button:focus-visible .expand-mark{opacity:1}.detail-list{padding:0;list-style:none;margin:28px 0 0}.detail-list li{padding:11px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.7;color:var(--slate)}.detail-list li:before{content:'—';margin-right:13px;color:var(--blue)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px 35px;margin-top:50px}.service-grid article{min-width:0;border-top:1px solid var(--line);padding-top:20px}.service-grid.with-images article{border:0;padding-top:0}.service-grid article>small{display:block;font-size:10px;letter-spacing:1px;color:var(--blue);margin:20px 0 15px}.service-grid figure img{height:250px}.service-title{display:flex;align-items:start;justify-content:space-between;gap:20px;font-size:25px;line-height:1.25;letter-spacing:-.03em;margin-bottom:20px}.service-title span{font-size:22px}.service-grid p{font-size:13px;line-height:1.9;color:var(--muted)}.spec-levels{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:50px}.spec-levels article{border-top:1px solid #ffffff40;padding-top:20px}.spec-levels small{font-size:11px;color:#c6d1d9}.spec-levels h3{font-size:32px;margin:25px 0 20px}.spec-levels p{font-size:14px;line-height:1.9}.note{font-size:11px;line-height:1.9;color:var(--muted);margin-top:28px}.process-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin:50px 0 0}.process-list li{border-top:1px solid var(--line);padding-top:20px}.process-list span{font-size:11px;color:var(--blue)}.process-list h3{font-size:22px;line-height:1.3;margin:23px 0 13px}.process-list p{font-size:13px;color:var(--muted);line-height:1.85}.tone-dark .process-list p{color:#d2dce2}.tone-dark .process-list span{color:#bdccd7}.tone-dark .process-list li{border-color:#fff4}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 40px;margin-top:50px}.why-grid article{border-top:1px solid var(--line);padding-top:25px}.why-grid h3{font-size:24px;margin-bottom:17px}.why-grid p{font-size:14px;color:var(--muted)}.renovation-feature{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;align-items:center}.renovation-feature p{font-size:15px;margin:25px 0}.renovation-feature figure img{height:500px}.cta{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:60px;align-items:center}.cta h2{max-width:800px}.cta p{color:var(--muted);font-size:14px;max-width:650px;margin-top:25px}.cta .textlink{white-space:nowrap}.faq-list details{border-top:1px solid var(--line);padding:23px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:18px;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:23px;color:var(--blue)}.faq-list details[open] summary span{font-size:0}.faq-list details[open] summary span:after{content:'−';font-size:23px}.faq-list details p{margin-top:20px;font-size:14px;color:var(--muted)}.faq-wide{max-width:1200px}.related-links{display:grid;grid-template-columns:repeat(3,1fr);gap:25px 35px;margin-top:40px}.related-links a{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:22px 0;font-size:18px}.image-pair{display:grid;grid-template-columns:1fr 1fr;gap:35px}.image-pair figure img{height:360px;object-fit:contain;background:white}.technical-gallery .image-pair{margin-top:40px}.scope-note{background:var(--stone)}.scope-note p{margin-top:25px;color:var(--muted)}.table-wrap{overflow-x:auto;margin-top:40px}table{border-collapse:collapse;width:100%;font-size:13px;min-width:800px}caption{text-align:left;font-size:11px;color:var(--muted);padding-bottom:20px}td,th{text-align:left;vertical-align:top;padding:20px 18px;border-bottom:1px solid #cbd2d4;line-height:1.75}thead th{background:var(--slate);color:#fff;font-size:11px;font-weight:400;letter-spacing:.5px}tbody th{font-weight:600;width:18%}.brand-list{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.brand-list article{border-top:1px solid var(--line);padding-top:25px}.brand-list p{font-size:14px;color:var(--muted);margin:20px 0}.brand-list .textlink{font-size:9px}.material-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;margin-top:40px}.material-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px}.material-buttons button{background:transparent;border:1px solid #bac6cd;padding:20px;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:13px;cursor:pointer}.material-buttons button[aria-pressed=true]{background:var(--slate);color:white;border-color:var(--slate)}.material-result{background:var(--paper);padding:35px}.material-result h3{font-size:32px;margin:20px 0}.material-result p{font-size:14px;line-height:1.9;color:var(--muted)}.material-result .textlink{margin-top:25px}.approach-list{list-style:none;padding:0;margin:0}.approach-list li{display:grid;grid-template-columns:.35fr 2fr;gap:10%;padding:50px 0;border-top:1px solid var(--line)}.approach-list>li>span{font-size:13px;color:var(--blue)}.approach-list h2{font-size:38px;margin-bottom:25px}.approach-list p{color:var(--muted);max-width:750px}.contact-layout{display:grid;grid-template-columns:.9fr 1.15fr;gap:12%;padding-top:30px}.contact-layout h2{font-size:40px}.contact-details{display:flex;align-items:start;flex-direction:column;gap:14px;margin:35px 0}.contact-details a{border-bottom:1px solid var(--line);font-size:16px}.contact-layout>div>p{font-size:13px;color:var(--muted)}.contact-layout h3{font-size:23px;margin-top:40px}form{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{font-size:10px;letter-spacing:1px;text-transform:uppercase}input,select,textarea{display:block;width:100%;margin-top:5px;border:0;border-bottom:1px solid #aab7c0;border-radius:0;padding:14px 0;color:var(--ink);background:transparent;font-size:14px;text-transform:none;letter-spacing:0}textarea{resize:vertical}.full{grid-column:1/-1}form .note{margin-top:0;font-size:11px}.submit{background:var(--slate);color:white;border:0;display:flex;justify-content:space-between;padding:20px 25px;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer}.submit:hover{background:var(--navy)}footer{background:var(--stone);padding:60px var(--pad) 45px}.footer-content{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px;padding-bottom:45px}.footer-content p{font-size:12px;color:var(--muted);margin-bottom:20px}.footer-content a{font-size:12px;line-height:2.3}.footer-links{display:flex;flex-direction:column;align-items:start}.footer-bottom{border-top:1px solid var(--line);padding-top:25px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted);padding-right:180px}.floating-contact{position:fixed;right:22px;bottom:max(22px,env(safe-area-inset-bottom));z-index:50;display:flex;gap:10px}.floating-contact a{width:47px;height:47px;border-radius:50%;display:grid;place-items:center;box-shadow:0 4px 14px #25384722;border:1px solid #fff5;transition:transform .18s,box-shadow .18s}.floating-contact a:hover{transform:translateY(-3px);box-shadow:0 6px 20px #25384744}.floating-contact svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.7;fill:none}.social-whatsapp{background:#25d366;color:white}.social-instagram{background:radial-gradient(circle at 30% 110%,#ffdc80 0,#fcaf45 15%,#f56040 35%,#e1306c 55%,#833ab4 80%);color:white}.social-phone{background:var(--slate);color:white}dialog{width:min(1100px,94vw);padding:0;border:0;background:var(--paper);color:var(--ink);max-height:92svh;overflow:auto}dialog::backdrop{background:#152431d9}dialog>img{width:100%;height:auto;max-height:70svh;object-fit:contain;display:block;background:white}#viewerClose{position:absolute;right:15px;top:15px;border:1px solid white;background:var(--slate);color:white;padding:10px 20px;font-size:12px;cursor:pointer}.dialog-caption{padding:25px 35px}.dialog-caption h2{font-size:25px}.dialog-caption p{font-size:12px;color:var(--muted);margin-top:15px}.editorial-note{font-size:12px;margin-top:25px;color:var(--muted)}.section>h2+figure{margin-top:40px}
@media(min-width:1600px){#mainnav{font-size:12px;gap:28px}}@media(max-width:1200px){#mainnav{gap:14px;font-size:9px}header{padding:0 4%;gap:25px}.brand{width:200px}}@media(max-width:1050px){header{height:95px}.menu-toggle{display:block}#mainnav{display:none;position:absolute;left:0;right:0;top:95px;max-height:calc(100svh - 175px);overflow:auto;padding:25px 7%;background:var(--paper);color:var(--ink);font-size:14px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 10px 25px #25384718}#mainnav.open{display:flex}#mainnav>a,.nav-group summary{padding:14px 0;border-bottom:1px solid var(--line)}.nav-group summary{justify-content:space-between}.nav-dropdown{position:static;box-shadow:none;border:0;background:var(--stone);padding:12px 20px;min-width:0}.nav-dropdown a{font-size:13px}.service-grid{grid-template-columns:1fr 1fr}.process-list{grid-template-columns:1fr 1fr}.section{padding-top:75px;padding-bottom:75px}.brand-list{grid-template-columns:1fr 1fr}.hero h1{font-size:80px}.service-grid figure img{height:280px}}
@media(max-width:700px){:root{--pad:7%}body{font-size:14px}.brand{width:205px}.hero{min-height:700px;height:95svh}.hero-content{padding-bottom:110px}.hero h1{font-size:58px;letter-spacing:-.05em;line-height:1.06}.hero p{font-size:13px;max-width:350px}.hero-actions{gap:30px}.hero-actions .textlink{gap:15px;font-size:9px}.hero-foot{bottom:30px;font-size:8px}.hero-foot span{max-width:210px}.hero-foot>a{display:none}h1{font-size:45px}h2{font-size:35px}.page-intro{padding-top:35px;padding-bottom:40px}.breadcrumb{margin-bottom:30px}.page-intro p{font-size:14px}.topic,.split,.renovation-feature,.contact-layout,.material-layout{grid-template-columns:1fr;gap:30px}.section{padding-top:60px;padding-bottom:60px}.jumpnav{gap:15px 25px;padding-top:18px;padding-bottom:18px;font-size:10px}.page-image img,figure.page-image img{height:340px}.service-grid,.why-grid,.spec-levels,.brand-list{grid-template-columns:1fr;gap:40px}.service-grid figure img{height:280px}.service-title{font-size:26px}.spec-levels{gap:30px}.process-list{gap:25px 22px}.process-list h3{font-size:20px}.process-list p{font-size:12px}.why-grid{gap:30px}.cta{align-items:start;flex-direction:column;gap:25px}.cta .textlink{white-space:normal}.faq-section h2{font-size:34px}.faq-list summary{font-size:17px}.related-links{grid-template-columns:1fr;gap:0}.image-pair{grid-template-columns:1fr;gap:30px}.image-pair figure img{height:280px}.material-buttons button{font-size:12px;padding:15px}.material-result{padding:25px}.approach-list li{grid-template-columns:.2fr 1fr;gap:25px;padding:35px 0}.approach-list h2{font-size:29px}.contact-layout h2{font-size:35px}form{gap:22px 18px}.footer-content{grid-template-columns:1fr 1fr;gap:30px}.footer-content>div:first-child{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;padding-right:0;padding-bottom:70px}.floating-contact{right:15px;bottom:max(15px,env(safe-area-inset-bottom));gap:9px}.floating-contact a{width:44px;height:44px}.renovation-feature figure img{height:330px}.dialog-caption{padding:22px}.dialog-caption h2{font-size:22px}}
@media(max-width:370px){.hero h1{font-size:48px}.hero-actions{gap:20px}.hero-actions .textlink{font-size:8px;gap:10px}.brand{width:180px}.material-buttons{grid-template-columns:1fr}form{grid-template-columns:1fr}.full{grid-column:auto}.process-list{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{header,footer,.floating-contact,.jumpnav,dialog{display:none}.section{padding:30px 0}.hero{height:500px;min-height:0}.page-image img{height:300px}}
@media(max-width:370px){.page-intro h1{font-size:38px;overflow-wrap:break-word}.section h2{overflow-wrap:break-word}}
.gallery-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.gallery-filters button{width:auto}.inspiration-grid article[hidden]{display:none}
/* Consent review for contact requests; existing approved layout remains unchanged. */
#inquiry input[type=checkbox]{display:inline;width:auto;margin-right:8px;accent-color:#344756}#inquiry [hidden]{display:none}#inquiryReview{width:min(650px,92vw);max-height:85vh;overflow:auto;background:#f6f2e9;color:#344756;padding:30px;border:1px solid #a88457}#inquiryReview::backdrop{background:#192a3670}#inquiryReview button,#emailFallback{font:inherit;cursor:pointer;padding:12px 18px;background:#344756;color:white;border:1px solid #344756;margin:5px}#inquirySummary p{white-space:pre-wrap;overflow-wrap:anywhere}
