:root { --ink:#1a1c1b; --gold:#a67f2d; --green:#357d36; --paper:#fafbf9; --muted:#58615a; --line:#d6ded5; }
html { scroll-padding-top: 112px; }
.site-header { height:96px; padding:0 4.5vw 0 calc(4.5vw + 380px); background:#171717; border-bottom:3px solid #b9974a; overflow:visible; align-items:center; }
.brand { position:absolute; left:4.5vw; top:-10px; z-index:4; display:block; width:350px; height:178px; line-height:0; background:url("assets/logo.png") center/contain no-repeat; }
.brand img { display:block; width:350px; height:178px; object-fit:contain; object-position:center; opacity:0; }
.site-nav { position:relative; z-index:5; margin-left:auto; }
.site-nav a { color:#f7f6ef; }
.site-nav a:hover { color:#d7b65f; }
.nav-cta { background:var(--green)!important; color:white!important; }
.menu-toggle { color:#d7b65f; position:relative; z-index:5; }
.hero { min-height:816px; padding-top:210px; }
.hero-overlay { background:linear-gradient(90deg,rgba(12,27,17,.90),rgba(13,29,19,.65) 52%,rgba(10,24,14,.25)); }
.hero h1 em { color:#d9b663; }
.hero .kicker { color:#e2c982; }
.button-solid { background:var(--green); color:white; }
.button-solid:hover { background:#28622b; }
.button-dark { background:#203c29; }
.eyebrow,.section-index,.location { color:#3d7438; }
.homes { background:#edf2ec; }
.dashboard-preview { background:#edf2ec; border-top:3px solid #b9974a; }
.login-heading { display:flex; align-items:center; gap:10px; color:#52656a; font-size:13px; letter-spacing:.08em; text-transform:uppercase; border-bottom:1px solid #d9ded9; padding-bottom:15px; }
.login-heading .status-dot { flex:none; }
.dashboard-preview h3 { font-size:28px; font-weight:400; margin:28px 0 8px; }
.login-copy { color:#697678; margin:0 0 22px; max-width:430px; }
.tenant-login { display:grid; gap:14px; max-width:470px; }
.tenant-login label { color:#253b43; }
.tenant-login input[type="email"], .tenant-login input[type="password"] { margin-top:5px; background:#fff; border-color:#cdd5d1; }
.login-row { display:flex; justify-content:space-between; align-items:center; gap:12px; font-size:12px; }
.login-row a, .tenant-login small a { color:#8b640e; font-weight:700; }
.remember { display:flex; grid-template-columns:auto 1fr; align-items:center; gap:7px; font-size:12px; font-weight:400; letter-spacing:0!important; }
.remember input { width:auto; margin:0; }
.tenant-login small { color:#697678; }
.status-dot { background:var(--green); }
.request-item { border-left-color:var(--green); }
.contact { background:#173421; }
.contact .section-index,.contact .eyebrow { color:#e2c982; }
.contact .form-status { color:#e2c982!important; }
footer { background:#1a1c1b; border-top:1px solid #b9974a; }
footer img { width:300px; max-width:100%; height:auto; filter:none; }
input[type=range],input[type=checkbox] { accent-color:var(--green); }
.hero-controls button:hover,.hero-controls button:focus-visible { background:var(--green); }
a:focus-visible,button:focus-visible { outline:3px solid #d7b65f; outline-offset:4px; }
@media (max-width:1150px) {
  .site-header { padding-left:calc(3vw + 315px); padding-right:3vw; }
  .brand { left:3vw; width:300px; height:153px; top:-8px; }
  .brand img { width:300px; height:153px; }
  .site-nav { gap:16px; }
  .site-nav a { font-size:13px; }
}
@media (max-width:800px) {
  html { scroll-padding-top:86px; }
  .site-header { height:76px; padding:0 18px; }
  .brand { left:12px; top:-7px; width:225px; height:112px; }
  .brand img { width:225px; height:112px; }
  .menu-toggle { display:block; margin-left:auto; }
  .site-nav { top:76px; background:#171717; border-bottom:1px solid #b9974a; }
  .hero { min-height:742px; padding-top:150px; }
}
