:root{--ink:#073c52;--muted:#607780;--blue:#007a9d;--mint:#bfdfd3;--paper:#fafbf8;--line:#dce5e2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #008baa;outline-offset:5px}header{height:96px;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:bold;letter-spacing:2px}.brand svg{width:38px;height:44px}.brand-sub{display:block;font-size:9px;letter-spacing:3px;padding-top:5px}nav{display:flex;gap:30px;font-size:13px}nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:6px}.nav-cta{border:1px solid var(--ink);padding:12px 18px;font-size:13px}.nav-cta span{margin-left:28px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:610px;padding:38px 5.5% 48px;gap:42px;max-width:1600px;margin:auto}.hero-copy{padding-top:34px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:bold;display:flex;align-items:center;gap:9px}.dot{width:6px;height:6px;background:var(--blue);border-radius:50%}h1{font-family:Georgia,'Times New Roman',serif;font-weight:normal;font-size:clamp(58px,6.2vw,100px);line-height:.99;letter-spacing:-4px;margin:28px 0}em{font-weight:normal;color:var(--blue)}.hero-copy>p{color:var(--muted);max-width:380px;font-size:16px;line-height:1.8}.actions{display:flex;gap:26px;align-items:center;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;background:var(--ink);color:white;padding:17px 22px;border:0;cursor:pointer;font-size:13px;transition:background .2s}.button:hover{background:var(--blue)}.text-link{font-size:12px}.text-link span{margin-left:10px}.hero-note{margin-top:45px;font-size:10px;letter-spacing:.3px;color:var(--muted);display:flex;gap:10px;align-items:center}.tiny-line{width:22px;height:1px;background:var(--muted)}.hero-art{position:relative;overflow:hidden;background:#e5e6da;min-height:570px}.hero-art>img{width:100%;height:100%;object-fit:cover;position:absolute}.art-label{position:absolute;top:25px;left:25px;font-size:8px;letter-spacing:2px;color:#285653}.art-card{position:absolute;bottom:50px;left:25px;background:#fafbf8ee;display:flex;gap:18px;padding:20px 25px;line-height:1.6;font-size:13px;backdrop-filter:blur(12px)}.mini-wave{font-size:36px;line-height:1.2}.art-caption{position:absolute;bottom:17px;right:18px;font-size:9px;color:#375f61}.service-strip{background:var(--ink);color:#d6e8e8;display:flex;justify-content:space-around;gap:15px;padding:23px 5.5%;font-size:9px;letter-spacing:1.8px}.section{padding:90px 5.5%;max-width:1600px;margin:auto}.section-top{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:34px}h2{font:normal clamp(38px,4vw,60px)/1.06 Georgia,serif;letter-spacing:-1.8px;margin:22px 0 0}.section-top>p{max-width:330px;color:var(--muted);line-height:1.8;margin:0 0 5px}.tabs{display:flex;gap:7px;margin:35px 0 26px;flex-wrap:wrap}.tabs button{border:1px solid var(--line);padding:10px 16px;background:transparent;color:var(--muted);font-size:11px;cursor:pointer;border-radius:30px}.tabs button.active{background:var(--ink);color:white;border-color:var(--ink)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{border:1px solid var(--line);padding:27px 23px 24px;position:relative;display:flex;flex-direction:column;min-height:365px;background:#fff}.service-card[hidden]{display:none}.service-icon{font-size:30px;color:var(--blue);height:56px}.card-number{position:absolute;right:23px;top:30px;font-size:9px;color:#7b9398}.service-card h3{font:normal 24px Georgia,serif;margin:10px 0 12px;letter-spacing:-.6px}.service-card p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}.service-card ul{list-style:none;padding:0;margin:22px 0 24px;font-size:10px;line-height:2;color:var(--muted)}.service-card li:before{content:'— ';color:var(--blue)}.service-card a{display:flex;justify-content:space-between;margin-top:auto;border-top:1px solid var(--line);padding-top:18px;font-size:11px}.service-card a:hover{color:var(--blue)}.filter-status{font-size:10px;color:var(--muted)}.approach{background:#edf2ed;max-width:none}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding-top:25px}.steps article{border-top:1px solid #b6c9c5;padding-top:24px}.steps span{font-size:9px;letter-spacing:1.5px;color:var(--blue)}.steps h3{font:normal 30px/1.2 Georgia,serif;margin:24px 0 16px;letter-spacing:-.5px}.steps p{color:var(--muted);line-height:1.9;max-width:310px;font-size:12px}.about{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.about-visual{min-height:440px;background:#dceeea;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.water-ring{border:1px solid #a1c9c4;border-radius:50%;position:absolute;width:410px;height:410px;transform:rotate(-25deg) scaleX(1.4)}.r2{width:320px;height:320px}.r3{width:230px;height:230px}.ring-copy{font:normal 36px/1.25 Georgia,serif;position:relative;letter-spacing:2px}.about-copy p{color:var(--muted);font-size:13px;line-height:1.9;max-width:440px}.about-copy .text-link{display:inline-block;margin-top:15px}.faq{padding-top:10px;display:grid;grid-template-columns:.8fr 1.2fr;gap:50px}.questions details{border-bottom:1px solid var(--line);padding:22px 0}.questions summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-size:14px}.questions summary::-webkit-details-marker{display:none}.questions summary span{font-size:18px}.questions details[open] summary span{transform:rotate(45deg)}.questions p{color:var(--muted);font-size:12px;line-height:1.9;max-width:570px}.contact{max-width:none;background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:75px;padding-bottom:75px}.contact .eyebrow{color:#abd4d3}.contact h2{font-size:clamp(45px,5vw,72px)}.contact em{color:#99d1cc}.contact-copy>p{max-width:330px;font-size:13px;line-height:1.9;color:#b9d1d6;margin:27px 0}.email{font-size:19px;display:block;margin-top:40px}.email span{margin-left:14px}.social{display:block;font-size:11px;margin-top:16px;color:#b9d1d6}form{padding-top:10px}label{display:block;font-size:11px;color:#c0d4d8;margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #5b7d89;border-radius:0;background:transparent;color:white;padding:13px 0;font-size:13px;outline:none;margin-top:4px}input:focus,select:focus,textarea:focus{border-color:#bce3d3;box-shadow:0 1px #bce3d3}input::placeholder,textarea::placeholder{color:#8eaeb8}select option{background:var(--ink);color:white}textarea{resize:vertical}form .button{background:#c8e1d3;color:var(--ink);width:100%;font-weight:bold}form .button:hover{background:white}.form-note,#form-status,#email-fallback{font-size:10px;line-height:1.7;color:#b9d1d6}#email-fallback{text-decoration:underline}footer{padding:28px 5.5%;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:9px;color:var(--muted)}.footer-brand{font-weight:bold;letter-spacing:1px;color:var(--ink);font-size:11px}.skip{position:fixed;left:20px;top:-100px;padding:15px;background:white;z-index:10}.skip:focus{top:10px}@media(min-width:1600px){.approach,.contact{padding-left:calc((100vw - 1424px)/2);padding-right:calc((100vw - 1424px)/2)}}@media(max-width:1050px){.hero{gap:25px}.actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-art{min-height:540px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:330px}h1{font-size:70px}.hero-note{margin-top:30px}.brand{font-size:20px}nav{gap:20px}}@media(max-width:700px){header{height:78px;padding:0 6%}nav{display:none}.brand{font-size:17px}.brand svg{width:29px}.brand-sub{font-size:7px}.nav-cta{font-size:11px;padding:10px}.nav-cta span{margin-left:12px}.hero{grid-template-columns:1fr;padding:10px 6% 32px;gap:30px}.hero-copy{padding-top:28px}h1{font-size:67px;letter-spacing:-3px}.hero-copy>p{font-size:14px}.actions{flex-direction:row;align-items:center;gap:18px}.button{padding:15px;font-size:11px;gap:15px}.text-link{font-size:10px}.hero-art{min-height:400px}.art-card{bottom:43px;font-size:12px}.hero-note{font-size:9px}.service-strip{display:grid;grid-template-columns:1fr 1fr;text-align:center;gap:18px;font-size:8px;padding:25px 5%}.section{padding:60px 6%}.section-top{display:block}.section-top>p{margin-top:22px;max-width:100%;font-size:13px}h2{font-size:43px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:26px}.service-card ul{margin:15px 0 24px}.service-card p{font-size:13px}.service-card h3{font-size:28px}.tabs{gap:6px}.tabs button{font-size:10px;padding:10px 12px}.steps{grid-template-columns:1fr;gap:25px}.steps h3 br{display:none}.steps h3{font-size:27px;margin-top:16px}.steps p{max-width:100%}.about{grid-template-columns:1fr;gap:35px}.about-visual{min-height:330px}.ring-copy{font-size:30px}.faq{grid-template-columns:1fr;gap:10px;padding-top:5px}.contact{grid-template-columns:1fr;gap:40px}.contact h2{font-size:56px}.email{font-size:18px;margin-top:30px}.form-row{grid-template-columns:1fr;gap:0}footer{flex-wrap:wrap;padding:25px 6%;font-size:9px}footer>span:nth-child(2){width:100%;order:3}footer>span:nth-child(3){width:100%;order:4}.eyebrow{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original supplied logo, framed without changing the artwork. */
header{height:118px}.brand{display:flex;flex-direction:column;gap:4px;flex-shrink:0;letter-spacing:normal}.logo-window{display:block;position:relative;overflow:hidden;width:260px;aspect-ratio:950/285;background:#fff}.logo-window img{position:absolute;display:block;width:114.3158%;height:auto;max-width:none;left:-4.2105%;top:-71.9298%}.logo-solution{display:block;font-size:12px;line-height:1.2;font-weight:600;letter-spacing:4px;text-transform:uppercase;color:#063264;padding-left:4px}.footer-brand .logo-window{width:220px}.footer-brand .logo-solution{font-size:10px}@media(max-width:700px){header{height:100px}.brand .logo-window{width:210px}.logo-solution{font-size:10px;letter-spacing:3px}.footer-brand .logo-window{width:210px}}@media(max-width:360px){header{padding-left:4%;padding-right:4%}.brand .logo-window{width:185px}.nav-cta span{margin-left:6px}}

.whatsapp-contact{background:#c8e1d3;color:var(--ink);margin-top:8px}.whatsapp-contact:hover{background:white}.contact-copy .phone{font-size:18px;color:white;margin-top:18px}.social:hover,.email:hover{text-decoration:underline;text-underline-offset:4px}

/* Social brand icons stay readable beside every social link. */
a:has(>.social-icon){display:inline-flex;align-items:center;gap:10px}.social-icon{width:22px;height:22px;flex:0 0 22px;vertical-align:middle}.social-label{display:inline-flex;align-items:center;gap:12px}.contact-copy .instagram-icon{color:#f0a9d2}footer .social-icon{width:18px;height:18px;flex-basis:18px}a:has(>.social-icon):focus-visible{outline:2px solid currentColor;outline-offset:5px}

/* Service photography: spacious image cards, with pools and spa shown separately. */
.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.service-card{overflow:hidden;padding:0 26px 26px}.service-media{position:relative;margin:0 -26px 22px;height:240px;background:#e5eeed;overflow:hidden}.service-media>img,.service-media-pair img{display:block;width:100%;height:100%;object-fit:cover}.service-media figcaption,.service-media-pair span{position:absolute;left:16px;bottom:15px;color:white;background:#073c52dc;padding:7px 10px;font-size:10px;letter-spacing:.4px}.service-media-pair{display:grid;grid-template-columns:1fr 1fr;gap:3px}.service-media-pair>div{position:relative;overflow:hidden}.card-number{position:static;font-size:10px;margin:0 0 2px;color:var(--blue)}.service-card h3{margin-top:8px}.image-note,.image-credits{font-size:10px;color:var(--muted);line-height:1.8}.image-credits{margin-top:8px}.image-credits summary{cursor:pointer;width:fit-content}.image-credits a{text-decoration:underline;text-underline-offset:3px}.image-credits p{max-width:740px}@media(max-width:700px){.service-grid{grid-template-columns:1fr;gap:22px}.service-media{height:220px}.service-card h3{font-size:26px}.service-media-pair span{left:10px;font-size:9px;padding:6px 8px}}
