:root{--sand:#f0e8dc;--cream:#faf7f2;--clay:#b5845a;--earth:#6b4226;--bark:#2e1f14;--warm-gray:#8a7968;--red:#c0392b;--gold:#c8973a;--border:rgba(107,66,38,0.12);}
*{margin:0;padding:0;box-sizing:border-box;}html{scroll-behavior:smooth;}
body{background:var(--cream);color:var(--bark);font-family:'DM Sans',sans-serif;}
nav{position:fixed;top:0;width:100%;z-index:200;background:rgba(250,247,242,0.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 60px;height:76px;transition:box-shadow .3s;}
nav.scrolled{box-shadow:0 4px 24px rgba(46,31,20,0.08);}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none;}
.nav-logo-mark{width:38px;height:38px;background:var(--red);transform:rotate(45deg);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.nav-logo-mark::after{content:'';display:block;width:16px;height:16px;background:rgba(255,255,255,0.25);transform:rotate(45deg);}
.nav-logo-text .num{font-family:'Playfair Display',serif;font-size:22px;font-weight:900;color:var(--red);line-height:1;}
.nav-logo-text .name{font-size:9px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--earth);line-height:1;margin-top:2px;}
.nav-links{display:flex;align-items:center;gap:8px;}
.nav-links a{text-decoration:none;font-size:13px;font-weight:500;color:var(--warm-gray);padding:8px 14px;border-radius:4px;transition:color .2s,background .2s;}
.nav-links a:hover,.nav-links a.active{color:var(--earth);background:var(--sand);}
.nav-cta{background:var(--earth)!important;color:var(--cream)!important;padding:10px 22px!important;margin-left:8px;}
.nav-cta:hover{background:var(--bark)!important;}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;}
.hamburger span{display:block;width:24px;height:2px;background:var(--earth);border-radius:2px;}
.mobile-menu{display:none;position:fixed;top:76px;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--border);padding:20px;flex-direction:column;gap:4px;z-index:199;}
.mobile-menu a{text-decoration:none;font-size:15px;font-weight:500;color:var(--earth);padding:12px 16px;border-radius:4px;}
.mobile-menu a:hover{background:var(--sand);}
.mobile-menu.open{display:flex;}
main{padding-top:76px;}
.page-hero{height:380px;position:relative;display:flex;align-items:flex-end;padding:60px;overflow:hidden;}
.page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.page-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(46,31,20,.85) 0%,rgba(46,31,20,.35) 60%,transparent 100%);}
.page-hero-content{position:relative;z-index:2;}
.page-hero h1{font-family:'Playfair Display',serif;font-size:56px;font-weight:900;color:#fff;line-height:1;}
.page-hero p{font-size:16px;color:rgba(255,255,255,.75);margin-top:12px;max-width:520px;}
.section-eyebrow{font-size:10px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--clay);margin-bottom:20px;}
.cta-banner{background:var(--earth);margin:0 60px 80px;border-radius:4px;padding:72px 80px;display:flex;justify-content:space-between;align-items:center;}
.cta-banner h2{font-family:'Playfair Display',serif;font-size:44px;color:var(--sand);max-width:420px;line-height:1.15;}
.cta-banner h2 em{color:var(--gold);font-style:italic;}
.cta-right{text-align:right;}
.cta-phone{font-family:'Playfair Display',serif;font-size:40px;color:var(--sand);margin-bottom:8px;}
.cta-sub{font-size:11px;letter-spacing:2px;color:rgba(240,232,220,.6);text-transform:uppercase;margin-bottom:24px;}
.btn-primary{background:var(--clay);color:#fff;padding:18px 40px;text-decoration:none;font-size:14px;font-weight:600;border-radius:3px;transition:background .2s;display:inline-block;}
.btn-primary:hover{background:var(--earth);}
.btn-light{background:var(--sand);color:var(--earth);padding:16px 36px;border-radius:3px;text-decoration:none;font-size:14px;font-weight:600;display:inline-block;}
footer{background:var(--bark);color:rgba(240,232,220,.65);padding:40px 60px;display:flex;justify-content:space-between;align-items:center;font-size:12px;flex-wrap:wrap;gap:16px;}
footer .f-logo{font-family:'Playfair Display',serif;font-size:18px;color:var(--sand);}
footer .f-logo span{color:var(--red);}
.trust-strip{background:var(--earth);padding:18px 60px;display:flex;justify-content:center;gap:60px;flex-wrap:wrap;}
.trust-item{display:flex;align-items:center;gap:10px;}
.trust-item svg{color:var(--gold);flex-shrink:0;}
.trust-item span{font-size:12px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:rgba(250,247,242,.85);}
.services-strip{background:var(--sand);padding:20px 60px;display:flex;overflow-x:auto;border-bottom:1px solid var(--border);}
.svc-pill{font-size:12px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--earth);padding:0 24px;border-right:1px solid var(--border);white-space:nowrap;}
.svc-pill:last-child{border-right:none;}
@media(max-width:960px){nav{padding:0 24px;}.nav-links{display:none;}.hamburger{display:flex;}.cta-banner{margin:0 24px 60px;padding:48px 32px;flex-direction:column;gap:28px;text-align:center;}.cta-right{text-align:center;}.page-hero{padding:40px 24px;height:280px;}.page-hero h1{font-size:40px;}footer{padding:32px 24px;flex-direction:column;text-align:center;}.trust-strip{padding:18px 24px;gap:24px;}}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}