/* PÁGINA PRINCIPAL */
@font-face {
    font-family: 'Bimbo';
    src: url('../fonts/Bimbo-Ballpoint.ttf');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'BlockPro';
    src: url('../fonts/BlockPro-Regular.otf');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Youth';
    src: url('../fonts/Youth-Medium.otf');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Youth Bold';
    src: url('../fonts/Youth-Bold.otf');
    font-weight: bold;
    font-style: normal;
}

html, body {
    overflow-x: hidden;
    width: 100%;
}

* {
    box-sizing: border-box;
    max-width: 100%;
}

body {
    margin: 0;
    background: #eae5d3;
    color: #FFF;
    font-size: 35px;
    font-weight: 600;
    line-height: 35px;
    font-family: "National", sans-serif;
    width: 100%;
    overflow-x: hidden;
    position: relative;
    overflow-y: auto;

    p {
        font-size: 18px;
        line-height: 20px;
    }

    ul, li {
        font-size: 18px;
        line-height: 20px;
    }
}

h1 {
    font-family: 'BlockPro';
}

p {
    font-family: 'Youth Bold';
}

hr {
    height: 3px;
    background-color: #000;
    border: none;
    border-radius: 3px;
}

iframe {
    border-radius: 20px !important;
}

.btn {
    padding: 20px 50px;
    border-radius: 30px;
    font-family: 'Youth Bold';
}

.btn-light {
    background-color: #f9efe4 !important;
}

#header {
    position: relative;
    width: 100%;
    height: 80vh;
    border-radius: 20px;
    object-fit: contain;
    background: url('../images/bannerHeader.jpeg');
    background-size: cover;
    background-position: center;

    .overlay-image {
        position: absolute;
        top: 30px;
        right: -110px;
        transform: none;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30%;
        height: auto;
        z-index: 1;

        img {
            width: 40% !important;
            object-fit: contain;
        }
    }

    .overlay-text {
        position: absolute;
        top: 10%;
        left: 5%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        z-index: 1;
        text-align: start;
    }

    h1 {
        font-size: 110px;
        line-height: 0px;
        font-family: 'BlockPro';
        color: #eae5d3 !important;
    }

    h2 {
        font-size: 200px;
        line-height: 120px;
        font-family: 'BlockPro';
        color: #eae5d3 !important;
    }
}

#disciple {
    .transform {
        position: relative;
        /* ← necessário para o z-index funcionar */
        display: inline-block;
        padding: 2% 20px;
        color: #000;
        z-index: 2;
        /* ← mais alto que o ::before */
        background: #edd047;
        border-radius: 20px;
    }

    .card {
        position: relative;
        background-color: #c5ae26;
        border: 1px solid #c5ae26;
        border-radius: 20px;
        overflow: hidden;

        &::before {
            content: "";
            position: absolute;
            inset: 0;
            background: url('../images/textures/textureLine.png');
            background-size: cover;
            opacity: 0.1;
            pointer-events: none;
            z-index: 1;
            /* ← mantém o overlay abaixo do conteúdo */
        }

        >* {
            position: relative;
            z-index: 2;
        }
    }

    span {
        font-size: 20px !important;
        font-family: 'Youth Bold';
    }
}

#feel {
    position: relative;
    width: 100%;
    height: 100vh;
    border-radius: 20px;
    background: url('../images/bannerFeel.jpeg');
    background-size: cover;
    background-position: center;

    h1 {
        color: #eae5d3 !important;
    }

    p {
        color: #eae5d3 !important;
    }

    .overlay-text-start {
        position: absolute;
        top: 20%;
        left: 50%;
        transform: translate(-50%, -50%);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 1;
        text-align: center;
    }

    .overlay-text-end {
        position: absolute;
        bottom: 20%;
        left: 50%;
        transform: translate(-50%, 50%);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 1;
        text-align: center;

        p {
            font-size: 14px;
        }
    }
}

#transform {
    .card {
        background-color: #c5ae26;
        text-align: center;
        border: 1px solid #c5ae26;
        border-radius: 30px;
        padding: 5px;
        padding-top: 15px;
    }
}

#receive {
    position: relative;
    width: 100%;
    height: 120vh;
    border-radius: 20px;
    background: url('../images/bannerReceive.jpeg') no-repeat center center;
    background-size: cover;

    h1 {
        color: #eae5d3 !important;
    }


    .overlay-image {
        position: absolute;
        top: 30px;
        right: -110px;
        transform: none;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30%;
        height: auto;
        z-index: 1;

        img {
            width: 40% !important;
            object-fit: contain;
        }
    }


    .overlay-content {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .overlay-btn {
        position: absolute;
        bottom: -6.5%;
        left: 13%;
        transform: translate(-50%, -50%);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 1;
        text-align: center;
    }

    .card {
        max-width: 100%;
    }
}

#recomendation {
    h1 {
        color: #eae5d3 !important;
    }

    .card {
        position: relative;
        background-color: #409b62;
        border: 1px solid #409b62;
        border-radius: 20px;
        overflow: hidden;

        &::before {
            content: "";
            position: absolute;
            inset: 0;
            background: url('../images/textures/textureSquare.png');
            background-size: cover;
            opacity: 0.1;
            /* ↓ diminua ou aumente aqui */
            pointer-events: none;
        }

        >* {
            position: relative;
            z-index: 2;
        }
    }

}

#difference {

    .card {
        position: relative;
        background-color: #d7c8e0;
        border: 1px solid #d7c8e0;
        border-radius: 20px;
        overflow: hidden;

        &::before {
            content: "";
            position: absolute;
            inset: 0;
            background: url('../images/textures/textureLine.png');
            background-size: cover;
            opacity: 0.1;
            pointer-events: none;
            z-index: 1;

        }

        >* {
            position: relative;
            z-index: 2;
        }
    }

    p {
        position: relative;
        display: inline-block;
        padding: 1px 10px;
        color: #000;
        z-index: 2;
        background: #eae5d3;
    }

}

#invest {
    color: #eae5d4 !important;

    position: relative;
    width: 100%;
    height: 180vh;
    border-radius: 20px;
    object-fit: contain;
    background: url('../images/bannerInvest.jpeg');
    background-size: cover;
    background-position: center;

    .overlay-content {
        position: absolute;
        bottom: 15%;
        left: 50%;
        transform: translate(-50%, 50%);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 1;
        text-align: center;

        p {
            font-size: 14px;
        }
    }
}

/* PÁGINA PRINCIPAL MOBILE */
@media (max-width: 991.98px) {
    body {
        margin: 0;
        background: #eae5d3;
        color: #FFF;
        font-size: 17px;
        font-weight: 600;
        line-height: 17px;
        font-family: "National", sans-serif;
        width: 100%;
        overflow-x: hidden;
        position: relative;
        overflow-y: auto;

        p {
            font-size: 14px;
            line-height: 16px;
        }

        ul, li {
            font-size: 16px;
            line-height: 18px;
        }
    }

    h1 {
        font-family: 'BlockPro';
    }

    p {
        font-family: 'Youth Bold';
    }

    #headerMobile {
        .overlay-image {
            position: absolute;
            top: 140px;
            right: -40px;
            transform: none;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 40%;
            height: auto;
            z-index: 1;

            img {
                width: 40% !important;
                object-fit: contain;
            }
        }


        img {
            height: 50% !important;
            width: 100% !important;
            border-radius: 20px;
        }
    }

    #transformMobile .container>div.card:nth-of-type(3) {
        background-color: #c5ae26 !important;
        border-color: #c5ae26 !important;
    }

    #transformMobile .container>div.card:nth-of-type(4) {
        background-color: #ff6f44 !important;
        border-color: #ff6f44 !important;
    }

    #transformMobile .container>div.card:nth-of-type(5) {
        background-color: #a3cfe8 !important;
        border-color: #a3cfe8 !important;
    }

    #transformMobile .container>div.card:nth-of-type(6) {
        background-color: #ffbbd8 !important;
        border-color: #ffbbd8 !important;
    }

    #transformMobile .container>div.card:nth-of-type(7) {
        background-color: #edd047 !important;
        border-color: #edd047 !important;
    }

    /* overlay e estilo geral */
    #transformMobile .card {
        position: relative;
        border-radius: 20px;
        overflow: hidden;
        border: 1px solid transparent !important;
        z-index: 0;
        margin-bottom: 20px;
    }

    #transformMobile .card::before {
        content: "";
        position: absolute;
        inset: 0;
        background: url('../images/textures/textureSquare.png') center/300% no-repeat;
        opacity: 0.1;
        pointer-events: none;
        z-index: 1;
    }

    #transformMobile .card .card-body {
        position: relative;
        z-index: 2;
        text-align: center;
        color: #000 !important;
    }

    #receiveMobile {
        .overlay-logo {
            position: absolute;
            top: 40px;
            right: -40px;
            transform: none;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 40%;
            height: auto;
            z-index: 1;

            img {
                width: 40% !important;
                object-fit: contain;
            }
        }

        .overlay-image {
            position: relative;
            width: 100%;
            min-height: 80vh;
            border-radius: 20px;
            background: url('../images/bannerReceive.jpeg') no-repeat center center;
            background-size: cover;

            h1 {
                color: #eae5d3 !important;
            }

            .overlay-content {
                position: absolute;
                inset: 0;
                display: flex;
                padding: 5rem;
                bottom: 100px;

                display: flex;
                flex-direction: column;
                justify-content: flex-end;
                height: 100%;
            }
        }

        .books-showcase {
            position: relative;
            width: 400px;
            height: 300px;
            margin: 0 auto;
            overflow: hidden !important;
            perspective: 1000px;
        }

        .books-showcase::before {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            width: 250px;
            height: 250px;
            background: radial-gradient(circle, rgba(238, 228, 217, 1.0) 0%, rgba(255, 255, 255, 0.5) 70%, transparent 100%);
            border-radius: 50%;
            transform: translate(-50%, -50%);
            z-index: 0;
        }


        .book {
            position: absolute;
            top: 50%;
            left: 50%;
            margin-left: -40px;
            transform: translate(-50%, -50%);
            transition: all 0.5s ease;
        }

        .book img {
            max-width: 300% !important;
            width: 300px;
            height: auto;
            display: block;
        }

        .book-left {
            transform: translate(-95%, -50%) rotateY(20deg) scale(0.9);
            z-index: 1;
            opacity: 0.7;
        }

        .book-right {
            transform: translate(2%, -50%) rotateY(-20deg) scale(0.9);
            z-index: 1;
            opacity: 0.7;
        }

        /* Livro central à frente */
        .book-center {
            z-index: 3;
            transform: translate(-50%, -50%) scale(1.1);
        }

        /* Animação opcional de foco */
        .books-showcase:hover .book-center {
            transform: translate(-50%, -50%) scale(1.2);
        }

    }

    #recomendationMobile {
        .card {
            position: relative;
            background-color: #409b62;
            border: 1px solid #409b62;
            border-radius: 20px;
            overflow: hidden;

            &::before {
                content: "";
                position: absolute;
                inset: 0;
                background: url('../images/textures/textureSquare.png');
                background-size: cover;
                opacity: 0.1;
                /* ↓ diminua ou aumente aqui */
                pointer-events: none;
            }

            >* {
                position: relative;
                z-index: 2;
            }
        }

        h1 {
            color: #eae5d3 !important;
        }
    }

    #discipleMobile {
        .transform {
            position: relative;
            display: inline-block;
            padding: 2% 20px;
            color: #000;
            z-index: 2;
            background: #edd047;
            border-radius: 20px;
        }

        .card {
            position: relative;
            background-color: #c5ae26;
            border: 1px solid #c5ae26;
            border-radius: 20px;
            overflow: hidden;

            &::before {
                content: "";
                position: absolute;
                inset: 0;
                background: url('../images/textures/textureLine.png');
                background-size: cover;
                opacity: 0.1;
                pointer-events: none;
                z-index: 1;
            }

            >* {
                position: relative;
                z-index: 2;
            }
        }

        span {
            font-size: 20px !important;
            font-family: 'Youth Bold';
        }
    }

    #investMobile {
        .card {
            position: relative;
            background-color: #c5ae26;
            border: 1px solid #c5ae26;
            border-radius: 20px;
            overflow: hidden;

            &::before {
                content: "";
                position: absolute;
                top: 0;
                left: 0;
                width: 200%;
                height: 200%;
                background: url('../images/textures/textureLine.png') center/cover no-repeat;
                opacity: 0.1;
                pointer-events: none;
                z-index: 1;
                transform: rotate(90deg);
                transform-origin: center center;
                top: -50%;
                left: -50%;
            }

            >* {
                position: relative;
                z-index: 2;
            }
        }

        h1 {
            color: #eae5d3 !important;
        }
    }

}

/* PÁGINA QR CODES */
#headerQR {
    position: relative;
    width: 100%;
    height: 80vh;
    border-radius: 20px;
    object-fit: contain;
    background: url('../images/bannerHeader.jpeg');
    background-size: cover;
    background-position: center;

    .overlay-image {
        position: absolute;
        top: 30px;
        right: -110px;
        transform: none;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30%;
        height: auto;
        z-index: 1;

        img {
            width: 40% !important;
            object-fit: contain;
        }
    }


    h1 {
        font-family: 'BlockPro';
        color: #eae5d3 !important;
    }

    .overlay-text-start {
        position: absolute;
        top: 20%;
        left: 50%;
        transform: translate(-50%, -50%);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 1;
        text-align: center;
    }
}


#present {
    .card {
        position: relative;
        background-color: #c5ae26;
        border: 1px solid #c5ae26;
        border-radius: 20px;
        overflow: hidden;

        &::before {
            content: "";
            position: absolute;
            inset: 0;
            background: url('../images/textures/textureLine.png');
            background-size: cover;
            opacity: 0.1;
            pointer-events: none;
            z-index: 1;
            /* ← mantém o overlay abaixo do conteúdo */
        }

        >* {
            position: relative;
            z-index: 2;
        }
    }

    span {
        font-size: 20px !important;
    }

    span {
        font-family: 'Youth Bold';
    }
}

#extra {
    position: relative;
    width: 100%;
    min-height: 100vh;
    flex-wrap: wrap;
    border-radius: 20px;
    background: url('../images/bannerReceive.jpeg');
    background-size: cover;
    background-position: bottom;


    .overlay-image {
        position: absolute;
        top: 30px;
        right: -110px;
        transform: none;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30%;
        height: auto;
        z-index: 1;

        img {
            width: 40% !important;
            object-fit: contain;
        }
    }



    h1 {
        color: #eae5d3 !important;
    }

    .overlay-content {
        position: absolute;
        inset: 0;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        padding: 5rem;
        gap: 1.5rem;
    }
}

#experience {
    .card {
        position: relative;
        background-color: #c5ae26;
        border: 1px solid #c5ae26;
        border-radius: 20px;
        overflow: hidden;

        &::before {
            content: "";
            position: absolute;
            inset: 0;
            background: url('../images/textures/textureLine.png');
            background-size: cover;
            opacity: 0.1;
            pointer-events: none;
            z-index: 1;
            /* ← mantém o overlay abaixo do conteúdo */
        }
    }
}

#adquire {
    position: relative;
    width: 100%;
    min-height: 150vh;
    border-radius: 20px;
    background: url('../images/bannerAdquire.jpeg') no-repeat center center;
    background-size: cover;

    h1 {
        color: #eae5d3 !important;
    }

    p {
        color: #eae5d3 !important;
    }

    .overlay-content {
        position: absolute;
        inset: 0;
        display: flex;
        padding: 5rem;
    }

    .overlay-content .container {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        /* joga conteúdo pro rodapé */
        height: 100%;
        /* força ocupar altura total */
    }

    .overlay-content .row {
        width: 100%;
    }
}

#share {
    .card {
        position: relative;
        background-color: #7acbc8;
        border: 1px solid #7acbc8;
        border-radius: 20px;
        overflow: hidden;

        &::before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 200%;
            height: 200%;
            background: url('../images/textures/textureLine.png') center/cover no-repeat;
            opacity: 0.1;
            pointer-events: none;
            z-index: 1;
            transform: rotate(90deg);
            transform-origin: center center;
            top: -50%;
            left: -50%;
        }

        >* {
            position: relative;
            z-index: 2;
        }
    }

    h1 {
        color: #eae5d3 !important;
    }

}

#journey {
    position: relative;
    width: 100%;
    height: 80vh;
    border-radius: 20px;
    object-fit: contain;
    background: url('../images/bannerFeel.jpeg');
    background-size: cover;
    background-position: center;

    h1 {
        font-family: 'BlockPro';
        color: #eae5d3 !important;
    }

    p {
        font-family: 'BlockPro';
        color: #eae5d3 !important;
    }

    .overlay-text {
        position: absolute;
        top: 10%;
        left: 5%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        z-index: 1;
        text-align: start;
    }
}

/* PÁGINA QR CODES MOBILE */
@media (max-width: 991.98px) {
    #headerQRMobile {
        h1 {
            color: #eae5d3 !important;
        }

        p {
            color: #eae5d3 !important;
        }

        .overlay-image {
            position: absolute;
            top: 60px;
            right: -40px;
            transform: none;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 40%;
            height: auto;
            z-index: 1;

            img {
                width: 40% !important;
                object-fit: contain;
            }
        }


        .overlay-img {
            position: relative;
            width: 100%;
            min-height: 85vh;
            border-radius: 20px;
            background: url('../images/bannerHeader.jpeg') no-repeat center center;
            background-size: cover;

            .overlay-content {
                position: absolute;
                inset: 0;
                display: flex;
                z-index: 999;

                display: flex;
                flex-direction: column;
                justify-content: flex-end;
                /* joga conteúdo pro rodapé */
                height: 100%;
                /* força ocupar altura total */
            }
        }
    }

    #presentMobile {
        .card {
            position: relative;
            background-color: #c5ae26;
            border: 1px solid #c5ae26;
            border-radius: 20px;
            overflow: hidden;

            &::before {
                content: "";
                position: absolute;
                inset: 0;
                background: url('../images/textures/textureLine.png');
                background-size: cover;
                opacity: 0.1;
                pointer-events: none;
                z-index: 1;
            }

            >* {
                position: relative;
                z-index: 2;
            }
        }
    }

    #extraMobile {
        h1 {
            color: #eae5d3 !important;
        }
    }

    #shareMobile {
        .card {
            position: relative;
            background-color: #7acbc8;
            border: 1px solid #7acbc8;
            border-radius: 20px;
            overflow: hidden;

            &::before {
                content: "";
                position: absolute;
                top: 0;
                left: 0;
                width: 200%;
                height: 200%;
                background: url('../images/textures/textureLine.png') center/cover no-repeat;
                opacity: 0.1;
                pointer-events: none;
                z-index: 1;
                transform: rotate(90deg);
                transform-origin: center center;
                top: -50%;
                left: -50%;
            }

            >* {
                position: relative;
                z-index: 2;
            }
        }


        h1 {
            color: #eae5d3 !important;
        }
    }

    #extraMobile {
        .card {
            position: relative;
            background-color: #d5b7db;
            border: 1px solid #d5b7db;
            border-radius: 20px;
            overflow: hidden;
            z-index: 0;
            /* garante contexto correto */


            &::before {
                content: "";
                position: absolute;
                inset: 0;
                background: url('../images/textures/textureSquare.png');
                background-size: cover;
                opacity: 0.1;
                pointer-events: none;
                z-index: 1;
            }

            >* {
                position: relative;
                z-index: 2;
            }
        }
    }

    #experienceMobile {
        .card {
            position: relative;
            background-color: #c5ae26;
            border: 1px solid #c5ae26;
            border-radius: 20px;
            overflow: hidden;

            &::before {
                content: "";
                position: absolute;
                inset: 0;
                background: url('../images/textures/textureLine.png');
                background-size: cover;
                opacity: 0.1;
                pointer-events: none;
                z-index: 1;
            }
        }

        .paperBox {
            background-color: #ffbcd9;
            border-radius: 40px;
            color: #000;
            font-family: 'Poppins', sans-serif;
            text-align: center;
            max-width: 600px;
            position: relative;
            box-shadow: 0 8px 0 #d0b822;
            z-index: 999;
            clip-path: polygon(0% 1%, 5% 0%, 15% 0.5%, 25% 0%, 35% 0.8%, 45% 0%,
                    55% 0.5%, 65% 0%, 75% 0.7%, 85% 0%, 95% 0.5%, 100% 1%,
                    100% 99%, 95% 100%, 85% 99.5%, 75% 100%, 65% 99.2%, 55% 100%,
                    45% 99.5%, 35% 100%, 25% 99.4%, 15% 100%, 5% 99.6%, 0% 99%);

        }

        >* {
            position: relative;
            z-index: 2;
        }
    }

    #adquireMobile {
        h1 {
            color: #eae5d3 !important;
        }

        p {
            color: #eae5d3 !important;
        }

        .overlay-img {
            position: relative;
            width: 100%;
            min-height: 70vh;
            border-radius: 20px;
            border-bottom-left-radius: 0px;
            border-bottom-right-radius: 0px;
            background: url('../images/bannerAdquire.jpeg') no-repeat center center;
            background-size: cover;

            .overlay-content {
                position: absolute;
                inset: 0;
                display: flex;
                z-index: 999;
                padding: 5rem;
                margin-top: 100px;

                display: flex;
                flex-direction: column;
                justify-content: flex-end;
                /* joga conteúdo pro rodapé */
                height: 100%;
                /* força ocupar altura total */
            }
        }
    }

    #journeyMobile {
        position: relative;
        width: 100%;
        height: 60vh;
        border-radius: 20px;
        object-fit: contain;
        background: url('../images/bannerFeel.jpeg');
        background-size: cover;
        background-position: center;

        h1 {
            font-family: 'BlockPro';
            color: #eae5d3 !important;
        }

        p {
            font-family: 'BlockPro';
            color: #eae5d3 !important;
        }

        .overlay-text {
            position: absolute;
            top: 10%;
            left: 5%;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            justify-content: flex-start;
            z-index: 1;
            text-align: start;
        }
    }
}