/*
 * Mirrors the former Royal "Team Member" widgets on the section pages:
 * Royal base CSS (frontend.min.css) + the per-widget Elementor settings.
 */
.gsd-sv__intro {
    margin: 0 0 20px;
    text-align: start;
}

/* Same box as the section pages (Roma, Napoli, Como): 4 fixed columns, content at the top */
.gsd-sv__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: start;
    padding-top: 20px;
    border-radius: 20px;
    background-color: var(--e-global-color-pollock_light, transparent);
}

/* Elementor column gap "default" = 10px */
.gsd-sv__column {
    padding: 10px;
}

/* Royal widget content padding, members stacked without extra spacing */
.gsd-sv__member {
    padding: 0 20px;
    text-align: center;
}

.elementor .gsd-sv__name,
.gsd-sv__name {
    display: block;
    color: #222222;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    margin: 0 0 8px;
}

.gsd-sv__role {
    color: #9e9e9e;
    font-size: 13px;
    margin: 0 0 10px;
}

.gsd-sv__divider::after {
    content: "";
    display: block;
    max-width: 30px;
    margin: 0 auto 10px;
    border-bottom: 1px solid #d1d1d1;
}

.gsd-sv__description {
    color: #545454;
    font-size: 15px;
    line-height: 1.4;
    margin-bottom: 18px;
    overflow-wrap: anywhere;
}

.gsd-sv__description a {
    color: inherit;
}

.gsd-sv__social {
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
}

.gsd-sv__mail {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: content-box;
    width: 37px;
    height: 37px;
    border: 1px solid var(--e-global-color-primary, currentColor);
    border-radius: 50px;
    transition: all 0.25s;
}

.gsd-sv__mail svg {
    width: 17px;
    height: 17px;
    fill: var(--e-global-color-primary, currentColor);
    transition: fill 0.25s;
}

.gsd-sv__mail:hover,
.gsd-sv__mail:focus-visible {
    background-color: var(--e-global-color-secondary, #333333);
    border-color: var(--e-global-color-secondary, #333333);
}

.gsd-sv__mail:hover svg,
.gsd-sv__mail:focus-visible svg {
    fill: var(--e-global-color-pollock_light, #ffffff);
}

/* Like Elementor columns: 4 up to tablet, stacked on mobile */
@media (max-width: 767px) {
    .gsd-sv__grid {
        grid-template-columns: 1fr;
    }
}
