.preview-bar>.container{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand-logo{display:block;object-fit:contain;width:240px;height:auto;filter:brightness(0) opacity(.86)}.brand{flex-shrink:0}.hero-art svg{width:100%;max-width:520px;height:auto;display:block;margin:auto}.hero-art>p{text-align:center;font-size:13px;line-height:1.7;color:var(--muted);margin:0}.hero-title em{font-weight:inherit;color:var(--accent)}.small-note{font-size:13px;color:var(--muted)}.office-card address{font-style:normal;line-height:1.8;margin-bottom:14px}.site-footer a{display:block;margin-bottom:8px}.footer-bottom a{display:inline}.insight-card h3 a{color:inherit;text-decoration:none}.team-card{display:grid;grid-template-columns:180px 1fr;gap:48px;align-items:center;max-width:850px}.person-monogram{aspect-ratio:1;display:grid;place-items:center;background:var(--soft);font:60px var(--heading);border:1px solid var(--line);color:var(--ink,#10283e)}.breadcrumbs{display:flex;gap:12px;margin-bottom:48px}.breadcrumbs a{color:inherit}.page-hero h1{max-width:950px}.sidebar>a:not(.button){display:block;margin-top:22px;line-height:1.6}.prose h2{margin-top:38px}.prose h2:first-child{margin-top:0}.contact-grid .prose h2{overflow-wrap:anywhere}.faq details{border-bottom:1px solid var(--line);padding:23px 0}.faq summary{cursor:pointer;font-weight:600;line-height:1.7}.faq details p{max-width:800px;line-height:1.8}.button span{margin-left:12px} .preview-bar button{cursor:pointer}.nav-links a[aria-current=page]{text-decoration:underline;text-underline-offset:8px}.service-row:focus-visible,.insight-card a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.check-list{padding-left:22px}.check-list li{padding-left:4px;margin:14px 0}.service-copy h3{margin-bottom:10px}.site-footer h2{color:var(--on-dark);font-family:var(--heading);font-weight:650}.site-footer h3{font-size:14px}.page-intro{max-width:800px}.hero-copy{padding:18px 0}.site-footer p{max-width:400px}
@media(max-width:760px){.preview-label>span{display:none}.preview-bar>.container{flex-wrap:wrap;padding-top:8px;padding-bottom:8px;gap:6px}.brand-logo{width:205px}.team-card{grid-template-columns:1fr;gap:24px}.person-monogram{max-width:140px}.breadcrumbs{margin-bottom:30px}.hero-copy{padding-top:0}.hero-art{max-width:370px;margin:auto}.header-inner{min-height:92px}.hero-art>p{display:none}}
.hero-art{display:block}.hero-art>p{margin-top:12px}.menu-toggle{width:auto;min-width:66px;font-size:14px;display:none}.menu-toggle span{display:inline;margin-left:8px}@media(max-width:950px){.menu-toggle{display:inline-flex;align-items:center;justify-content:flex-end}}

.hero-identity{max-width:33rem;margin:-10px 0 24px;color:var(--ink);font-size:clamp(16px,1.8vw,22px);line-height:1.45;font-weight:500}
@media(max-width:760px){.hero-identity{margin:-7px 0 20px}}

:root {
  --ink: #24242c;
  --accent: #746000;
  --accent-on-dark: #f7dc32;
  --dark: #2e2e38;
  --hero-surface: #f4f4f5;
  --soft: #f2f2f3;
}

html[data-theme='graphite'] {
  --ink: #222226;
  --accent: #746000;
  --accent-on-dark: #f7dc32;
  --dark: #252529;
  --hero-surface: #f4f4f5;
}

.site-header, .site-footer, html[data-theme='graphite'] .site-footer {
  background: var(--dark);
}

.site-header { border-bottom-color: #ffffff26; }
.brand-logo { filter: brightness(0) invert(1); }
.nav-links a, .menu-toggle, .header-contact { color: #fff; }
.nav-links a::after, .header-contact { border-color: var(--accent-on-dark); }
.nav-links a::after { background: var(--accent-on-dark); }
.nav-links a[aria-current=page] { text-decoration-color: var(--accent-on-dark); }

.hero {
  background: var(--dark);
  color: #e4e4e7;
  border-bottom: 3px solid var(--accent-on-dark);
}
.hero-title, .hero-identity { color: #fff; }
.hero .eyebrow { color: var(--accent-on-dark); }
.hero-description { color: #e4e4e7; }
.hero-motto {
  color: var(--accent-on-dark);
  font-size: 19px;
  font-weight: 600;
  margin: 0 0 14px;
}
.hero-art { color: #ceced4; }
.hero-art svg { background: #383842; }
.hero .button.secondary { border-color: #b9b9c2; color: #fff; }
.hero .button.secondary:hover { background: #ffffff12; }
.hero .button.primary,
.contact-band .button,
html[data-theme='graphite'] .contact-band .button {
  background: var(--accent-on-dark);
  border-color: var(--accent-on-dark);
  color: #24242c;
}
.hero .button.primary:hover,
.contact-band .button:hover,
html[data-theme='graphite'] .contact-band .button:hover {
  background: #ffe871;
}
.page-hero .eyebrow::before { background: #d1b51c; }

@media(max-width:950px) {
  .nav-links { background: var(--dark); border-bottom-color: #ffffff30; }
  .nav-links a { border-bottom-color: #ffffff30; }
}

.contact-directory {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
}

.contact-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding-top: 20px;
  border-top: 2px solid var(--line);
}

.contact-card h2 {
  font-size: 22px;
  margin: 0 0 18px;
}

.contact-card address {
  font-style: normal;
  line-height: 1.7;
  margin: 0 0 20px;
}

.contact-email {
  font-weight: 650;
  overflow-wrap: anywhere;
}

.contact-email a, .contact-phone {
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 4px;
}

.contact-phone { margin-top: auto; }
.contact-card .small-note { margin: 8px 0 0; }

.site-header { background: #171717; }

.brand-icon {
  display: block;
  width: 43px;
  height: 52px;
  overflow: hidden;
}

.brand-icon .brand-logo {
  width: auto;
  height: 100%;
  max-width: none;
  max-height: none;
}

@media (max-width: 950px) {
  .nav-links { background: #171717; }
}

@media (max-width: 820px) {
  .contact-directory { grid-template-columns: 1fr; }
}
