/* Doctors: shared cards */

.doctor-card {
    overflow:hidden;
    height:100%;
    transition:
        box-shadow var(--villa-transition),
        border-color var(--villa-transition);
}

.doctor-card:hover,
.doctor-card:focus-within {
    border-color:rgba(var(--bs-villa-gr-rgb),.2);
    box-shadow:var(--villa-shadow-hover);
}

.doctor-card__trigger {
    display:flex;
    align-items:stretch;
    width:100%;
    height:100%;
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    text-align:left;
    cursor:pointer;
}

.doctor-card__trigger:focus-visible {
    outline:3px solid var(--villa-focus-color);
    outline-offset:-3px;
}

.doctor-card__photo {
    flex:0 0 34%;
    min-width:0;
    overflow:hidden;
    background:var(--villa-surface-green);
}

.doctor-card__photo img {
    display:block;
    width:100%;
    height:100%;
    min-height:200px;
    object-fit:cover;
    object-position:center top;
}

.doctor-card__content {
    display:flex;
    flex-direction:column;
    justify-content:center;
    flex:1;
    min-width:0;
    padding:1.5rem;
}

.doctor-card__title {
    margin:0 0 .5rem;
    color:var(--villa-green-dark);
    font-size:1.3rem;
    line-height:1.3;
}

.doctor-card__subtitle {
    margin:0 0 1rem;
    color:var(--villa-muted);
    font-size:.95rem;
    line-height:1.5;
}

.doctor-card__more {
    display:inline-flex;
    align-items:center;
    gap:.55rem;
    align-self:flex-start;
    margin-top:auto;
    padding-top:1rem;
    color:var(--villa-green);
    font-size:.9rem;
    font-weight:600;
}

/* Director */

.doctor-card--big .doctor-card__photo {
    flex-basis:30%;
}

.doctor-card--big .doctor-card__content {
    padding:2rem;
}

.doctor-card--big .doctor-card__title {
    font-size:1.65rem;
}

/* Regular doctors */

.doctor-card--regular .doctor-card__photo {
    flex-basis:36%;
}

.doctor-card--regular .doctor-card__content {
    padding:1.25rem;
}

.doctor-card--regular .doctor-card__title {
    font-size:1.2rem;
}

/* Visiting specialists */

.doctor-card--small .doctor-card__content {
    min-height:145px;
    padding:1.35rem;
}

.doctor-card--small .doctor-card__title {
    font-size:1.15rem;
}

.doctor-card--small .doctor-card__more {
    padding-top:.75rem;
}

/* Responsive */

@media (max-width:767.98px) {
    .doctor-card--big .doctor-card__trigger,
    .doctor-card--regular .doctor-card__trigger {
        flex-direction:column;
    }

    .doctor-card--big .doctor-card__photo,
    .doctor-card--regular .doctor-card__photo {
        flex-basis:auto;
    }

    .doctor-card--big .doctor-card__photo img,
    .doctor-card--regular .doctor-card__photo img {
        height:240px;
        min-height:0;
        object-fit:contain;
    }

    .doctor-card--big .doctor-card__content,
    .doctor-card--regular .doctor-card__content {
        padding:1.35rem;
    }

    .doctor-card--big .doctor-card__title {
        font-size:1.35rem;
    }
}

@media (prefers-reduced-motion:reduce) {
    .doctor-card {
        transition:none!important;
    }
}