:root{
  --ink:#070707;
  --panel:#0e0e0e;
  --line:rgba(193,150,84,.28);
  --gold:#c19654;
  --gold-bright:#d4ae6a;
  --ivory:#e6dccf;
  --mute:#b8aea0;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{background:var(--ink);color:var(--ivory);font-family:Outfit,system-ui,sans-serif;font-weight:300;letter-spacing:.02em}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.wrap{width:min(1180px,92vw);margin:0 auto}

nav{
  position:fixed;inset:0 0 auto 0;z-index:20;
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 4vw;
  background:linear-gradient(to bottom,rgba(7,7,7,.92),rgba(7,7,7,0));
  backdrop-filter:blur(10px);
}
nav .mark{height:44px;width:auto}
nav ul{display:flex;gap:32px;list-style:none;font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--mute)}
nav ul a:hover{color:var(--gold-bright)}
.nav-cta{
  border:1px solid var(--line);padding:10px 18px;
  font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-bright)
}
.nav-cta:hover{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.menu-btn{
  display:none;background:none;border:0;color:var(--ivory);letter-spacing:.2em;
  text-transform:uppercase;font-size:11px;cursor:pointer
}

.hero{
  min-height:100vh;position:relative;display:flex;align-items:flex-end;
  background:
    linear-gradient(to top, rgba(7,7,7,.94) 0%, rgba(7,7,7,.48) 40%, rgba(7,7,7,.30) 100%),
    url("assets/tahoe-hero.jpg") center 58%/cover no-repeat;
  padding:140px 0 90px;
}
.hero-inner{width:min(1180px,92vw);margin:0 auto}
.eyebrow{
  font-size:11px;letter-spacing:.42em;text-transform:uppercase;color:var(--gold);
  margin-bottom:22px;
}
h1{
  font-family:"Cormorant Garamond",serif;font-weight:500;
  font-size:clamp(52px,8vw,96px);line-height:.92;letter-spacing:-.01em;
}
h1 em{font-style:italic;color:var(--gold-bright)}
.lead{max-width:440px;margin:28px 0 40px;color:var(--mute);font-size:18px;line-height:1.6}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:14px 22px;font-size:11px;letter-spacing:.26em;text-transform:uppercase;
  border:1px solid var(--line);cursor:pointer
}
.btn-gold{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.btn-gold:hover{background:var(--gold-bright)}
.btn-ghost{color:var(--gold-bright)}
.btn-ghost:hover{border-color:var(--gold-bright);color:var(--ivory)}

section{padding:110px 0}
.kicker{font-size:11px;letter-spacing:.36em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
h2{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:clamp(36px,5vw,58px);line-height:1.05}
.rule{width:48px;height:1px;background:var(--gold);margin:22px 0}
.sub{color:var(--mute);max-width:460px;line-height:1.7}

.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.panel{
  background:var(--panel);border:1px solid var(--line);min-height:340px;
  display:flex;align-items:center;justify-content:center;padding:48px
}
.panel img{width:min(420px,100%);height:auto}

.services{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:48px}
.svc{border-top:1px solid var(--line);padding-top:22px}
.svc span{display:block;color:var(--gold);font-size:11px;letter-spacing:.24em;margin-bottom:14px}
.svc h3{font-family:"Cormorant Garamond",serif;font-size:28px;font-weight:500;margin-bottom:12px}
.svc p{color:var(--mute);line-height:1.65;font-size:15px}

.quote{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
form{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px;max-width:720px}
form input, form select, form textarea{
  background:transparent;border:0;border-bottom:1px solid var(--line);
  color:var(--ivory);padding:14px 0;outline:none
}
form textarea{grid-column:1/-1;min-height:90px;resize:vertical}
form button{grid-column:1/-1;justify-self:start;margin-top:8px}
form .note{grid-column:1/-1;color:var(--mute);font-size:13px}

.cities{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:36px;color:var(--mute);font-size:13px;letter-spacing:.16em;text-transform:uppercase}
.cities i{font-style:normal;color:var(--gold)}

footer{border-top:1px solid var(--line);padding:48px 0 64px}
.foot{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.foot small{color:var(--mute);letter-spacing:.18em;text-transform:uppercase;font-size:11px}
.phone{font-family:"Cormorant Garamond",serif;font-size:32px;color:var(--gold-bright)}
.phone a:hover{color:var(--ivory)}

@media(max-width:880px){
  nav ul{display:none}
  nav ul.open{
    display:flex;flex-direction:column;position:absolute;top:72px;left:0;right:0;
    background:#070707;padding:24px 8vw 32px;gap:18px;border-bottom:1px solid var(--line)
  }
  .menu-btn{display:block}
  .split,.services,form{grid-template-columns:1fr}
  .panel{min-height:220px}
  section{padding:80px 0}
  .hero{min-height:92vh}
}
