.brand-wordmark {
  display: inline-block;
  color: #212121;
  font-size: clamp(20px, 2vw, 27px);
  font-weight: 800;
  letter-spacing: -.045em;
  line-height: 1;
  white-space: nowrap;
}
footer .brand-wordmark { font-size: 27px; }
.honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; left: -10000px; }
.form-check-label { display: flex; align-items: flex-start; gap: 10px; line-height: 1.5; cursor: pointer; }
.form-check-label input { flex: none; width: 18px; height: 18px; margin-top: 3px; accent-color: var(--primary-color, #ec5d37); }
.form-check-label a, .legal-content a { text-decoration: underline; }
.form-status { min-height: 1.5em; margin: 12px 0 0; font-weight: 600; }
.form-status.is-success { color: #147e48; }
.form-status.is-error { color: #ba3333; }
#send_message:disabled { opacity: .55; cursor: wait; }
#contact address, footer address { font-style: normal; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { overflow-x: hidden; }
.legal-hero { padding: 160px 0 80px; background: #f4f9fb; }
.legal-hero h1 { max-width: 850px; }
.legal-content { max-width: 880px; margin: auto; padding: 70px 20px 100px; font-size: 17px; line-height: 1.8; }
.legal-content h2 { margin: 36px 0 12px; font-size: clamp(24px, 3vw, 32px); line-height: 1.25; }
.legal-content p, .legal-content ul { margin-bottom: 16px; }
.legal-content ul { padding-left: 22px; }
.legal-note { padding: 18px 22px; background: #f4f9fb; border-left: 4px solid var(--primary-color, #ec5d37); }
@media (max-width: 991px) { .brand-wordmark { font-size: 20px; } }
@media (max-width: 575px) { .legal-hero { padding: 125px 0 65px; } .legal-content { font-size: 16px; padding-top: 50px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
