.elementor-7 .elementor-element.elementor-element-84c2454{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-7 .elementor-element.elementor-element-b0e230e img{width:30%;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}/* Start custom CSS *//* =========================================================
   INGENIO ENGLISH — COMING SOON
   Página Elementor ID: 7
   Estilo premium + responsivo + acessibilidade mobile
   ========================================================= */

/* Tipografia premium */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

/* =========================================================
   1. VARIÁVEIS DA MARCA
   ========================================================= */

:root {
    --ingenio-black: #050505;
    --ingenio-black-soft: #090b0e;
    --ingenio-navy: #071624;
    --ingenio-navy-light: #0b2438;
    --ingenio-blue: #176b9b;
    --ingenio-blue-hover: #2087bf;
    --ingenio-blue-light: #67b7e1;

    --ingenio-white: #ffffff;
    --ingenio-off-white: #f4f7f9;
    --ingenio-text: #d7e0e7;
    --ingenio-text-muted: #a9b3bc;
    --ingenio-border: #263746;

    --ingenio-heading-font: "Manrope", sans-serif;
    --ingenio-body-font: "DM Sans", sans-serif;

    --ingenio-radius-sm: 12px;
    --ingenio-radius-md: 22px;
    --ingenio-radius-lg: 32px;

    --ingenio-shadow:
        0 30px 80px rgba(0, 0, 0, 0.48),
        0 8px 30px rgba(0, 0, 0, 0.28);

    --ingenio-transition: 220ms ease;
}


/* =========================================================
   2. RESET E BASE GLOBAL
   ========================================================= */

html {
    scroll-behavior: smooth;
    background: var(--ingenio-black);
}

body.page-id-7 {
    margin: 0;
    min-height: 100vh;
    overflow-x: hidden;

    font-family: var(--ingenio-body-font);
    color: var(--ingenio-white);
    background:
        radial-gradient(
            circle at 18% 12%,
            rgba(23, 107, 155, 0.20) 0,
            rgba(23, 107, 155, 0.06) 22%,
            transparent 48%
        ),
        radial-gradient(
            circle at 82% 85%,
            rgba(11, 36, 56, 0.46) 0,
            transparent 42%
        ),
        linear-gradient(
            145deg,
            #030405 0%,
            #07111a 52%,
            #050505 100%
        );

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body.page-id-7 *,
body.page-id-7 *::before,
body.page-id-7 *::after {
    box-sizing: border-box;
}

body.page-id-7 img {
    max-width: 100%;
    height: auto;
}

body.page-id-7 a,
body.page-id-7 button {
    -webkit-tap-highlight-color: transparent;
}


/* =========================================================
   3. FUNDO DECORATIVO
   ========================================================= */

body.page-id-7::before,
body.page-id-7::after {
    content: "";
    position: fixed;
    pointer-events: none;
    z-index: 0;
    border-radius: 999px;
    filter: blur(10px);
}

body.page-id-7::before {
    width: 360px;
    height: 360px;
    top: -180px;
    right: -120px;

    background: radial-gradient(
        circle,
        rgba(103, 183, 225, 0.16),
        rgba(23, 107, 155, 0.05) 55%,
        transparent 72%
    );
}

body.page-id-7::after {
    width: 300px;
    height: 300px;
    bottom: -170px;
    left: -120px;

    background: radial-gradient(
        circle,
        rgba(23, 107, 155, 0.18),
        transparent 70%
    );
}


/* =========================================================
   4. ÁREA PRINCIPAL
   ========================================================= */

body.page-id-7 .elementor-7 {
    position: relative;
    z-index: 1;
    width: 100%;
    min-height: 100vh;
}

body.page-id-7 .elementor-element-84c2454 {
    position: relative;
    min-height: 100vh;

    display: flex;
    align-items: center;
    justify-content: center;

    padding:
        max(48px, env(safe-area-inset-top))
        max(24px, env(safe-area-inset-right))
        max(48px, env(safe-area-inset-bottom))
        max(24px, env(safe-area-inset-left));

    background: transparent !important;
}

body.page-id-7 .elementor-element-84c2454 > .e-con-inner {
    position: relative;
    overflow: hidden;

    width: min(100%, 760px);
    min-height: auto;

    display: flex;
    flex-direction: column;
    align-items: center;

    padding: 58px 64px 62px;

    text-align: center;

    background:
        linear-gradient(
            145deg,
            rgba(11, 36, 56, 0.86),
            rgba(5, 10, 15, 0.94)
        );

    border: 1px solid rgba(103, 183, 225, 0.20);
    border-radius: var(--ingenio-radius-lg);
    box-shadow: var(--ingenio-shadow);

    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

/* Linha premium superior */
body.page-id-7 .elementor-element-84c2454 > .e-con-inner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 12%;
    width: 76%;
    height: 1px;

    background: linear-gradient(
        90deg,
        transparent,
        rgba(103, 183, 225, 0.95),
        transparent
    );
}

/* Brilho suave interno */
body.page-id-7 .elementor-element-84c2454 > .e-con-inner::after {
    content: "";
    position: absolute;
    top: -110px;
    left: 50%;
    width: 360px;
    height: 220px;

    transform: translateX(-50%);
    pointer-events: none;

    background: radial-gradient(
        circle,
        rgba(103, 183, 225, 0.13),
        transparent 70%
    );
}


/* =========================================================
   5. IMAGEM
   ========================================================= */

body.page-id-7 .elementor-element-b0e230e {
    position: relative;
    z-index: 2;

    width: auto;
    margin: 0 0 30px !important;
}

body.page-id-7 .elementor-element-b0e230e .elementor-widget-container {
    position: relative;
    display: inline-flex;
    padding: 7px;

    border: 1px solid rgba(103, 183, 225, 0.38);
    border-radius: 50%;

    background:
        linear-gradient(
            145deg,
            rgba(103, 183, 225, 0.18),
            rgba(7, 22, 36, 0.45)
        );

    box-shadow:
        0 0 0 8px rgba(103, 183, 225, 0.035),
        0 18px 45px rgba(0, 0, 0, 0.44);
}

body.page-id-7 .elementor-element-b0e230e img {
    display: block;

    width: 176px !important;
    height: 176px !important;

    object-fit: cover;
    object-position: center;

    border: 3px solid rgba(255, 255, 255, 0.94);
    border-radius: 50%;

    filter:
        contrast(1.04)
        saturate(0.94);

    transition:
        transform var(--ingenio-transition),
        filter var(--ingenio-transition);
}

@media (hover: hover) {
    body.page-id-7 .elementor-element-b0e230e img:hover {
        transform: scale(1.025);
        filter:
            contrast(1.06)
            saturate(1);
    }
}


/* =========================================================
   6. TÍTULO
   ========================================================= */

body.page-id-7 .elementor-element-3592ea5 {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 650px;

    margin: 0 0 20px !important;
}

body.page-id-7 .elementor-element-3592ea5 .elementor-heading-title {
    margin: 0;

    font-family: var(--ingenio-heading-font) !important;
    font-size: clamp(2.25rem, 5vw, 4.3rem) !important;
    font-weight: 800 !important;
    line-height: 1.04 !important;
    letter-spacing: -0.052em !important;

    color: var(--ingenio-white) !important;

    text-wrap: balance;

    text-shadow:
        0 2px 16px rgba(0, 0, 0, 0.28);
}


/* Palavra ou trecho destacado dentro do título */
body.page-id-7 .elementor-element-3592ea5 .elementor-heading-title strong,
body.page-id-7 .elementor-element-3592ea5 .elementor-heading-title b,
body.page-id-7 .elementor-element-3592ea5 .elementor-heading-title span {
    color: var(--ingenio-blue-light);
}


/* =========================================================
   7. TEXTO
   ========================================================= */

body.page-id-7 .elementor-element-ad91fd0 {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 590px;

    margin: 0 0 34px !important;
}

body.page-id-7 .elementor-element-ad91fd0,
body.page-id-7 .elementor-element-ad91fd0 p {
    font-family: var(--ingenio-body-font) !important;
    font-size: clamp(1.0625rem, 1.5vw, 1.2rem) !important;
    font-weight: 400 !important;
    line-height: 1.72 !important;
    letter-spacing: -0.01em;

    color: var(--ingenio-text) !important;
}

body.page-id-7 .elementor-element-ad91fd0 p {
    margin: 0;
}

body.page-id-7 .elementor-element-ad91fd0 strong,
body.page-id-7 .elementor-element-ad91fd0 b {
    font-weight: 700;
    color: var(--ingenio-white);
}


/* =========================================================
   8. BOTÃO
   ========================================================= */

body.page-id-7 .elementor-element-bb7f7b4 {
    position: relative;
    z-index: 2;

    width: auto;
    margin: 0 !important;
}

body.page-id-7 .elementor-element-bb7f7b4 .elementor-button {
    position: relative;
    overflow: hidden;

    min-width: 220px;
    min-height: 54px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 16px 30px !important;

    font-family: var(--ingenio-heading-font) !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.01em;

    color: var(--ingenio-white) !important;

    background:
        linear-gradient(
            135deg,
            var(--ingenio-blue) 0%,
            #0c527d 100%
        ) !important;

    border: 1px solid rgba(103, 183, 225, 0.48) !important;
    border-radius: 999px !important;

    box-shadow:
        0 12px 30px rgba(23, 107, 155, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.16);

    text-decoration: none !important;

    transform: translateY(0);

    transition:
        transform var(--ingenio-transition),
        background var(--ingenio-transition),
        border-color var(--ingenio-transition),
        box-shadow var(--ingenio-transition);
}

body.page-id-7 .elementor-element-bb7f7b4 .elementor-button::before {
    content: "";
    position: absolute;
    inset: 0;

    opacity: 0;

    background: linear-gradient(
        135deg,
        rgba(255, 255, 255, 0.15),
        transparent 60%
    );

    transition: opacity var(--ingenio-transition);
}

body.page-id-7
.elementor-element-bb7f7b4
.elementor-button-content-wrapper {
    position: relative;
    z-index: 2;

    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (hover: hover) {
    body.page-id-7
    .elementor-element-bb7f7b4
    .elementor-button:hover {
        transform: translateY(-3px);

        background:
            linear-gradient(
                135deg,
                var(--ingenio-blue-hover) 0%,
                var(--ingenio-blue) 100%
            ) !important;

        border-color: rgba(103, 183, 225, 0.82) !important;

        box-shadow:
            0 18px 38px rgba(23, 107, 155, 0.40),
            inset 0 1px 0 rgba(255, 255, 255, 0.20);
    }

    body.page-id-7
    .elementor-element-bb7f7b4
    .elementor-button:hover::before {
        opacity: 1;
    }
}

body.page-id-7
.elementor-element-bb7f7b4
.elementor-button:active {
    transform: translateY(0) scale(0.985);
}


/* =========================================================
   9. ACESSIBILIDADE
   ========================================================= */

body.page-id-7 a:focus-visible,
body.page-id-7 button:focus-visible,
body.page-id-7 input:focus-visible,
body.page-id-7 textarea:focus-visible,
body.page-id-7 select:focus-visible {
    outline: 3px solid var(--ingenio-blue-light) !important;
    outline-offset: 4px !important;
}

body.page-id-7 ::selection {
    color: var(--ingenio-white);
    background: var(--ingenio-blue);
}


/* =========================================================
   10. COOKIE BANNER — CORES DA MARCA
   ========================================================= */

body.page-id-7 .cookieadmin_law_container,
body.page-id-7 .cookieadmin_cookie_modal {
    font-family: var(--ingenio-body-font) !important;
}

body.page-id-7 .cookieadmin_consent_inside,
body.page-id-7 .cookieadmin_cookie_modal {
    color: var(--ingenio-text) !important;
    background: rgba(7, 22, 36, 0.98) !important;
    border-color: var(--ingenio-border) !important;
    border-radius: 18px !important;

    box-shadow:
        0 22px 60px rgba(0, 0, 0, 0.55) !important;
}

body.page-id-7 #cookieadmin_notice_title,
body.page-id-7 .cookieadmin_preference_title,
body.page-id-7 .cookieadmin_header,
body.page-id-7 .stitle {
    color: var(--ingenio-white) !important;
}

body.page-id-7 #cookieadmin_notice,
body.page-id-7 .cookieadmin_desc,
body.page-id-7 .cookieadmin_preference {
    color: var(--ingenio-text) !important;
}

body.page-id-7 .cookieadmin_btn {
    min-height: 44px;

    font-family: var(--ingenio-body-font) !important;
    font-weight: 700 !important;

    border-radius: 999px !important;
}

body.page-id-7 .cookieadmin_accept_btn,
body.page-id-7 .cookieadmin_save_btn {
    color: var(--ingenio-white) !important;
    background: var(--ingenio-blue) !important;
    border-color: var(--ingenio-blue) !important;
}

body.page-id-7 .cookieadmin_customize_btn,
body.page-id-7 .cookieadmin_reject_btn {
    color: var(--ingenio-white) !important;
    background: transparent !important;
    border: 1px solid var(--ingenio-border) !important;
}

body.page-id-7 .cookieadmin_remark,
body.page-id-7 .cookieadmin_showmore,
body.page-id-7 .cookieadmin_modal_footer_links a {
    color: var(--ingenio-blue-light) !important;
}


/* =========================================================
   11. TABLET
   ========================================================= */

@media (max-width: 1024px) {

    body.page-id-7 .elementor-element-84c2454 {
        padding: 40px 24px;
    }

    body.page-id-7 .elementor-element-84c2454 > .e-con-inner {
        width: min(100%, 690px);
        padding: 52px 48px 56px;
    }

    body.page-id-7 .elementor-element-b0e230e img {
        width: 160px !important;
        height: 160px !important;
    }
}


/* =========================================================
   12. MOBILE — ACESSIBILIDADE E LEITURA
   ========================================================= */

@media (max-width: 767px) {

    html {
        scroll-behavior: auto;
    }

    body.page-id-7 {
        min-height: 100%;
        background:
            radial-gradient(
                circle at 50% 0%,
                rgba(23, 107, 155, 0.18),
                transparent 35%
            ),
            linear-gradient(
                180deg,
                #030405 0%,
                #07111a 58%,
                #050505 100%
            );
    }

    body.page-id-7::before {
        width: 250px;
        height: 250px;
        top: -130px;
        right: -110px;
    }

    body.page-id-7::after {
        width: 230px;
        height: 230px;
        bottom: -130px;
        left: -100px;
    }

    body.page-id-7 .elementor-7,
    body.page-id-7 .elementor-element-84c2454 {
        min-height: 100svh;
    }

    body.page-id-7 .elementor-element-84c2454 {
        align-items: center;

        padding:
            max(24px, env(safe-area-inset-top))
            max(16px, env(safe-area-inset-right))
            max(24px, env(safe-area-inset-bottom))
            max(16px, env(safe-area-inset-left));
    }

    body.page-id-7 .elementor-element-84c2454 > .e-con-inner {
        width: 100%;

        padding: 38px 22px 34px;

        border-radius: 24px;

        background:
            linear-gradient(
                160deg,
                rgba(11, 36, 56, 0.92),
                rgba(5, 9, 13, 0.97)
            );

        box-shadow:
            0 20px 50px rgba(0, 0, 0, 0.42);
    }

    body.page-id-7 .elementor-element-b0e230e {
        margin-bottom: 24px !important;
    }

    body.page-id-7 .elementor-element-b0e230e .elementor-widget-container {
        padding: 5px;
    }

    body.page-id-7 .elementor-element-b0e230e img {
        width: 132px !important;
        height: 132px !important;

        border-width: 2px;
    }

    body.page-id-7 .elementor-element-3592ea5 {
        max-width: 100%;
        margin-bottom: 18px !important;
    }

    body.page-id-7 .elementor-element-3592ea5 .elementor-heading-title {
        /* Tamanho mínimo confortável para leitura */
        font-size: clamp(2rem, 10vw, 3rem) !important;
        line-height: 1.08 !important;
        letter-spacing: -0.045em !important;

        /* Evita linhas apertadas demais */
        max-width: 100%;
        overflow-wrap: break-word;
        hyphens: none;
    }

    body.page-id-7 .elementor-element-ad91fd0 {
        max-width: 100%;
        margin-bottom: 28px !important;
    }

    body.page-id-7 .elementor-element-ad91fd0,
    body.page-id-7 .elementor-element-ad91fd0 p {
        /* Padrão acessível no mobile */
        font-size: 1.0625rem !important;
        line-height: 1.68 !important;
        letter-spacing: 0;
    }

    body.page-id-7 .elementor-element-bb7f7b4 {
        width: 100%;
    }

    body.page-id-7 .elementor-element-bb7f7b4 .elementor-button {
        width: 100%;
        min-width: 0;

        /* Área mínima recomendada para toque */
        min-height: 54px;

        padding: 16px 22px !important;

        font-size: 1rem !important;
    }

    body.page-id-7 .cookieadmin_law_container {
        left: 12px !important;
        right: 12px !important;
        bottom: 12px !important;
        width: auto !important;
        max-width: none !important;
    }

    body.page-id-7 .cookieadmin_consent_inside {
        padding: 20px !important;
        border-radius: 16px !important;
    }

    body.page-id-7 .cookieadmin_consent_btns {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    body.page-id-7 .cookieadmin_btn {
        width: 100% !important;
        min-height: 48px !important;
    }
}


/* =========================================================
   13. MOBILE PEQUENO
   ========================================================= */

@media (max-width: 380px) {

    body.page-id-7 .elementor-element-84c2454 {
        padding-left: 12px;
        padding-right: 12px;
    }

    body.page-id-7 .elementor-element-84c2454 > .e-con-inner {
        padding: 32px 18px 28px;
        border-radius: 20px;
    }

    body.page-id-7 .elementor-element-b0e230e img {
        width: 116px !important;
        height: 116px !important;
    }

    body.page-id-7 .elementor-element-3592ea5 .elementor-heading-title {
        font-size: 1.9rem !important;
    }

    body.page-id-7 .elementor-element-ad91fd0,
    body.page-id-7 .elementor-element-ad91fd0 p {
        font-size: 1rem !important;
        line-height: 1.65 !important;
    }
}


/* =========================================================
   14. TELAS BAIXAS
   Evita que o conteúdo fique cortado em telemóveis
   ========================================================= */

@media (max-width: 767px) and (max-height: 700px) {

    body.page-id-7 .elementor-element-84c2454 {
        align-items: flex-start;
        padding-top: 18px;
        padding-bottom: 18px;
    }

    body.page-id-7 .elementor-element-84c2454 > .e-con-inner {
        padding-top: 28px;
        padding-bottom: 28px;
    }

    body.page-id-7 .elementor-element-b0e230e {
        margin-bottom: 18px !important;
    }

    body.page-id-7 .elementor-element-b0e230e img {
        width: 105px !important;
        height: 105px !important;
    }

    body.page-id-7 .elementor-element-3592ea5 {
        margin-bottom: 14px !important;
    }

    body.page-id-7 .elementor-element-ad91fd0 {
        margin-bottom: 22px !important;
    }
}


/* =========================================================
   15. REDUÇÃO DE MOVIMENTO
   Acessibilidade para usuários sensíveis a animações
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    html {
        scroll-behavior: auto !important;
    }

    body.page-id-7 *,
    body.page-id-7 *::before,
    body.page-id-7 *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}


/* =========================================================
   16. ALTO CONTRASTE
   ========================================================= */

@media (prefers-contrast: more) {

    body.page-id-7 .elementor-element-84c2454 > .e-con-inner {
        border-color: rgba(255, 255, 255, 0.7);
    }

    body.page-id-7 .elementor-element-ad91fd0,
    body.page-id-7 .elementor-element-ad91fd0 p {
        color: var(--ingenio-white) !important;
    }

    body.page-id-7 .elementor-element-bb7f7b4 .elementor-button {
        border: 2px solid var(--ingenio-white) !important;
    }
}/* End custom CSS */