/*
 * Os blocos <style> que os code blocks do Oxygen imprimiam no corpo da pagina,
 * na mesma ordem do documento. Entram depois de `page.css` porque no original
 * eles vinham depois — e ha regra aqui que vence a do build da pagina.
 *
 * O @import do Noto Sans e do formulario de membership e veio do original.
 */
/* ---- <style> ---- */
.oxygen-oxy-ou_countdown-oucd_timezone .select2-container--default .select2-selection--single .select2-selection__rendered{color: #fff!important;}

/* ---- <style> ---- */
.ct-FontAwesomeicon-instagram{width:0.85714285714286em}

/* ---- <style id="ct_code_block_css_3460"> ---- */
#section-3458-8 > .ct-section-inner-wrap{
      margin: 0;
      width: 100%;
      max-width: 100%;
    }
    
    .jhsf-video-banner {
        position: relative;
        width: 100%;
        height: 100vh;
        min-height: 600px;
        overflow: hidden;
        background: #000;
    }
    
    /* Vídeo arquivo MP4 */
    .jhsf-video-banner__media {
        width: 100%;
        height: 100%;
        min-height: 600px;
        object-fit: cover;
        display: block;
    }
    
    /* Wrapper do YouTube */
    .jhsf-video-banner__youtube {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        overflow: hidden;
        background: #000;
    }
    
    /* YouTube como background cover */
    .jhsf-video-banner__youtube-iframe {
        position: absolute;
        top: 50%;
        left: 50%;
    
        width: 177.78vh;
        height: 120vh;
    
        min-width: 100%;
        min-height: 120%;
    
        transform: translate(-50%, -50%) scale(1.08);
        border: 0;
        pointer-events: none;
    }
    
    /* Mobile */
    @media (max-width: 768px) {
        .jhsf-video-banner {
            height: 100svh;
            min-height: 100svh;
        }
    
        .jhsf-video-banner__youtube-iframe {
            width: 220vh;
            height: 130vh;
            min-height: 130%;
            transform: translate(-50%, -50%);
        }
    
        .jhsf-video-banner__media {
            height: 100%;
            min-height: 100svh;
            object-fit: cover;
        }
    }

/* ---- <style id="ct_code_block_css_20"> ---- */
.efeito-ativo {
      position: absolute;
      transition: all 0.5s ease; /* Tempo e tipo de transição */
      top: 0;
      right: 0;
      left: 0;
    }

/* ---- <style id="ct_code_block_css_3276"> ---- */
iframe {
      height: 650px;
      width: 100%;
      border: 0px solid transparent;
      background-color: transparent;
    }
    
    input, textarea, label, .wrap-drop-webdoor, p.label {
        color: #745c3b;
        font-size: 15px;
        text-transform: none;
        width: 100%;
    }
    
    input {
        height: 30px;
        font-family: Tahoma, Verdana, Geneva, sans-serif;
        font-size: 15px;
    }
    
    input, textarea {
        background-color: transparent;
        padding: 10px 0px;
        margin-bottom: 30px;
        font-size: 15px;
        border: 0;
        border-bottom: 1px solid #745c3b!important;
    }
    
    .container-check.white span {
        display: inline-block;
        color: #745c3b;
        font-size: 12px;
    }
    
    input:focus, textarea:focus {
        outline: none;
    }
    
    .container-check {
        display: flex;
        flex-direction: row-reverse;
        gap: 10px;
        justify-content: flex-end;
    }
    
    .container-check input {
        width: 12px !important;
        height: 18px;
        margin: 0 !important;
    }
    
            .wpcf7-submit {
                border: 1px solid #745c3b;
                display: inline-flex;
                border-radius: 0;
                height: 28px;
                line-height: 0px; /* Ajustar a altura do texto */
                justify-content: center;
                align-items: center; /* Centraliza o texto verticalmente */
                position: relative;
                width: 142px;
                background: none;
                color: #745c3b;
                cursor: pointer;
                overflow: hidden;
                z-index: 0; /* Para garantir que o pseudo-elemento fique atrás do texto */
                transition: color 0.4s ease;
            }
            .wpcf7-submit:hover {
                color: #fff;
                background: #745c3b;
            }
    
    
    .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
        border: none;
        padding: 0;
        margin: 10px 0 0 0;
    }
    
    @media(max-width: 768px) {
      form p {
          display: flex;
          flex-direction: column;
          align-items: center;
      }
    }

/* ---- <style id="ct_code_block_css_3278"> ---- */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap');
    
    #form-container {
        margin: 0 auto;
        font-family: "Noto Sans", sans-serif;
        width: 100%;
        max-width: 700px;
        padding: 0 15px;
    }
    
    
    /* Espaçamento entre linhas */
    .row {
        margin-bottom: 15px;
    }
    
    .form-group {
        margin-bottom: 0px;
    }
    
    .form-group label {
        color: #141414;
        display: block;
        margin-bottom: 8px;
        font-size: 14px;
        font-style: normal;
        font-weight: 600;
    }
    
    .form-group input[type="text"],
    .form-group input[type="email"],
    .form-group input[type="date"],
    .form-group input[type="tel"],
    .form-group select {
        color: #848484;
        width: 100%;
        height: 46px;
        padding: 10px;
        border: none;
        border-bottom: 0px solid #fff !important;
        border-radius: 0 !important;
        box-sizing: border-box;
        font-size: 16px;
        transition: border-color 0.3s ease;
        margin-bottom: 0;
        background-color: #ffffff;
        font-family: inherit;
    }
    
    .form-group input::placeholder {
        color: #848484;
    }
    
    .form-group select {
        background-color: white;
        cursor: pointer;
    }
    
    .form-group select option {
        padding: 10px;
    }
    
    /* Container para input com ícone */
    .input-with-icon {
        position: relative;
        display: block;
    }
    
    .input-with-icon input {
        width: 100% !important;
        padding: 12px 45px 12px 12px !important;
        border: 0px solid #ddd !important;
        border-radius: 0px !important;
        box-sizing: border-box !important;
        font-size: 16px !important;
        transition: border-color 0.3s ease;
    }
    
    .input-with-icon input:focus {
        outline: none;
        border-color: #007cba;
    }
    
    /* Ícone dentro do input */
    .input-icon {
        position: absolute;
        right: 12px;
        top: 50%;
        transform: translateY(-50%);
        color: #1C1B1F;
        font-size: 16px;
        pointer-events: none;
        transition: color 0.3s ease;
    }
    
    .form-group input:focus,
    .form-group select:focus {
        color: #848484;
        outline: none;
        border-color: #007cba;
    }
    
    /* Campos de texto simples */
    .form-group input[type="text"]:focus {
        outline: none;
        border-color: #007cba;
    }
    
    .form-group .checkbox-container {
        display: flex;
        align-items: center;
    }
    
    .form-group .checkbox-container span, 
    .form-group .checkbox-container span a {
        color: #897769;
        font-weight: 400;
        font-size: 14px;
        font-style: normal;
    }
    
    .form-group .checkbox-container span a {
        text-decoration: underline;
    }
    
    .form-group .checkbox-container .checkmark {
        border: 1px solid #3E3835;
        background: #fff;
    }
    
    /* Estilos específicos para intlTelInput - LAYOUT UNIFICADO */
    .iti {
        width: 100% !important;
        display: block;
        position: relative;
        border: 0px solid #ddd;
        border-radius: 0px;
        background: white;
        transition: border-color 0.3s ease;
    }
    
    .iti:focus-within {
        border-color: #007cba;
        box-shadow: 0 0 0 3px rgba(0, 124, 186, 0.1);
    }
    
    .iti.valid {
        border-color: #28a745;
    }
    
    .iti.invalid {
        border-color: #dc3545;
    }
    
    .iti input[type=tel] {
        width: 100% !important;
        height: 46px !important;
        padding: 12px 12px 12px 80px !important;
        border: none !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
        font-size: 16px !important;
        font-family: inherit !important;
        background: transparent !important;
        outline: none !important;
        font-style: normal !important;
    }
    
    .iti input[type=tel]:focus {
        outline: none !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
    
    .iti__selected-flag {
        width: 60px !important;
        padding: 12px 8px !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        transition: background-color 0.2s ease;
        border-radius: 6px 0 0 6px !important;
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        bottom: 0 !important;
        z-index: 2 !important;
    }
    
    .iti__selected-flag:hover {
        background: #f8f9fa !important;
    }
    
    .iti__flag-container {
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
    }
    
    /* Ocultar o código do país do seletor principal */
    .iti__selected-dial-code {
        display: none !important;
    }
    
    /* Dropdown styling */
    .iti__country-list {
        max-height: 200px;
        overflow-y: auto;
        z-index: 9999;
        box-shadow: 0 4px 20px rgba(0,0,0,0.15);
        border-radius: 8px;
        border: 1px solid #ddd;
        background: white;
        margin-top: 2px;
        min-width: 300px;
    }
    
    .iti__dropdown-content {
        background: white;
    }
    
    .iti__country {
        padding: 12px 15px;
        cursor: pointer;
        border-bottom: 1px solid #f5f5f5;
        transition: background-color 0.2s ease;
        display: flex;
        align-items: center;
    }
    
    .iti__country:hover {
        background-color: #f8f9fa;
    }
    
    .iti__country.iti__highlight {
        background-color: #007cba;
        color: white;
    }
    
    .iti__country-name {
        margin-left: 12px;
        font-weight: 500;
        flex: 1;
    }
    
    .iti__dial-code {
        color: #666;
        font-weight: 600;
        font-family: monospace;
        font-size: 14px;
        margin-left: auto;
    }
    
    .iti__highlight .iti__dial-code {
        color: #fff;
    }
    
    /* Flag styling melhorado */
    .iti__flag {
        width: 21px !important;
        height: 15px !important;
        border-radius: 2px;
        box-shadow: 0 1px 3px rgba(0,0,0,0.1);
        margin-right: 8px;
    }
    
    /* Arrow styling */
    .iti__arrow {
        border-left: 4px solid transparent;
        border-right: 4px solid transparent;
        border-top: 5px solid #666;
        margin-left: 4px;
        transition: transform 0.2s ease;
    }
    
    .iti__arrow--up {
        transform: rotate(180deg);
    }
    
    /* Remover sombras desnecessárias */
    .iti__selected-flag .iti__flag {
        box-shadow: none;
    }
    
    /* Placeholder personalizado */
    .iti input[type=tel]::placeholder {
        color: #999;
        font-style: italic;
    }
    
    /* Indicadores de campo */
    .phone-indicator,
    .field-indicator {
        font-size: 13px;
        margin-top: 6px;
        font-weight: 500;
        min-height: 18px;
    }
    
    /* Checkbox styling */
    .checkbox-group {
        display: flex;
        align-items: flex-start;
        margin: 24px 0;
    }
    
    .checkbox-container {
        display: flex;
        align-items: flex-start;
        cursor: pointer;
        line-height: 1.4;
    }
    
    .checkmark {
        width: 20px;
        height: 20px;
        border: 2px solid #ddd;
        margin-right: 12px;
        display: inline-block;
        position: relative;
        flex-shrink: 0;
        border-radius: 3px;
        transition: all 0.3s ease;
    }
    
    input[type="checkbox"] {
        display: none;
    }
    
    input[type="checkbox"]:checked + .checkmark {
        background-color: #007cba;
        border-color: #007cba;
    }
    
    input[type="checkbox"]:checked + .checkmark::after {
        content: "✓";
        position: absolute;
        left: 3px;
        top: -2px;
        color: white;
        font-weight: bold;
        font-size: 14px;
    }
    
    .checkbox-text {
        color: #333;
    }
    
    .checkbox-text a {
        color: #007cba;
        text-decoration: none;
    }
    
    .checkbox-text a:hover {
        text-decoration: underline;
    }
    
    /* Botão de envio */
    #submit-btn {
        background-color: #745C3B;
        color: #fff;
        padding: 14px 16px;
        border: none;
        border-radius: 2px;
        cursor: pointer;
        width: 100%;
        font-size: 18px;
        font-weight: 600;
        transition: all 0.3s ease;
    }
    
    #submit-btn i {
        margin-left: 8px;
    }
    
    #submit-btn:disabled {
        background-color: #ccc;
        cursor: not-allowed;
        opacity: 0.6;
    }
    
    #submit-btn:enabled:hover {
        background-color: #d5b96c;
        transform: translateY(-1px);
    }
    
    /* Turnstile container */
    .cf-turnstile {
        margin: 20px 0;
    }
    
    /* Área de mensagens */
    #form-message {
        margin-top: 16px;
        padding: 16px;
        border-radius: 6px;
        font-size: 16px;
        font-weight: 500;
        text-align: center;
        transition: all 0.3s ease;
    }
    
    #form-message.success {
        background-color: #d4edda;
        color: #155724;
        border: 1px solid #c3e6cb;
    }
    
    #form-message.error {
        background-color: #f8d7da;
        color: #721c24;
        border: 1px solid #f5c6cb;
    }
    
    #form-message.info {
        background-color: #d1ecf1;
        color: #0c5460;
        border: 1px solid #bee5eb;
    }
    
    /* Estilos para indicadores de validação */
    .form-group.invalid input,
    .form-group.invalid select {
        border-color: #dc3545;
    }
    
    .form-group.valid input,
    .form-group.valid select {
        border-color: #28a745;
    }
    
    /* Responsividade */
    @media (max-width: 768px) {
        #form-container {
            padding: 0 10px;
        }
        
        .row {
            margin-bottom: 10px;
        }
        
        .form-group {
            margin-bottom: 20px;
        }
    }

/* ---- <style id="ct_code_block_css_3490"> ---- */
.facebook:hover {
      background-color: #fff;
      transition: 0.3s;
    }
    .facebook:hover svg path {
      fill: #2b4a55;
      transition: 0.3s;
    }

/* ---- <style id="ct_code_block_css_462"> ---- */
.svg-footer path {
      fill: #745c3b;
    }

/* ---- <style id="ct_code_block_css_696"> ---- */
iframe {
      height: 550px;
      width: 100%;
      max-width: 100%;
      border: 0px solid transparent;
      background-color: transparent;
    }
    
    input, textarea, label, .wrap-drop-webdoor, p.label {
        color: #745c3b;
        font-size: 15px;
        text-transform: none;
        width: 100%;
    }
    
    input {
        height: 30px;
        font-family: Tahoma, Verdana, Geneva, sans-serif;
        font-size: 15px;
    }
    
    input, textarea {
        background-color: transparent;
        padding: 10px 0px;
        margin-bottom: 30px;
        font-size: 15px;
        border: 0;
        border-bottom: 1px solid #745c3b!important;
    }
    
    .container-check.white span {
        display: inline-block;
        color: #745c3b;
        font-size: 12px;
    }
    
    input:focus, textarea:focus {
        outline: none;
    }
    
    .container-check {
        display: flex;
        flex-direction: row-reverse;
        gap: 10px;
        justify-content: flex-end;
    }
    
    .container-check input {
        width: 12px !important;
        height: 18px;
        margin: 0 !important;
    }
    
            .wpcf7-submit {
                border: 1px solid #745c3b;
                display: inline-flex;
                border-radius: 0;
                height: 28px;
                line-height: 0px; /* Ajustar a altura do texto */
                justify-content: center;
                align-items: center; /* Centraliza o texto verticalmente */
                position: relative;
                width: 142px;
                background: none;
                color: #745c3b;
                cursor: pointer;
                overflow: hidden;
                z-index: 0; /* Para garantir que o pseudo-elemento fique atrás do texto */
                transition: color 0.4s ease;
            }
            .wpcf7-submit:hover {
                color: #fff;
                background: #745c3b;
            }
    
    
    .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
        border: none;
        padding: 0;
        margin: 10px 0 0 0;
    }
    
    @media(max-width: 768px) {
      form p {
          display: flex;
          flex-direction: column;
          align-items: center;
      }
    }

/* ---- <style id="ct_code_block_css_690"> ---- */
.oxy-close-modal path {
      fill: #fff;
    }
    
    .oxy-close-modal {
      cursor: pointer;
    }