
:root{--dark:#0e3334;--dark2:#092627;--gold:#ad825a;--cream:#f7f4ef;--paper:#fffcf8;--ink:#183333;--muted:#697371;--line:#e5dfd5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{max-width:1210px;margin:auto;padding:0 30px}header{background:#fffdfa;position:sticky;top:0;z-index:20;box-shadow:0 3px 20px #162b2510}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:18px}.logo{width:214px;max-width:100%}.links{display:flex;gap:26px;font-size:13px;font-weight:600}.links a:hover{color:var(--gold)}.pill{display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:14px 25px;border-radius:50px;background:var(--dark);color:#fff;font-size:13px;font-weight:700;transition:.2s}.pill:hover{background:#1e5050;transform:translateY(-2px)}.outline{background:transparent;color:var(--dark);border:1px solid var(--dark)}.outline:hover{color:white}.nav-actions{display:flex;align-items:center;gap:10px}.wa-circle{width:41px;height:41px;display:grid;place-items:center;border-radius:50%;background:var(--dark);color:#fff;font-weight:700}.menu-btn{display:none;border:0;background:none;font-size:28px;color:var(--dark)}.hero{position:relative;min-height:555px;display:flex;align-items:center;overflow:hidden;background:linear-gradient(90deg,#f8f3eb 0%,#f7f3ed 39%,#f5eee7 100%)}.hero-photo{position:absolute;right:0;top:0;height:100%;width:57%;object-fit:cover;object-position:53% center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f8f3eb 0%,#f8f3eb 34%,#f8f3ebdf 44%,#f8f3eb00 67%)}.hero-inner{position:relative;z-index:1;width:100%;padding-top:55px;padding-bottom:55px}.eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-size:11px;font-weight:700;color:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500}h1{font-size:clamp(43px,5.3vw,70px);line-height:1.09;max-width:620px;margin:20px 0}.accent{color:#ad7f58}.lead{max-width:475px;font-size:16px;line-height:1.8}.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.hero-points{display:flex;gap:21px;flex-wrap:wrap;margin-top:55px;max-width:730px}.hero-points span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;display:flex;align-items:center;gap:8px}.hero-points b{font-size:22px;color:var(--gold);font-weight:400}.section{padding:88px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.kicker{color:var(--gold);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700}.section h2{font-size:clamp(31px,3.3vw,45px);margin:12px 0 0}.muted{color:var(--muted);line-height:1.8}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.service-card{background:var(--paper);border:1px solid var(--line);border-radius:9px;overflow:hidden;transition:.2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 12px 35px #1b30231b}.service-card img{width:100%;height:185px;object-fit:cover;display:block}.service-body{padding:25px 21px 28px}.service-card h3{font-size:22px;margin:0 0 9px}.service-card p{font-size:13px;line-height:1.7;color:var(--muted);min-height:65px;margin:0}.arrow{margin-top:13px;color:var(--gold);font-size:22px}.process{background:#fffdf9}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:17px}.step{border-top:1px solid #d8d0c4;padding-top:25px}.step-num{display:grid;place-items:center;width:46px;height:46px;border:1px solid #d6bb9d;border-radius:50%;color:var(--gold);font-size:15px;margin-bottom:22px}.step h3{font-size:20px;margin-bottom:10px}.step p{font-size:13px;line-height:1.7;color:var(--muted)}.about{background:var(--dark);color:white}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.about h2{font-size:clamp(34px,4vw,53px);line-height:1.2}.about .muted{color:#c3d1cd}.benefits{display:grid;grid-template-columns:1fr 1fr;gap:24px}.benefit{border-top:1px solid #6b8781;padding-top:18px}.benefit b{font-size:22px;color:#c9a37a}.benefit h3{font-size:20px;margin:10px 0}.benefit p{font-size:13px;color:#c3d1cd;line-height:1.7}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-grid img{width:100%;height:240px;object-fit:cover;border-radius:8px}.gallery-note{font-size:12px;color:var(--muted);margin-top:16px}.quote{background:#eae4d9}.quote-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.quote h2{font-size:clamp(34px,4vw,53px)}.quote-info{margin-top:30px;display:flex;align-items:center;gap:15px}.quote-info strong{display:block;font-size:19px}.form-card{background:#fffdf9;border-radius:12px;padding:32px;box-shadow:0 15px 50px #1d392016}.form-card h3{font-size:26px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:flex;flex-direction:column;gap:6px}.field.wide{grid-column:1/-1}label{font-size:12px;font-weight:700}input,select,textarea{border:1px solid #d8d5cc;border-radius:5px;background:#fff;padding:13px 12px;width:100%;outline:none;color:var(--ink)}input:focus,select:focus,textarea:focus{border-color:var(--gold)}textarea{min-height:92px;resize:vertical}.submit{border:0;width:100%;margin-top:18px}.disclaimer{font-size:11px;color:var(--muted);margin-top:10px}footer{background:#092627;color:#d5e0dd;padding:55px 0 25px}.foot-grid{display:flex;justify-content:space-between;gap:35px;flex-wrap:wrap}.foot-grid img{background:#fffdf9;padding:8px;border-radius:5px;width:210px}.foot-grid p{max-width:310px;font-size:13px;line-height:1.8}.foot-links{display:flex;gap:18px;flex-wrap:wrap;font-size:13px}.foot-bottom{border-top:1px solid #33504c;margin-top:40px;padding-top:20px;font-size:11px;color:#a6b9b3}.float-wa{position:fixed;bottom:25px;right:25px;z-index:30;background:#1d8b61;color:white;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;box-shadow:0 8px 24px #0003;font-size:25px}.float-wa:hover{background:#13744f}@media(max-width:950px){.links{gap:12px}.links a{font-size:11px}.logo{width:165px}.service-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:35px}.hero-photo{width:65%}}@media(max-width:720px){.container{padding:0 20px}.nav{height:72px}.logo{width:177px}.menu-btn{display:block}.nav-actions>.pill,.nav-actions>.wa-circle{display:none}.links{display:none;position:absolute;top:72px;left:0;right:0;background:#fffdf9;flex-direction:column;padding:20px 25px;box-shadow:0 14px 20px #0001}.links.open{display:flex}.links a{font-size:15px}.hero{min-height:0;display:block;padding-top:255px}.hero-photo{width:100%;height:305px;top:0;object-position:center 34%}.hero:after{background:linear-gradient(0deg,#f8f3eb 0%,#f8f3eb 3%,transparent 28%);height:310px;bottom:auto}.hero-inner{padding-top:35px;padding-bottom:35px}.hero h1{font-size:44px}.hero-points{margin-top:35px;gap:14px}.hero-points span{width:calc(50% - 10px);font-size:9px}.section{padding:60px 0}.section-heading{display:block}.service-grid{grid-template-columns:1fr 1fr;gap:12px}.service-card img{height:130px}.service-body{padding:15px}.service-card h3{font-size:18px}.service-card p{font-size:12px;min-height:100px}.steps{grid-template-columns:1fr 1fr}.about-grid,.quote-wrap{grid-template-columns:1fr;gap:30px}.benefits{gap:16px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid img{height:155px}.form-card{padding:23px}.fields{grid-template-columns:1fr}.field.wide{grid-column:auto}.foot-grid{display:block}.foot-links{margin-top:25px}.float-wa{bottom:15px;right:15px}}@media(max-width:400px){.hero h1{font-size:39px}.service-grid{grid-template-columns:1fr}.service-card img{height:190px}.service-card p{min-height:0}.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:210px}}

.logo{height:auto}.quote h1{font-size:clamp(34px,4vw,53px);margin-top:18px}
.skip-link{position:fixed;top:-100px;left:16px;z-index:99;background:var(--dark);color:white;padding:12px}.skip-link:focus{top:12px}
:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.links{align-items:center;gap:20px}.links>a[aria-current=page]{color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:5px}
.dropdown{position:relative}.dropdown summary{cursor:pointer;list-style:none;font-weight:600}.dropdown summary::-webkit-details-marker{display:none}.dropdown summary:after{content:' ▾';color:var(--gold)}
.dropdown[open] summary:after{content:' ▴'}.dropdown-panel{position:absolute;left:-20px;top:32px;min-width:260px;background:var(--paper);padding:12px;border:1px solid var(--line);border-radius:8px;box-shadow:0 15px 35px #0002;display:flex;flex-direction:column;gap:2px}
.dropdown-panel a{padding:12px;border-radius:4px;font-size:13px}.dropdown-panel a:hover{background:#ece6dd}.page-intro{padding:58px 0 32px;background:var(--paper)}.page-intro h1{max-width:820px;font-size:clamp(38px,4.7vw,60px)}.page-intro p{max-width:700px;line-height:1.8;color:var(--muted)}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:28px}.breadcrumb a{color:var(--gold)}
.service-hero{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;padding:60px 0}.service-hero h1{font-size:clamp(36px,4.4vw,58px)}.service-hero img{width:100%;height:430px;object-fit:cover;border-radius:9px}.service-hero p{line-height:1.8;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.detail-item{border-top:1px solid var(--gold);padding-top:24px}.detail-item h3{font-size:24px}.detail-item p{line-height:1.8;color:var(--muted)}.detail-item .kicker{display:block;margin-bottom:15px}
.banner{background:var(--dark);color:white;padding:52px 0}.banner .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.banner h2{font-size:34px;margin-bottom:10px}.banner p{color:#c3d1cd;margin-bottom:0}.banner .pill{background:#b28a63;flex-shrink:0}.intro-split{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.intro-split img{width:100%;height:340px;object-fit:cover;border-radius:8px}.gallery-grid figure{margin:0}.gallery-grid figcaption{font-size:14px;padding:12px 0 22px}.lightbox-btn{display:block;background:transparent;border:0;width:100%;padding:0;text-align:left;cursor:zoom-in}.lightbox-btn:hover img{filter:brightness(.94)}dialog{border:0;background:var(--paper);border-radius:10px;padding:18px;width:min(900px,94vw);max-height:90vh}dialog::backdrop{background:#092627d9}dialog img{display:block;max-width:100%;max-height:72vh;margin:auto;object-fit:contain}dialog .dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}dialog button{border:1px solid var(--line);border-radius:50%;background:white;width:38px;height:38px;font-size:22px}
.mobile-quote{display:none}.nav-actions .mobile-quote{font-size:11px;padding:10px 12px}.home-services{padding:55px 0}.compact-about{padding:55px 0}.compact-about .about-grid{gap:50px}.compact-about h2{font-size:38px}.process-photo{width:100%;height:320px;object-fit:cover;border-radius:8px;margin-top:34px}.quote-info a{text-decoration:underline;text-underline-offset:4px}footer{padding-bottom:85px}
@media(max-width:1080px){.links{gap:14px}.nav>.logo{width:160px}.nav-actions>.wa-circle{display:none}.nav-actions>.pill{padding:12px 17px}.nav .logo{width:180px}}
@media(max-width:850px){.menu-btn{display:block}.nav-actions>.pill{display:none}.nav-actions>.mobile-quote{display:inline-flex}.links{display:none;position:absolute;top:88px;left:0;right:0;background:var(--paper);flex-direction:column;align-items:stretch;padding:22px 25px;box-shadow:0 14px 20px #0001;max-height:calc(100dvh - 88px);overflow:auto}.links.open{display:flex}.links a{font-size:15px}.dropdown-panel{position:static;box-shadow:none;border:0;border-left:1px solid var(--gold);margin-top:12px;min-width:0}.dropdown summary{font-size:15px}.banner .container{display:block}.banner .pill{margin-top:24px}.service-hero{gap:30px}.service-hero img{height:340px}}
@media(max-width:720px){.links{top:72px;max-height:calc(100dvh - 72px)}.service-hero,.intro-split{grid-template-columns:1fr}.service-hero{padding:35px 0}.service-hero img{height:280px}.detail-grid{grid-template-columns:1fr}.page-intro{padding-top:35px}.intro-split img{height:260px}.banner h2{font-size:30px}.compact-about .about-grid{gap:28px}.process-photo{height:220px}.gallery-grid figcaption{font-size:12px}.float-wa{width:50px;height:50px}.hero h1{font-size:40px}.nav .logo{width:155px}.nav{gap:8px}.nav-actions{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
