body {
    background-color: white!important;
    background: linear-gradient(0deg, rgb(244, 235, 255))!important;
}

main {
    display: flex;
    flex-direction: column;
    min-height: 90vh;
    margin: 0 auto;    
    margin-top: 64px;
    width: 100%;
}

.main-title {
    font-size: 36px;
    color: rgb(31, 31, 31);
    font-weight: 700;
    font-family: "Nunito", sans-serif;;
    width: 80%;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 10px;
}

.under-title {
    margin: 0 auto;
    text-align: center;
    margin-top: 64px;
    margin-bottom: -48px;
    font-size: 40px;
    color: rgb(31, 31, 31);
    font-weight: 700;
    font-family: "Nunito", sans-serif;;
    width: 80%;
    z-index: 20;
}

.description {
    font-size: 24px;
    text-align: center;
    margin-bottom: 32px;
    width: 50%;
    justify-content: center;
    margin: 0 auto;
}

/* SECTIONS */ 

.sections {
    margin-top: 64px;
    width: 100%;    
}

.section {
    padding-top: 48px;
    padding-bottom: 96px;
}

#section1, #section3, #section5 {
    background-color: rgb(185, 149, 233);
    background-color: rgb(215, 190, 247);      
}

#section2, #section4, #section6 {
    background-color: rgb(205, 177, 241);  
    background-color: rgb(248, 218, 255);    
}

.s-title {
    font-size: 32px;
    width: 80%;
    margin: 0 auto;
    text-align: left;
    font-family: "Nunito", sans-serif;
    font-weight: bold;
}

.s-description {
    display: flex;
    flex-direction: row;
    width: 80%;
    margin: 0 auto;
    margin-top: 32px;
    font-size: 24px;    
}

.s-image img{
    width: 80%;
}

.s-image{
    display: flex;    
    justify-content: center; /* centra horizontalmente */ 
    align-items: center; /* centra verticalmente */
}

#image1E, #image3E, #image5E,
#image2S, #image4S, #image6S {
    display: none;
}

.s-text {
    font-family: "Nunito", sans-serif;
}
    
#section1 .s-text, #section3 .s-text, #section5 .s-text {
    margin-left: 16px;
}

#section2 .s-text, #section4 .s-text, #section6 .s-text {
    margin-right: 16px;
}

/* CARDS SECTION (Deprecated) */

.cards {
    margin-top: 32px;
    margin-bottom: 84px;
    display: flex;
    flex-direction: row;
    gap: 60px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}

.card {
    display: flex;
    flex-direction: row;
    width: 50%;
    background-color: rgb(255, 255, 255);
    padding: 16px;
    border-radius: 16px;
    border: rgb(215, 206, 219) 2px solid;
    gap: 16px;
}

.card-icon {
    height: 120px;
    width: 120px;
    margin: auto 0;
    border-radius: 1000px;
}

.card-icon img {
    width: 100%;
}

.card-content {
    width: 85%;
    display: flex;
    flex-direction: column;
    font-size: 23px;
    color: rgb(43, 42, 42);

    font-style: normal;     
    font-family: "Merriweather", serif;
    font-weight: 100;
}

.card-title {
    font-size: 26px;
    margin-bottom: 4px;
    font-weight: 600;
}

.card-description {
    font-style: italic;
}


/* ------------- "What is this for?" Section ----------- */

.whatis {
    display: flex;
    flex-direction: column;
    width: 85%;
    margin: 0 auto;
    margin-top: 32px;
    margin-bottom: 16px;
    font-family: "Nunito", sans-serif;;    
}

.whatis .wi-title {
    font-size: 30px;
    text-align: center;
    font-weight: 600;
}

.whatis .wi-description {
    display: none;
    font-size: 22px;
}

.whatis .wi-col {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.whatis .wi-row {
    display: flex;
    flex-direction: row;
    gap: 20px;
    width: 70%;
}

.whatis .wi-colitem {
    padding: 32px 64px;
    margin-top: 36px;
    /*background-color: white;
    background-color: rgb(189, 141, 245);*/
    color: blueviolet;
    color: rgb(255, 255, 255);
    font-weight: 600;
    border-radius: 24px;
    width: fit-content;
    font-size: 22px;
    text-align: center;
    align-content: center;    
}

#wiItem1, #wiItem3, #wiItem5 {
    background-color: rgb(164, 99, 180);
} 

#wiItem2, #wiItem4, #wiItem6 {
    background-color: rgb(191, 139, 202);
}

/* ------------- WHAT WORK SECTION ----------- */

.whatwork {
    display: flex;
    flex-direction: column;
    width: 85%;
    margin: 0 auto;
    margin-top: 48px;
    margin-bottom: 16px;
    font-family: "Nunito", sans-serif;;
    /*background-color: aquamarine;*/
}

.whatwork .wk-title {
    font-size: 30px;
    text-align: center;
    font-weight: 600;
    margin-bottom: 32px;
}

.whatwork .wk-row {
    display: flex;
    flex-direction: row;
    margin: 0 auto;
    width: 90%;
    gap: 20px;
    /*background-color: red;*/
}

.whatwork .wk-rowitem {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    text-align: center;
    width: 15%;
    font-size: 20px;
    /*background-color: aqua;*/
}

#wkIcon1, #wkIcon2, #wkIcon3, #wkIcon4, #wkIcon5, #wkIcon6 {
    width: 35%;              /* ancho consistente */
    height: 100px;
    margin: 0 auto;
    /*background: linear-gradient(45deg, #ff0000, #0000ff);*/
    background: linear-gradient(45deg, #903aff, #d3adff);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

#wkIcon1 { -webkit-mask-image: url("../../src/icons/weakness.png"); mask-image: url("../../src/icons/weakness.png"); }
#wkIcon2 { -webkit-mask-image: url("../../src/icons/feeling.png"); mask-image: url("../../src/icons/feeling.png"); }
#wkIcon3 { -webkit-mask-image: url("../../src/icons/fear.png"); mask-image: url("../../src/icons/fear.png"); }
#wkIcon4 { -webkit-mask-image: url("../../src/icons/mood.png"); mask-image: url("../../src/icons/mood.png"); }
#wkIcon5 { -webkit-mask-image: url("../../src/icons/no-direction.png"); mask-image: url("../../src/icons/no-direction.png"); }
#wkIcon6 { -webkit-mask-image: url("../../src/icons/balance.png"); mask-image: url("../../src/icons/balance.png"); }

/* ------------- BENEFITS SECTION ----------- */

.benefits {
    display: flex;
    flex-direction: row;
    margin-top: 32px;
    background-color: rgb(224, 198, 255);
    background-color: rgb(233, 215, 255);
    background: linear-gradient(45deg,
    rgb(233, 215, 255) 0%,
    rgb(233, 215, 255) 20%,
    rgb(224, 201, 248) 40%,
    rgb(233, 215, 255) 80%,
    rgb(244, 236, 255) 85%,
    rgb(233, 215, 255) 90%);
    padding: 48px 0;
}

.benefits .bf-icon-cont {
    display: flex;
    width: 45%;
    height: fit-content;
    margin: auto 0;
    justify-items: right;
    justify-content: end;
}

.benefits .bf-icon {
    width: 35%;
    height: 250px;
    /*background: linear-gradient(45deg, #ff0000, #0000ff);*/
    background: linear-gradient(45deg, #7c60a0, #b286df, #f0e1ff);
    -webkit-mask-image: url("../../src/icons/lithotherapy.png");
    mask-image: url("../../src/icons/lithotherapy.png");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

.benefits .bf-col {
    width: 55%;
    display: flex;
    flex-direction: column;
}

.benefits .bf-col .bf-title {
    font-size: 28px;
    font-weight: 700;
    font-family: "Nunito", sans-serif;
    margin-bottom: 16px;
}

.benefits .bf-col .bf-description {
    font-size: 22px;
    font-weight: 400;
    font-family: "Nunito", sans-serif;
    line-height: 1.75;
}

/* ------------- HOW SECTION ----------- */
.how {
    display: flex;
    flex-direction: row;
    width: 80%;
    margin: 0 auto;
    margin-top: 48px;
}

.how .h-titles {
    display: flex;
    flex-direction: column;
}

.how .h-title {
    font-size: 32px;
    font-weight: 800;
    font-family: "Nunito", sans-serif;
    color: rgb(48, 48, 48);
    margin-bottom: 16px;
}

.how .h-description {
    font-size: 22px;
    font-weight: 400;
    font-family: "Nunito", sans-serif;
    line-height: 1.75;
}

.sangria {
    margin-left: 32px;
}

.h-icons {
    display: flex;
    flex-direction: row;
    gap: 32px;
    margin-left: 80px;
}

.h-icons .h-i {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    /*background-color: #500799;*/
}

.h-icons .h-i-icon {
    width: 60%;
    height: 20%;        
    /*background: linear-gradient(45deg, #ff0000, #0000ff);*/
    background: linear-gradient(45deg, #7c60a0, #500799);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

.h-icons .h-i-icon.duration {
    -webkit-mask-image: url("../../src/icons/alarm-clock.png");
    mask-image: url("../../src/icons/alarm-clock.png");    
}

.h-icons .h-i-icon.modality {    
    -webkit-mask-image: url("../../src/icons/conversation.png");
    mask-image: url("../../src/icons/conversation.png");    
}

.h-icons .h-i-desc {
    margin-top: 16px;
    font-size: 20px;
    width: 60%;
    text-align: center;
}

.h-divider {
    margin: 0 auto;    
    margin-top: 36px;        
    height: 2px;
    width: 10%;
    background-color: rgb(215, 204, 228);
}

/* ------------- EPILOGUE SECTION ----------- */

.epilogue {
    display: flex;
    flex-direction: column;
    padding: 96px 0 40px 0;
    width: 60%;
    margin: 0 auto;
}

.epilogue .e-text {
    text-align: center;
    font-style: italic;
    font-weight: 400;
    font-size: 24px;
    font-family: "Nunito", sans-serif;;
    margin-bottom: 32px;
}

.epilogue .e-readmore {
    margin: 0 auto;
    width: fit-content;
    padding: 14px 44px;
    border-radius: 16px;
    background-color: rgb(125, 70, 226);
    color: white;
    font-weight: 600;
    font-size: 20px;
    text-decoration: none;
    transition: background-color 0.1s ease-in;
}

.epilogue .e-readmore:hover {
    background-color: rgb(99, 50, 189);
}

.e-divider {
    margin: 0 auto;    
    margin-bottom: 40px;        
    height: 2px;
    width: 45%;
    background-color: rgb(210, 198, 226);
}

.disclaimer {
    width: 40%;
    background-color: rgb(236, 219, 255);
    border: 2px dashed rgb(128, 53, 224);
    padding: 32px 64px;
    margin: 0 auto;
    margin-bottom: 32px;
    font-family: "Nunito", sans-serif;;
    font-size: 24px;
    text-align: center;
    color: rgb(31, 31, 31);
}





/* ------------ MOBILE ---------- */ 

@media (max-width: 767px) {

    html, body {
        margin: 0;
        padding: 0;
        width: 100%;
        height: 100%;
        overflow-x: hidden!important;
    }

    main {
        margin-top: 48px;
    }

    .main-title {
        margin-top: 0px;
        font-size: 28px;
        font-weight: 600;
        color: rgb(51, 51, 51);        
    }

    .description {
        text-align: center;
        font-size: 20px;
        margin-top: 16px;
        margin-bottom: 0px;
        width: 70%;
    }    

    .under-title {
        margin-top: 32px;
        font-size: 34px;
    }

    .s-description {
        margin-top: 16px;
        display: flex;
        flex-direction: column;
    }

    .s-image {
        width: 70%;
        margin: 0 auto;
        margin-bottom: 24px;
    }

    #image1S, #image2S, #image3S,
    #image4S, #image5S, #image6S {
        display: flex;
    }    

    #image1E, #image2E, #image3E,
    #image4E, #image5E, #image6E {
        display: none;
    }

    .whatis .wi-col {
        display: flex;
        flex-direction: column;
        margin-top: 32px;
    }

    .whatis .wi-row {
        display: flex;
        flex-direction: column;   
        gap: 0;
        width: 80%;
    }

    .whatis .wi-colitem {
        width: auto;
        margin-bottom: 32px;
        margin-top: 0;
    }

    .whatwork .wk-row {
        display: flex;
        flex-direction: column;
        margin: 0 auto;
        width: 100%;
        gap: 10px;          
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;        
    }

    .whatwork .wk-r-icon {
        width: 32px;
        background-color: green!important;
    }

    .whatwork .wk-rowitem {
        width: 40%;
        margin-bottom: 16px;
        margin-top: 0;
    }

    .whatwork .wk-r-title {
        margin-top: 4px;
        font-size: 18px;
    }

    #wkIcon1, #wkIcon2, #wkIcon3, #wkIcon4, #wkIcon5, #wkIcon6 {
        width: 60%;              /* ancho consistente */
        margin: 0 auto;        
    }

    .benefits {
        background-color: yellow;
        justify-content: left;
    }

    .benefits .bf-col {
        margin-left: 32px;
        width: 100%;
        margin-right: 32px;
    }

    .benefits .bf-icon-cont {
        display: none;
    }

    .how {
        flex-direction: column;
    }

    .sangria {
        margin-left: 16px;
    }    

    .h-icons {
        margin-left: 0;
        align-items: start;        
        gap: 0;
        margin-top: 32px;
        margin-bottom: 24px;
    }

    .h-i.duration {
        width: 50%;
    }

    .h-i.modality {
        width: 50%;
    }

    .h-icons .h-i-icon.duration {
        width: 64px;
        height: 64px;
    }

    .h-icons .h-i-icon.modality {    
        width: 64px;
        height: 64px;        
    }

    .h-divider {
        width: 50%;
    }

    .epilogue {
        padding-top: 48px;
        width: 85%;
    }
    
    .epilogue .e-text{
        font-size: 22px;
    }

    .epilogue .e-readmore {
        justify-content: center;
        margin: 0 auto;
        padding: 16px;
    }

    .disclaimer {
        width: 80%;
        padding: 4px;
        font-size: 21px;
        margin: 0 auto;
        justify-content: center;
        text-align: center;        
        margin-bottom: 32px;
        background-color: rgb(236, 219, 255);
    }

}


@media (orientation: landscape) and (pointer: coarse) {
    #image1S, #image2S, #image3S,
    #image4S, #image5S, #image6S {
        display: flex;
        width: 35%;
    }
}
