/* Estilo do template: P1 Cartão - Splide Version */


.verMaisBeneP2 { width: 100%; margin: 10px 0 0 0; display: flex; justify-content: flex-end; border-top: 1px solid #EEE; padding: 10px 0 0 0; }
                    .verMaisBeneP2 a { border-radius: 30px; background-color: var(--primary-color); font-size: 12px; color: #FFF; padding: 5px 10px;  display: flex; align-items: center; margin: 0 0 0 auto;}
                    .verMaisBeneP2 a i { margin: 0 0 -5px 5px;}


                    .itemCard.fotoCardPs {
    position: relative; /* Necessário para posicionar a imagem e o nome */
    overflow: hidden;
}

.itemCard .card-image {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Essencial para replicar 'background-size: cover' */
}

/* Garante que o nome do usuário fique sobre a imagem */
.itemCard #labelNome {
    position: relative;
    z-index: 2;
}
                    
 .hdPb {
     padding: 10px 0 20px 0;
     width: 100%;
     margin: 0 auto!important;
     text-align: center;
     box-sizing: border-box;
}
 .loaderDummLista {
     display: flex;
     background-color:#FFF;
     z-index: 9;
     width: 100%;
     height: 100%;
     position: absolute;
     top: 0;
     left: 0;
     grid-column-gap: 10px;
     justify-content: flex-start;
     align-items: center;
     flex-wrap: wrap;
     /* --- ALTERAÇÃO (CLS) --- */
     /* Define o estado inicial para a animação fecharLoad */
     opacity: 1;
     visibility: visible;
     /* --- FIM DA ALTERAÇÃO --- */
}

 .acordAberto .loaderDummLista {
     -webkit-animation-duration: .3s;
     -webkit-animation-name: fecharLoad;
     /* --- ALTERAÇÃO (LCP) --- */
     /* A linha abaixo foi removida. Ela causava um atraso de 1s no LCP. */
     /* -webkit-animation-delay: 1s; */
     /* --- FIM DA ALTERAÇÃO --- */
     -webkit-animation-fill-mode: forwards;
}
 .loaderDummLista b, .loaderDummLista i {
     flex: 1;
     margin: 15px 0 0 0;
     height: 40px;
     border-radius: 8px;
     background-color: #ddd;
     position: relative;
}
 .loaderDummLista em {
     flex: 2;
     display: flex;
     align-items: center;
     justify-content: flex-start
}
 .loaderDummLista em {
     flex: 2;
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     justify-content: space-around
}
 .loaderDummLista em b, .loaderDummLista em i {
     width: calc(33.33% - 10px)!important;
     flex:none;
}
 .loaderDummLista b, .loaderDummLista b:before, .loaderDummLista i {
     position: relative;
     background: linear-gradient(120deg, rgba(245, 245, 245, 0) 0%, #DDD 50%, rgba(245, 245, 245, 0) 100%);
     background-size: 200% 100%;
     animation: loading 1.5s infinite;
}
 .loaderDummLista b:before {
     content: '';
     border-radius: 5px;
     width: 70%;
     height: 14px;
     position: absolute;
     top: -20px;
     left: 0;
}
 @keyframes loading {
     0% {
         opacity: 1;
    }
     100% {
         opacity: .4;
    }
}
 @-webkit-keyframes fecharLoad {
     /* --- ALTERAÇÃO (CLS) --- */
     /* Modificado para usar opacity e visibility, evitando CLS. */
     0% { 
         opacity: 1; 
         visibility: visible; 
     } 
     99% { 
         opacity: 0; 
         visibility: visible; 
     }
     100% { 
         opacity: 0; 
         visibility: hidden; /* Não usa 'display: none' para evitar CLS */
     }
     /* --- FIM DA ALTERAÇÃO --- */
}
 .topP1Card {
     padding: 60px 0 30px 0;
     background-color: var(--primary-color);
     color: #FFF
}
 .topP1Card h1, .topP1Card h2 {
     color: #FFF;
}
 .infoPerson {
     width: 100%;
     display: flex;
     align-items: center;
     justify-content: flex-start;
}
 .avtrr {
     width: 17px;
     height: 17px;
     border-radius: 50%;
     background-color: #FFF;
     margin: 0 5px 0 0;
}
 .infoPerson b {
     font-size: 15px;
}
 .centra {
     width: 90%;
     max-width: 1100px;
     margin: 0 auto;
}
 .topP1Card .centra {
     max-width: 1250px;
}
 .ttP1Top {
     margin: 30px 0 0 0;
     text-align: left;
     box-sizing: border-box;
     padding: 0 0 0 70px;
     position: relative;
}
 .ttP1Top h1 {
     text-align: left;
     font-weight: 700;
     margin: 0 0 10px 0 
}
 .ttP1Top h2 {
     font-weight: normal;
     margin: 0;
}
 .ttP1Top i {
     position: absolute;
     top: 0;
     left: 0;
     font-size: 50px;
}
 .paginaPerf {
     padding: 80px 0 20px 0;
}
 .adQuest:after {
     content: '';
     top: 0;
     left: 0;
     position: absolute;
     width: 100%;
     height: 8px;
     background-color: var(--primary-color);
}
 .adQuest {
     width: 100%;
     overflow: hidden;
     position: relative;
     padding: 40px 30px;
     box-sizing: border-box;
     border-radius: 8px;
     box-shadow: 0px 2px 25px 0px rgba(0, 0, 0, 0.10);
}
 .radio-container {
     width: 100%;
     max-width: 960px;
     margin: 0 auto;
     display: flex;
     gap: 10px;
}
 .radio-label {
    display: flex;
     flex: 1;
     align-items: center;
     justify-content: flex-start;
     padding: 15px 20px;
     border: 2px solid var(--primary-color);
     border-radius: 8px;
     cursor: pointer;
     color: var(--primary-color);
     font-size: 14px;
     transition: all 0.3s ease;
}
 input[type="radio"] {
    display: none;
}
 input[type="radio"]:checked + .radio-label {
    background-color: var(--primary-color);
     color: white;
     font-weight: bold;
}
 .ok-button {
    background-color: var(--primary-color);
     flex: 1.3;
     color: white;
     border: none;
     padding: 15px 20px;
     border-radius: 8px;
     font-weight: bold;
     cursor: pointer;
}
 .ok-button:hover {
     opacity: .8
}
 .tituloAdQuest {
     color: var(--primary-color);
     margin: 0 0 20px 0;
     display: flex;
     align-items: center;
     justify-content: flex-start;
}
 .tituloAdQuest i {
     font-size: 30px;
     margin: 0 10px -5px 0;
}
 .tituloAdQuest b {
     font-size: 18px;
     font-weight: normal;
}
 .tituloAdQuest b strong {
     font-weight: 800!important;
}
 .linhaSugCards {
     padding: 50px 0;
     background-color: #FFF;
     overflow: hidden;
     background: rgb(255,0,0);
     background: linear-gradient(180deg, #FFF 245px, #FFF 245px, var(--primary-color) 245px, var(--primary-color) 100%);
}
 .centraCards {
     width: 90%;
     max-width: 1100px;
     margin: 0 auto 30px auto;
     display: flex;
     align-items: center;
     justify-content: space-around;
     box-sizing: border-box;
     padding: 50px 25px;
     background-color: #FFF;
     border-radius: 8px;
     box-shadow: 0px 2px 25px 0px rgba(0, 0, 0, 0.10);
}
 .infoCCard {
     width: calc(100% - 350px);
     max-width: 600px;
}
 .holdaCarCards {
     width: 350px;
     position: relative
}
 .fullCards {
     width: 990px;
     overflow: hidden;
     position: relative;
}

/* SPLIDE CAROUSEL STYLES - Substitui os estilos do Owl */
 .carCards {
     width:100%;
     min-width: 900px;
     box-sizing:border-box;
     padding:0 30px;
     margin: 0 0 0 -240px;
}

/* Navegação do Splide - equivalente ao owl-nav */
.splide__arrows {
    width: 100%;
    height: 1px;
}

.splide__arrow {
    width: 33px;
    height: 33px;
    display: flex;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 33px;
    color: #333;
    position: absolute;
    z-index: 9;
    top: calc(50% - 25px);
    cursor: pointer;
    transition: all .2s ease;
    background: rgba(255,255,255,.5);
    border: none;
    opacity: 1;
}

.splide__arrow--prev {
    left: 290px;
    transform: rotate(180deg)
}

.splide__arrow--next {
    left: 666px;
}

.splide__arrow svg {
    width: 20px;
    height: 20px;
    fill: #333;
}

/* Slides do Splide */
.carCards .itemCard {
    height: 280px;
    position: relative;
    margin: 10px 0;
    overflow: hidden;
    box-sizing: border-box;
    border-radius: 8px;
    transition: all .15s ease;
}

.carCards .itemCard img {
    width: 100%!important;
    height: auto!important;
}

#laFotoCard {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.bgRule {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* Esconder paginação do Splide */
.splide__pagination {
    display: none;
}

 .chance {
     width: fit-content;
     display: flex;
     box-sizing: border-box;
     padding: 5px 12px;
     align-items: center;
     justify-content: center;
     margin: 0 0 20px 0;
     border-radius: 30px;
     background-color: #BBFFD7;
     font-size: 12px;
     color: #09B24F
}
 .chance i {
     font-size: 14px;
     margin: 0 5px -3px 0;
}
 .infoCCard h3 {
     font-size: 40px;
     margin: 0 0 30px 0;
}
 .rating {
     margin: 20px 0 0 0;
     display: flex;
     align-items: center;
     justify-content: flex-start;
}
 .rating b {
     font-size: 15px;
}
 #strelasP1 {
     display: flex;
     align-items: center;
     justify-content: center;
     margin: 0 0 -3px 7px;
}
 #strelasP1 i {
     color: #ccc;
     font-size: 18px;
     margin: 0 3px 0 0;
     transition: all .5s ease
}
 [class^="ranktipo"] i {
    color: #ccc;
}
 [class^="ranktipo"] i:nth-of-type(-n+1) {
    color: #FFC738 !important;
}
 .ranktipo2 i:nth-of-type(-n+2), .ranktipo3 i:nth-of-type(-n+3), .ranktipo4 i:nth-of-type(-n+4), .ranktipo5 i {
    color: #FFC738 !important;
}

/* Estados dos slides - equivalente aos estados do Owl */
.splide__slide.is-active .itemCard {
    transform: scale(.8);
}

.splide__slide.center .itemCard {
    transform: scale(1);
}

 .flexPrt {
     display: flex;
     align-items: center;
     justify-content: center;
}
 .brCO {
     color: #FFF;
}
 .dicAn {
    flex: 2
}
 .butActs {
     flex: 1;
}
 .botAct {
     display: flex;
     align-items: center;
     box-sizing: border-box;
     border-radius: 8px;
     padding: 14px 0;
     justify-content: center;
     background-color: #FFF;
     color: #000;
}
 .botAct i {
     transform: rotate(90deg);
     margin: 0 0 0 5px;
}
 .disccVer {
     font-size: 12px;
     margin: 10px 0 0 0;
     text-align: center;
     display: flex;
     align-items: center;
     justify-content: center;
}
 .disccVer i {
    font-size: 16px;
     margin: 0 5px -4px 0
}
 .paginaPad {
     padding: 40px 0 20px 0;
}
 .infoCardAccord {
     width: 100%;
     margin: 0 0 30px 0;
}
 .labelInfoAcc {
     width: 100%;
     position: relative;
     display: block;
     padding: 20px 0;
     border-bottom: 3px solid #F6F6F6;
     cursor: pointer;
}
 .labelInfoAcc h2 {
     font-size: 22px!important;
     display: flex;
     align-items: center;
     justify-content: flex-start;
}
 .labelInfoAcc:after {
     position: absolute;
     top: calc(50% - 20px);
     right: 20px;
     transition: all .15s ease;
     color: var(--primary-color);
}
 .labelInfoAcc:before {
     content: url('https://api.iconify.design/ri/arrow-left-s-line.svg?color=%23333333&width=18');
     transition: all .15s ease;
     transform: rotate(-180deg);
     position: absolute;
     top: calc(50% - 23px);
     right: 0;
}
 .contentAccord {
     width: 100%;
     background-color: #FFF;
     position: relative;
     height: 0px;
     overflow: hidden;
     transition: all .15s ease
}
 .acordAberto .contentAccord {
     height: auto!important;
     margin: 20px 0 0 0;
}
 .acordAberto .labelInfoAcc:after {
     right: 22px
}
 .acordAberto .labelInfoAcc:before {
     transform: rotate(-90deg);
     top: calc(50% - 21px);
}
 .iconeAcc {
     width: 50px;
     height: 50px;
     margin: 0 10px 0 0;
     border-radius: 5px;
     font-size: 27px;
     display: flex;
     align-items: center;
     justify-content: center;
     background-color: color-mix(in srgb, var(--primary-color) 12%, transparent)
}
 .iconeAcc i {
     margin: 4px 0 0 0;
}
 .linhaVantagem {
     width: 100%;
     display: flex;
     align-items: center;
     justify-content: flex-start;
     min-height: 100px;
     position: relative;
     box-sizing: border-box;
     padding: 15px 95px 15px 90px;
}
 .linhaVantagem b {
     width: 100%;
     font-weight: 600
}
 .linhaVantagem a {
     width: 140px;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 15px;
     color: var(--primary-color);
     text-decoration: underline;
     position: absolute;
     top: calc(50% - 10px);
     right: 15px;
}
 .linhaVantagem a i {
    font-size: 16px;
     margin: 0 0 -4px 4px;
}
 .linhaVantagem:nth-of-type(odd) {
    background-color: #F6F6F6
}
 .umaVantagem .iconePVantagem {
     background-color: #B6F3CF;
}
 .umaDesvantagem .iconePVantagem {
     background-color: #FFBABA;
}
 .iconePVantagem {
     width: 56px;
     height: 56px;
     box-sizing: border-box;
     padding: 4px 0 0 0;
     border-radius: 50%;
     font-size: 25px;
     background-color: #aaa;
     display: flex;
     align-items: center;
     justify-content: center;
     top: calc(50% - 28px);
     left: 15px;
     position: absolute;
}
 .linhaInfosContent {
     width: 100%;
     flex-wrap: wrap;
     display: flex;
     align-items: center;
     justify-content: flex-start;
     grid-column-gap: 10px;
}
 .umInfoContent {
     flex: 1;
}
 .umInfoContent em {
     font-style: normal;
     font-size: 12px;
     color: #999;
     display: block;
     margin: 0 0 5px 0;
}
 .umInfoContent strong {
     font-size: 22px;
}
 .linhaBeneficios {
     flex-wrap: wrap;
     display: flex;
     align-items: flex-start;
     justify-content: flex-start;
     grid-column-gap: 5px;
}
 .linhaBeneficios b {
     box-sizing: border-box;
     font-weight: normal;
     min-height: 28px;
     display: flex;
     align-items: center;
     font-size: 12px;
     padding: 3px 10px 3px 30px;
     border-radius: 20px;
     background-color: #eee;
     margin: 0 0 5px 0;
     position: relative;
}
 .linhaBeneficios b:before {
     content: url('https://api.iconify.design/material-symbols/check-circle.svg?color=%2332BEA6&width=28');
     position: absolute;
     top: calc(50% - 14px);
     left: 0;
}
 .umInfoContent:last-of-type {
     flex: 2;
}
 .maxInfoContent {
     width: calc(33.33% - 8px);
     box-sizing: border-box;
     padding: 18px 15px;
     display: flex;
     align-items: center;
     justify-content: flex-start;
}
 .maxInfoContent:nth-of-type(even) {
     background-color: #F6F6F6;
}
 .maxInfoContent i {
     width: 40px;
     height: 40px;
     font-size: 25px;
     margin: 0 10px 0 0;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     background-color: #b6f3cf 
}
 .maxInfoContent b {
     font-size: 20px;
     font-weight: normal;
}
 .sobreCard {
     width: 100%;
     max-width: 970px;
     margin: 60px auto 50px auto;
}
 .sobreCard h2 {
     text-align: center;
     margin-bottom: 40px!important;
     display: block;
}
 .sobreCard p {
     margin: 10px 0;
     line-height: 160%;
}
 .interessado {
     width: 100%;
     padding: 40px 25px 50px 25px;
     margin: 100px auto 50px auto;
     box-sizing: border-box;
     border: 1px solid var(--primary-color);
     border-radius: 15px;
     position: relative;
}
 .starsInt {
     position: absolute;
     top: -25px;
     box-sizing: border-box;
     padding: 0 20px;
     right: 80px;
     background-color: #fff;
     height: 50px;
}
 .starsInt i {
     color: #FFC738;
     font-size: 50px;
     margin: 0 3px;
}
 .intrPerson {
     width: 250px;
     display: block;
     margin: 0 auto 10px auto;
}
 .interessado h3 {
     font-size: 33px;
     display: block;
     margin: 0 auto 35px auto;
     text-align: center;
     color: var(--primary-color)
}
 .centralInfo {
     margin: 10px auto;
     max-width: 600px;
     text-align: center;
}
 .passoCard {
     width: 100%;
     max-width: 860px;
     margin: 50px auto 60px auto;
     display: flex;
     align-items: stretch;
     justify-content: space-between;
}
 .umPassoCard {
     width: calc(33.33% - 20px);
     display: flex;
     align-items: stretch;
     justify-content: space-between;
}
 .umPassoCard b {
     width: 45px;
     border-radius: 8px;
     background-color: color-mix(in srgb, var(--primary-color) 12%, transparent);
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 15px;
}
 .umPassoCard p {
     width: calc(100% - 60px)
}
 .verMais {
     width: 100%;
     max-width: 340px;
     padding: 17px 20px;
     margin: 0 auto 10px auto;
     display: flex;
     background-color: var(--primary-color);
     text-align: center;
     color: #FFF;
     align-items: center;
     justify-content: center;
     border-radius: 8px;
     box-sizing: border-box; 
}
 .verMais i {
     transform: rotate(90deg);
     margin: 0 0 0 4px;
}
 .novaRecomendacao {
     width: 100%;
     max-width: 970px;
     text-align: center;
     box-sizing: border-box;
     border-radius: 8px;
     padding: 50px 20px;
     margin: 60px auto 50px auto;
     background-color: var(--primary-color);
     color: #FFF;
}
 .novaRecomendacao h3 {
     color: #FFF;
     font-size: 28px;
     max-width: 450px;
     margin: 0 auto 20px auto;
}
 .novaRecomendacao p {
     width: 100%;
     max-width: 450px;
     margin: 10px auto;
}
 .cta {
     width: 100%;
     max-width: 380px;
     border-radius: 8px;
     box-sizing: border-box;
     margin: 20px auto 0 auto;
     display: flex;
     align-items: center;
     justify-content: center;
     padding: 17px 20px;
}
 .ccrBR {
     background-color: #FFF;
}
 .adRemote {
     width: 100%;
     margin: 0 0 20px 0;
     min-height: 30px;
     display: flex;
     align-items: center;
     justify-content: center;
     box-sizing: border-box;
}

#labelNome {
    box-sizing: border-box; 
    text-transform: uppercase; 
    position: absolute; 
    color: #fff;
    width: 270px;
    padding: 5px 10px;
    font-family: Inconsolata, monospace;
    text-shadow: 1px 1px 1px #000;
    font-size: 18px;
    letter-spacing: 1px;
}

.normal.isRight {
    text-align: right;
    margin: 0 0 0 -270px;
}

.girado {
    margin: 240px 0 0;
    text-align: right;
    transform-origin: bottom left;
    transform: rotate(-90deg);
}

.girado.isBottom {
    text-align: left;
    margin: -30px 0 0;
}

/* RESPONSIVE STYLES - Adaptado para Splide */
@media screen and (max-width: 1518px) {
    .carCards {
        min-width: 600px;
        margin: 0 0 0 -200px;
    }
    .fullCards {
        width: 800px;
        overflow: hidden;
        position: relative;
    }
    .carCards .itemCard {
        height: 219px;
    }
    .splide__arrow--prev {
        left: 235px;
    }
    .splide__arrow--next {
        left: 530px;
    }
}

@media screen and (max-width: 1310px) {
    .centraCards {
        justify-content: flex-start
    }
    .infoCCard {
        width: calc(100% - 480px);
    }
}

@media screen and (max-width: 1100px) {
    
    #labelNome {
       font-size: 14px;
   }
    .labelInfoAcc h2 {
        font-size: 17px!important;
        width: calc(100% - 60px);
   }
    .iconeAcc {
        width: 40px;
        height: 40px;
        font-size: 24px;
   }
    .loaderDummLista {
        flex-wrap: wrap;
        padding: 30px 0 0 0;
   }
    .loaderDummLista em {
        flex:none;
   }
    .loaderDummLista b, .loaderDummLista em i {
        flex: none;
        margin: 18px 0 5px 0;
   }
    .loaderDummLista b {
        width: 50%;
        height: 25px
   }
    .loaderDummLista em i {
        height: 25px
   }
    .loaderDummLista em {
        width: 100%;
   }
    .adQuest {
        margin: 0 0 30px 0;
   }
    .topP1Card .centra, .centra {
        max-width: 450px;
   }
    .paginaPad .centra {
        max-width: none;
   }
    .topP1Card {
       padding: 5px 0 15px 0;
   }
    .avtrr {
        width: 14px;
        height: 14px;
        margin: 0 5px 0 0;
   }
    .infoPerson b {
        font-size: 13px;
   }
    .ttP1Top {
        margin: 15px 0 0 0;
        padding: 0 0 0 40px;
   }
    .ttP1Top i {display: flex; align-items: flex-start;}


    .ttP1Top i svg {
        width: 30px;
        margin: -8px 0 0 0;
   }
    .ttP1Top h1 {
        font-size: 23px!important;
        margin: 0 0 5px 0
   }
    .ttP1Top h2 {
        font-size: 15px!important;
   }
    .paginaPerf {
        padding: 5px 0 10px 0;
   }
    .radio-container {
        flex-wrap: wrap;
        justify-content: flex-start
   }
    .radio-label {
        width: calc(50% - 10px);
        margin: 0 2px;
        flex: none;
   }
    .ok-button {
        width: calc(100% - 4px);
        margin: 5px 0 0 2px;
        flex: none;
        padding: 20px 0;
   }
    .holdaCarCards {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        margin: 0;
   }
    .fullCards {
        width: 100%;
        margin: 0;
        height: 180px;
        position: relative;
   }
    .carCards {
        width: 800px;
        left: calc(50% - 400px);
        margin: 0;
        padding: 0 70px;
        position: absolute;
        top: 0;
   }
    .carCards .itemCard {
        height: 170px;
        position: relative;
   }
    
    
    /* Splide navigation mobile */
    .splide__arrow {
       width: 25px;
        height: 25px;
        padding: 2px 0 0 0;
        font-size: 22px;
   }
    .splide__arrow--prev {
       left: 235px;
   }
    .splide__arrow--next {
       left: 537px;
   }
    
    .splide__slide.center .itemCard {
        filter: grayscale(0)
   }
    .splide__slide.center .itemCard:before {
       opacity: 0;
   }
    .linhaSugCards {
        position: relative;
        padding: 200px 0 50px 0;
        background: linear-gradient(180deg, #FFF 87px, #FFF 87px, var(--primary-color) 87px, var(--primary-color) 100%);
   }
    
    .centraCards {
        max-width: 450px;
        border-radius: 15px;
        padding: 25px;
        margin: 30px auto
   }
    .infoCCard {
        width: 100%;
   }
    .infoCCard h3 {
        font-size: 28px;
        margin: 0 0 20px 0;
   }
    .flexPrt {
        flex-wrap: wrap;
   }
    .dicAn {
        flex: none;
        width: 100%;
        text-align: center;
   }
    .botAct {
       padding: 18px 0;
        margin: 15px auto;
   }
    .paginaPad {
        background-color: #FFF;
        margin: -10px 0 0 0;
        position: relative;
        border-radius: 10px 10px 0 0;
   }
    .linhaInfosContent {
        flex-wrap: wrap;
   }
    .umInfoContent {
        width: 100%;
        flex: none;
        margin: 20px 0 5px 0;
   }
    .maxInfoContent {
        width: 100%;
   }
    .linhaMaisAcc {
       text-align: center;
   }
    .linhaMaisAcc a {
        margin: 0 auto;
   }
    .sobreCard h2 {
       text-align: left;
        margin-bottom: 25px!important;
   }
    .starsInt {
        top: -12px;
        padding: 0 8px;
        right: 40px;
        height: 25px;
   }
    .starsInt i {
       font-size: 22px;
        margin: 0
   }
    .intrPerson {
        width: 160px;
   }
    .interessado {
        padding: 40px 20px 30px 20px;
        margin: 70px auto 30px auto
   }
    .interessado h3 {
       font-size: 26px;
   }
    .passoCard {
        margin: 50px auto 35px auto;
        display: block;
   }
    .umPassoCard {
        width: 100%;
        max-width: 350px;
        margin: 0 auto 25px auto;
        align-items: flex-start;
   }
    .umPassoCard b {
        width: 65px;
        height: 65px;
        margin: 4px 0 0 0;
   }
    .umPassoCard p {
        width: calc(100% - 82px);
        margin: 0;
   }
    .novaRecomendacao {
        margin: 30px auto 20px auto;
   }
}

/* ========== ADICIONAR ESTAS REGRAS AO FINAL DO ARQUIVO cartaoP1.css ========== */

/* Esconder navegação padrão do Splide */
.splide__arrows {
    display: none !important;
}

/* Container para navegação customizada */
.custom-splide-nav {
    width: 100%;
    height: 1px;
    position: relative;
}

/* Estilo base para botões customizados como links */
.custom-splide-arrow {
    width: 33px;
    height: 33px;
    display: flex;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 33px;
    color: #333;
    position: absolute;
    z-index: 9;
    top: calc(50% - 170px);
    cursor: pointer;
    transition: all .2s ease;
    background: rgba(255,255,255,.5);
    border: none;
    opacity: 1;
    text-decoration: none;
    outline: none;
}
.custom-splide-arrow i 
{
    height: 48px;
}


/* Estados de hover e focus para os links */
.custom-splide-arrow:hover,
.custom-splide-arrow:focus {
    opacity: 0.8;
    color: #333;
    text-decoration: none;
    outline: none;
    background: rgba(255,255,255,.7);
}

.custom-splide-arrow:visited {
    color: #333;
    text-decoration: none;
}

/* Posicionamento dos botões */
.custom-splide-arrow--prev {
    left: 50px;
}

.custom-splide-arrow--next {
    left: 426px;
}

/* Ícones dentro dos botões */
.custom-splide-arrow svg,
.custom-splide-arrow .iconify {
    width: 20px;
    height: 20px;
    fill: #333;
}

/* ========== RESPONSIVIDADE ========== */

/* Telas médias (até 1518px) */
@media screen and (max-width: 1518px) {
    .custom-splide-arrow {
        top: calc(50% - 134px);
    }
    .custom-splide-arrow--prev {
        left: 28px;
    }
    .custom-splide-arrow--next {
        left: 338px;
    }
}

/* Mobile e tablets (até 1100px) */
@media screen and (max-width: 1100px) {
    .custom-splide-nav {
        width: 100%;
        height: 30px;
        position: relative;
        top: 0;
    }

    .custom-splide-arrow { position: absolute; top: 71px;
        border: 1px solid var(--primary-color);
        background: #FFF;}

    .custom-splide-arrow--prev {
        left: calc(50% - 140px);
    }
    
    .custom-splide-arrow--next {
        left: auto;
        right: calc(50% - 140px);
    }
    
    .custom-splide-arrow .iconify {
        width: 16px;
        height: 16px;
    }


    .acordAberto .contentAccord { overflow: visible;}
    .adRemote { width: calc(100% + 10vw); margin: 0 0 30px -5vw;}
}


/* Melhorias de acessibilidade */
.custom-splide-arrow:focus {
    box-shadow: 0 0 0 2px rgba(51, 51, 51, 0.5);
}


/* ========== MODAL ÂNCORA - ADICIONAR AO FINAL DO cartaoP1.css ========== */

/* Modal principal */
#modalAncora {
    width: 100%;
    position: fixed;
    transition: all .35s ease;
    bottom: -400px;
    left: 0;
    background-color: var(--primary-color);
    border-radius: 20px 20px 0 0;
    box-sizing: border-box;
    padding: 30px 0;
    color: #FFF;
    z-index: 9999;
    box-shadow: 0px -1px 16px -9px #333;
}

/* Estado ativo do modal */
.ancoraAtiva {
    bottom: 0px !important;
}

/* Botão de fechar */
.fechaAncora {
    color: #000;
    position: absolute;
    top: -25px;
    right: 15px;
    font-size: 22px;
}


/* Container principal do modal */
.ancCentra {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto;
    width: 94%;
}

/* Seção de texto do modal */


.l1Moda b {
    display: block;
    font-size: 13px;
}

.l1Moda em {
    font-style: normal;
    font-size: 9px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.l1Moda em i {
    font-size: 11px;
    margin: 0 5px -2px 0;
}


/* Botão CTA do modal */
.ctaModa {
    display: flex;
    align-items: center;
    font-size: 11px;
    justify-content: center;
    font-weight: 700;
    color: #000;
    border-radius: 30px;
    box-sizing: border-box;
    padding: 5px 12px 5px 5px;
    background-color: #FFF;
}

.ctaModa:hover {
    background-color: #0c0;
}

/* Ícone do botão CTA */
.ctaModa i {
    width: 30px;
    height: 30px;
    margin: 0 5px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--primary-color);
    color: #FFF;
    border-radius: 50%;
    font-size: 22px;
    transform: rotate(90deg);
}


/* Esconder modal em telas muito grandes (desktop) */
@media screen and (min-width: 1200px) {
    #modalAncora {
        display: none !important;
    }
}