.jzs-contact { padding: clamp(3rem, 6vw, 6rem) 0; }
.jzs-contact__intro { max-width: 44rem; margin-bottom: clamp(2.5rem, 5vw, 4rem); }
.jzs-contact__intro h1 { margin: .5rem 0 1rem; font-size: clamp(2.5rem, 5vw, 4rem); }
.jzs-contact__intro > p:last-child { margin: 0; font-size: 1.125rem; }
.jzs-contact__grid { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: clamp(2rem, 6vw, 6rem); }
.jzs-contact h2 { margin: 0 0 1.75rem; font-size: 1.5rem; }
.jzs-contact dl, .jzs-contact dd { margin: 0; }
.jzs-contact dt { margin-bottom: .35rem; font-size: .875rem; color: var(--jzs-muted); }
.jzs-contact__channels { display: grid; gap: 1.5rem; }
.jzs-contact__channels a { font-family: var(--jzs-font-display); font-size: clamp(1.125rem, 2vw, 1.5rem); font-weight: 600; }
.jzs-contact a { color: var(--jzs-ink); text-decoration-thickness: 1px; text-underline-offset: .25em; overflow-wrap: anywhere; }
.jzs-contact a:hover { color: var(--jzs-primary-dark); }
.jzs-contact a:focus-visible { outline: 2px solid var(--jzs-primary-dark); outline-offset: 5px; }
.jzs-contact__hours { max-width: 30rem; }
.jzs-contact__other { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--jzs-line); }
.jzs-contact__other h3 { margin: 1.25rem 0 .35rem; font-size: 1rem; }
.jzs-contact__other h3:first-child { margin-top: 0; }
.jzs-contact__company { padding: clamp(1.5rem, 3vw, 2.5rem); background: var(--jzs-sand); border-top: 3px solid var(--jzs-primary); }
.jzs-contact__company-name { margin: 0 0 .5rem; font-weight: 650; font-size: 1.25rem; }
.jzs-contact__legal-form { margin: 0 0 2rem; }
.jzs-contact__details { display: grid; gap: 1.25rem; }
.jzs-contact__details dd { overflow-wrap: anywhere; }
@media (max-width: 760px) {
  .jzs-contact__grid { grid-template-columns: minmax(0, 1fr); }
}
