body {
    background-color: #ffffff;
}

.section {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.section-container {
    width: 100%;
    margin: 0 auto;
    max-width: 1090px;
}

.white-background, .light-background, .dark-background, .pink-background {
    text-align: center;
    padding: 47px 0 35px;
    font-family: var(--roboto-regular);
    font-size: 20px;
    line-height: 28px;
}

.white-background {
    background-color: #ffffff;
    color: #000000;
}

.light-background {
    background-color: #f1f1f1;
    color: #000000;
}

.dark-background {
    background-color: var(--dark-secondary-color);
    color: #ffffff;
}

.pink-background {
    background-color: #ffebf4;
    color: #000000;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: unset !important;
}

h1, h1.side-padding {
    max-width: 460px;
    font-size: 30px;
    line-height: normal;
    font-family: var(--roboto-bold-condensed);
}

h2 {
    font-size: 40px;
    line-height: normal;
    font-family: var(--roboto-bold-condensed);
    background-color: unset;
}

h3.section-title {
    font-size: 30px;
    font-family: var(--roboto-bold-condensed);
    line-height: normal;
}

.dark-background h2 {
    color: #ffffff;
}

.trustpilot-logo {
    width: 150px;
}

.opinion-cards-container, .category-cards-container, .images-container, .regulation-cards-container, .stars-carousel-container, .opinion-cards-2-container {
    position: relative;
}

.opinion-cards-container {
    width: 1020px;
    overflow-x: hidden;
    margin-bottom: 25px;
}

.opinion-card-wrapper {
    display: flex;
    justify-content: center;
    width: 100%;
}

.opinion-card {
    background-color: #ffffff;
    border-radius: 10px;
    border: 1px solid #707070;
    padding: 20px 25px;
    width: 330px;
    height: 340px;
    box-shadow: 0px 0px 20px #00000026;
}

.opinion-card .top-section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
    border-bottom: 1px solid #000000;
    padding: 10px 0;
}

.opinion-card .image {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 50%;
    /*background-color: #000000;*/
}

.opinion-card .name {
    width: 100%;
    font-size: 14px;
    text-align: left;
    line-height: normal;
}

.opinion-card .stars-container {
    display: flex;
    justify-content: end;
    gap: 5px;
    align-self: end;
    height: 100%;
}

.opinion-card .star {
    width: 14px;
    height: 14px;
    background-image: url('/img/trustpilot/estrella.webp');
    background-size: cover;
}

.opinion-card .star.filled-star {
    background-image: url('/img/trustpilot/estrella-rellenada.webp');
} 

.opinion-card .bottom-section {
    padding: 20px 0;
    text-align: left;
}

.opinion-card .title {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-family: var(--roboto-bold);
    font-size: 20px;
}

.opinion-card .text {
    display: -webkit-box;
    -webkit-line-clamp: 9;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 14px;
    line-height: normal;
}

.category-cards-container {
    width: 1040px;
    overflow-x: hidden;
}

.category-cards-container .desktop-container {
    display: none;
    gap: 10px;
}

.category-card.tragaperras {
   background-image: url('/img/trustpilot/tragaperras.webp'); 
   background-size: contain;
   background-repeat: no-repeat;
   background-position: bottom;
}

.category-card.casino {
   background-image: url('/img/trustpilot/casino.webp'); 
   background-size: 130%;
   background-repeat: no-repeat;
   background-position: 90% 100%;
}

.category-card.proveedores {
   background-image: url('/img/trustpilot/proveedores.webp'); 
   background-size: contain;
   background-repeat: no-repeat;
   background-position: bottom;
}

.category-card, .regulation-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 35px 25px;
    background: #ffffff;
    border-radius: 10px;
    text-align: left;
    box-shadow: 0px 0px 20px #00000026;
}

.category-card {
    width: 340px;
    height: 430px;
}

.category-card .category, .regulation-card .regulation {
    width: fit-content;
    font-size: 20px;
    font-family: var(--roboto-bold-condensed);
    margin: unset;
}

.category-card .title, .regulation-card .title {
    font-size: 30px;
    font-family: var(--roboto-bold-condensed);
    line-height: normal;
}

.category-card .text, .regulation-card .text {
    font-size: 16px;
    line-height: normal;
}

.category-card.casino .text {
    max-width: 185px;
}

.regulation-cards-container {
    width: 1040px;
    overflow-x: hidden;
}

.regulation-card {
    width: 340px;
    height: 340px;
}

.regulation-cards-container.desktop {
    display: none;
    flex-wrap: wrap;
    gap: 10px;
}

 .regulation-card.licencia {
    background-image: url('/img/trustpilot/licencia.webp');
    background-size: contain;
    background-position: center calc(100% - 20px);
    background-repeat: no-repeat;
}
.regulation-card.juego-responsable {
    background-image: url('/img/trustpilot/responsable.webp');
    background-size: 130%;
    background-position: calc(0% + 5px) calc(100% - 20px);
    background-repeat: no-repeat;
}
.regulation-card.atencion-cliente {
    background-image: url('/img/trustpilot/atencion.webp');
    background-size: 160%;
    background-position: calc(0% + 5px) calc(100% - 20px);
    background-repeat: no-repeat;
}
.regulation-card.productos-homologados {
    background-image: url('/img/trustpilot/homologado.jpg');
    background-size: 115%;
    background-position: calc(0% + 5px) calc(100% - 20px);
    background-repeat: no-repeat;
}
.regulation-card.confidencialidad {
    background-image: url('/img/trustpilot/certificado.webp');
    background-size: 160%;
    background-position: calc(0% + 5px) calc(100% - 20px);
    background-repeat: no-repeat;
}
.regulation-card.retiros-y-depositos {
    background-image: url('/img/trustpilot/transacciones.webp');
    background-size: 130%;
    background-position: calc(0% + 5px) calc(100% - 20px);
    background-repeat: no-repeat;
}

.images-container {
    width: 820px;
    overflow-x: hidden;
}

.image-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 246px;
}

.image-container .image {
    width: 100%;
    height: 154px;
    background-color: #000000;
    border-radius: 5px;
}

.image-container .text {
    font-size: 16px;
    line-height: normal;
}

.stars-carousel-container {
    width: 100%;
    max-width: 1060px;
    display: flex;
    gap: 40px;
    overflow-x: auto;
    padding: 0 22px;
    scroll-snap-type: x mandatory; 
}

.stars-carousel-container::-webkit-scrollbar {
    display: none;
}

.star-container {
    display: flex;
    align-items: center;
    gap: 20px;
    width: 235px;
    min-height: 60px;
    min-width: 235px;
    margin-bottom: 10px;
    scroll-snap-align: center;
}

.star-container .image {
    width: 45px;
    min-width: 45px;
    height: 45px;
    background-image: url('/img/trustpilot/estrella.webp');
    background-size: cover;
}

.star-container .text {
    font-family: var(--roboto-bold);
    font-size: 16px;
    line-height: 20px;
    text-align: left;
}

.opinion-cards-2-container {
    width: 1040px;
    overflow: hidden;
    margin-bottom: 40px;
}

.opinion-card-2 {
    display: flex;
    flex-direction: column;
    width: 340px;
    min-height: 242px;
    border-radius: 10px;
    background-color: #ffffff;
    box-shadow: 0px 0px 20px #00000026;
}

.opinion-card-2 .top-section {
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 10px;
    padding: 12px 25px;
    border-bottom: 1px solid #000000;
}

.opinion-card-2 .image {
    border-radius: 100%;
    width: 44px;
    height: 44px;
    /*background-color: #000000;*/
}

.opinion-card-2 .name {
    font-size: 14px;
}

.opinion-card-2 .bottom-section {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    gap: 10px;
    text-align: start;
    padding: 20px 25px;
}

.opinion-card-2 .title {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-family: var(--roboto-bold);
    font-size: 20px;
    margin-bottom: 0;
}

.opinion-card-2 .stars-container {
    display: flex;
    justify-content: start;
    gap: 5px;
}

.opinion-card-2 .star {
    width: 14px;
    height: 14px;
    background-image: url('/img/trustpilot/estrella.webp');
    background-size: cover;
}

.opinion-card-2 .star.filled-star {
    background-image: url('/img/trustpilot/estrella-rellenada.webp');
}


.opinion-card-2 .text {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 85%;
    font-size: 14px;
    line-height: normal;
}

.opinion-cards-2-container .swiper-pagination {
    position: relative;    
    bottom: -5px !important;
}

.opinion-cards-2-container .swiper-pagination-bullet {
    border-radius: 100%;
    border: 4px solid #000000;
}

 .swiper-button-next, .swiper-button-prev {
    display: none;
}

.side-padding {
    padding: 0 15px;
    max-width: 780px;
}

.underlined {
    text-decoration: underline;
}

.swiper-wrapper {
    padding: 20px 0;
}

.in-live-text {
    position: absolute;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    align-items: center;
    width: 110px;
    height: 30px;
    font-family: var(--roboto-bold);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    bottom: 25px;
    background: #E4E4E4 0% 0% no-repeat padding-box;
    border-radius: 14px;
    font-size: 12px;
    z-index: 1;
}

.in-live-text::before {
    content: ' ';
    position: relative;
    width: 6px;
    height: 6px;
    background: var(--main-color);
    border-radius: 20px;
    animation: beat 2s linear infinite;
}

.strong {
    font-family: var(--roboto-bold);
}

@-webkit-keyframes beat {
    0%{
        box-shadow: 0px 0px 0px var(--main-color);
    }
    50%{
        box-shadow: 0px 0px 5px 2px var(--main-color);
    }
    100%{
        box-shadow: 0px 0px 0px var(--main-color);
    }
}
@keyframes beat {
    0%{
        box-shadow: 0px 0px 0px var(--main-color);
    }
    50%{
        box-shadow: 0px 0px 5px 2px var(--main-color);
    }
    100%{
        box-shadow: 0px 0px 0px var(--main-color);
    }
}

@media screen and (min-width: 1024px) {
    h1, h1.side-padding {
        max-width: 495px;
    }
    
    .opinion-card {
        width: 715px;
        height: 230px;
    }
    
    .opinion-card .name {
        text-wrap: nowrap;
    }
    
    .opinion-card .stars-container {
        align-self: unset;
    }
    
    .category-cards-container {
        width: 1070px;
        padding: 0 15px;
    }
    
    .category-cards-container .mobile-container {
        display: none;
    }
    
    .category-cards-container .desktop-container {
        display: flex;
    }
    
    .regulation-cards-container.mobile {
        display: none;
    }
    
    .regulation-cards-container.desktop {
        display: flex;
        width: 1070px;
        padding: 15px;
    }
    
    .opinion-cards-2-container {
        width: 1130px;
        overflow-x: hidden;
    }
    
    .opinion-cards-2-container .swiper-slide {
        padding: 10px;
    }
    
    .stars-carousel-container {
        padding: 0;
    }
        
    .swiper-button-next, .swiper-button-prev, .swiper-button-next:after, .swiper-button-prev:after {
        display: block;
        content: '';
        width: 40px;
        height: 40px;
    }
    
    .swiper-button-next:after {
        background: url(/img/layout/icons/flecha_der.webp) no-repeat;
        background-size: 40px;
    }
    
    .swiper-button-prev:after {
        background: url(/img/layout/icons/flecha_izq.webp) no-repeat;
        background-size: 40px;
    }
}