/* Header */
.site-header{position:sticky;top:0;z-index:1040;background:rgba(255,255,255,.98);border-bottom:1px solid transparent;transition:box-shadow .2s ease,border-color .2s ease}
.site-header.scrolling{border-color:rgba(65,79,53,.1);box-shadow:0 8px 24px rgba(35,42,31,.05)}
.site-header__inner{min-height:112px;display:flex;align-items:center;gap:2rem}
.site-header__brand{flex:0 0 auto}
.site-header__brand a{display:inline-flex;text-decoration:none}
.site-header__logo,.custom-logo{width:auto;max-height:64px}
.site-header__wordmark{font-family:'Spectral',serif;font-size:1.5rem;color:var(--deep-olive)}
.site-header__nav{margin-left:auto}
.site-header__nav .navbar-collapse{align-items:center}
.site-header__nav .navbar-nav{gap:clamp(.5rem,1vw,1.4rem);align-items:center}
.site-header__nav .nav-link{padding:.75rem .25rem;text-transform:uppercase;letter-spacing:.015em;color:var(--deep-olive)}
.site-header__nav .nav-link.active,.site-header__nav .nav-link:hover{color:var(--brass)}
.site-header__utilities{display:flex;align-items:center;gap:1.5rem;margin-left:1.5rem}
.site-header__phone{display:inline-flex;align-items:center;gap:.55rem;color:var(--deep-olive);text-decoration:none;font-size:.9rem;white-space:nowrap}
.site-header__phone svg{width:18px;height:18px}
.site-header__toggle{width:44px;height:44px;padding:10px;border:0;margin-left:auto}
.site-header__toggle span{display:block;height:1px;background:var(--deep-olive);margin:6px 0;transition:transform .2s ease,opacity .2s ease}

/* Shared editorial details */
.eyebrow::after,.text-eyebrow::after{content:'';display:inline-block;width:44px;height:1px;background:var(--brass);margin-left:.8rem;vertical-align:middle}
.main-title{letter-spacing:-.025em}

/* Footer */
.site-footer{background:#fff;border-top:1px solid #ece8e0;color:var(--slate)}
.site-footer__main{min-height:126px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:2.25rem;padding:2rem 0}
.site-footer__brand a{display:inline-flex;text-decoration:none}
.site-footer__logo{width:auto;max-height:58px}
.site-footer__wordmark{font-family:'Spectral',serif;font-size:1.35rem;color:var(--deep-olive)}
.site-footer__contact{display:flex;align-items:center;gap:2rem}
.site-footer__contact-item{display:inline-flex;align-items:flex-start;gap:.6rem;color:var(--slate);text-decoration:none;font-size:.75rem;line-height:1.45}
.site-footer__contact-item svg{width:16px;height:16px;color:var(--deep-olive);flex:0 0 auto;margin-top:1px}
.site-footer__menu{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.25rem}
.site-footer__menu a{color:var(--slate);font-size:.7rem;text-transform:uppercase;text-decoration:none}
.site-footer__social a{color:var(--deep-olive);display:inline-flex}
.site-footer__social svg{width:22px;height:22px}
.site-footer__bottom{background:var(--deep-olive);color:rgba(255,255,255,.86);font-size:.65rem;text-transform:uppercase;letter-spacing:.02em;padding:.75rem 0}

/* Generic page framework */
.page-content,.blog-index,.blog-single,.team-single,.practice-area-single{padding:var(--section-space) 0}
.interior-title{padding:clamp(3.5rem,6vw,5.5rem) 0;background:var(--deep-olive);color:var(--ivory)}
.interior-title h1{color:inherit;margin:0}
