@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--teal:#008996;--teal-deep:#006b74;--teal-ink:#07565f;--gold:#c9a044;--gold-light:#e5c781;--ink:#243238;--muted:#64747b;--paper:#fff;--mist:#f5f8f8;--border:#e0eaeb;--shadow:0 18px 60px rgba(15,65,69,.09);--font:'Manrope',sans-serif;--body:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);font-family:var(--body);color:var(--ink);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button,select,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}svg{flex:none}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:var(--font);line-height:1.16;letter-spacing:-.042em}h1{font-size:clamp(2.5rem,4.1vw,4.1rem);font-weight:800}h2{font-size:clamp(1.9rem,3vw,2.85rem);font-weight:800}h3{font-size:1.2rem;font-weight:800}p{color:var(--muted)}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.shell{width:min(calc(100% - 64px),1190px);margin-inline:auto}.skip-link{position:absolute;top:-100px;left:12px;background:var(--teal);color:white;z-index:999;padding:12px}.skip-link:focus{top:12px}.section-pad{padding:104px 0}.eyebrow{color:var(--teal-deep);font-family:var(--font);font-weight:800;font-size:11px;letter-spacing:.18em;text-transform:uppercase;display:inline-flex;align-items:center;gap:10px}.eyebrow.light{color:#d7f1ef}.eyebrow-line{height:2px;width:27px;background:var(--gold)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:14px 20px;border-radius:6px;font-family:var(--font);font-size:12px;font-weight:800;letter-spacing:.01em;border:1px solid transparent;transition:transform .2s,background .2s,box-shadow .2s,color .2s;line-height:1.35;text-align:center}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--teal);color:#fff;box-shadow:0 8px 20px rgba(0,137,150,.14)}.btn-primary:hover{background:var(--teal-deep);box-shadow:0 10px 24px rgba(0,137,150,.24)}.btn-outline{border-color:#a9c6c9;color:var(--teal-deep);background:transparent}.btn-outline:hover{background:#e8f6f6}.btn-soft{color:var(--teal-deep);background:#e9f4f4}.btn-soft:hover{background:#d9eded}.btn-white{color:var(--teal-deep);background:#fff}.btn-outline-white{color:#fff;border-color:rgba(255,255,255,.7);background:transparent}.btn-outline-white:hover{background:rgba(255,255,255,.15)}.text-link{display:inline-flex;align-items:center;gap:9px;color:var(--teal-deep);font-weight:800;font-family:var(--font);font-size:12px;letter-spacing:.005em}.text-link svg{transition:transform .2s}.text-link:hover svg{transform:translateX(5px)}.section-heading{max-width:680px;margin-bottom:44px}.section-heading h2{margin:15px 0 13px}.section-heading p{max-width:605px;margin:0;line-height:1.75}.section-heading.centered{text-align:center;margin-inline:auto}.section-heading.centered p{margin-inline:auto}
/* Navigation */
.topbar{background:#064851;color:#e9f8f8;font-size:11px;font-weight:700;letter-spacing:.01em}.topbar-inner{display:flex;align-items:center;justify-content:space-between;min-height:36px}.topbar-inner span,.topbar-inner a{display:inline-flex;align-items:center;gap:8px}.topbar-inner a:hover{color:var(--gold-light)}.site-header{background:rgba(255,255,255,.98);position:sticky;top:0;z-index:100;box-shadow:0 1px 0 var(--border);backdrop-filter:blur(13px)}.header-inner{height:89px;display:flex;gap:28px;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;min-width:210px}.brand img{width:63px;height:63px;object-fit:contain}.brand>span{display:flex;flex-direction:column;gap:0}.brand strong{font:800 17px/1.15 var(--font);color:var(--teal-deep);letter-spacing:-.04em}.brand strong b{color:#172d31}.brand small{font:800 8.5px/1.4 var(--font);color:#5d7478;letter-spacing:.21em;margin-top:4px}.main-nav{display:flex;align-items:center;gap:26px;margin-left:auto}.main-nav>a{font:700 11.5px/1.5 var(--font);color:#3d555a;white-space:nowrap;position:relative;padding:7px 0}.main-nav>a:after{content:"";position:absolute;bottom:-4px;left:0;right:0;width:0;height:2px;background:var(--teal);transition:width .2s}.main-nav>a:hover,.main-nav>a.active{color:var(--teal-deep)}.main-nav>a:hover:after,.main-nav>a.active:after{width:100%}.header-tools{display:flex;align-items:center;gap:15px}.header-tools .btn{white-space:nowrap;padding:14px 15px;font-size:11px}.lang-switch{display:flex;align-items:center;gap:7px;border-left:1px solid var(--border);padding-left:15px;font:800 11px var(--font)}.lang-switch a{color:#9ab0b3}.lang-switch .selected{color:var(--teal-deep)}.lang-switch span{color:#b8c6c8}.menu-toggle,.nav-mobile-cta{display:none}
/* Hero */
.hero{background:linear-gradient(113deg,#f7fbfb 0%,#fff 47%,#f3f8f7 100%);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:480px;height:480px;border:1px solid #e7f2f2;border-radius:50%;left:-210px;top:-210px;pointer-events:none}.hero-grid{min-height:570px;display:grid;grid-template-columns:52% 48%;align-items:center;gap:30px;padding-top:46px;padding-bottom:58px}.hero-copy{position:relative;z-index:2;padding-bottom:8px}.hero-kicker{margin-bottom:24px}.hero-copy h1{max-width:680px;font-size:clamp(2.6rem,4.3vw,4.35rem);margin:0 0 24px;color:#20363b;line-height:1.1}.hero-copy h1 em{font-style:normal;color:var(--teal);position:relative}.hero-copy h1 em:after{content:"";position:absolute;left:0;bottom:-8px;background:var(--gold);height:3px;width:30%;border-radius:3px}.hero-copy>p{max-width:520px;font-size:16px;line-height:1.9;color:#566d70;margin-bottom:32px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.hero-actions .btn{padding:16px 23px}.hero-micro{display:flex;align-items:center;gap:8px;color:#567377;margin-top:24px;font-size:12px;font-weight:700}.hero-micro svg{color:var(--teal)}.hero-visual{position:relative;min-height:470px;padding:0 28px 15px 0}.hero-photo{height:480px;border-radius:95px 8px 8px 8px;position:relative;overflow:hidden;box-shadow:0 22px 52px rgba(24,77,79,.13);background:linear-gradient(145deg,#8db7ac,#c4dcda)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(1,50,56,.21),transparent 30%);pointer-events:none}.hero-photo-credit{position:absolute;right:15px;bottom:12px;z-index:1;color:white;background:rgba(17,47,50,.65);font-size:9px;letter-spacing:.01em;border-radius:4px;padding:4px 8px}.decor-circle{position:absolute;width:210px;height:210px;border:22px solid rgba(201,160,68,.17);border-radius:50%;right:-74px;bottom:-59px;z-index:0;pointer-events:none}.hero-float{position:absolute;z-index:3;bottom:48px;left:-42px;display:flex;align-items:center;gap:14px;padding:18px 22px;background:white;box-shadow:var(--shadow);border-left:4px solid var(--gold);border-radius:4px;max-width:325px}.hero-float-icon{color:var(--teal-deep)}.hero-float strong{font:800 13px var(--font);display:block}.hero-float small{font-size:11px;line-height:1.45;color:#6b8084;display:block;margin-top:3px}
/* Form */
.quick-section{position:relative;z-index:5;background:#fff;padding:60px 0 68px}.quick-layout{display:grid;grid-template-columns:32% 1fr;gap:64px;align-items:center}.quick-intro h2{font-size:clamp(1.85rem,2.5vw,2.5rem);margin:16px 0}.quick-intro p{font-size:15px;line-height:1.8}.quick-contact{margin-top:28px;color:var(--teal-deep);font:800 17px var(--font);display:flex;align-items:center;gap:12px}.quick-form-card,.quote-form-card{background:white;border:1px solid var(--border);border-radius:11px;box-shadow:0 15px 47px rgba(26,79,84,.09);padding:30px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.form-field{display:flex;flex-direction:column;gap:8px;font:700 11.5px var(--font);color:#3d5357}.form-field span em{font-style:normal;color:#aa772c}.form-field input,.form-field select,.form-field textarea{width:100%;min-width:0;background:#fafcfc;border:1px solid #d6e3e5;border-radius:5px;padding:13px 14px;color:#334a50;outline:none;font:500 13px var(--body);height:46px;transition:border .2s,box-shadow .2s}.form-field textarea{height:auto;min-height:116px;resize:vertical}.form-field :is(input,select,textarea):focus{border-color:var(--teal);box-shadow:0 0 0 3px #d5f2f1}.form-field input::placeholder{color:#a3b1b5}.form-field.full{grid-column:1/-1}.form-submit{margin-top:18px;padding:15px 20px;min-width:206px}.form-privacy{font-size:11px;color:#789092;margin:13px 0 0;display:flex;align-items:center;gap:7px}.honeypot{position:absolute;left:-999999px;width:1px;height:1px;overflow:hidden}.mini .form-grid{gap:15px}.mini .form-submit{margin-top:20px}.quote-form-card .form-grid{gap:20px}.quote-form-card .form-submit{width:100%;font-size:13px}
/* Services */
.services-section{background:var(--mist)}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{background:#fff;border:1px solid #e4eaea;border-radius:8px;overflow:hidden;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-image{height:205px;overflow:hidden;position:relative;background:linear-gradient(130deg,#aacac6,#e8ece8)}.service-image img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.service-card:hover img{transform:scale(1.045)}.illustration-tag{position:absolute;left:12px;bottom:12px;background:rgba(26,48,49,.75);color:#fff;padding:4px 8px;font-size:9px;border-radius:3px}.service-body{position:relative;padding:24px 24px 26px}.service-icon{position:absolute;right:23px;top:-27px;background:#fff;border:1px solid var(--border);color:var(--teal-deep);width:52px;height:52px;border-radius:50%;display:grid;place-items:center;box-shadow:0 3px 15px rgba(0,0,0,.05)}.service-body h3{font-size:18px;margin:6px 0 12px;max-width:240px}.service-body p{line-height:1.75;font-size:13px;min-height:69px;margin-bottom:18px}.center-cta{text-align:center;margin-top:38px}
/* Half-image feature */
.about-strip{background:#fff}.split-feature{display:grid;grid-template-columns:47% 1fr;gap:80px;align-items:center}.feature-photo{height:540px;position:relative;box-shadow:0 25px 55px rgba(12,65,68,.07);border-radius:10px;overflow:hidden;background:linear-gradient(145deg,#9dbab8,#e7e3d6)}.feature-photo>img{width:100%;height:100%;object-fit:cover}.visual-note{position:absolute;bottom:12px;left:12px;padding:5px 9px;border-radius:4px;background:rgba(14,48,49,.72);color:#fff;font-size:10px;z-index:3}.feature-copy .section-heading{margin-bottom:25px}.feature-list{display:grid;gap:19px;margin-bottom:30px}.feature-line{display:flex;gap:15px;align-items:flex-start}.feature-check{background:#e7f4f4;color:var(--teal-deep);border-radius:100%;width:37px;height:37px;display:grid;place-items:center}.feature-line h3{font-size:14px;margin:0 0 5px}.feature-line p{font-size:13px;line-height:1.65;margin:0}
/* Inspiration */
.work-section{background:#f7f9f8}.inspo-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px;min-height:310px}.inspo-grid>div{position:relative;border-radius:7px;overflow:hidden;background:#a0bdba;min-height:285px}.inspo-grid img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .3s}.inspo-grid>div:hover img{transform:scale(1.025)}.inspo-grid>div:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(4,42,42,.55))}.inspo-grid span{position:absolute;color:#fff;font:800 15px var(--font);left:19px;bottom:19px;z-index:1}.gallery-disclaimer{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.65;margin:18px 0 0}.gallery-disclaimer svg{color:var(--gold)}
/* Process */
.process-section{background:white}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:42px}.step-card{padding:36px;background:#f8fbfb;border-top:3px solid var(--gold);min-height:236px}.step-number{display:block;color:var(--teal);font:800 38px var(--font);letter-spacing:-.05em;opacity:.8;margin-bottom:18px}.step-card h3{font-size:17px;margin:0 0 11px}.step-card p{font-size:13px;line-height:1.8;margin:0}
/* Areas */
.areas-section{background:#eef5f5}.areas-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:60px;align-items:center}.areas-layout .section-heading{margin-bottom:27px}.area-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:0 0 30px}.area-pills span{font-size:12.5px;font-weight:700;color:#37585e;display:flex;align-items:center;gap:8px}.area-pills svg{color:var(--teal)}.areas-decor{display:grid;place-items:center}.areas-outline{border:1px solid #c8dddd;border-radius:50%;height:340px;width:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;position:relative;color:var(--teal-deep);background:radial-gradient(circle,#eaf6f5,#eff7f6)}.areas-outline:before,.areas-outline:after{content:"";border:1px solid #d7e7e7;border-radius:50%;position:absolute;inset:20px}.areas-outline:after{inset:40px;border-style:dashed}.areas-outline strong{font:800 16px var(--font);letter-spacing:.17em}.areas-outline>span{font-size:11px;color:#718b8b}
/* CTA */
.cta-section{background:linear-gradient(105deg,#007985,#006471);position:relative;overflow:hidden;color:white}.cta-section:after{content:"";position:absolute;width:420px;height:420px;border:2px solid rgba(255,255,255,.1);border-radius:50%;top:-240px;right:-90px}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:50px;padding-block:69px;position:relative;z-index:1}.cta-inner h2{color:white;font-size:clamp(1.8rem,3vw,2.6rem);margin:13px 0}.cta-inner p{color:#dceff1;max-width:570px;margin:0;line-height:1.7}.cta-btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
/* Interior pages */
.subhero{background:linear-gradient(120deg,#f1f7f7,#fff);border-bottom:1px solid var(--border);overflow:hidden}.subhero-grid{padding-top:90px;padding-bottom:85px;position:relative}.subhero-grid:not(.has-photo){max-width:900px}.subhero h1{font-size:clamp(2.45rem,4.1vw,3.9rem);max-width:700px;margin:19px 0}.subhero p{line-height:1.8;font-size:16px;max-width:690px;margin:0}.subhero-grid.has-photo{display:grid;grid-template-columns:1fr .73fr;align-items:center;gap:64px;min-height:390px}.subhero-visual{position:relative;height:296px;border-radius:9px;overflow:hidden;background:#a0c6c4}.subhero-visual img{width:100%;height:100%;object-fit:cover}.detail-layout{display:grid;grid-template-columns:1fr 340px;gap:85px;align-items:start}.detail-layout h2{margin:15px 0}.detail-layout .lead{margin-bottom:34px}.detail-items{display:grid;gap:8px}.detail-service{display:flex;align-items:flex-start;gap:18px;padding:23px 0;border-bottom:1px solid var(--border)}.detail-service svg{margin-top:3px;color:var(--teal)}.detail-service h3{font-size:17px;margin:0 0 9px}.detail-service p{font-size:14px;margin:0}.detail-aside{background:#eef7f7;padding:35px;border-radius:10px;border-top:4px solid var(--gold)}.detail-aside-icon{color:var(--teal-deep);margin-bottom:21px}.detail-aside h3{font-size:23px}.detail-aside p{font-size:14px;line-height:1.8}.detail-aside .btn{width:100%;margin:14px 0}.aside-call{display:flex;justify-content:center;align-items:center;gap:10px;color:var(--teal-deep);font-weight:800;font-size:16px;margin:15px 0 0}.notice-panel{background:#eaf5f5;display:flex;gap:22px;padding:34px;border-left:4px solid var(--gold);margin-bottom:30px}.notice-panel>div:first-child{color:var(--teal)}.notice-panel h2{font-size:22px;margin:0 0 7px}.notice-panel p{font-size:13px;line-height:1.8;margin:0}.area-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.area-page-card{display:flex;gap:15px;padding:27px 24px;background:#f6f9f9;border:1px solid var(--border);border-radius:7px}.area-page-card svg{color:var(--teal);margin-top:3px}.area-page-card h2{font-size:17px;margin:0 0 7px}.area-page-card p{font-size:12px;line-height:1.5;margin:0}.about-grid{display:grid;grid-template-columns:1fr 390px;gap:100px}.about-grid h2{margin:12px 0 24px}.about-grid p{line-height:1.9}.about-caution{display:flex;gap:12px;font-size:12px;padding:18px;background:#eff7f7;border-radius:6px}.about-caution svg{color:var(--teal)}.about-icon-grid{display:grid;gap:14px}.about-icon-grid>div{display:flex;align-items:center;gap:16px;background:#f6f9f9;border-radius:8px;padding:23px}.about-icon-grid span{background:#e2f0f0;color:var(--teal);border-radius:50%;height:57px;width:57px;display:grid;place-items:center}.about-icon-grid h3{font-size:16px;margin:0}.contact-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.contact-card{padding:37px 29px;border:1px solid var(--border);border-radius:8px;transition:box-shadow .2s,transform .2s}.contact-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.contact-card>svg{color:var(--teal)}.contact-card h2{font-size:18px;margin:24px 0 10px}.contact-card p{font-size:14px;overflow-wrap:anywhere}.contact-card span{color:var(--teal-deep);font:800 13px var(--font);display:flex;align-items:center;gap:8px}.estimate-section{background:#f6f9f9}.quote-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:75px;align-items:start}.quote-copy{position:sticky;top:150px}.quote-copy h2{margin:15px 0 18px}.quote-copy p{line-height:1.85;margin-bottom:31px}.quote-contact{display:flex;align-items:center;gap:12px;margin-bottom:14px;color:var(--teal-deep);font-weight:800}.quote-contact a:hover{text-decoration:underline}.legal-copy{max-width:780px}.legal-copy h2{font-size:22px;margin:28px 0 12px}.legal-copy p{line-height:1.85}.thanks-page{padding:120px 0;background:#f5fafa}.thanks-box{text-align:center;max-width:660px}.thanks-mark{display:grid;place-items:center;background:#e2f3f1;color:var(--teal);width:100px;height:100px;margin:0 auto 25px;border-radius:50%}.thanks-box h1{font-size:clamp(2.2rem,4vw,3.3rem)}.thanks-box p{font-size:17px}.thanks-box .hero-actions{justify-content:center;margin-top:30px}
/* Footer */
.site-footer{background:#12343a;color:#e2eff0;padding-top:70px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.1fr;gap:85px;padding-bottom:55px}.footer-brand img{width:116px;height:116px;border-radius:50%;background:#fff}.footer-brand p{color:#a7c4c7;font-size:13px;max-width:300px;line-height:1.8;margin:24px 0 20px}.footer-line{width:62px;height:3px;background:var(--gold)}.site-footer h3{font-size:14px;color:#fff;margin-bottom:23px;letter-spacing:0}.footer-links{display:grid;gap:11px}.footer-links a,.footer-links span{display:flex;align-items:center;gap:9px;color:#bed3d5;font-size:12.5px;line-height:1.8;overflow-wrap:anywhere}.footer-links a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid rgba(240,250,250,.1);padding-top:22px;padding-bottom:26px;color:#9ab9bd;font-size:10.5px}.footer-bottom a{color:#cce7e8;text-decoration:underline}.mobile-actions{display:none}
/* Responsive */
@media (max-width:1130px){.header-inner{gap:15px}.main-nav{gap:15px}.brand{min-width:187px}.brand strong{font-size:15px}.brand img{width:55px;height:55px}.header-tools .btn{padding:12px 13px}.hero-grid{grid-template-columns:51% 49%}.hero-copy h1{font-size:3.4rem}.split-feature{gap:55px}.detail-layout{gap:50px}}
@media (max-width:975px){.topbar-inner{min-height:34px}.site-header{z-index:150}.header-inner{height:76px}.brand{min-width:0}.brand img{width:55px;height:55px}.header-tools .btn{display:none}.menu-toggle{border:0;background:#edf6f6;color:var(--teal-deep);padding:9px;border-radius:5px;display:inline-grid;place-items:center}.main-nav{position:absolute;top:76px;left:0;right:0;z-index:150;background:white;box-shadow:0 15px 22px rgba(30,55,60,.12);display:none;flex-direction:column;align-items:stretch;gap:0;padding:16px 32px 26px}.main-nav.open{display:flex}.main-nav>a{font-size:13px;padding:13px;border-bottom:1px solid var(--border)}.main-nav>a:after{display:none}.nav-mobile-cta{display:block;margin-top:20px}.nav-mobile-cta .btn{width:100%}.hero-grid{min-height:auto;gap:35px;padding-top:52px;padding-bottom:60px}.hero-copy h1{font-size:clamp(2.6rem,5vw,3.35rem)}.hero-photo{height:410px}.hero-visual{min-height:425px}.hero-float{left:-24px;bottom:34px;padding:14px 16px}.quick-layout{grid-template-columns:1fr;gap:25px}.quick-intro{max-width:600px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-feature{gap:40px}.feature-photo{height:440px}.inspo-grid{grid-template-columns:1fr 1fr}.inspo-grid .inspo-side:last-child{display:none}.areas-outline{height:265px;width:265px}.areas-outline svg{width:66px;height:66px}.cta-inner{flex-direction:column;align-items:flex-start;gap:26px}.cta-btns{justify-content:flex-start}.subhero-grid.has-photo{gap:35px}.quote-layout{gap:36px}.about-grid{gap:40px;grid-template-columns:1fr 340px}.footer-grid{gap:35px}}
@media (max-width:690px){body{font-size:15px}.shell{width:min(calc(100% - 36px),1190px)}.section-pad{padding:65px 0}.topbar{display:none}.brand img{height:51px;width:51px}.brand strong{font-size:15px}.brand small{font-size:7.5px}.header-tools{gap:12px}.lang-switch{padding-left:0;border:0}.site-header,.header-inner{height:70px}.main-nav{top:70px;padding-inline:18px}.hero-grid{grid-template-columns:1fr;gap:25px;padding-top:50px;padding-bottom:55px}.hero-kicker{margin-bottom:19px}.hero-copy h1{font-size:clamp(2.6rem,8vw,3.35rem);margin-bottom:23px}.hero-copy>p{font-size:15px;line-height:1.85;margin-bottom:24px}.hero-actions{gap:10px}.hero-actions .btn{padding:14px 16px}.hero-visual{min-height:290px;padding:0 14px 0 0}.hero-photo{height:305px;border-radius:57px 7px 7px 7px}.hero-float{position:relative;left:14px;bottom:auto;margin-top:-41px;max-width:280px;padding:12px 15px}.hero-float strong{font-size:11px}.hero-float small{font-size:10px}.hero-photo-credit{font-size:8px}.decor-circle{width:140px;height:140px;right:-34px;bottom:20px}.quick-section{padding:48px 0 59px}.quick-intro h2{margin:12px 0}.quick-form-card,.quote-form-card{padding:22px 18px}.form-grid{grid-template-columns:1fr}.mini .form-grid{gap:13px}.form-field{font-size:12px}.form-field input,.form-field select{font-size:14px;height:48px}.form-submit{width:100%;padding:17px}.section-heading{margin-bottom:30px}.section-heading h2{font-size:clamp(1.8rem,6vw,2.35rem)}.services-grid{grid-template-columns:1fr;gap:20px}.service-image{height:225px}.service-body p{min-height:0}.split-feature{grid-template-columns:1fr;gap:31px}.feature-photo{height:330px}.work-section .inspo-grid{grid-template-columns:1fr 1fr;gap:10px}.inspo-grid>div{min-height:210px}.work-section .inspo-grid .inspo-side:last-child{display:none}.inspo-grid span{font-size:11px;left:12px;bottom:12px}.gallery-disclaimer{font-size:11px}.steps-grid{grid-template-columns:1fr;gap:12px}.step-card{min-height:0;padding:25px}.step-number{margin-bottom:5px;font-size:31px}.areas-layout{grid-template-columns:1fr;gap:34px}.areas-outline{height:220px;width:220px}.areas-outline strong{font-size:12px}.area-pills{gap:9px}.area-pills span{font-size:12px}.cta-inner{padding-block:53px}.cta-btns{width:100%;display:grid;grid-template-columns:1fr 1fr}.cta-btns .btn{padding:13px 10px;font-size:10.5px}.subhero-grid{padding-block:55px}.subhero-grid.has-photo{grid-template-columns:1fr;gap:27px}.subhero h1{font-size:clamp(2.25rem,7.1vw,3.1rem)}.subhero p{font-size:14px}.subhero-visual{height:245px}.detail-layout{grid-template-columns:1fr;gap:30px}.detail-aside{padding:25px}.area-page-grid{grid-template-columns:1fr;gap:12px}.about-grid{grid-template-columns:1fr;gap:30px}.contact-cards{grid-template-columns:1fr;gap:12px}.contact-card{padding:25px}.contact-card h2{margin:13px 0 5px}.quote-layout{grid-template-columns:1fr;gap:30px}.quote-copy{position:static}.quote-copy h2{margin:11px 0}.footer-grid{grid-template-columns:1fr 1fr;gap:33px 17px;padding-bottom:39px}.footer-brand{grid-column:1/-1}.footer-brand img{width:90px;height:90px}.footer-brand p{margin:15px 0}.footer-links a,.footer-links span{font-size:11.5px}.footer-bottom{flex-direction:column;padding-bottom:93px;font-size:10px}.mobile-actions{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;bottom:0;left:0;right:0;z-index:200;background:#fff;box-shadow:0 -4px 17px rgba(10,55,60,.14);padding:9px max(9px,env(safe-area-inset-left)) calc(9px + env(safe-area-inset-bottom))}.mobile-actions>a{display:flex;flex-direction:column;align-items:center;gap:1px;font:800 9.5px var(--font);color:var(--teal-deep);padding:3px 4px;text-align:center}.mobile-actions>a:nth-child(3){background:var(--teal);color:#fff;border-radius:4px;padding:6px 5px}.thanks-page{padding:90px 0}}
@media(max-width:390px){.brand strong{font-size:13px}.brand small{font-size:7px}.brand img{width:45px;height:45px}.lang-switch{gap:4px}.hero-copy h1{font-size:2.5rem}.hero-actions .btn{font-size:10px}.area-pills{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.brand-poster{background:#fff;padding:12px;border:1px solid var(--border);border-radius:7px;display:flex;align-items:center;justify-content:center}.brand-poster img{width:100%;height:auto;object-fit:contain}

/* NRG FUTURO 2026-10: refined brand prominence and compact hero */
@media (min-width:1131px){
 .header-inner{height:99px;gap:18px}
 .brand{gap:12px;min-width:225px}
 .brand img{width:77px;height:77px}
 .main-nav{gap:19px}
 .header-tools{gap:12px}
}
.hero-copy>p{max-width:475px;line-height:1.74;margin-bottom:28px}
@media (min-width:976px) and (max-width:1130px){
 .header-inner{height:90px}
 .brand{gap:10px;min-width:193px}
 .brand img{width:66px;height:66px}
}
@media (min-width:691px) and (max-width:975px){
 .header-inner{height:86px}
 .brand img{width:66px;height:66px}
 .main-nav{top:86px}
}
@media (min-width:391px) and (max-width:690px){
 .site-header,.header-inner{height:78px}
 .brand img{height:59px;width:59px}
 .main-nav{top:78px}
}
@media (max-width:390px){
 .site-header,.header-inner{height:73px}
 .brand img{height:49px;width:49px}
 .main-nav{top:73px}
}
@media (max-width:690px){
 .hero-copy>p{line-height:1.72;margin-bottom:23px}
}

/* EPDM service card: neutral illustration only, not a photograph of a completed project. */
.epdm-visual{background:linear-gradient(135deg,#e4f2f0 0%,#c6dedc 50%,#6eaeb0 100%);display:flex;align-items:center;justify-content:center;flex-direction:column;isolation:isolate}
.epdm-visual:before{content:"";position:absolute;width:290px;height:115px;left:50%;top:50%;transform:translate(-48%,-36%) skewX(-17deg);background:linear-gradient(165deg,#273c42 0%,#53696c 85%);border:4px solid rgba(255,255,255,.55);border-radius:4px;box-shadow:0 22px 28px rgba(20,65,71,.25)}
.epdm-visual .epdm-layer{position:absolute;z-index:1;height:3px;background:#c9a044;width:48%;transform:translate(-15px,24px) skewX(-17deg);opacity:.85}
.epdm-visual .epdm-layer-2{transform:translate(-15px,34px) skewX(-17deg);background:#e3c27b;width:45%}
.epdm-visual-title{position:relative;z-index:2;color:#fff;font-size:42px;font-weight:900;letter-spacing:.18em;text-shadow:0 2px 10px #173c46;line-height:1.2}
.epdm-visual-caption{position:relative;z-index:2;color:#fff;font-size:10px;font-weight:800;letter-spacing:.17em;text-shadow:0 1px 5px #173c46;text-align:center}
.detail-inline-link{font-weight:800;color:var(--teal-deep);text-decoration:underline;text-underline-offset:3px}
.detail-inline-link:hover{color:#008996}
@media(max-width:650px){.epdm-visual:before{width:245px}.epdm-visual-title{font-size:36px}}

/* Curated project photography: responsive, fast and accessible */
.curated-work-section{background:#f7f9f9}.gallery-filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 28px}
.gallery-filter{border:1px solid #cee0e1;background:#fff;color:#38555b;padding:10px 16px;border-radius:100px;font:800 12px var(--font);transition:background .2s,color .2s,border-color .2s}
.gallery-filter:hover{border-color:var(--teal);background:#ebf7f7}.gallery-filter.is-active{background:var(--teal-deep);border-color:var(--teal-deep);color:#fff}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.project-card{background:#fff;border:1px solid var(--border);border-radius:9px;overflow:hidden;box-shadow:0 4px 17px rgba(4,49,54,.055);display:flex;flex-direction:column}
.project-card[hidden]{display:none!important}.project-open{display:block;position:relative;border:0;padding:0;background:#cee0df;width:100%;height:222px;overflow:hidden;text-align:left;cursor:zoom-in}
.project-open img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.project-open:hover img{transform:scale(1.045)}.zoom-corner{display:grid;place-items:center;position:absolute;right:13px;top:12px;width:34px;height:34px;border-radius:50%;background:rgba(8,52,57,.8);color:#fff;font-size:22px}
.project-info{padding:18px 19px 22px;flex:1;display:flex;flex-direction:column;align-items:flex-start}
.project-cat{text-transform:uppercase;color:var(--teal-deep);font:800 10px var(--font);letter-spacing:.12em}.project-info h3{font:800 15px/1.45 var(--font);letter-spacing:-.015em;margin:9px 0 12px}.project-status{font:600 11px var(--body);color:#677e82;background:#eff6f5;border-radius:4px;padding:5px 8px;margin-top:auto}
.project-dialog{max-width:min(92vw,1400px);max-height:90dvh;border:0;border-radius:9px;padding:14px;box-shadow:0 20px 90px rgba(0,28,32,.45);background:white}
.project-dialog::backdrop{background:rgba(9,24,28,.82)}.project-dialog img{display:block;max-width:100%;max-height:75dvh;margin:auto;object-fit:contain}.project-dialog .dialog-caption{font:700 13px var(--font);color:var(--ink);margin:12px 40px 2px 4px}.dialog-close{position:absolute;right:17px;top:17px;background:#fff;border:0;border-radius:50%;width:39px;height:39px;display:grid;place-items:center;font-size:27px;color:#163f46;box-shadow:0 3px 20px rgba(0,0,0,.15)}
.detail-photos-section{background:#f8fbfa}.detail-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.detail-photo-grid figure{margin:0;background:#fff;border:1px solid var(--border);border-radius:9px;overflow:hidden}.detail-photo-grid a{display:block;height:230px;overflow:hidden}.detail-photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.detail-photo-grid a:hover img{transform:scale(1.035)}.detail-photo-grid figcaption{font:700 12px/1.55 var(--font);padding:13px 16px 18px}
@media(max-width:975px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:690px){.gallery-filters{gap:8px}.gallery-filter{padding:9px 12px;font-size:11px}.project-grid{grid-template-columns:1fr;gap:16px}.project-open{height:235px}.detail-photo-grid{grid-template-columns:1fr}.detail-photo-grid a{height:240px}.project-dialog{padding:9px;max-width:96vw}}
