:root{--paper:#f2efe8;--paper2:#e7e1d6;--ink:#182226;--navy:#071b24;--steel:#6f7b7d;--sand:#c6a87d;--white:#fff;--line:rgba(24,34,38,.18);--max:1440px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.skip-link{position:fixed;left:1rem;top:-4rem;background:#fff;padding:.7rem 1rem;z-index:100}.skip-link:focus{top:1rem}.site-header{height:84px;padding:0 clamp(1.25rem,4vw,4.5rem);display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:2rem;max-width:var(--max);margin:auto}.brand{display:flex;flex-direction:column;text-transform:uppercase;line-height:1}.brand span{font-family:Manrope,sans-serif;font-weight:600;letter-spacing:.08em}.brand small{font-size:.65rem;letter-spacing:.25em;color:var(--steel);margin-top:.4rem}.site-header nav{display:flex;justify-content:center;gap:clamp(1rem,2vw,2.25rem);font-size:.86rem}.site-header nav a{padding:.7rem 0;border-bottom:1px solid transparent}.site-header nav a:hover{border-color:var(--ink)}.menu-toggle{display:none}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:.78rem 1.25rem;border:1px solid transparent;font:600 .9rem/1 "DM Sans",sans-serif;letter-spacing:.01em;cursor:pointer;transition:.25s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--navy);color:var(--white)}.button-sand{background:var(--sand);color:var(--navy)}.button-ghost{border-color:rgba(255,255,255,.55);color:#fff}.hero{position:relative;min-height:min(790px,calc(100vh - 84px));max-width:var(--max);margin:auto;color:white;overflow:hidden}.hero-image{position:absolute;inset:0}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,18,26,.92) 0%,rgba(4,18,26,.6) 40%,rgba(4,18,26,.08) 76%),linear-gradient(0deg,rgba(4,18,26,.48),transparent 45%)}.hero-content{position:relative;z-index:1;display:flex;min-height:min(790px,calc(100vh - 84px));max-width:850px;padding:clamp(5rem,11vw,9rem) clamp(1.25rem,7vw,7rem);flex-direction:column;justify-content:center;align-items:flex-start}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:600;color:#6c7776;margin:0 0 1.4rem}.eyebrow.light{color:rgba(255,255,255,.7)}h1,h2,h3{font-family:Manrope,sans-serif;font-weight:500;line-height:1.04;letter-spacing:-.035em;margin:0}h1{font-size:clamp(3rem,7vw,6.9rem);max-width:950px}h2{font-size:clamp(2.4rem,4.7vw,4.6rem)}h3{font-size:clamp(1.7rem,3vw,2.55rem)}.hero-copy{font-size:clamp(1rem,1.4vw,1.2rem);max-width:650px;color:rgba(255,255,255,.85);margin:2rem 0}.button-row{display:flex;gap:.75rem;flex-wrap:wrap}.hero-index{position:absolute;right:3rem;bottom:2.2rem;z-index:1;display:flex;align-items:center;gap:1.2rem;text-transform:uppercase;letter-spacing:.14em;font-size:.65rem}.hero-index span:first-child{border:1px solid rgba(255,255,255,.5);width:38px;height:38px;display:grid;place-items:center}.section-pad{padding:clamp(5rem,9vw,9rem) clamp(1.25rem,7vw,7rem);max-width:var(--max);margin:auto}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(3rem,9vw,10rem);align-items:start}.intro-copy>p{font-size:clamp(1.08rem,1.55vw,1.35rem);margin:0;max-width:650px}.method{border-top:1px solid var(--line);margin-top:3rem;padding-top:1.25rem;display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}.method span{font-family:Manrope,sans-serif;font-weight:600}.services{background:#e8e3da}.section-heading{display:grid;grid-template-columns:1.1fr 1fr;column-gap:4rem;margin-bottom:5rem}.section-heading .eyebrow{grid-column:1/-1}.section-heading>p:last-child{max-width:450px;margin:1rem 0 0;color:#5f6b6d}.service-feature{border-top:1px solid var(--line);padding:4.5rem 0;display:grid;grid-template-columns:minmax(170px,.6fr) 1.4fr;gap:4rem}.service-number{color:#677274;text-transform:uppercase;letter-spacing:.14em;font-size:.74rem}.service-copy{max-width:780px}.service-copy h3,.interior-card h3{margin-bottom:1.7rem}.service-copy p,.interior-card p{color:#4f5b5d}.service-copy ul,.interior-card ul{list-style:none;padding:1.2rem 0;margin:2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;column-gap:2rem}.service-copy li,.interior-card li{padding:.62rem 0;border-bottom:1px solid rgba(24,34,38,.08)}.service-copy li:nth-last-child(-n+2){border-bottom:0}.text-link{display:inline-flex;gap:.8rem;align-items:center;font-weight:600;border-bottom:1px solid;padding-bottom:.35rem}.text-link span{font-size:1.1rem}.visual-service{grid-template-columns:1fr 1fr;align-items:start}.service-media{height:760px;position:sticky;top:1rem}.process-line{display:flex;align-items:center;gap:.75rem;margin:2rem 0}.process-line i{display:block;height:1px;flex:1;background:#89918f}.process-line span{font-size:.76rem;text-transform:uppercase;letter-spacing:.1em}.interior-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#b8b6af}.interior-card{background:var(--paper);padding:clamp(2rem,4vw,4rem)}.interior-card ul{grid-template-columns:1fr}.interior-card li:nth-last-child(-n+2){border-bottom:1px solid rgba(24,34,38,.08)}.interior-card li:last-child{border-bottom:0}.dark-card{background:var(--navy);color:white}.dark-card p,.dark-card .service-number{color:#a9b1b1}.dark-card ul{border-color:rgba(255,255,255,.2)}.dark-card li{border-color:rgba(255,255,255,.1)}.light-link{color:#fff}.additional{background:var(--paper)}.section-heading.slim{display:block;max-width:900px}.additional-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.additional-grid article{min-height:310px;padding:2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.additional-grid article>span{display:block;color:#7f8989;font-size:.72rem;letter-spacing:.15em;margin-bottom:3rem}.additional-grid h3{font-size:1.42rem;line-height:1.2;letter-spacing:-.02em}.additional-grid p{color:#566164}.additional-grid small{display:block;font-size:.74rem;line-height:1.5;color:#758080;margin-top:1.2rem}.centered-cta{margin:3rem auto 0;display:flex;width:max-content}.projects{background:var(--navy);color:#fff}.project-heading{align-items:end}.project-heading>p{color:#aeb6b6;max-width:540px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.project-frame{aspect-ratio:4/3;position:relative;overflow:hidden;background-size:cover;background-position:center}.project-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.06) 50%,rgba(198,168,125,.22) 50%)}.project-frame span{position:absolute;left:1rem;bottom:1rem;z-index:1;background:rgba(7,27,36,.8);padding:.5rem .7rem;font-size:.68rem;letter-spacing:.13em;text-transform:uppercase}.gelcoat{background:linear-gradient(145deg,#e2e7e6,#829398)}.teak{background:linear-gradient(145deg,#907254,#d2b184)}.textile{background:linear-gradient(145deg,#b7b6b2,#e9e4db)}.project-grid h3{font-size:1.35rem;margin-top:1.2rem}.project-grid p,.project-note{color:#aeb6b6}.project-grid p{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.project-note{max-width:820px;border-top:1px solid rgba(255,255,255,.18);margin:4rem 0 0;padding-top:1.5rem;font-size:.88rem}.about{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);align-items:center}.about-image{height:720px}.about-copy h2{margin-bottom:2.4rem}.about-copy>p:not(.eyebrow){font-size:1.05rem;color:#566164}.about-values{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.2rem;display:flex;flex-wrap:wrap;gap:.7rem}.about-values span{border:1px solid var(--line);padding:.5rem .7rem;font-size:.78rem}.areas{background:var(--paper2)}.areas>p:not(.eyebrow){font-size:1.15rem;max-width:700px}.area-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:3rem 0}.area-list span{padding:1.7rem 0;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem}.contact{background:#0a1c23;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,10vw,10rem)}.contact-copy h2{max-width:550px}.contact-copy>p:not(.eyebrow){color:#afb8b7;max-width:540px;margin:2rem 0}.contact form{display:flex;flex-direction:column}.contact label,.contact legend{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;margin-bottom:.6rem}.contact label small{opacity:.55;text-transform:none;letter-spacing:0;margin-left:.4rem}.contact input,.contact textarea{appearance:none;border:0;border-bottom:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:0;font:inherit;padding:.7rem .1rem;margin-bottom:1.7rem}.contact input:focus,.contact textarea:focus{outline:1px solid var(--sand);outline-offset:3px}.contact fieldset{border:0;padding:0;margin:0 0 1.5rem}.radio-row{display:flex;gap:1.5rem;margin-top:.8rem}.radio-row label{display:flex;gap:.5rem;align-items:center}.radio-row input{accent-color:var(--sand);margin:0}.contact form .button{align-self:flex-start}.form-note{font-size:.75rem;color:#849091}.contact ::placeholder{color:#7d8a8d}footer{max-width:var(--max);margin:auto;padding:3.5rem clamp(1.25rem,7vw,7rem);display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:2rem;align-items:end}footer p{margin:0;color:#626d6d}footer>div{display:flex;flex-direction:column}footer>small{font-size:.7rem;color:#7b8585}.mobile-whatsapp{display:none}
@media(max-width:960px){.site-header{height:72px;grid-template-columns:1fr auto auto}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);z-index:20;padding:1.5rem;flex-direction:column;align-items:center;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.menu-toggle{display:block;border:0;background:transparent;font:600 .8rem "DM Sans"}.header-cta{padding:.7rem}.hero{min-height:700px}.hero-content{min-height:700px}.intro,.section-heading,.visual-service,.about,.contact{grid-template-columns:1fr}.service-media{position:relative;height:560px}.additional-grid{grid-template-columns:1fr 1fr}.project-heading>p{margin-top:1rem}.about-copy{padding-top:0}.area-list{grid-template-columns:1fr 1fr}.footer-brand{display:none}footer{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:640px){body{font-size:16px;padding-bottom:66px}.site-header{padding:0 1rem;gap:.8rem}.header-cta{display:none}.brand span{font-size:.83rem}.brand small{font-size:.55rem}.hero{min-height:calc(100svh - 72px)}.hero-content{min-height:calc(100svh - 72px);padding:5rem 1.25rem 6rem;justify-content:flex-end}.hero-shade{background:linear-gradient(0deg,rgba(4,18,26,.96) 0%,rgba(4,18,26,.48) 58%,rgba(4,18,26,.08) 100%)}h1{font-size:clamp(2.75rem,13vw,4.4rem)}h2{font-size:2.45rem}.hero-copy{margin:1.4rem 0}.button-row{width:100%;flex-direction:column}.button-row .button{width:100%}.hero-index{display:none}.section-pad{padding:5.3rem 1.25rem}.intro{gap:2.5rem}.method{grid-template-columns:1fr 1fr;row-gap:1rem}.section-heading{display:block;margin-bottom:3.5rem}.service-feature{padding:3rem 0;grid-template-columns:1fr;gap:1.5rem}.service-copy ul{grid-template-columns:1fr}.service-copy li:nth-last-child(-n+2){border-bottom:1px solid rgba(24,34,38,.08)}.service-copy li:last-child{border-bottom:0}.visual-service{display:flex;flex-direction:column}.service-media{height:430px;width:calc(100% + 2.5rem);margin-left:-1.25rem}.process-line{gap:.35rem}.process-line span{font-size:.62rem}.interior-grid{grid-template-columns:1fr}.interior-card{padding:2.2rem 1.25rem}.additional-grid{grid-template-columns:1fr}.additional-grid article{min-height:0}.project-grid{grid-template-columns:1fr;gap:2.8rem}.about-image{height:480px;width:calc(100% + 2.5rem);margin-left:-1.25rem}.area-list{grid-template-columns:1fr}.area-list span{border-bottom:1px solid var(--line)}.area-list span:last-child{border-bottom:0}.contact{gap:4rem}.contact form .button{width:100%}footer{grid-template-columns:1fr;align-items:start}.mobile-whatsapp{display:flex;position:fixed;z-index:50;left:0;right:0;bottom:0;height:66px;background:#1f9b54;color:#fff;align-items:center;justify-content:space-between;padding:0 1.25rem;font-weight:600}.mobile-whatsapp b{font-size:1.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Revised paired service composition */
.hero-image{object-position:center center}.services{padding-top:clamp(4rem,7vw,7rem)}.service-pair{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#b8b6af;margin-bottom:1px}.service-card{display:flex;flex-direction:column;background:var(--paper);min-width:0}.service-card.dark-card{background:var(--navy);color:var(--white)}.service-card-media{height:310px;overflow:hidden}.service-card-media img{object-position:center 48%}.service-card-media-interior img{object-position:center 52%}.service-card-media-deep img{object-position:70% 45%;transform:scale(1.08)}.service-card-body{display:flex;flex:1;flex-direction:column;padding:clamp(2rem,4vw,4rem)}.service-card-body h3{margin:1.35rem 0 1.7rem}.service-card-body p{color:#4f5b5d}.service-card-body ul{list-style:none;padding:1.2rem 0;margin:2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr;column-gap:2rem}.service-card-body li{padding:.62rem 0;border-bottom:1px solid rgba(24,34,38,.08)}.service-card-body li:last-child{border-bottom:0}.service-card-body .button{align-self:flex-start;margin-top:auto}.service-card.dark-card p{color:#a9b1b1}.service-card.dark-card ul{border-color:rgba(255,255,255,.2)}.service-card.dark-card li{border-color:rgba(255,255,255,.1)}
.additional-grid article{padding:0;display:flex;flex-direction:column}.additional-grid article>img{height:175px;object-fit:cover}.additional-grid article:nth-child(2)>img,.additional-grid article:nth-child(6)>img{object-position:center 48%}.additional-grid article:nth-child(3)>img,.additional-grid article:nth-child(5)>img{object-position:center 62%}.additional-grid article:nth-child(4)>img{object-position:65% 45%}.additional-grid article>div{padding:1.8rem 2rem 2.2rem}.additional-grid article>div>span{display:block;color:#7f8989;font-size:.72rem;letter-spacing:.15em;margin-bottom:2rem}.project-frame:after{background:linear-gradient(0deg,rgba(7,27,36,.45),transparent 55%)}.project-frame img{transition:transform .5s ease}.project-grid article:hover .project-frame img{transform:scale(1.025)}
@media(max-width:960px){.service-pair{grid-template-columns:1fr}.service-card-media{height:360px}}
@media(max-width:640px){.services{padding-left:0;padding-right:0}.service-pair{grid-template-columns:1fr}.service-card-media{height:280px}.service-card-body{padding:2.4rem 1.25rem}.service-card-body .button{width:100%;line-height:1.3;text-align:center}.additional-grid article>img{height:220px}}

/* Four-column main services and image-free specialist grid */
@media(min-width:1200px){.services.section-pad{padding-left:2rem;padding-right:2rem}.service-pair{grid-template-columns:repeat(4,minmax(0,1fr))}.service-card-media{height:225px}.service-card-body{padding:2rem 1.5rem}.service-card-body h3{font-size:1.65rem;line-height:1.12;min-height:3.7rem}.service-card-body p{line-height:1.55}.service-card-body .button{width:100%;padding:.85rem .7rem;line-height:1.25;text-align:center}}
.additional-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:1px;border:0;background:var(--line)}.additional-grid article{border:0;background:var(--paper);min-height:300px}.additional-grid article:nth-child(1){grid-column:span 5}.additional-grid article:nth-child(2){grid-column:span 4;background:#e4dfd5}.additional-grid article:nth-child(3){grid-column:span 3;background:#d8d1c5}.additional-grid article:nth-child(4){grid-column:span 3;background:#d8d1c5}.additional-grid article:nth-child(5){grid-column:span 5;background:#e4dfd5}.additional-grid article:nth-child(6){grid-column:span 4}.additional-grid article>div{height:100%;padding:2.25rem;display:flex;flex-direction:column}.additional-grid article>div>span{font-family:Manrope,sans-serif;font-size:2.8rem;line-height:1;color:rgba(24,34,38,.22);margin:0 0 auto;text-align:right}.additional-grid h3{margin-top:3rem;max-width:22rem}.additional-grid p{margin-bottom:0}.additional-grid small{margin-top:1rem}
@media(max-width:960px){.service-pair{grid-template-columns:1fr 1fr}.additional-grid{grid-template-columns:1fr 1fr}.additional-grid article:nth-child(n){grid-column:auto}}
@media(max-width:640px){.service-pair,.additional-grid{grid-template-columns:1fr}.additional-grid article{min-height:0}.additional-grid article>div{padding:1.8rem}.additional-grid article>div>span{font-size:2rem;margin-bottom:2.5rem}.additional-grid h3{margin-top:0}}

/* Interactive teak before/after */
.comparison{position:relative;isolation:isolate;cursor:ew-resize;touch-action:pan-y;user-select:none}.comparison:after{display:none}.comparison-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;pointer-events:none}.comparison-before{position:absolute;z-index:2;inset:0;overflow:hidden;clip-path:inset(0 calc(100% - var(--position)) 0 0)}.comparison-before .comparison-image{max-width:none}.project-frame .comparison-label{position:absolute;bottom:1rem;z-index:1;padding:.48rem .68rem;background:rgba(7,27,36,.78);color:#fff;font-size:.66rem;line-height:1;letter-spacing:.13em;text-transform:uppercase;pointer-events:none}.comparison-before .comparison-label{z-index:3}.project-frame .comparison-label-before{left:1rem}.project-frame .comparison-label-after{left:auto;right:1rem}.comparison-handle{position:absolute;z-index:4;left:var(--position);top:0;bottom:0;width:2px;background:#fff;transform:translateX(-1px);pointer-events:none;box-shadow:0 0 0 1px rgba(7,27,36,.15)}.comparison-handle i{position:absolute;left:50%;top:50%;width:44px;height:44px;display:grid;place-items:center;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:50%;background:var(--navy);color:#fff;font-style:normal;font-size:1rem;box-shadow:0 4px 18px rgba(0,0,0,.25)}.comparison-range{position:absolute;z-index:5;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}.comparison-range:focus-visible+.comparison-handle{outline:3px solid var(--sand);outline-offset:4px}
.comparison:has(.comparison-range:focus-visible) .comparison-handle i{outline:3px solid var(--sand);outline-offset:4px}
.brand .brand-name{font-size:1.22rem;font-weight:600;letter-spacing:.2em}.brand small{font-size:.54rem;letter-spacing:.16em;white-space:nowrap}.footer-brand .brand-name{font-size:1.4rem}
.site-header .brand-name{font-size:1.7rem;letter-spacing:.22em}.service-card.light-blue-card{background:#dcebf0}
.service-inclusions{margin:0}.service-inclusions summary{display:none}.service-inclusions summary::-webkit-details-marker{display:none}
@media(max-width:640px){.site-header .brand-name{font-size:1.35rem}.service-inclusions{margin:1.7rem 0}.service-inclusions summary{display:flex;align-items:center;justify-content:space-between;padding:.9rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:600;cursor:pointer;list-style:none}.service-inclusions summary:after{content:"+";font-size:1.35rem;font-weight:400;line-height:1}.service-inclusions[open] summary:after{content:"−"}.service-inclusions ul{margin:0;border-top:0}.service-card.dark-card .service-inclusions summary{border-color:rgba(255,255,255,.2)}}
