/* Paleta UTILY: azul e dourado amostrados do logotipo original. */
:root {
  --ink: #1c3b59;
  --night: #1c3b59;
  --muted: #536577;
  --gold: #cbb281;
  --gold-dark: #806329;
  --paper: #fcfbf8;
  --line: #d9e0e5;
}
:focus-visible { outline-color: var(--gold-dark); }
.site-header :focus-visible, .site-footer :focus-visible, .hero :focus-visible,
.approach-section :focus-visible { outline-color: var(--gold); }
.topbar { background: #152f48; color: #d2dde7; border-color: #35516b; }
.site-header { color: #faf9f5; border-color: #496079; }
.brand img, .footer-brand img { filter: none; }
.button-gold { background: var(--gold); color: #152f48; }
.button-gold:hover { background: #ddc79b; }
.button-outline { color: #faf9f5; border-color: #a99572; }
.button-outline:hover { background: #2a4b6a; }
.text-link { color: #faf9f5; border-color: #93a4b3; }
.dark-link { color: var(--ink); border-color: #9caebb; }
.hero-image { background: var(--night); }
.hero-image img { filter: grayscale(1); mix-blend-mode: luminosity; opacity: .8; }
.hero-shade {
  background: linear-gradient(90deg, #1c3b59 0%, #1c3b59f2 27%, #1c3b598f 56%, #1c3b592e 100%),
              linear-gradient(0deg, #1c3b59a6, transparent 55%);
}
.hero .eyebrow, .hero h1 em { color: #dfc591; }
.hero-description { color: #e0e7ed; }
.hero-note { color: #c6d3df; }
.hero-note span + span { border-color: #7e94a9; }
.hero-scroll { color: #e4ebf2; }
.hero-scroll span { border-color: #a1b1bf; }
.principles-strip { background: #edf1f4; }
.principles-strip p { color: #354e65; }
.principles-strip p + p { border-color: #cdd8e1; }
.image-frame { border-color: var(--gold); }
.image-caption { background: linear-gradient(0deg, #152f48f2, #1c3b599e, transparent); }
.image-caption span { color: #e2cc9f; }
.services-section { background: #eef2f5; }
.service-grid { background: var(--line); border-color: var(--line); }
.service-card { background: #fafbfC; }
.service-card:hover { background: #fff; }
.service-card-top span { color: #637588; }
.approach-section, .page-hero { background: #152f48; color: #faf9f5; }
.approach-section .eyebrow, .approach-section h2 em, .page-hero h1 em { color: #dfc591; }
.approach-section p:not(.eyebrow) { color: #d0dce6; }
.approach-steps > div { border-color: #4b637a; }
.cta-section, .location-card { background: #f0e9dc; }
.site-footer { color: #dae3eb; }
.footer-brand p { color: #c2d0dd; }
.footer-grid h2 { color: #dfc591; }
.footer-bottom { border-color: #496079; color: #c2d0dd; }
.floating-contact { background: #1c3b59; color: #f8f5ed; border-color: var(--gold); }
.floating-contact:hover { background: #2a4b6a; }
.breadcrumb { color: #ccd9e4; }
.page-hero > div > p:not(.eyebrow) { color: #d0dce6; }
.contact-form { background: #eef2f5; }
.form-field label { color: #354e65; }
.form-field input, .form-field textarea, .form-field select, .search-input {
  background: #fff; border-color: #b5c3cf;
}
.resource-link:hover { border-color: var(--gold-dark); background: #f6f1e8; }
@media (max-width: 800px) {
  .menu-toggle { border-color: #a99572; }
  .menu-toggle span { background: #dfc591; }
  .hero-shade { background: linear-gradient(90deg, #1c3b59f7, #1c3b599e 70%, #1c3b5962); }
}
