:root{
  --black:#050505;--ink:#0c1510;--green:#0d341c;--green-2:#123f25;
  --gold:#c99a38;--gold-light:#e1bb61;--silver:#d8d8d8;--white:#fff;
  --cream:#f6f3eb;--muted:#6d716e;--line:#ded8ca;--max:1120px;--radius:22px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:#171918;background:var(--cream);line-height:1.6}
img{max-width:100%;display:block}a{color:inherit}.container{width:min(92%,var(--max));margin:auto}.narrow{width:min(92%,800px)}
.site-header{position:sticky;top:0;z-index:20;background:rgba(5,5,5,.94);border-bottom:1px solid rgba(201,154,56,.35);backdrop-filter:blur(10px)}
.nav-wrap{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;font-family:"Playfair Display",serif;font-size:1.3rem;font-weight:700}.brand-icon{width:36px;height:36px;object-fit:cover;object-position:center}.main-nav{display:flex;gap:22px;align-items:center}.main-nav a{color:#eee;text-decoration:none;font-weight:600;font-size:.93rem}.nav-cta{border:1px solid var(--gold);padding:9px 16px;border-radius:999px}
.hero{background:linear-gradient(120deg,#020202 0%,#07160d 55%,#10381f 100%);color:#fff;padding:84px 0}.hero-grid{display:grid;grid-template-columns:1.15fr .65fr;gap:64px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.77rem;font-weight:700;color:#a77a22;margin:0 0 12px}.hero .eyebrow,.light{color:var(--gold-light)}
h1,h2{font-family:"Playfair Display",serif;line-height:1.07;margin:0 0 20px}h1{font-size:clamp(2.65rem,5.5vw,4.8rem)}h2{font-size:clamp(2.15rem,5vw,3.6rem)}h3{font-size:1.3rem;margin:8px 0}.hero-text{font-size:1.1rem;color:#d6d8d6;max-width:680px;margin-bottom:28px}.hero-actions,.contact-actions{display:flex;gap:13px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;text-decoration:none;font-weight:700}.btn-gold{background:linear-gradient(135deg,#a87822,#e1b84e);color:#080808}.btn-outline{border:1px solid #7f8b83;color:#fff}.credentials{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:28px;color:#b9bfbb;font-size:.84rem}.portrait-wrap{background:#0a0d0b;border:1px solid rgba(201,154,56,.5);padding:12px;border-radius:var(--radius);box-shadow:0 25px 70px rgba(0,0,0,.35);overflow:hidden}.hero-photo{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top;border-radius:14px;transform:scale(.92);transform-origin:center}.portrait-caption{padding:15px 5px 4px;display:grid}.portrait-caption strong{font-size:1.1rem}.portrait-caption span{font-size:.86rem;color:#bfc3c0}
.brand-strip{background:#050505;padding:28px 0}.brand-strip-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.brand-panel{min-height:180px;border:1px solid rgba(255,255,255,.08);display:grid;place-items:center;align-content:center;gap:14px;padding:22px;border-radius:16px;overflow:hidden;color:#fff;text-decoration:none}.brand-panel img{max-height:135px;width:auto}.brand-panel span{color:var(--gold-light);font-size:.9rem;font-weight:700}.black-panel{background:#000}.green-panel{background:#0d341c}
.section{padding:88px 0}.section-intro{color:var(--muted);max-width:670px;margin-bottom:34px}.video-section{background:#eee9dd}.video-intro{max-width:800px;margin:0 auto}.video-intro h2{font-size:clamp(1.6rem,3.5vw,2.4rem)}.video-shell{position:relative;max-width:560px;margin:0 auto;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:#050505;box-shadow:0 20px 55px rgba(0,0,0,.15)}.video-shell video{position:absolute;top:50%;left:50%;width:320%;height:320%;transform:translate(-50%,-50%);background:#000;cursor:pointer}.video-play-toggle{position:absolute;inset:0;margin:auto;width:72px;height:72px;border:0;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#050505;font-size:1.3rem;cursor:pointer}.video-play-toggle.is-hidden{display:none}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:42px}.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:0 12px 35px rgba(20,20,20,.05)}.service-number{font-family:"Playfair Display",serif;color:var(--gold);font-size:1.55rem}.service-card p{color:var(--muted)}.service-card a{color:var(--green-2);font-weight:700;text-decoration:none}
.about-section{background:var(--green);color:#fff}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.about-copy p{color:#e0e5e1}.about-copy .disclaimer{font-size:.82rem;color:#aeb9b1;border-top:1px solid rgba(255,255,255,.15);padding-top:18px;margin-top:24px}
.contact-section{background:#070907;color:#fff;text-align:center}.contact-section .section-intro{color:#b9bdb9;margin-inline:auto}.contact-actions{justify-content:center}.btn-outline-light{border:1px solid #707570;color:#fff}.socials{margin-top:30px;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px 18px;font-size:.9rem;color:#c8cbc8}.social-logo-link{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(225,187,97,.65);border-radius:50%;background:#050505;transition:transform .2s ease,border-color .2s ease}.social-logo-link:hover{transform:translateY(-2px);border-color:var(--gold-light)}.social-logo-link img{width:26px;height:26px;object-fit:cover}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.schedule-section{background:#eee9dd}.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}.schedule-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:flex;flex-direction:column;align-items:flex-start}.schedule-card h3{margin-top:0}.schedule-card p{color:var(--muted);flex:1}.schedule-card .btn{margin-top:12px}
.site-footer{background:#020302;color:#c8cbc8;border-top:1px solid #2c322e;padding:28px 0}.footer-wrap{display:flex;justify-content:space-between;gap:25px;align-items:center}.footer-wrap div{display:grid}.footer-wrap span,.footer-wrap p,.footer-wrap a{font-size:.82rem;color:#909690;margin:0;text-decoration:none}
.menu-toggle{display:none;background:transparent;color:#fff;border:1px solid rgba(225,187,97,.7);border-radius:999px;padding:8px 14px;font:inherit;font-weight:700}.listing-filters{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0 12px}.listing-filters label,.intake-form label{display:grid;gap:6px;font-weight:700;font-size:.9rem}.listing-filters input,.listing-filters select,.intake-form input,.intake-form select,.intake-form textarea{width:100%;border:1px solid #cfc8ba;background:#fff;border-radius:8px;padding:13px;font:inherit;color:inherit}.listing-count{font-size:.9rem;color:var(--muted)}.listing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.listing-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 12px 35px rgba(20,20,20,.06)}.listing-card>img{width:100%;height:190px;object-fit:cover}.listing-body{padding:20px}.listing-body h3{font-family:"Playfair Display",serif;font-size:1.8rem}.listing-body p{color:var(--muted);margin:4px 0 12px}.listing-address{font-weight:700!important;color:var(--ink)!important}.listing-meta{display:flex;justify-content:space-between;align-items:center;color:var(--green-2);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.favorite-button{border:1px solid var(--line);background:var(--cream);border-radius:999px;padding:6px 11px;color:var(--green-2);font:inherit;font-size:.75rem}.favorite-button.is-saved{background:var(--gold);border-color:var(--gold);color:#050505}.text-link{color:var(--green-2);font-weight:700;text-decoration:none}.form-section{background:#f0ece3}.intake-form{display:grid;gap:18px;background:#fff;border:1px solid var(--line);padding:28px;border-radius:16px}.intake-form .btn{justify-self:start;border:0;cursor:pointer}.property-image{width:100%;max-height:460px;object-fit:cover;border-radius:16px;margin-bottom:28px}.property-copy{font-size:1.1rem;color:var(--muted)}.btn-outline-dark{border:1px solid var(--green-2);color:var(--green-2)}.empty-state{grid-column:1/-1;padding:30px;background:#fff;border:1px solid var(--line);border-radius:12px}.error-page{min-height:100vh;display:grid;place-content:center;justify-items:start;gap:10px;padding:8%;background:linear-gradient(130deg,#050505,#123f25);color:#fff}.error-page h1{max-width:680px}.error-page p:not(.eyebrow){max-width:520px;color:#d7ded9}
.business-hero-grid{display:grid;grid-template-columns:1.15fr .65fr;gap:64px;align-items:center}.business-hero{padding:84px 0}.business-logo-wrap{display:grid;place-items:center;min-height:320px}.business-logo{width:100%;max-height:280px;object-fit:contain;border-radius:12px}.realty-logo-wrap{background:#123f25}.realty-logo{background:#fff;padding:22px}.split-callout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split-callout .section-intro{margin-bottom:24px}
@media(max-width:820px){.hero-grid,.services-grid,.about-grid,.brand-strip-grid{grid-template-columns:1fr}.portrait-wrap{max-width:500px}.about-grid{gap:24px}.brand-panel{min-height:150px}}
@media(max-width:820px){.business-hero-grid,.split-callout{grid-template-columns:1fr;gap:32px}.business-logo-wrap{max-width:500px}}
@media(max-width:820px){.schedule-grid{grid-template-columns:1fr}}
@media(max-width:620px){.main-nav a:not(.nav-cta){display:none}.hero{padding:58px 0}.section{padding:64px 0}.hero-actions,.contact-actions{flex-direction:column}.btn{width:100%}.footer-wrap{flex-direction:column;align-items:flex-start}.brand-panel img{max-height:105px}}
@media(max-width:620px){.nav-wrap{position:relative}.menu-toggle{display:block}.main-nav{position:absolute;top:74px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:8px 4%;background:#050505;border-bottom:1px solid rgba(201,154,56,.35)}.main-nav.is-open{display:flex}.main-nav a,.main-nav a:not(.nav-cta){display:block;padding:12px 0}.listing-filters,.listing-grid{grid-template-columns:1fr}.intake-form{padding:20px}.intake-form .btn{width:100%}}

/* ---------- Expanded HHN service architecture ---------- */
.services-grid.four-up{
  grid-template-columns:repeat(2,1fr);
}
.network-card{
  margin:24px 0;
  padding:22px;
  border:1px solid rgba(225,187,97,.32);
  border-radius:18px;
  background:rgba(255,255,255,.06);
}
.network-card strong{
  color:var(--gold-light);
  font-size:1.05rem;
}
.network-card p{
  margin-bottom:0;
}
@media(max-width:820px){
  .services-grid.four-up{grid-template-columns:1fr;}
}
