.elementor-15804 .elementor-element.elementor-element-f4472da{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-15804 .elementor-element.elementor-element-dd729fe{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for html, class: .elementor-element-e607dcd *//* === VARIÁVEIS DE COR (Azul Principal + Laranja de Destaque + Neutros Elegantes) === */
:root {
    --cor-azul-principal: rgba(5, 151, 226, 1); /* SEU AZUL #0597E2 */
    --cor-azul-hover: #047fc0; 
    --cor-azul-gradiente-fim: #036aa0; 
    
    --cor-laranja-destaque: #FF8C00; /* Laranja para acentos 🟨 e botões */
    --cor-laranja-destaque-hover: #cc7000;
    --cor-laranja-fundo-sutil: rgba(255, 140, 0, 0.08);

    --cor-texto-principal: #212529; 
    --cor-texto-secundario: #495057; 
    --cor-texto-claro: #ffffff; 
    
    --cor-fundo-pagina: #f8f9fa; 
    --cor-fundo-card: #ffffff; 
    --cor-fundo-card-alternativo: #f1f3f5; /* Cinza um pouco mais escuro para alternar */
    
    --cor-borda: #e0e0e0; /* Borda um pouco mais definida */
    --cor-sucesso: #28a745; 

    --font-principal: 'Roboto', sans-serif;
    --font-destaque: 'Montserrat', sans-serif;
    --font-cta: 'Poppins', sans-serif;

    --sombra-card: 0 6px 18px rgba(0, 0, 0, 0.06); /* Sombra um pouco mais pronunciada */
    --sombra-card-hover: 0 10px 25px rgba(0, 0, 0, 0.08);
    --sombra-botao-azul: 0 5px 12px rgba(var(--cor-azul-principal-r), var(--cor-azul-principal-g), var(--cor-azul-principal-b), 0.22);
    --sombra-botao-azul-hover: 0 7px 18px rgba(var(--cor-azul-principal-r), var(--cor-azul-principal-g), var(--cor-azul-principal-b), 0.30);
    --sombra-botao-laranja: 0 5px 12px rgba(255, 140, 0, 0.22);
    --sombra-botao-laranja-hover: 0 7px 18px rgba(255, 140, 0, 0.30);
    --border-radius-padrao: 10px;
    --transition-padrao: all 0.3s ease-in-out;

    --cor-azul-principal-r: 5;
    --cor-azul-principal-g: 151;
    --cor-azul-principal-b: 226;
}

/* === RESET BÁSICO & GERAL === */
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; font-size: 100%; }

body {
    font-family: var(--font-principal);
    color: var(--cor-texto-principal);
    line-height: 1.7; 
    background-color: var(--cor-fundo-pagina);
    font-size: 1rem; 
    font-weight: 400; 
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
}

.container {
    width: 90%;
    max-width: 880px; /* Conteúdo um pouco mais contido para elegância */
    margin: 0 auto;
    padding: 0 15px;
}

a {
    color: var(--cor-azul-principal); 
    text-decoration: none;
    font-weight: 500; 
    transition: var(--transition-padrao);
}
a:not(.action-button-requirements):hover { /* Evita sublinhado duplo em botões */
    color: var(--cor-azul-hover); 
    text-decoration: underline; 
}

strong { font-weight: 600; }
.keyword-requirements { 
    font-weight: 600;
    color: var(--cor-azul-principal); 
    border-bottom: 1px dotted var(--cor-azul-principal);
    padding-bottom: 1px;
}
.section-accent-requirements { /* Para o 🟨 */
    color: var(--cor-laranja-destaque);
    margin-right: 0.4em;
    font-weight: 700;
    font-size: 1.05em; /* Levemente maior */
}

/* === HEADER DA PÁGINA (REMOVIDO) === */

/* === HERO SECTION REQUIREMENTS === */
.hero-requirements {
    background: linear-gradient(140deg, var(--cor-azul-principal) 0%, var(--cor-azul-gradiente-fim) 100%); 
    color: var(--cor-texto-claro);
    padding: 65px 20px 75px; 
    text-align: center;
    border-radius: 0 0 var(--border-radius-padrao) var(--border-radius-padrao);
    margin-bottom: 45px; 
    position: relative;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(var(--cor-azul-principal-r), var(--cor-azul-principal-g), var(--cor-azul-principal-b), 0.18);
}
.hero-requirements-content {
    position: relative;
    z-index: 2;
    max-width: 740px; /* Conteúdo do hero mais focado */
    margin: 0 auto;
}
.hero-tagline-requirements {
    display: inline-block;
    font-family: var(--font-cta);
    font-size: 0.9rem; 
    font-weight: 500; 
    color: var(--cor-texto-claro); 
    background-color: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255,255,255,0.22);
    padding: 7px 16px; 
    border-radius: 25px;
    margin-bottom: 18px;
    text-transform: uppercase;
    letter-spacing: 0.7px; 
}
.hero-icon-svg-requirements { 
    width: 0.9em; 
    height: 0.9em;
    margin-right: 10px;
    vertical-align: -0.08em; 
    filter: drop-shadow(0 1px 2px rgba(0,0,0,0.15));
}
.hero-requirements h1 {
    font-family: var(--font-destaque);
    font-size: clamp(2.1rem, 5.2vw, 3.4rem); 
    font-weight: 700; /* Um pouco mais leve que 800 para elegância */
    margin-bottom: 18px;
    line-height: 1.2;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.15); 
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap; 
}
.subtitle-requirements {
    font-family: 'Roboto', sans-serif; 
    font-weight: 300; 
    font-size: clamp(1rem, 2.6vw, 1.2rem); 
    line-height: 1.65;
    opacity: 0.92; 
    margin-bottom: 0;
}

/* === CONTAINER DO ARTIGO E CARDS === */
.requirements-article-wrapper {
    margin-top: -30px; 
    position: relative;
    z-index: 2;
}
.requirements-content-detailed {
    background-color: transparent; 
    padding: 0; 
}

.requirements-section-card {
    background-color: var(--cor-fundo-card);
    border-radius: var(--border-radius-padrao);
    padding: 28px; /* Padding interno elegante */
    margin-bottom: 28px; 
    box-shadow: var(--sombra-card);
    transition: var(--transition-padrao);
    border: 1px solid var(--cor-borda); 
}
.requirements-section-card:hover {
    transform: translateY(-4px); 
    box-shadow: var(--sombra-card-hover);
    border-color: rgba(var(--cor-azul-principal-r), var(--cor-azul-principal-g), var(--cor-azul-principal-b), 0.3);
}
.requirements-section-card.intro-requirements { 
    text-align: center;
    padding-top: 32px; 
    background: var(--cor-fundo-card); 
}
.requirements-section-card.intro-requirements h2 {
    font-family: var(--font-destaque);
    font-size: clamp(1.55rem, 4.2vw, 2.05rem); 
    color: var(--cor-texto-principal);
    margin-bottom: 18px; 
    font-weight: 700; 
}
.requirements-section-card.intro-requirements p {
    font-size: 1.03rem; 
    color: var(--cor-texto-secundario);
    max-width: 680px;
    margin: 0 auto 18px; 
    line-height: 1.75;
}
.requirements-section-card.intro-requirements strong {
    color: var(--cor-azul-principal); 
}
.card-icon-wrapper-requirements { 
    margin-bottom: 18px; 
}
.section-main-icon-requirements { 
    width: 42px; 
    height: 42px; 
    fill: var(--cor-azul-principal); 
}

.section-header-requirements { 
    display: flex;
    align-items: center;
    gap: 14px; 
    margin-bottom: 20px; 
    padding-bottom: 12px; 
    border-bottom: 1px solid var(--cor-borda);
}
.card-title-icon-requirements { 
    width: 24px; 
    height: 24px; 
    fill: var(--cor-laranja-destaque); /* Ícones de título em laranja */
    flex-shrink: 0;
}
.requirements-section-card h2:not(.intro-requirements h2) { 
    font-family: var(--font-destaque);
    font-size: clamp(1.45rem, 3.8vw, 1.85rem); 
    color: var(--cor-texto-principal);
    margin: 0;
    font-weight: 700; 
}
.requirements-section-card p {
    font-size: 1rem;
    color: var(--cor-texto-secundario);
    line-height: 1.7;
    margin-bottom: 12px;
}

/* Lista Estilizada */
.list-styled-requirements { 
    list-style: none;
    padding-left: 0; 
    margin-top: 18px; 
}
.list-styled-requirements li {
    padding-left: 28px; 
    position: relative;
    margin-bottom: 12px; 
    font-size: 1rem; 
    color: var(--cor-texto-secundario);
}
.list-styled-requirements.checkmark li::before {
    content: '✅';
    font-size: 0.9em; 
    position: absolute;
    left: 0;
    top: 3px; 
}
.list-styled-requirements.arrow li::before {
    content: '›'; /* Seta mais elegante */
    color: var(--cor-laranja-destaque);
    font-weight: bold;
    font-size: 1.4em;
    position: absolute;
    left: 0;
    top: -1px; /* Ajuste fino para alinhamento */
}

/* Seção Bling */
.bling-importance-requirements {
    font-style: italic;
    color: var(--cor-texto-principal);
    margin-top: 10px;
}
.cta-bling-requirements {
    margin-top: 20px;
    text-align: center;
}
.cta-bling-requirements p {
    margin-bottom: 10px;
    font-weight: 500;
}
.action-button-requirements.bling-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 22px;
    border-radius: 25px;
    font-family: var(--font-cta);
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--cor-texto-claro);
    background-color: var(--cor-azul-principal);
    box-shadow: var(--sombra-botao-azul);
    transition: var(--transition-padrao);
    border: none;
}
.action-button-requirements.bling-link:hover {
    background-color: var(--cor-azul-hover);
    box-shadow: var(--sombra-botao-azul-hover);
    transform: translateY(-2px);
}
.btn-icon-requirements { /* Ícones nos botões de ação */
    width: 1.1em;
    height: 1.1em;
    fill: currentColor;
}

/* Seção Experiência e Treinamento */
.training-info-requirements {
    margin-top: 18px;
    padding: 15px;
    background-color: var(--cor-fundo-card-alternativo);
    border-radius: var(--border-radius-padrao);
    display: flex;
    align-items: flex-start;
    gap: 12px;
}
.training-icon-requirements {
    font-size: 1.2rem;
    color: var(--cor-laranja-destaque);
    line-height: 1.5;
}
.training-info-requirements h4 {
    font-family: var(--font-cta);
    font-size: 1rem;
    color: var(--cor-texto-principal);
    font-weight: 600;
    margin-bottom: 5px;
}
.training-info-requirements p {
    font-size: 0.9rem;
    margin-bottom: 0;
}

/* Seção Conhecimentos Básicos e Modelo Profissional */
.consistency-note-requirements,
.commitment-highlight-requirements {
    margin-top: 15px;
    padding: 10px;
    background-color: var(--cor-laranja-fundo-sutil);
    border-left: 3px solid var(--cor-laranja-destaque);
    border-radius: 0 var(--border-radius-padrao) var(--border-radius-padrao) 0;
    font-size: 0.95rem;
    color: var(--cor-texto-principal);
}

/* Seção CTA Final */
.cta-final-requirements {
    background: var(--cor-azul-principal); 
    color: var(--cor-texto-claro);
    text-align: center;
    padding: 35px 25px; 
    border-radius: var(--border-radius-padrao); 
}
.cta-final-requirements .btn-icon-requirements { 
    fill: currentColor; 
}
.cta-final-requirements h2, .cta-final-requirements p {
    color: var(--cor-texto-claro);
}
.cta-title-requirements {
    font-family: var(--font-destaque);
    font-size: clamp(1.7rem, 4.5vw, 2.2rem);
    margin-bottom: 12px;
    font-weight: 700;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.1);
}
.cta-final-requirements p {
    font-size: 1.05rem;
    max-width: 620px;
    margin: 0 auto 25px;
    opacity: 0.95;
}
.contact-buttons-requirements {
    display: flex;
    flex-direction: column; 
    align-items: center;
    gap: 18px;
}
.action-button-requirements {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 30px;
    border-radius: 30px; 
    font-family: var(--font-cta);
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    transition: var(--transition-padrao);
    min-width: 240px; 
    border: 2px solid transparent; 
}
.action-button-requirements.primary { 
    background-color: var(--cor-laranja-destaque);
    color: var(--cor-texto-claro);
    box-shadow: var(--sombra-botao-laranja);
    border-color: var(--cor-laranja-destaque);
}
.action-button-requirements.primary:hover {
    background-color: var(--cor-laranja-destaque-hover);
    box-shadow: var(--sombra-botao-laranja-hover);
    transform: translateY(-2px);
}
.action-button-requirements.secondary { 
    background-color: var(--cor-texto-claro); 
    color: var(--cor-azul-principal); 
    border-color: var(--cor-azul-principal); 
    box-shadow: 0 2px 5px rgba(0,0,0,0.08);
}
.action-button-requirements.secondary:hover {
    background-color: #f0f7ff; 
    border-color: var(--cor-azul-hover);
    color: var(--cor-azul-hover);
    transform: translateY(-2px);
}
.action-button-requirements.secondary .btn-icon-requirements path {
    stroke: currentColor; 
    fill: none;
}
.action-button-requirements.primary .btn-icon-requirements path {
     fill: currentColor; 
}

.final-statement-requirements {
    margin-top: 25px !important; 
    font-size: 1rem !important;
    line-height: 1.6 !important;
    font-style: italic;
}


/* === RESPONSIVIDADE === */
@media (min-width: 600px) { 
    .contact-buttons-requirements {
        flex-direction: row; 
        justify-content: center;
    }
}

@media (min-width: 769px) { 
    .container { padding: 0 20px; } 
    .hero-requirements { padding: 80px 30px 90px; }
    .requirements-article-wrapper { margin-top: -40px; }
    .requirements-section-card { padding: 35px 40px; margin-bottom: 35px; }
    .intro-requirements h2 { font-size: clamp(1.7rem, 4.5vw, 2.2rem); }
    .section-header-requirements h2 { font-size: clamp(1.6rem, 4vw, 2.05rem); }
    .action-button-requirements {
        font-size: 1.05rem;
        padding: 15px 32px;
    }
}

@media (max-width: 480px) {
    .hero-requirements { padding: 50px 15px 60px; border-radius: 0 0 25px 25px;}
    .hero-tagline-requirements { font-size: 0.88rem; padding: 7px 14px;}
    .hero-requirements h1 { font-size: clamp(1.9rem, 5.8vw, 2.9rem); }
    .subtitle-requirements { font-size: 1rem; }

    .requirements-article-wrapper { margin-top: -30px; }
    .requirements-section-card { padding: 20px 18px; }
    .intro-requirements h2 { font-size: clamp(1.4rem, 4.5vw, 1.9rem); }
    .section-header-requirements h2 { font-size: clamp(1.35rem, 4vw, 1.75rem); }
    .requirements-section-card p, .list-styled-requirements li, .training-info-requirements p { font-size: 0.92rem; }
    .cta-title-requirements {font-size: clamp(1.5rem, 4.5vw, 1.9rem);}
    .action-button-requirements { font-size: 0.95rem; padding: 12px 22px; min-width: 200px; }
}/* End custom CSS */