/* ============================================
   CMS SHAMPOO PAGE - DESKTOP STYLES
   Miriam Quevedo - CMS 103
   ============================================ */

/* === RESET BOOTSTRAP INSIDE OUR WRAPPER === */
#advanced_cms_wrapper_103,
#advanced_cms_wrapper_103 *,
#advanced_cms_wrapper_103 *::before,
#advanced_cms_wrapper_103 *::after {
    box-sizing: border-box;
}

#advanced_cms_wrapper_103 [class*="col-"] {
    float: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
    position: relative;
}

#advanced_cms_wrapper_103 .row {
    margin: 0 !important;
    display: contents;
}

/* === GENERAL === */
#advanced_cms_wrapper_103 {
    color: #000;
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(-50vw + 50%) !important;
    padding: 0 !important;
    overflow: hidden;
    background: white;
}

#advanced_cms_wrapper_103 .rte {
    padding: 0;
    margin: 0;
}

#advanced_cms_wrapper_103 .rte h2 {
    font-size: 32px;
    line-height: 1.2;
    letter-spacing: -0.5px;
    color: #000;
    margin: 0 0 15px;
}

#advanced_cms_wrapper_103 .rte p {
    font-size: 14px;
    line-height: 1.6;
    letter-spacing: -0.07px;
    color: #000;
    margin: 0 0 10px;
}

#advanced_cms_wrapper_103 .rte li {
    font-size: 14px;
    line-height: 1.6;
    letter-spacing: -0.07px;
    color: #000;
}

#advanced_cms_wrapper_103 .rte a {
    color: #000;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    border: 1px solid #000;
    padding: 10px 25px;
}

#advanced_cms_wrapper_103 .rte a:hover {
    color: #FFF;
    background-color: #000;
}

#advanced_cms_wrapper_103 .img-responsive {
    width: 100%;
    height: auto;
    display: block;
}

/* === S1 - HERO: 2 imagenes lado a lado === */
#advanced_cms_wrapper_103 .S1 {
    display: flex !important;
    flex-wrap: nowrap;
    gap: 0;
    width: 100%;
}

#advanced_cms_wrapper_103 .S1 > div {
    flex: 1 1 50% !important;
    width: 50% !important;
    padding: 0 !important;
}

#advanced_cms_wrapper_103 .S1 > div:last-child {
    display: none;
}

#advanced_cms_wrapper_103 .S1 .img-responsive {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* === S2 - Texto "lavar el cabello..." === */
#advanced_cms_wrapper_103 .S2 {
    max-width: 560px;
    margin: auto;
    text-align: center;
    padding: 60px 0;
}

#advanced_cms_wrapper_103 .S2 .rte h2 {
    margin-bottom: 25px;
}

#advanced_cms_wrapper_103 .S2 .rte p:nth-child(3) {
    text-transform: uppercase;
}

#advanced_cms_wrapper_103 .S2 .rte a {
    display: inline-block;
    margin-top: 15px;
    font-weight: 400;
}

/* === S3 - Imagen redondeada izq + texto der === */
#advanced_cms_wrapper_103 .S3 {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    gap: 60px;
    padding: 15px 0;
}

#advanced_cms_wrapper_103 .S3 > div:first-child {
    flex: 0 0 48% !important;
    width: 48% !important;
    padding: 0 !important;
}

#advanced_cms_wrapper_103 .S3 > div:first-child .img-responsive {
}

#advanced_cms_wrapper_103 .S3 > div:last-child {
    flex: 1 !important;
    padding: 0 80px 0 0 !important;
}

#advanced_cms_wrapper_103 .S3 .rte  {
    text-align: center;
    max-width: 590px;
    margin: auto;
}

#advanced_cms_wrapper_103 .S3 .rte h2 {
    max-width: 490px;
    margin: 0 auto 15px;
}

#advanced_cms_wrapper_103 .S3 .rte p {
    margin-bottom: 12px;
}

#advanced_cms_wrapper_103 .S3 .rte p:nth-child(2) {
    text-transform: uppercase;
}

/* === S4 - Titulo "biotecnologia de precision" === */
#advanced_cms_wrapper_103 .S4 {
    max-width: 540px;
    text-align: center;
    padding: 67px 0 32px;
    margin: auto
}

#advanced_cms_wrapper_103 .S4 .rte h2 {
    margin-bottom: 10px;
}

#advanced_cms_wrapper_103 .S4 .rte p:nth-child(2) {
    text-transform: uppercase;
}

/* === S5 - 3 cards con imagen === */
#advanced_cms_wrapper_103 .S5 {
    display: flex !important;
    flex-wrap: nowrap;
    justify-content: center;
    gap: 30px;
    padding: 0 80px;
}

#advanced_cms_wrapper_103 .S5 > div {
    flex: 1 !important;
    width: 33.33% !important;
    text-align: center;
    padding: 0 10px !important;
}

#advanced_cms_wrapper_103 .S5 .rte img {
    max-width: 100%;
    width: 280px;
    height: auto;
    margin-bottom: 15px;
}

#advanced_cms_wrapper_103 .S5 .rte {
    max-width: 300px;
    margin: auto;
}

#advanced_cms_wrapper_103 .S5 .rte sup {
    font-size: 10px;
    font-weight: 600;
    margin-right: 5px;
}

/* === S6 - Cita "fuimos pioneros..." === */
#advanced_cms_wrapper_103 .S6 {
    text-align: center;
    position: relative;
    padding: 99px 0;
}

#advanced_cms_wrapper_103 .S6 .rte p {
    font-style: italic;
    max-width: 650px;
    margin: auto;
    text-transform: uppercase;
}

#advanced_cms_wrapper_103 .S6 .rte a {
    display: inline-block;
    margin-top: 20px;
    font-style: normal;
}

/* === S7 - Formulas respetuosas (fondo rosa) === */
#advanced_cms_wrapper_103 .S7 {
    text-align: center;
    position: relative;
}

#advanced_cms_wrapper_103 .S7 > div:first-child {
    z-index: 1;
}

#advanced_cms_wrapper_103 .S7 > div:nth-child(3) {
    display: none;
}

#advanced_cms_wrapper_103 .S7 > div:last-child {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, calc(-50% + 38px));
    width: 530px !important;
    max-width: 93%;
}

#advanced_cms_wrapper_103 .S7 .rte h2 {
    margin-bottom: -8px;
}

#advanced_cms_wrapper_103 .S7 > div:nth-child(2) {
    margin: 20px 0;
}

#advanced_cms_wrapper_103 .S7 .img-responsive {
    width: 100%;
    border-radius: 0;
}

#advanced_cms_wrapper_103 .S7 > div:last-child .rte p:first-child {
    margin-bottom: 0;
    text-transform: uppercase;
}

/* === S8 - Grid 4 columnas (cuero cabelludo) === */
#advanced_cms_wrapper_103 .S8 {
    display: flex !important;
    flex-wrap: wrap;
    padding: 40px 80px 60px;
    gap: 0;
    background-color: #FFDFD2;
}

#advanced_cms_wrapper_103 .S8 > div {
    flex: 0 0 25% !important;
    width: 25% !important;
    padding: 20px 25px !important;
}

#advanced_cms_wrapper_103 .S8 .rte {
    max-width: 216px
}

#advanced_cms_wrapper_103 .S8 .rte p:first-child {
    text-transform: uppercase;
    margin-bottom: 5px;
}

#advanced_cms_wrapper_103 .S8 .rte p:last-child {
    font-size: 12px;
    font-weight: 300;
    line-height: 1.5;
}

/* === S9 - Titulo "el ritual de la doble limpieza" === */
#advanced_cms_wrapper_103 .S9 {
    max-width: 530px;
    text-align: center;
    padding: 62px 0;
    margin: auto;
}

#advanced_cms_wrapper_103 .S9 .rte p:nth-child(2) {
    text-transform: uppercase;
}

/* === S10 - Texto izq + imagen redondeada der === */
#advanced_cms_wrapper_103 .S10 {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    gap: 60px;
}

#advanced_cms_wrapper_103 .S10 > div:first-child {
    flex: 1 !important;
    padding: 0 0 0 80px !important;
    text-align: center;
}

#advanced_cms_wrapper_103 .S10 > div:last-child {
    display: none;
}

#advanced_cms_wrapper_103 .S10 .rte p:first-child {
    margin-bottom: 5px;
}

/* === S11 - Imagen redondeada izq + texto der === */
#advanced_cms_wrapper_103 .S11 {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    gap: 60px;
}

#advanced_cms_wrapper_103 .S11 > div:first-child {
    display: none;
}

#advanced_cms_wrapper_103 .S11 > div:last-child {
    flex: 1 !important;
    padding: 0 80px 0 0 !important;
    text-align: center;
}

#advanced_cms_wrapper_103 .S11 .rte p:first-child {
    margin-bottom: 5px;
}

#advanced_cms_wrapper_103 .S11 .rte p:nth-child(4) {
    margin: 30px 0 5px;
}

/* === S12 - Texto izq + imagen redondeada der === */
#advanced_cms_wrapper_103 .S12 {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    gap: 60px;
}

#advanced_cms_wrapper_103 .S12 > div:first-child {
    flex: 1 !important;
    padding: 0 0 0 80px !important;
    text-align: center;
}

#advanced_cms_wrapper_103 .S12 > div:last-child {
    display: none;
}

#advanced_cms_wrapper_103 .S12 .rte p:first-child {
    margin-bottom: 5px;
}

/* === S13 - Titulo "el poder de nuestro masaje capilar" === */
#advanced_cms_wrapper_103 .S13 {
    max-width: 585px;
    text-align: center;
    padding: 106px 0 59px;
    margin: auto;
}

#advanced_cms_wrapper_103 .S13 .rte p {
    font-size: 13px;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

/* === S14 - 4 cards masaje === */
#advanced_cms_wrapper_103 .S14 {
    display: flex !important;
    flex-wrap: nowrap;
    justify-content: center;
    gap: 20px;
    padding: 0px 80px 45px;
}

#advanced_cms_wrapper_103 .S14 > div {
    flex: 1 !important;
    width: 25% !important;
    text-align: center;
    padding: 0 10px !important;
}

#advanced_cms_wrapper_103 .S14 .rte img {
    max-width: 298px;
    width: 100%;
    height: auto;
    margin: 0 auto 15px;
}

#advanced_cms_wrapper_103 .S14 .rte p {
    max-width: 300px;
    margin: 0 auto 15px;
}

#advanced_cms_wrapper_103 .S14 .rte sup {
    font-size: 10px;
    font-weight: 600;
    margin-right: 5px;
}

/* === S15 - Dimension sensorial (fondo rosa) === */
#advanced_cms_wrapper_103 .S15 {
    background-color: #FFDFD2;
    padding: 60px 15%;
    text-align: center;
     /* Puedes ajustar los grados. Un valor positivo inclina hacia arriba desde la izquierda. */
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 95%);
}

#advanced_cms_wrapper_103 .S15 .rte p:nth-child(2) {
    max-width: 420px;
    margin: 0 auto 15px;
    text-transform: uppercase;
}

#advanced_cms_wrapper_103 .S15 .rte p:nth-child(3) {
    max-width: 500px;
    margin: 0 auto 15px;
}

#advanced_cms_wrapper_103 .S15 .rte p:nth-child(4) {
    max-width: 500px;
    margin: 0 auto 15px;
}

/* === S16 - Titulo "encuentra tu champu" === */
#advanced_cms_wrapper_103 .S16 {
    max-width: 520px;
    text-align: center;
    padding: 44px 0;
    margin: auto;
}

/* === S17 - Filtros + Grid de productos === */
#advanced_cms_wrapper_103 .S17 > div:nth-child(n + 2) {
    display: none;
    padding: 0 20px !important;
}

#advanced_cms_wrapper_103 .S17 > div.active {
    display: block;
}

#advanced_cms_wrapper_103 .S17 .rte ul {
    list-style: none;
    display: flex;
    justify-content: center;
    gap: 30px;
    padding: 12px 0;
    margin: 0 0 40px;
    background-color: #FFDFD2;
}

#advanced_cms_wrapper_103 .S17 .rte ul li {
    cursor: pointer;
    border-bottom: 1px solid transparent;
    text-decoration: underline;
}

#advanced_cms_wrapper_103 .S17 .rte ul li.active {
    font-weight: bold;
}

/* Grid de productos */
#advanced_cms_wrapper_103 .S17 .adcms-product ul.clearfix {
    list-style: none;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    padding: 0;
    margin: 0;
}

#advanced_cms_wrapper_103 .S17 .adcms-product .product-box {
    display: flex;
    flex-direction: column;
}

#advanced_cms_wrapper_103 .S17 .adcms-product .product-box .thumbnail-container {
    height: 100%;
}

/* ============================================
   RESPONSIVE - TEXTOS (max-width: 991px)
   ============================================ */
@media (max-width: 991px) {
    #advanced_cms_wrapper_103 .rte h2 {
        font-size: 20px;
    }

    #advanced_cms_wrapper_103 .rte p,
    #advanced_cms_wrapper_103 .rte li,
    #advanced_cms_wrapper_103 .rte a {
        font-size: 12px;
    }
}

/* ============================================
   RESPONSIVE - LAYOUT (max-width: 767px)
   ============================================ */
@media (max-width: 767px) {
    /* S1 - Hero: stack vertical */
    #advanced_cms_wrapper_103 .S1 {
        flex-direction: column !important;
    }

    #advanced_cms_wrapper_103 .S1 > div {
        flex: 0 0 auto !important;
        width: 100% !important;
    }

    #advanced_cms_wrapper_103 .S1 > div:first-child {
        display: none;
    }

    #advanced_cms_wrapper_103 .S1 > div:last-child {
        display: block;
    }

    /* S2 - Texto centrado */
    #advanced_cms_wrapper_103 .S2 {
        max-width: 300px;
        padding: 29px 20px;
    }

    #advanced_cms_wrapper_103 .S2 .rte p {
        max-width: 100%;
    }

    /* S3 - Imagen + texto: stack vertical */
    #advanced_cms_wrapper_103 .S3 {
        flex-direction: column !important;
        gap: 30px;
        padding: 0;
    }

    #advanced_cms_wrapper_103 .S3 > div:first-child {
        flex: 0 0 auto !important;
        width: 100% !important;
    }

    #advanced_cms_wrapper_103 .S3 > div:last-child {
        padding: 0 20px !important;
    }

    /* S4 - Titulo biotecnologia */
    #advanced_cms_wrapper_103 .S4 {
        padding: 46px 20px 20px;
    }

    /* S5 - 3 cards: stack vertical */
    #advanced_cms_wrapper_103 .S5 {
        flex-direction: column !important;
        padding: 0 20px;
        gap: 25px;
    }

    #advanced_cms_wrapper_103 .S5 > div {
        width: 100% !important;
    }

    /* S6 - Cita */
    #advanced_cms_wrapper_103 .S6 {
        padding: 70px 20px;
    }

    /* S7 - Formulas (fondo rosa) */
    #advanced_cms_wrapper_103 .S7 h2 {
        max-width: 224px;
        margin: 0 auto -8px; 
    }

    #advanced_cms_wrapper_103 .S7 > div:nth-child(2) {
        display: none;
    }
    
    #advanced_cms_wrapper_103 .S7 > div:nth-child(3) {
        display: block;
    }

    #advanced_cms_wrapper_103 .S7 > div:last-child {
        transform: translate(-50%, calc(-50% + 72px));
    }

    /* S8 - Grid: 2 columnas */
    #advanced_cms_wrapper_103 .S8 {
        padding: 15px 20px;
    }

    #advanced_cms_wrapper_103 .S8 > div {
        flex: 0 0 50% !important;
        width: 50% !important;
        padding: 15px !important;
    }

    /* S9 - Titulo doble limpieza */
    #advanced_cms_wrapper_103 .S9 {
        padding: 24px 20px;
    }

    /* S10 - Texto + imagen: stack vertical invertido */
    #advanced_cms_wrapper_103 .S10 {
        flex-direction: column !important;
        gap: 0;
    }

    #advanced_cms_wrapper_103 .S10 > div:first-child {
        padding: 0 !important;
    }

    #advanced_cms_wrapper_103 .S10 > div:first-child h2 {
        margin-bottom: 0;
    }

    #advanced_cms_wrapper_103 .S10 > div:first-child p:last-child {
        display: none;
    }

    #advanced_cms_wrapper_103 .S10 > div:last-child {
        display: block;
        text-align: center;
        padding-top: 10px
    }

    /* S11 - Imagen + texto: stack vertical */
    #advanced_cms_wrapper_103 .S11 {
        flex-direction: column !important;
        gap: 0px;
        padding: 30px 0;
    }

    #advanced_cms_wrapper_103 .S11 > div:first-child {
        display: block;
        text-align: center;
    }

    #advanced_cms_wrapper_103 .S11 > div:first-child h2 {
        margin-bottom: 0;
    }

    #advanced_cms_wrapper_103 .S11 > div:last-child {
        padding: 10px 20px 0 !important;
    }

    #advanced_cms_wrapper_103 .S11 > div:last-child h2:nth-child(2),
    #advanced_cms_wrapper_103 .S11 > div:last-child p:first-child {
        display: none;
    }

    /* S12 - Texto + imagen: stack vertical invertido */
    #advanced_cms_wrapper_103 .S12 {
        flex-direction: column !important;
        padding: 30px 0;
        gap: 0;
    }

    #advanced_cms_wrapper_103 .S12 > div:first-child {
        padding: 0 !important;
    }

    #advanced_cms_wrapper_103 .S12 > div:first-child h2 {
        margin-bottom: 0;
    }

    #advanced_cms_wrapper_103 .S12 > div:first-child p:last-child {
        display: none;
    }

    #advanced_cms_wrapper_103 .S12 > div:last-child {
        display: block;
        text-align: center;
        padding-top: 10px
    }

    /* S13 - Titulo masaje */
    #advanced_cms_wrapper_103 .S13 {
        padding: 30px 20px 20px;
    }

    /* S14 - 4 cards: 2 columnas */
    #advanced_cms_wrapper_103 .S14 {
        flex-wrap: wrap !important;
        padding: 0px 20px 10px;
        gap: 20px;
    }

    #advanced_cms_wrapper_103 .S14 > div {
        flex: 0 0 calc(50% - 10px) !important;
        width: calc(50% - 10px) !important;
    }

    /* S15 - Dimension sensorial */
    #advanced_cms_wrapper_103 .S15 {
        padding: 20px;
    }

    #advanced_cms_wrapper_103 .S15 .rte p {
        max-width: 100%;
    }

    /* S16 - Titulo encuentra tu champu */
    #advanced_cms_wrapper_103 .S16 {
        padding: 10px 20px 30px;
    }

    /* S17 - Filtros + productos */
    #advanced_cms_wrapper_103 .S17 .rte ul {
        flex-wrap: wrap;
        gap: 10px 20px;
        justify-content: flex-start;
        padding: 15px 10px;
    }

    #advanced_cms_wrapper_103 .S17 .rte ul li {
        width: 45%;
        text-align: center;
    }

    #advanced_cms_wrapper_103 .S17 .adcms-product ul.clearfix {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px;
    }
}