@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{--ink:#181d23;--paper:#f5f3ee;--orange:#f3a11c;--muted:#6c716f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b76b00;outline-offset:5px}.review{background:var(--orange);font-size:10px;letter-spacing:2px;text-align:center;padding:8px}.brand{width:180px;height:72px;overflow:hidden;display:block;background:#181d23}.brand img{width:100%;height:100%;object-fit:cover}header{height:98px;display:flex;align-items:center;justify-content:space-between;padding:10px 5%;gap:20px;background:var(--ink);color:white}nav{display:flex;gap:28px;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;background:var(--orange);color:var(--ink);font-weight:700;padding:18px 24px;border:0;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#ffbb44;transform:translateY(-2px)}.small{font-size:12px;padding:14px 18px}.hero{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:690px;background:var(--ink);color:white;padding:25px 5% 70px;gap:4%}.hero-copy{padding-top:35px}.eyebrow{font-size:10px;letter-spacing:2px;line-height:1.6;font-weight:700}.hero .eyebrow{color:#c9c9c2}h1,h2,h3{font-family:Manrope,Arial,sans-serif;margin:0;letter-spacing:-2px}h1{font-size:clamp(50px,5.9vw,88px);line-height:1.06;margin:24px 0}em{font-style:normal;color:var(--orange)}.intro{max-width:380px;line-height:1.7;color:#c4c8c9;font-size:17px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:32px}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:7px;font-size:13px;font-weight:600}.hero-note{font-size:11px;color:#c4c8c9;margin-top:35px;display:flex;align-items:center;gap:10px}.dot{height:6px;width:6px;background:var(--orange);border-radius:50%}.hero-photo{position:relative;min-height:520px;overflow:hidden}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:44% center}.hero-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#101419e6);pointer-events:none}.photo-label{position:absolute;bottom:35px;left:30px;z-index:1}.photo-label span{font-size:9px;letter-spacing:2px;display:block;margin-bottom:12px;color:var(--orange)}.photo-label strong{font-family:Manrope;font-size:25px;line-height:1.25}.hero-bottom{position:absolute;bottom:23px;font-size:9px;letter-spacing:3px;color:#92989b}.section{padding:95px 7%}.section-head{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:45px;align-items:start;margin-bottom:50px}h2{font-size:clamp(35px,4vw,57px);line-height:1.13}p{line-height:1.75}.section-head>p:last-child{font-size:14px;color:var(--muted);margin-top:0}.service-list{border-top:1px solid #c8c9c3;margin-left:25%}.service{display:flex;gap:45px;padding:28px 0;border-bottom:1px solid #c8c9c3}.service>span{font-size:12px;color:#8a8d86;padding-top:10px}.service .eyebrow{margin:0 0 8px;color:#957023}.service h3{font-size:27px;letter-spacing:-1px}.service p:last-child{font-size:14px;color:var(--muted);max-width:580px;margin-bottom:0}.pool{background:#e8e5dc;display:grid;grid-template-columns:1.2fr .8fr;gap:8%;padding:75px 12%;align-items:center}.pool-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:410px}.pool-copy h2 em{color:#a1640b}.pool small{display:block;font-size:10px;color:var(--muted);margin-top:18px}.pool video{width:100%;max-height:570px;background:#171c23;object-fit:contain}.gallery-head{grid-template-columns:1.5fr 1fr}.gallery-head h2{margin-top:15px}.gallery-head>p{max-width:360px;justify-self:end;padding-top:30px}.filters{display:flex;gap:10px;margin-bottom:28px;flex-wrap:wrap}.filters button{border:1px solid #c5c7bf;border-radius:25px;background:transparent;padding:10px 20px;cursor:pointer;font-size:12px}.filters button.selected{background:var(--ink);color:white;border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.work{padding:0;border:0;text-align:left;background:transparent;cursor:pointer;min-width:0}.work[hidden]{display:none}.work img{display:block;width:100%;height:300px;object-fit:cover;transition:filter .2s}.work:hover img{filter:brightness(.88)}.work>span{position:relative;display:block;font-size:14px;padding:17px 22px 22px 0;border-bottom:1px solid #cbcdc5}.work small{display:block;color:var(--muted);font-size:9px;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:5px}.work b{position:absolute;right:0;top:25px}.coverage{background:var(--ink);color:white;padding:80px 7%;display:grid;grid-template-columns:.7fr 1.4fr 1fr;gap:40px;align-items:start}.coverage>div{font-size:14px;color:#c4c8c9}.coverage>div strong{color:white}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact h2{margin:20px 0}.contact h2 em{color:#a1640b}.contact>div>p:not(.eyebrow){font-size:14px;max-width:350px;color:var(--muted)}label{display:block;font-size:12px;font-weight:600;margin-bottom:22px}input,select,textarea{display:block;width:100%;padding:13px 0;margin-top:8px;border:0;border-bottom:1px solid #adafa6;background:transparent;border-radius:0;color:var(--ink);font-size:14px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.form-note{font-size:10px;color:var(--muted)}footer{padding:45px 7%;border-top:1px solid #c7c9c0;display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:center}footer>strong{font-size:30px;font-weight:800;letter-spacing:1px}footer strong span{display:block;font-size:8px;letter-spacing:3px}footer p,footer a{font-size:11px}footer small{width:100%;font-size:9px;color:var(--muted)}.floating{position:fixed;right:22px;bottom:22px;background:var(--ink);color:white;border:1px solid #72767a;border-radius:28px;padding:15px 20px;font-size:12px;z-index:10;box-shadow:0 5px 20px #0002}dialog{padding:20px;background:var(--ink);color:white;border:0;max-width:90vw;max-height:94vh}dialog::backdrop{background:#10141de8}dialog img{display:block;max-width:80vw;max-height:76vh;object-fit:contain}dialog p{margin:10px 0 0;font-size:13px}.close{position:absolute;right:8px;top:8px;background:white;color:#15191e;border:0;width:36px;height:36px;font-size:25px;cursor:pointer}@media(min-width:1500px){body{max-width:1800px;margin:auto}}@media(max-width:950px){nav{gap:12px;font-size:11px}.hero{min-height:610px}.hero-actions{align-items:start;flex-direction:column;gap:18px}.hero-photo{min-height:480px}.section-head{grid-template-columns:1fr 2fr}.section-head>p:last-child{grid-column:2}.service-list{margin-left:0}.coverage{grid-template-columns:1fr 2fr}.coverage>div{grid-column:2}.gallery{grid-template-columns:repeat(2,1fr)}.contact{gap:6%}.pool{padding:60px 7%}}@media(max-width:600px){header{height:82px;padding:7px 5%}.brand{width:145px;height:65px}nav{display:none}.small{font-size:10px;padding:12px}.hero{grid-template-columns:1fr;padding:8px 6% 45px;gap:25px}.hero-copy{padding-top:20px}h1{font-size:52px;letter-spacing:-2px;margin:18px 0}.intro{font-size:15px}.hero-actions{flex-direction:row;gap:18px;align-items:center}.hero-actions .button{padding:15px;font-size:12px;gap:10px}.hero-actions .text-link{font-size:11px}.hero-note{font-size:10px;margin-top:25px}.hero-photo{min-height:320px;height:320px}.hero-bottom{font-size:8px;bottom:17px}.photo-label strong{font-size:22px}.section{padding:55px 6%}.section-head{display:block;margin-bottom:30px}.section-head h2{margin:18px 0}.section-head>p:last-child{max-width:none;padding-top:0}.service{gap:20px}.service h3{font-size:23px}.service p:last-child{font-size:13px}.pool{grid-template-columns:1fr;padding:50px 6%;gap:30px}.pool video{max-height:470px}.gallery{gap:20px 12px}.work img{height:200px}.work>span{font-size:11px;padding-top:12px}.work small{font-size:8px}.work b{top:18px}.filters{gap:6px}.filters button{padding:9px 12px;font-size:11px}.coverage{display:block;padding:50px 6%}.coverage h2{margin:20px 0}.coverage>div{max-width:400px}.contact{grid-template-columns:1fr;gap:30px}.form-row{gap:18px}.floating{right:14px;bottom:14px;font-size:11px;padding:13px 17px}footer{padding:30px 6% 75px;gap:18px}footer p{max-width:200px}dialog{padding:10px}dialog img{max-width:85vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
