/* MZ Medical 0.3.19 | Direction page only. Does not style homepage, catalog or branch pages. */
.mz-dir-page .mz-dir-crumbs {
    padding-top: 22px;
    margin-bottom: 20px;
}
.mz-dir-page .mz-dir-hero {
    min-height: 0;
    gap: 18px;
    margin-bottom: 8px;
}
.mz-dir-page .mz-dir-hero__copy {
    min-height: 350px;
    padding: clamp(25px, 3.7vw, 47px);
}
.mz-dir-page .mz-dir-hero__visual { min-height: 350px; }
.mz-dir-page .mz-dir-hero h1 {
    margin: 14px 0 16px;
    font-size: clamp(2.45rem, 3.85vw, 4.2rem);
}
.mz-dir-page .mz-dir-hero__facts { margin-bottom: 17px; }
.mz-dir-page .mz-dir-hero--no-image {
    display: block;
    min-height: 0;
}
.mz-dir-page .mz-dir-hero--no-image .mz-dir-hero__copy {
    min-height: 256px;
    padding: clamp(26px, 4vw, 49px);
}
.mz-dir-page .mz-dir-hero--no-image .mz-dir-hero__copy > * {
    position: relative;
    z-index: 1;
}
.mz-dir-page .mz-dir-hero--no-image h1 {
    max-width: 23ch;
    margin: 12px 0 15px;
}
.mz-dir-page .mz-dir-hero--no-image .mz-dir-hero__description { max-width: 63ch; }
.mz-dir-page .mz-dir-jumplinks {
    padding-top: 12px;
    padding-bottom: 17px;
    margin-bottom: 0;
}
.mz-dir-page .mz-dir-jumplinks a { padding: 8px 13px; }
.mz-dir-page .mz-dir-section { padding-block: clamp(36px, 4vw, 53px); }
.mz-dir-page .mz-dir-section__heading { margin-bottom: 22px; }
.mz-dir-page .mz-dir-doctors__grid { margin-top: 21px; }
.mz-dir-page .mz-dir-branch-card { padding: 21px 23px; }
.mz-dir-page .mz-dir-locations__grid { gap: 16px; }
.mz-dir-page > .mz-booking { padding-block: clamp(44px, 5vw, 70px); }

/* One result: keep the heading and card together rather than leaving a nearly empty section. */
@media (min-width: 900px) {
    .mz-dir-page .mz-dir-doctors--single > .mz-container,
    .mz-dir-page .mz-dir-locations--single > .mz-container {
        display: grid;
        grid-template-columns: minmax(0, .9fr) minmax(0, 1.2fr);
        column-gap: clamp(30px, 5vw, 76px);
        align-items: start;
    }
    .mz-dir-page .mz-dir-doctors--single .mz-dir-section__heading,
    .mz-dir-page .mz-dir-locations--single .mz-dir-section__heading {
        margin-bottom: 0;
    }
    .mz-dir-page .mz-dir-doctors--single .mz-dir-section__heading--row {
        align-items: flex-start;
        flex-direction: column;
        gap: 16px;
    }
    .mz-dir-page .mz-dir-doctors--single .mz-dir-doctors__grid {
        display: grid;
        grid-template-columns: minmax(0, 290px);
        margin-top: 0;
    }
    .mz-dir-page .mz-dir-locations--single .mz-dir-locations__grid {
        grid-template-columns: minmax(0, 410px);
    }
}
@media (max-width: 899px) {
    .mz-dir-page .mz-dir-hero { grid-template-columns: 1fr; }
    .mz-dir-page .mz-dir-hero__copy { min-height: 0; padding: 29px; }
    .mz-dir-page .mz-dir-hero__visual { height: 280px; min-height: 0; }
    .mz-dir-page .mz-dir-hero--no-image .mz-dir-hero__copy { min-height: 0; }
    .mz-dir-page .mz-dir-section { padding-block: 42px; }
}
@media (max-width: 599px) {
    .mz-dir-page .mz-dir-crumbs { padding-top: 17px; margin-bottom: 16px; }
    .mz-dir-page .mz-dir-hero__copy,
    .mz-dir-page .mz-dir-hero--no-image .mz-dir-hero__copy {
        min-height: 0;
        padding: 27px 22px;
    }
    .mz-dir-page .mz-dir-hero h1 { font-size: clamp(2.2rem, 9vw, 3.15rem); }
    .mz-dir-page .mz-dir-hero__visual { height: 230px; }
    .mz-dir-page .mz-dir-section { padding-block: 34px; }
    .mz-dir-page .mz-dir-section__heading { margin-bottom: 16px; }
    .mz-dir-page .mz-dir-doctors__grid { margin-top: 15px; }
    .mz-dir-page > .mz-booking { padding-block: 42px; }
}

/* MZ_STAGE28_0O_SINGLE_DOCTOR_V1: single published/preview direction doctor is horizontal. */
.mz-dir-page .mz-dir-doctors--single .mz-dir-doctors__grid {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    min-width: 0;
}
.mz-dir-page .mz-dir-doctors--single .mz-dir-doctor-slot { min-width: 0; }
.mz-dir-page .mz-dir-doctors--single .mz-doctor-card {
    display: grid;
    grid-template-columns: minmax(130px, 38%) minmax(0, 1fr);
    min-height: 246px;
    align-items: stretch;
}
.mz-dir-page .mz-dir-doctors--single .mz-doctor-card__image {
    height: 100%;
    min-height: 246px;
}
.mz-dir-page .mz-dir-doctors--single .mz-doctor-card__body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: clamp(17px, 2.8vw, 27px);
}
@media (max-width: 599px) {
    .mz-dir-page .mz-dir-doctors--single .mz-doctor-card {
        grid-template-columns: minmax(0, 1fr);
    }
    .mz-dir-page .mz-dir-doctors--single .mz-doctor-card__image {
        height: 240px;
        min-height: 0;
    }
}
