
:root{
  --ink:#171a1b; --ink2:#222728; --paper:#f5f2eb; --white:#fff;
  --sand:#d7bf91; --line:#ded9cf; --muted:#686b69; --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.05;margin:0}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(calc(100% - 40px),var(--max));margin:auto}
.topbar{background:#111516;color:#d8d8d5;font-size:13px;padding:9px 0}
.topbar .container{display:flex;justify-content:space-between;gap:20px}
header{position:sticky;top:0;z-index:20;background:rgba(23,26,27,.96);color:#fff;border-bottom:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px)}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.06em}
.logo-mark{width:39px;height:39px;border:2px solid var(--sand);display:grid;place-items:center;transform:rotate(45deg)}
.logo-mark span{transform:rotate(-45deg);font-family:Georgia,serif;color:var(--sand);font-size:20px}
.logo small{display:block;font-size:9px;letter-spacing:.2em;color:#aaa;margin-top:2px}
nav{display:flex;align-items:center;gap:30px;font-size:14px}
nav a{opacity:.9} nav a:hover{color:var(--sand)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 23px;background:var(--sand);color:#171717;font-weight:700;font-size:13px;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--sand);transition:.2s}
.btn:hover{transform:translateY(-2px);filter:brightness(1.04)}
.btn.dark{background:transparent;color:#fff;border-color:#fff}
.btn.light{background:transparent;border-color:var(--ink);color:var(--ink)}
.menu{display:none;background:none;border:0;color:#fff;font-size:28px}
.hero{min-height:680px;color:#fff;position:relative;display:grid;align-items:center;background:
linear-gradient(90deg,rgba(10,12,13,.88) 0%,rgba(10,12,13,.55) 52%,rgba(10,12,13,.18) 100%),
url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=85") center/cover}
.hero-content{max-width:720px;padding:90px 0}
.kicker{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#d6c59f;margin-bottom:20px}
.hero h1{font-size:clamp(52px,7vw,92px);margin-bottom:20px}
.hero p{font-size:22px;max-width:600px;color:#eee;margin:0 0 34px}
.actions{display:flex;gap:14px;flex-wrap:wrap}
.section{padding:95px 0}
.section.alt{background:#fff}
.section.dark{background:var(--ink2);color:#fff}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}
.section-head h2{font-size:clamp(38px,5vw,58px);max-width:650px}
.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#8d7650;margin-bottom:14px}
.grid6{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.card{background:var(--paper);padding:0 0 25px}
.card img{aspect-ratio:1.35;object-fit:cover}
.card .pad{padding:24px 25px}
.card h3{font-size:25px;margin-bottom:9px}.card p{color:var(--muted);font-size:15px;margin:0 0 18px}
.arrow{font-size:22px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.split h2{font-size:clamp(40px,5vw,62px);margin-bottom:22px}
.split p{color:var(--muted);font-size:17px}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:28px 35px}
.check{border-top:1px solid var(--line);padding-top:18px}
.check strong{display:block;font-family:Georgia,serif;font-size:21px;margin-bottom:7px}
.check span{color:var(--muted);font-size:14px}
.project-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:18px}
.project{background:#fff}.project img{width:100%;aspect-ratio:1.4;object-fit:cover}.project:first-child img{aspect-ratio:1.9}
.project .pad{padding:20px}.project h3{font-size:25px}.project p{font-size:14px;color:var(--muted)}
.cta{padding:70px 0;background:linear-gradient(90deg,#121617,#252a2b);color:#fff}
.cta .container{display:flex;justify-content:space-between;align-items:center;gap:40px}
.cta h2{font-size:clamp(38px,5vw,58px)}.cta p{color:#c8cbc8;max-width:620px}
footer{background:#0d1011;color:#fff;padding:45px 0 25px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;padding-bottom:35px;border-bottom:1px solid #303334}
footer h3{font-size:20px;margin-bottom:14px}footer p,footer a{color:#b8bcba;font-size:14px}
.copyright{display:flex;justify-content:space-between;color:#777;font-size:12px;padding-top:22px}
.page-hero{background:#171a1b;color:#fff;padding:100px 0}.page-hero h1{font-size:clamp(50px,7vw,82px);max-width:850px}.page-hero p{max-width:720px;color:#c8cbc8;font-size:18px;margin-top:22px}
.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.service-detail img{aspect-ratio:1/1;object-fit:cover}.service-detail h2{font-size:48px;margin-bottom:20px}.service-detail ul{padding-left:20px;color:var(--muted)}
.form{background:#fff;padding:35px;border:1px solid var(--line)}label{display:block;font-size:13px;font-weight:700;margin:0 0 7px}input,textarea,select{width:100%;padding:14px;border:1px solid #cfcac0;background:#faf9f6;font:inherit;margin-bottom:18px}textarea{min-height:150px;resize:vertical}
.notice{font-size:12px;color:#777;margin-top:10px}
@media(max-width:800px){
 .topbar{display:none}.nav{height:68px}nav{display:none;position:absolute;left:0;right:0;top:68px;background:#171a1b;padding:18px 20px;flex-direction:column;align-items:flex-start}.nav.open nav{display:flex}.menu{display:block}.nav>.btn{display:none}
 .hero{min-height:600px}.hero-content{padding:70px 0}.hero h1{font-size:52px}.hero p{font-size:18px}
 .grid6{grid-template-columns:1fr 1fr}.split,.service-detail{grid-template-columns:1fr;gap:35px}.project-grid{grid-template-columns:1fr}.cta .container{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr}.copyright{flex-direction:column;gap:8px}
}
@media(max-width:520px){.container{width:min(calc(100% - 28px),var(--max))}.grid6{grid-template-columns:1fr}.checks{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.section{padding:65px 0}.hero h1{font-size:45px}}
