:root{--ink:#0e0d0c;--coal:#181614;--stone:#e7dfd3;--paper:#f7f3ed;--copper:#b9743e;--muted:#756f68;--line:#d6cdc1}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.shell{width:min(1180px,calc(100% - 42px));margin:auto}
.serif{font-family:Georgia,'Times New Roman',serif}
.eyebrow{font-size:.76rem;text-transform:uppercase;letter-spacing:.22em;font-weight:700;color:var(--copper)}
.top{background:#080706;color:#d8cfc6;text-align:center;padding:8px 16px;font-size:.74rem;letter-spacing:.12em}
.nav{height:82px;background:rgba(247,243,237,.96);border-bottom:1px solid var(--line);position:relative;z-index:5}
.nav .shell{height:100%;display:flex;align-items:center;justify-content:space-between}
.brand{font-weight:900;letter-spacing:.03em;font-size:1.28rem}
.brand b{color:var(--copper)}
.links{display:flex;gap:28px;align-items:center;font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}
.menu{display:none;align-items:center;gap:11px;min-width:108px;height:46px;padding:0 17px;border:1px solid #2f2a25;border-radius:999px;background:var(--ink);color:#fff;box-shadow:0 8px 22px rgba(14,13,12,.16);font:800 .7rem/1 Arial,Helvetica,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.menu:hover{background:#29241f;border-color:var(--copper);box-shadow:0 10px 26px rgba(14,13,12,.22)}
.menu:active{transform:scale(.97)}
.menu:focus-visible{outline:3px solid rgba(185,116,62,.34);outline-offset:3px}
.menu-icon{position:relative;width:20px;height:14px;display:block}
.menu-icon i{position:absolute;left:0;width:20px;height:1.5px;border-radius:2px;background:var(--copper);transition:top .24s ease,transform .24s ease}
.menu-icon i:first-child{top:3px}
.menu-icon i:last-child{top:10px}
.menu[aria-expanded="true"]{background:var(--copper);border-color:var(--copper)}
.menu[aria-expanded="true"] .menu-icon i{background:white}
.menu[aria-expanded="true"] .menu-icon i:first-child{top:7px;transform:rotate(45deg)}
.menu[aria-expanded="true"] .menu-icon i:last-child{top:7px;transform:rotate(-45deg)}
.btn{display:inline-flex;justify-content:center;align-items:center;padding:15px 22px;background:var(--copper);border:1px solid var(--copper);color:white;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:800}
.btn:hover{background:#955427}
.btn.line{background:transparent;color:inherit;border-color:currentColor}
.hero{min-height:700px;background:linear-gradient(90deg,rgba(5,5,4,.9) 0%,rgba(5,5,4,.7) 37%,rgba(5,5,4,.12) 68%),url('hero.png') center/cover;color:white;display:grid;align-items:center}
.hero-copy{max-width:650px;padding:90px 0}
.hero h1{font-size:clamp(4.5rem,9vw,7.7rem);line-height:.82;font-weight:400;letter-spacing:-.06em;margin:25px 0 30px}
.hero p{color:#d7d0ca;font-size:1.12rem;max-width:500px}
.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:35px}
.section{padding:95px 0}
.heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:52px}
.heading h2,.page-head h1{font:400 clamp(2.8rem,5.5vw,5rem)/.98 Georgia,serif;letter-spacing:-.04em;margin:12px 0}
.heading p,.page-head p{color:var(--muted);font-size:1.07rem}
.services{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.service{padding:30px;min-height:260px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}
.service span{font:3.5rem Georgia,serif;color:#d3c4b5}
.service h3{font:400 1.6rem Georgia,serif;margin:25px 0 8px}
.service p{font-size:.92rem;color:var(--muted)}
.feature{background:var(--coal);color:white}
.feature-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center}
.feature-image{min-height:480px;background:url('hero.png') 72% center/cover}
.feature-copy h2{font:400 3.8rem/1 Georgia,serif;margin:15px 0 24px}
.feature-copy p{color:#bbb2aa}
.stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #ffffff24;margin-top:35px}
.stats div{padding:24px;border-right:1px solid #ffffff24}
.stats div:last-child{border:0}
.stats b{display:block;color:var(--copper);font:2rem Georgia,serif}
.cta{background:var(--copper);color:white;text-align:center;padding:90px 20px}
.cta h2{font:400 clamp(2.8rem,6vw,5.4rem)/1 Georgia,serif;margin:8px 0 20px}
.cta .btn{background:var(--ink);border-color:var(--ink)}
.page-head{background:var(--stone);padding:90px 0}
.page-head p{max-width:680px}
.service-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.service-card{border:1px solid var(--line);padding:35px;min-height:220px}
.service-card h2{font:400 2rem Georgia,serif}
.service-card p{color:var(--muted)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.split h2{font:400 3.5rem/1 Georgia,serif;margin:0 0 24px}
.split p{color:var(--muted)}
.contact-box{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.panel{padding:38px;background:var(--stone)}
.panel h2{font:400 2.5rem Georgia,serif}
.panel ul{list-style:none;padding:0}
.panel li{padding:12px 0;border-bottom:1px solid #c6baac}
.panel.dark{background:var(--coal);color:white}
.panel.dark p{color:#bcb2aa}
footer{background:#080706;color:#c4bbb4;padding:64px 0 28px}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:45px}
.foot h3{font:400 1.7rem Georgia,serif;color:white}
.foot a{display:block;margin:9px 0}
.legal{border-top:1px solid #ffffff18;margin-top:42px;padding-top:22px;font-size:.78rem;color:#80766f}

@media(max-width:800px){.nav{height:72px}
.links{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}
.links.open{display:flex}
.menu{display:inline-flex}
.hero{min-height:680px;background-position:65% center}
.hero h1{font-size:4rem}
.section{padding:70px 0}
.heading,.feature-grid,.split,.contact-box{grid-template-columns:1fr;gap:40px}
.services{grid-template-columns:1fr 1fr}
.feature-image{min-height:360px}
.stats{grid-template-columns:1fr}
.stats div{border-right:0;border-bottom:1px solid #ffffff24}
.foot{grid-template-columns:1fr;gap:25px}
.service-list{grid-template-columns:1fr}
}
@media(max-width:480px){.shell{width:min(100% - 30px,1180px)}
.services{grid-template-columns:1fr}
.actions .btn{width:100%}
.hero h1{font-size:3.5rem}
}
