/* Preserve the hero design after duplicate homepage H1 elements become H2s. */
.home-intro-story h2 {
  max-width: 900px;
  margin: 4px 0 0;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(44px, 4.4vw, 54px);
  font-weight: 400;
  letter-spacing: -.025em;
  line-height: 1.08;
  text-wrap: balance;
}

.home-intro-brand-date {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

/* Reserve a predictable box for present and future in-flow advertising. */
ins.adsbygoogle[data-ad-format] {
  display: block;
  min-height: 250px;
  contain-intrinsic-size: 0 250px;
}

.ndseo-contact-form {
  display: grid;
  gap: 20px;
  max-width: 780px;
  margin: 34px 0;
  padding: clamp(22px, 4vw, 42px);
  border: 1px solid #d8d4cc;
  background: #f8f6f1;
}
.ndseo-contact-form > label { display: grid; gap: 8px; font-weight: 700; }
.ndseo-contact-form input,
.ndseo-contact-form select,
.ndseo-contact-form textarea {
  width: 100%;
  border: 1px solid #777;
  border-radius: 0;
  background: #fff;
  color: #171717;
  padding: 12px 14px;
}
.ndseo-contact-form textarea { resize: vertical; }
.ndseo-contact-form .ndseo-contact-consent { grid-template-columns: 22px 1fr; align-items: start; font-weight: 400; }
.ndseo-contact-form .ndseo-contact-consent input { width: 18px; height: 18px; margin-top: 2px; }
.ndseo-contact-form button {
  justify-self: start;
  border: 0;
  background: #c8102e;
  color: #fff;
  padding: 13px 23px;
  font-weight: 800;
  cursor: pointer;
}
.ndseo-contact-form button:hover,
.ndseo-contact-form button:focus-visible { background: #171717; }
.ndseo-contact-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.ndseo-contact-notice { max-width: 780px; margin: 24px 0; padding: 15px 18px; border-left: 5px solid #1b7d3a; background: #edf8f0; }
.ndseo-contact-notice.is-error { border-left-color: #c8102e; background: #fff0f2; }
.ndseo-contact-safety { max-width: 780px; padding: 18px; border-top: 1px solid #171717; }

@media (max-width: 820px) {
  .home-intro-story h2 { font-size: clamp(40px, 6vw, 50px); line-height: 1.06; }
}
@media (max-width: 560px) {
  .home-intro-story h2 { font-size: clamp(34px, 8.5vw, 43px); line-height: 1.04; }
}
@media (max-width: 420px) {
  .home-intro-story h2 { font-size: clamp(30px, 9.5vw, 38px); line-height: 1.04; }
}
@media (max-height: 680px) and (max-width: 820px) {
  .home-intro-story h2 { font-size: clamp(32px, 6.5vw, 42px); }
}
@media (orientation: landscape) and (max-height: 560px) and (max-width: 1024px) {
  .home-intro-story h2 { font-size: clamp(34px, 4.8vw, 46px); }
}
