.utility .utility-inner {
  min-height:36px;
  gap:14px;
  color:#e9e3d9;
  font-size:.73rem;
  text-transform:uppercase;
  letter-spacing:.075em;
}
.utility-links { display:flex; align-items:center; gap:24px; }
.utility-links a { display:inline-flex; align-items:center; gap:6px; color:inherit; white-space:nowrap; }
.utility-links svg { width:14px; height:14px; color:var(--brass); }
.site-header { background:#fffdf8; border-bottom:1px solid #d3c6b4; box-shadow:0 4px 18px #101e2b0b; }
.site-header .nav-inner { min-height:82px; gap:clamp(10px,1.9vw,30px); }
.site-header .brand { flex:none; }
.site-header .brand-mark,.site-footer .brand-mark { border-radius:8px; }
.site-header nav { gap:clamp(12px,2.15vw,34px); }
.site-header nav a { padding:8px 0; }
.site-header nav a[aria-current]::after { bottom:2px; height:2px; }
.header-actions { display:flex; gap:8px; align-items:center; }
.site-header .nav-quote { border-radius:6px; min-height:44px; padding-inline:14px; white-space:nowrap; }
.nav-toggle { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:44px; padding:0 11px; border:1px solid #c4b49c; background:transparent; color:#152533; border-radius:6px; font-weight:750; }
.nav-toggle-icon { width:15px; height:10px; border-block:2px solid currentColor; }
.site-footer { background:#101e2b; color:#f7f1e7; border-top:3px solid #bc8949; }
.footer-cta { display:flex; justify-content:space-between; align-items:center; gap:22px; padding-block:clamp(30px,5vw,64px); border-bottom:1px solid #4a5560; }
.footer-cta h2 { font-size:clamp(1.8rem,3.7vw,3.6rem); text-wrap:balance; }
.footer-cta .eyebrow { color:#f3c98f; margin-bottom:9px; }
.footer-cta .button { flex:none; border-radius:6px; }
.footer-columns { display:grid; grid-template-columns:1.4fr 1fr 1fr 1.2fr; gap:clamp(18px,3vw,42px); padding-block:40px; }
.footer-company .brand strong { font-family:"Segoe UI",sans-serif; color:#fff9ee; }
.footer-company .brand small,.footer-company p,.footer-location address { color:#d4dae0; }
.footer-company .brand-mark { background:white; }
.footer-company p { margin-top:14px; }
.footer-columns h3 { color:#f5d2a3; font-size:1.28rem; letter-spacing:0; margin-bottom:10px; }
.footer-links a,.footer-location a { display:flex; align-items:center; min-height:44px; color:#f4eee4; }
.footer-links a:hover,.footer-location a:hover { color:#f6cb91; text-decoration:underline; }
.footer-location address,.visit-card address { display:grid; gap:4px; font-style:normal; }
.footer-location a { color:#f5d2a3; }
.site-footer .foot-base { border-color:#4a5560; }
.office-feature { display:grid; grid-template-columns:1fr 1fr; gap:clamp(22px,6vw,88px); align-items:center; }
.visit-anchor { margin-top:25px; scroll-margin-top:15px; }
.visit-card { background:#fffdf8; border:1px solid #d5c4ad; border-top:3px solid #b98342; padding:clamp(19px,3.3vw,40px); box-shadow:0 12px 32px #101e2b0e; }
.visit-label { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.visit-label span { display:grid; place-items:center; width:39px; height:39px; border-radius:50%; background:#f0e1cc; color:#734c1d; }
.visit-label p { font-size:.73rem; letter-spacing:.12em; font-weight:750; color:#734c1d; }
.visit-card h3 { font-size:clamp(1.6rem,3.4vw,2.55rem); margin-bottom:12px; }
.visit-card address { line-height:1.4; color:#263846; }
.visit-card .visit-note { margin-block:11px 16px; font-size:.89rem; }
.visit-card .button { border-radius:5px; }
.office-sales h2 { font-size:clamp(2rem,4.4vw,4rem); }
.office-sales > p:not(.eyebrow) { margin-top:14px; max-width:42ch; }
@media(max-width:960px) {
  .site-header .nav-inner { display:grid; grid-template-columns:1fr auto; gap:0 10px; padding-block:8px; min-height:67px; }
  .header-actions { grid-row:1; grid-column:2; }
  .site-header nav { grid-row:2; grid-column:1/-1; justify-content:space-between; gap:5px; }
  .site-header[data-menu] nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:10px 0 0; border-top:1px solid var(--line); margin-top:8px; }
  .site-header[data-menu] nav a { min-height:44px; padding:6px 8px; }
  .site-header[data-menu] nav a[aria-current] { background:#efe5d6; }
  .site-header[data-menu] nav a[aria-current]::after { display:none; }
  .footer-columns { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:560px) {
  .utility .utility-inner { min-height:29px; font-size:.61rem; letter-spacing:.05em; }
  .utility-links { display:none; }
  .site-header .nav-inner { min-height:61px; }
  .site-header .nav-quote { padding-inline:8px; font-size:.73rem; }
  .site-header .nav-quote svg { display:none; }
  .nav-toggle { min-height:44px; padding-inline:8px; font-size:.74rem; }
  .site-header .brand { gap:6px; }
  .site-header .brand strong { font-size:.99rem; }
  .site-header .brand small { font-size:.43rem; letter-spacing:.06em; }
  .site-header .brand-mark { width:32px; height:32px; }
  .office-feature { grid-template-columns:1fr; }
  .footer-cta { display:grid; }
  .footer-cta .button { justify-self:start; }
  .footer-columns { padding-block:26px; gap:23px 10px; }
  .footer-company,.footer-location { grid-column:1/-1; }
}
