*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#20352e;background:#f8f6f0;font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.announcement{background:#17372e;color:#e9e1ce;text-align:center;font-size:10px;letter-spacing:2.5px;padding:11px 8px}.announcement span{color:#d1b886;padding:0 18px}.header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);background:#faf9f5;position:relative;z-index:5}.brand,.footer-brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;border:1px solid #bda777;color:#ac8d54;font:26px 'Playfair Display',serif;width:54px;height:54px}.brand strong,.footer-brand strong{display:block;font:24px 'Playfair Display',serif;letter-spacing:4px}.brand small,.footer-brand small{font-size:9px;letter-spacing:2.9px}.header nav{display:flex;align-items:center;gap:32px}.header nav>a{font-size:11px;letter-spacing:.9px;font-weight:600}.nav-cta{background:#17372e;color:white;padding:17px 23px}.nav-cta span,.btn span,.service-link span{margin-left:12px}.menu-toggle{display:none}.hero{height:min(770px,82vh);min-height:610px;position:relative;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=2200&q=85');background-size:cover;background-position:center 54%;transform:scale(1.02)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,34,28,.89) 0%,rgba(11,34,28,.68) 42%,rgba(11,34,28,.06) 100%)}.hero-inner{position:relative;max-width:850px;padding:clamp(110px,14vh,160px) 0 0 max(8vw,35px)}.eyebrow,.overline{display:block;color:#a88755;font-size:11px;letter-spacing:2.6px;font-weight:700}.eyebrow.light{color:#e0c895}.eyebrow .line{display:inline-block;width:32px;border-top:1px solid #d8c292;vertical-align:middle;margin-right:12px}.hero h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}.hero h1{font-size:clamp(51px,6vw,91px);line-height:1.13;letter-spacing:-2px;margin:27px 0}.hero em,h2 em{font-weight:400;color:#e0c794}.hero p{max-width:510px;line-height:1.85;color:#eeeae0;font-size:15px}.hero-actions{display:flex;align-items:center;gap:33px;margin-top:36px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:19px 26px;font-size:11px;font-weight:700;letter-spacing:1.3px;transition:transform .2s,filter .2s}.btn:hover{transform:translateY(-2px);filter:brightness(1.07)}.btn-gold{background:#d5bc88;color:#20352e}.text-link{font-size:11px;letter-spacing:1.4px;font-weight:700;border-bottom:1px solid #eee5d5;padding-bottom:9px}.hero-side{position:absolute;right:4%;bottom:40px;font-size:10px;letter-spacing:2px;writing-mode:vertical-rl}.section{padding:110px max(8vw,35px)}.intro{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:9vw}.intro-side{max-width:460px}.intro-side .overline{margin-bottom:22px}.main-logo{width:100%;max-height:370px;object-fit:contain;display:block;box-shadow:0 10px 45px #25392e0c}.intro-copy h2,.section-heading h2,.contact h2{font-size:clamp(42px,4.3vw,66px);line-height:1.2;letter-spacing:-1px;margin:21px 0}.intro-copy h2 em,.section-heading h2 em,.contact h2 em{color:#9e8357}.intro-copy p,.section-heading p,.contact p{font-size:15px;line-height:2;color:#65736c;max-width:530px}.underline-link{display:inline-block;border-bottom:1px solid #b99c6b;padding-bottom:12px;margin-top:25px;font-size:11px;font-weight:700;letter-spacing:1.5px}.underline-link span{margin-left:16px}.services{background:#eeeee7}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-heading h2{margin-bottom:0}.section-heading p{max-width:330px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.service-card{background:#fbfaf7}.service-photo{height:310px;background-position:center;background-size:cover;position:relative}.service-photo.residential{background-image:url('https://images.unsplash.com/photo-1600607687920-4e2a09cf159d?auto=format&fit=crop&w=1100&q=85')}.service-photo.commercial{background-image:url('https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=1100&q=85')}.service-photo.detail{background-image:url('https://images.unsplash.com/photo-1600566753086-00f18fb6b3ea?auto=format&fit=crop&w=1100&q=85')}.photo-index{position:absolute;bottom:15px;left:17px;color:white;background:#18372dbd;font-size:10px;letter-spacing:1.4px;padding:10px 12px}.service-info{padding:30px 28px 35px}.service-info h3{font-size:29px;margin:0 0 12px}.service-info p{font-size:13px;line-height:1.85;color:#6a756e;min-height:74px}.service-link{display:inline-block;border-bottom:1px solid #a88c5c;padding:0 0 11px;margin-top:15px;font-size:10px;letter-spacing:1.4px;font-weight:700}.statement{background:#17372e;color:#fff;text-align:center;padding:105px 25px}.statement h2{font-size:clamp(44px,5vw,70px);line-height:1.2;margin:25px 0}.statement p{color:#d8e1d9;font-size:14px;line-height:1.8}.btn-outline{border:1px solid #d7be89;color:#ead9b7;margin-top:24px}.process{background:#faf9f5}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.steps>div{border-top:1px solid #d3c9b7;padding-top:25px}.steps span{font:28px 'Playfair Display',serif;color:#b99d69}.steps h3{font-size:28px;margin:25px 0 10px}.steps p{font-size:13px;color:#68776d;line-height:1.9}.booking{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#193a30;color:white}.booking-left h2{font-size:clamp(48px,5vw,75px);line-height:1.2}.booking-left h2 em{color:#e1c893}.booking-left>p{line-height:1.95;color:#d5e1d8;max-width:440px}.booking-details{display:flex;flex-direction:column;gap:15px;margin-top:36px;color:#e0d2b2;font-size:12px}.booking-panel{background:#f7f3e9;color:#223b31;padding:clamp(30px,4vw,62px)}.booking-panel h3{font-size:39px;line-height:1.25;margin:20px 0}.booking-panel>p{font-size:13px;color:#65736a;line-height:1.85}.btn-dark{background:#17372e;color:white;width:100%;margin:20px 0 4px;text-align:center}.btn[aria-disabled="true"]{opacity:.68;cursor:not-allowed}.fine-print{font-size:11px!important;line-height:1.7!important;color:#718078!important}.booking-rule{border-top:1px solid #d9d1c0;margin:32px 0}.booking-panel h4{font:23px 'Playfair Display',serif;font-weight:400;margin:0}.contact{display:grid;grid-template-columns:1.1fr 1fr;gap:12vw;background:#f8f6f0}.contact p{margin-top:20px}footer{background:#102b23;color:#f2eee4;padding:65px max(8vw,35px) 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-top p{font:italic 21px 'Playfair Display',serif;color:#d4bb8a}.footer-links{display:flex;gap:24px;font-size:12px}.footer-bottom{border-top:1px solid #496158;margin-top:55px;padding-top:22px;display:flex;justify-content:space-between;color:#b5c4b9;font-size:10px;letter-spacing:1px}@media(max-width:1100px){.header nav{gap:15px}.header nav>a{font-size:10px}.section{padding:85px 5vw}.service-photo{height:240px}.service-info{padding:25px 20px}.service-info h3{font-size:25px}}@media(max-width:760px){.announcement{font-size:8px;letter-spacing:1px}.announcement span{padding:0 5px}.header{height:77px}.brand-mark{width:45px;height:45px;font-size:22px}.brand strong{font-size:19px}.brand small{font-size:7px}.menu-toggle{display:block;background:none;border:0;font-size:26px;color:#19372d}.header nav{display:none;position:absolute;left:0;right:0;top:77px;background:#faf9f5;padding:20px 25px 30px;flex-direction:column;align-items:stretch;box-shadow:0 15px 25px #0002}.header nav.open{display:flex}.header nav>a{font-size:12px;padding:10px 0}.header nav .nav-cta{text-align:center;padding:17px}.hero{min-height:650px;height:78vh}.hero-image{background-position:60% center}.hero-shade{background:linear-gradient(90deg,#102b23df,#102b2394)}.hero-inner{padding:120px 26px 0}.hero h1{font-size:51px}.hero p{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:23px}.hero-side{display:none}.section{padding:70px 24px}.intro,.booking,.contact{grid-template-columns:1fr;gap:35px}.intro-side{max-width:320px;margin:auto}.intro-side .overline{display:none}.section-heading{display:block}.service-grid,.steps{grid-template-columns:1fr}.service-photo{height:310px}.service-info p{min-height:0}.statement{padding:80px 20px}.booking-panel{padding:32px 25px}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start}.footer-links{flex-wrap:wrap}.footer-bottom{gap:15px}.footer-top p{margin:0}}