/* Public contact content; header, footer, and theme reuse the WMS marketing shell. */
body[data-page="publicContact"].wms-contact-page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
body[data-page="publicContact"].wms-contact-page .public-contact-main {
  flex: 1;
  display: flex;
  align-items: center;
  padding-block: 76px 88px;
  scroll-margin-top: 112px;
}
body[data-page="publicContact"].wms-contact-page .public-contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  column-gap: 80px;
  row-gap: 36px;
  align-items: start;
}
body[data-page="publicContact"].wms-contact-page .public-contact-intro { grid-column: 1; grid-row: 1; }
body[data-page="publicContact"].wms-contact-page .public-contact-intro h1 {
  max-width: 600px;
  font-size: clamp(36px, 4vw, 52px);
  line-height: 1.14;
  letter-spacing: -.04em;
}
body[data-page="publicContact"].wms-contact-page .public-contact-intro p {
  max-width: 450px;
  margin-top: 22px;
  font-size: 18px;
  line-height: 1.65;
}
body[data-page="publicContact"].wms-contact-page .public-contact-portrait {
  grid-column: 2;
  grid-row: 1 / 3;
  align-self: center;
  width: min(100%, 410px);
  justify-self: end;
}
body[data-page="publicContact"].wms-contact-page .public-contact-portrait img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 50%;
}
body[data-page="publicContact"].wms-contact-page .public-contact-details { grid-column: 1; grid-row: 2; }
body[data-page="publicContact"].wms-contact-page .public-contact-details h2 { font-size: 24px; line-height: 1.3; letter-spacing: -.025em; }
body[data-page="publicContact"].wms-contact-page .public-contact-company { margin-top: 4px; }
body[data-page="publicContact"].wms-contact-page .public-contact-links { display: grid; gap: 14px; margin-block: 24px 28px; }
body[data-page="publicContact"].wms-contact-page .public-contact-links > div { display: grid; grid-template-columns: 105px minmax(0, 1fr); align-items: center; gap: 16px; }
body[data-page="publicContact"].wms-contact-page .public-contact-links dt { display: flex; align-items: center; gap: 10px; color: var(--text-2); font-size: 14px; }
body[data-page="publicContact"].wms-contact-page .public-contact-links dt i { color: var(--marketing-accent); font-size: 18px; }
body[data-page="publicContact"].wms-contact-page .public-contact-links dd a { display: inline-flex; align-items: center; min-height: 44px; color: var(--marketing-accent); font-size: 18px; font-weight: 500; overflow-wrap: anywhere; }
body[data-page="publicContact"].wms-contact-page .public-contact-links dd a:hover { color: var(--text-1); }
body[data-page="publicContact"].wms-contact-page .public-contact-address { padding-top: 24px; border-top: 1px solid var(--marketing-line); }
body[data-page="publicContact"].wms-contact-page .public-contact-address h3 { font-size: 14px; letter-spacing: 0; font-weight: 500; color: var(--text-2); }
body[data-page="publicContact"].wms-contact-page .public-contact-address address { margin-top: 8px; font-size: 16px; line-height: 1.6; font-style: normal; color: var(--text-2); }
body[data-page="publicContact"].wms-contact-page .marketing-nav a[aria-current="page"] { color: var(--marketing-accent); text-decoration: underline; }

@media (max-width: 900px) {
  body[data-page="publicContact"].wms-contact-page .public-contact-main { padding-block: 52px 64px; }
  body[data-page="publicContact"].wms-contact-page .public-contact-grid { column-gap: 40px; }
  body[data-page="publicContact"].wms-contact-page .public-contact-links > div { grid-template-columns: 1fr; gap: 0; }
  body[data-page="publicContact"].wms-contact-page .public-contact-links { gap: 12px; }
}
@media (max-width: 699px) {
  body[data-page="publicContact"].wms-contact-page .public-contact-main { padding-block: 36px 48px; }
  body[data-page="publicContact"].wms-contact-page .public-contact-grid { grid-template-columns: 1fr; row-gap: 28px; }
  body[data-page="publicContact"].wms-contact-page .public-contact-intro h1 { font-size: 36px; max-width: 460px; }
  body[data-page="publicContact"].wms-contact-page .public-contact-intro p { margin-top: 16px; font-size: 17px; }
  body[data-page="publicContact"].wms-contact-page .public-contact-portrait { grid-column: 1; grid-row: 2; width: min(72%, 270px); justify-self: start; }
  body[data-page="publicContact"].wms-contact-page .public-contact-details { grid-row: 3; }
  body[data-page="publicContact"].wms-contact-page .public-contact-links > div { grid-template-columns: 88px minmax(0, 1fr); gap: 12px; }
  body[data-page="publicContact"].wms-contact-page .public-contact-links dd a { font-size: 16px; }
  body[data-page="publicContact"].wms-contact-page .marketing-nav { justify-content: space-between; gap: 14px; }
}
@media (max-width: 359px) {
  body[data-page="publicContact"].wms-contact-page .public-contact-links > div { grid-template-columns: 1fr; gap: 0; }
  body[data-page="publicContact"].wms-contact-page .marketing-nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px 16px; }
  body[data-page="publicContact"].wms-contact-page .marketing-nav a { min-height: 44px; }
}
