/* SDI Google Reviews. Valores de diseño tomados del Figma Suministros-Mayoral (Home 150:1986 / Home mobile 150:2017).
   Los colores se configuran desde el BackOffice del módulo (pestaña Estilos), que redefine estas variables en la propia sección. */
.sdigr{
    --sdigr-bg: #f4f5ff;
    --sdigr-box-bg: #ffffff;
    --sdigr-box-border: #adb0e6;
    --sdigr-box-text: #292b4c;
    --sdigr-box-stars: #292b4c;
    --sdigr-btn-bg: #323787;
    --sdigr-btn-border: #323787;
    --sdigr-btn-text: #ffffff;
    --sdigr-btn-bg-hover: #ffffff;
    --sdigr-btn-border-hover: #323787;
    --sdigr-btn-text-hover: #323787;
    --sdigr-title: #292b4c;
    --sdigr-author: #292b4c;
    --sdigr-stars: #ffa500;
    --sdigr-date: #a9abc0;
    --sdigr-desc: #292b4c;
    --sdigr-footer: #292b4c;
    background: var(--sdigr-bg);
    padding: 81px 15px 82px 15px;
    font-family: 'Archivo', sans-serif;
    font-variation-settings: 'wdth' 100;
}
.sdigr__inner{
    display: flex;
    align-items: flex-start;
    gap: 50px;
    box-sizing: border-box;
    max-width: 1740px;
    margin: 0 auto;
}
.sdigr__box{
    flex: 0 0 390px;
    width: 390px;
    height: 369px;
    box-sizing: border-box;
    background: var(--sdigr-box-bg);
    color: var(--sdigr-box-text);
    border: 1px solid var(--sdigr-box-border);
    border-radius: 20px;
    padding: 44px 24px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 19px;
    text-align: center;
}
.sdigr__box p{
    margin: 0;
}
.sdigr__box-title{
    font: 700 22px/26px 'Archivo', sans-serif;
    white-space: nowrap;
}
.sdigr__total{
    font: 800 64px/50px 'Archivo Condensed', 'Archivo', sans-serif;
    text-transform: uppercase;
}
.sdigr__rating{
    display: flex;
    align-items: center;
    gap: 9px;
    height: 27px;
}
.sdigr__rating-num{
    font: 500 20px/32px 'Archivo', sans-serif;
}
.sdigr__box-text{
    font: 500 18px/24px 'Archivo', sans-serif;
    width: 262px;
    max-width: 100%;
}
.sdigr a.sdigr__btn{
    opacity: 1 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    box-sizing: border-box;
    height: 55px;
    padding: 0 46px;
    background: var(--sdigr-btn-bg);
    color: var(--sdigr-btn-text) !important;
    border: 2px solid var(--sdigr-btn-border);
    border-radius: 50px;
    font: 700 16px/normal 'Archivo', sans-serif;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color .2s, color .2s;
}
.sdigr a.sdigr__btn:visited{
    color: var(--sdigr-btn-text) !important;
}
.sdigr a.sdigr__btn span,
.sdigr a.sdigr__btn i{
    color: inherit !important;
    opacity: 1 !important;
}
.sdigr a.sdigr__btn:hover,
.sdigr a.sdigr__btn:focus-visible{
    background: var(--sdigr-btn-bg-hover) !important;
    color: var(--sdigr-btn-text-hover) !important;
    border-color: var(--sdigr-btn-border-hover) !important;
    text-decoration: none;
}
.sdigr__btn-icon{
    font-family: 'Font Awesome 7 Sharp';
    font-weight: 400;
    font-style: normal;
    font-size: 20px;
    line-height: 1;
}
.sdigr__btn-icon::before{
    content: '\f061';
}
.sdigr__content{
    flex: 1;
    min-width: 0;
    padding-top: 14px;
}
.sdigr__title{
    margin: 0 0 37px;
    font: 800 50px/50px 'Archivo Condensed', 'Archivo', sans-serif;
    text-transform: uppercase;
    color: var(--sdigr-title);
}
.sdigr__list{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 378px));
    gap: 0 62px;
    margin-bottom: 39px;
}
.sdigr__head{
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 18px;
}
.sdigr__avatar{
    flex: 0 0 62px;
    width: 62px;
    height: 62px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font: 600 32px/26px 'Archivo', sans-serif;
}
.sdigr__meta{
    padding-top: 2px;
}
.sdigr__author{
    font: 600 20px/26px 'Archivo', sans-serif;
    color: var(--sdigr-author);
    white-space: nowrap;
}
.sdigr__time{
    font: 600 12px/18px 'Archivo', sans-serif;
    color: var(--sdigr-date);
}
.sdigr__text{
    margin: 0;
    font: 400 14px/18px 'Archivo', sans-serif;
    color: var(--sdigr-desc);
}
.sdigr__footer{
    margin: 0;
    font: 500 18px/24px 'Archivo', sans-serif;
    color: var(--sdigr-footer);
}
/* Estrellas (FA 7 Sharp Solid): reseñas 12,938px naranja; caja 18px negro */
.sdigr__stars{
    display: flex;
    height: 23px;
    margin: -2px 0 -4px;
    color: var(--sdigr-stars);
    font-size: 12.938px;
    line-height: 23px;
    gap: 4.3px;
}
.sdigr__stars--lg{
    height: 27px;
    margin: 0;
    color: var(--sdigr-box-stars);
    font-size: 18px;
    line-height: 32px;
    gap: 3px;
}
.sdigr__star{
    font-family: 'Font Awesome 7 Sharp';
    font-weight: 900;
    font-style: normal;
    width: 12.938px;
    text-align: center;
}
.sdigr__stars--lg .sdigr__star{
    width: 21px;
}
.sdigr__star::before{
    content: '\f005';
}
.sdigr__star.is-empty{
    opacity: .25;
}
/* Portátil: las tres columnas se encogen para caber junto a la caja */
@media(max-width:1399px){
    .sdigr__box{
        flex-basis: 340px;
        width: 340px;
    }
    .sdigr__inner{
        gap: 40px;
    }
    .sdigr__title{
        font-size: 42px;
        line-height: 42px;
    }
    .sdigr__list{
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0 30px;
    }
}
/* Tablet: caja arriba a todo el ancho y reseñas debajo en 3 columnas */
@media(max-width:1199px){
    .sdigr__inner{
        flex-direction: column;
        align-items: stretch;
        gap: 40px;
    }
    .sdigr__box{
        flex: none;
        width: 100%;
        height: auto;
        padding: 36px 24px;
    }
    .sdigr__content{
        padding-top: 0;
    }
    .sdigr__author{
        font-size: 18px;
    }
}
/* Móvil (Figma Home mobile): caja 359px, título 32/32 en 2 líneas y reseñas deslizables de a una */
@media(max-width:991px){
    .sdigr{
        padding: 34px 15px 60px 15px;
    }
    .sdigr__inner{
        gap: 49px;
    }
    .sdigr__box{
        height: 369px;
        padding: 44px 24px 24px;
    }
    .sdigr__title{
        font-size: 32px;
        line-height: 32px;
        margin-bottom: 30px;
    }
    .sdigr__list{
        display: flex;
        gap: 30px;
        margin-bottom: 40px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }
    .sdigr__list::-webkit-scrollbar{
        display: none;
    }
    .sdigr__review{
        flex: 0 0 100%;
        max-width: 360px;
        scroll-snap-align: start;
    }
}
