.sp-page,
.sp-page * {
  box-sizing: border-box;
}

.sp-page {
  margin: 0;
  overflow-x: hidden;
  background: #eef2f4;
  color: #0b1925;
  font-family: Arial, Helvetica, "Segoe UI", sans-serif;
}

.sp-page a { color: inherit; }
.sp-page img { display: block; max-width: 100%; height: auto; }
.sp-page p, .sp-page h1, .sp-page h2, .sp-page h3, .sp-page dt, .sp-page dd,
.sp-page th, .sp-page td, .sp-page summary, .sp-page figcaption, .sp-page label,
.sp-page strong, .sp-page span { color: inherit; }

.sp-nav {
  position: sticky;
  z-index: 50;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 70px;
  padding: 0 clamp(20px, 4vw, 64px);
  border-bottom: 1px solid #bcc9d1;
  background: #f7fafb;
  color: #0b1925;
}

.sp-brand img { width: 151px; height: 33px; object-fit: contain; }
.sp-nav nav { display: flex; align-items: center; gap: clamp(16px, 2.4vw, 34px); }
.sp-nav nav a { color: #172b36; font-size: .78rem; font-weight: 850; text-decoration: none; }
.sp-nav nav a:last-child { padding: 12px 16px; border: 1px solid #7ca2b7; background: #dfe7ec; }

.sp-footer {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 32px;
  align-items: end;
  padding: 48px clamp(20px, 4vw, 64px);
  border-top: 1px solid #bcc9d1;
  background: #dfe7ec;
  color: #152a34;
}

.sp-footer strong { font-size: 1.6rem; }
.sp-footer p { margin: 8px 0 0; color: #536873; }
.sp-footer > div:last-child { display: flex; flex-wrap: wrap; gap: 14px 24px; }
.sp-footer a { color: #183c4d; font-weight: 800; }

.sp-page .pc-button,
.sp-page .button {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  border: 1px solid #718691;
  background: #edf1f1;
  color: #10222c !important;
  font-weight: 850;
  text-decoration: none;
}

.sp-page .pc-button-primary,
.sp-page .button.primary {
  border-color: #245f7e;
  background: #9acde2;
  color: #07131d !important;
}

.sp-page .pc-eyebrow { color: #245f7e; }
.sp-page .hnl-inquiry-form { border-top-color: #245f7e; }
.sp-page .hnl-inquiry-consent input { accent-color: #245f7e; }
.sp-page .hnl-inquiry-fallbacks a:hover,
.sp-page .hnl-inquiry-fallbacks a:focus-visible { color: #245f7e; }

@media (max-width: 760px) {
  .sp-nav { position: relative; align-items: flex-start; flex-direction: column; gap: 14px; padding-block: 18px; }
  .sp-nav nav { width: 100%; gap: 0; overflow-x: auto; }
  .sp-nav nav a { flex: 0 0 auto; padding: 11px 13px; border: 1px solid #c7d0d4; border-right: 0; }
  .sp-nav nav a:last-child { border-right: 1px solid #c7d0d4; }
  .sp-footer { grid-template-columns: 1fr; }
}
