/**
 * PandaWorks v4 — Contacts
 */
html.pw4 .pw4-ct { display: grid; gap: 0; }

html.pw4 .pw4-ct-hero {
  padding: 2rem 0 1.25rem;
  background: color-mix(in srgb, var(--pw-surface) 70%, var(--pw-bg));
}
html.pw4 .pw4-ct-hero__inner {
  width: var(--pw-max);
  margin-inline: auto;
  padding-inline: var(--pw-gutter);
  display: grid;
  gap: 0.65rem;
  justify-items: start;
  text-align: left;
}
html.pw4 .pw4-ct-hero .pw4-h1 {
  margin: 0;
  font-family: var(--pw-font-display);
  font-size: clamp(1.85rem, 3.5vw, 2.6rem);
  font-weight: 750;
  line-height: 1.15;
  letter-spacing: -0.02em;
  max-width: 18ch;
}
html.pw4 .pw4-ct-hero__lead {
  margin: 0;
  max-width: 58ch;
}

html.pw4 .pw4-ct-section { padding: 2.25rem 0; }
html.pw4 .pw4-ct-section--form {
  background: color-mix(in srgb, var(--pw-bg) 50%, var(--pw-surface));
  padding-bottom: 2.75rem;
}
html.pw4 .pw4-ct-section__inner {
  width: var(--pw-max);
  margin-inline: auto;
  padding-inline: var(--pw-gutter);
}
html.pw4 .pw4-ct-section__head {
  display: grid;
  gap: 0.45rem;
  margin-bottom: 1.1rem;
  max-width: 68ch;
}
html.pw4 .pw4-ct-section__head .pw4-h2,
html.pw4 .pw4-ct-section__head .pw4-lead { margin: 0; }

html.pw4 .pw4-ct-channels {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.85rem;
  grid-template-columns: 1fr;
}
@media (min-width: 700px) {
  html.pw4 .pw4-ct-channels {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1100px) {
  html.pw4 .pw4-ct-channels {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
html.pw4 .pw4-ct-card {
  display: grid;
  gap: 0.55rem;
  align-content: start;
  padding: 1.15rem 1.1rem 1.2rem;
  background: var(--pw-surface);
  box-shadow: var(--pw-shadow);
  border-radius: var(--pw-radius-card);
  min-height: 0;
}
html.pw4 .pw4-ct-card__label {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--pw-muted);
}
html.pw4 .pw4-ct-card__value {
  font-family: var(--pw-font-display);
  font-size: clamp(1.05rem, 2.4vw, 1.2rem);
  font-weight: 700;
  line-height: 1.3;
  color: var(--pw-ink);
  text-decoration: none;
  word-break: break-word;
}
html.pw4 a.pw4-ct-card__value:hover,
html.pw4 a.pw4-ct-card__value:focus-visible {
  color: var(--pw-teal);
  outline: none;
}
html.pw4 .pw4-ct-card__value--text { margin: 0; font-weight: 650; }
html.pw4 .pw4-ct-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.25rem;
}
html.pw4 .pw4-ct-card__actions .pw4-btn {
  min-height: 2.6rem;
  padding-inline: 0.9rem;
  font-size: 0.92rem;
}

html.pw4 .pw4-ct-split {
  display: grid;
  gap: 2rem;
}
@media (min-width: 960px) {
  html.pw4 .pw4-ct-split {
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    align-items: start;
  }
}

html.pw4 .pw4-ct-req {
  margin: 0;
  display: grid;
  gap: 0;
  border: 1px solid color-mix(in srgb, var(--pw-ink) 12%, transparent);
  border-radius: 4px;
  background: var(--pw-surface);
}
html.pw4 .pw4-ct-req__row {
  display: grid;
  gap: 0.35rem;
  padding: 0.9rem 1rem;
  border-bottom: 1px solid color-mix(in srgb, var(--pw-ink) 10%, transparent);
}
html.pw4 .pw4-ct-req__row:last-child { border-bottom: 0; }
@media (min-width: 640px) {
  html.pw4 .pw4-ct-req__row {
    grid-template-columns: 8.5rem 1fr;
    align-items: baseline;
    gap: 1rem;
  }
}
html.pw4 .pw4-ct-req dt {
  margin: 0;
  font-size: 0.88rem;
  color: var(--pw-muted);
}
html.pw4 .pw4-ct-req dd {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.75rem;
  font-weight: 650;
}
html.pw4 .pw4-ct-req__copy {
  min-height: 2.2rem;
  padding: 0.2rem 0.35rem;
}

html.pw4 .pw4-ct-map {
  border-radius: var(--pw-radius-card);
  overflow: hidden;
  background: var(--pw-surface);
  box-shadow: var(--pw-shadow);
  min-height: 16rem;
}
html.pw4 .pw4-ct-map__placeholder {
  display: grid;
  gap: 1rem;
  justify-items: start;
  padding: 1.35rem 1.2rem 1.45rem;
  min-height: 16rem;
  align-content: center;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--pw-teal) 8%, var(--pw-surface)), var(--pw-surface));
}
html.pw4 .pw4-ct-map__note {
  margin: 0;
  color: var(--pw-muted);
  line-height: 1.5;
  max-width: 42ch;
}
html.pw4 .pw4-ct-map__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}
html.pw4 .pw4-ct-map__frame {
  position: relative;
  min-height: 18rem;
  background: #0D1113;
}
html.pw4 .pw4-ct-map__frame iframe {
  display: block;
  width: 100%;
  height: 18rem;
  border: 0;
}
html.pw4 .pw4-ct-map.is-loaded .pw4-ct-map__placeholder { display: none; }
html.pw4 .pw4-ct-map.is-loaded .pw4-ct-map__frame { display: block; }

html.pw4 .pw4-ct-form-layout { max-width: 36rem; }
html.pw4 .pw4-ct-form {
  padding: 1.25rem 1.15rem 1.4rem;
  background: var(--pw-surface);
  box-shadow: var(--pw-shadow);
  border-radius: var(--pw-radius-card);
}
html.pw4 .pw4-ct-form.is-success .pw4-form-mock__fields { display: none; }
html.pw4 .pw4-ct-form .pw4-form-mock__state { display: none; }
html.pw4 .pw4-ct-form.is-success .pw4-form-mock__state { display: grid; gap: 0.6rem; }
