/* Optional analytics controls only; no page, navigation or inquiry overrides. */
.analytics-consent[hidden], .analytics-settings[hidden] { display: none !important; }
.analytics-consent {
  position: fixed;
  z-index: 1100;
  right: 1rem;
  bottom: 1rem;
  width: min(44rem, calc(100% - 2rem));
  max-height: calc(100dvh - 2rem);
  overflow: auto;
  padding: 1.5rem;
  border: 1px solid #626562;
  background: #f6f4ef;
  color: #171a1c;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-align: left;
}
.analytics-consent h2 { margin: 0 0 .75rem; font-size: 22px; font-weight: 500; line-height: 1.25; }
.analytics-consent p { margin: 0 0 1rem; max-width: 36rem; font-size: 16px; line-height: 1.5; }
.analytics-consent-links { display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin-bottom: 1rem; font-size: 14px; }
.analytics-consent-links a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.analytics-consent-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.analytics-consent-actions button {
  min-height: 44px;
  padding: .7rem 1rem;
  border: 1px solid currentColor;
  border-radius: 0;
  color: inherit;
  background: transparent;
  font: 500 15px/1.3 "Helvetica Neue", Helvetica, Arial, sans-serif;
  cursor: pointer;
}
.analytics-consent :is(a, button):focus-visible, .analytics-settings:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.analytics-settings {
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-decoration: underline;
  text-underline-offset: .2em;
  cursor: pointer;
}
@media (max-width: 480px) {
  .analytics-consent { padding: 1.25rem; }
  .analytics-consent-actions { flex-direction: column; }
  .analytics-consent-actions button { width: 100%; text-align: center; }
}
