@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Righteous&display=swap');


body {
    font-family: "Poppins", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;}

h1 {text-align: center;
    color: #54595F !important;
    font-size: 28px !important;
    font-weight: 600}

h2 {text-align: center;
    color: #54595F !important;
    font-size: 24px !important;
    font-weight: 400;}

.color-primary {
    color: #113abf !important;}

.color-secundary {
    color: #999;}

.fw-semibold {font-weight: 600 !important;}
.font-8 {font-size: 8px;}
.font-10 {font-size: 10px;}
.font-12 {font-size: 12px;}
.font-14 {font-size: 14px;}
.font-15 {font-size: 15px;}
.font-16 {font-size: 16px;}
.font-17 {font-size: 17px;}
.font-18 {font-size: 18px;}
.font-20 {font-size: 20px;}
.font-22 {font-size: 22px;}
.font-24 {font-size: 24px;}
.font-26 {font-size: 26px;}
.font-28 {font-size: 28px;}
.font-30 {font-size: 30px;}
.font-32 {font-size: 32px;}
.font-36 {font-size: 36px;}
.font-38 {font-size: 38px;}
.font-40 {font-size: 40px;}
.font-42 {font-size: 42px;}
.font-44 {font-size: 44px;}
.font-48 {font-size: 48px;}
.font-54 {font-size: 54px;}


.bg-primary {background: #6EC1E4 !important;}

.bg-tertiary {background: #749D2D;}

.bg-quaternary {background: #0096AA;}

.bg-quinary {background: #3D6296;}
.bg-destaque {background-color: #113abf !important;}

.link-hover {
    text-decoration: none;
    transition: all .3s ease;}

.link-hover img {
    transition: transform .3s ease;}

.link-hover:hover img {
    transform: scale(1.05);}

.link-hover:hover {
    text-decoration: underline;}


.bg-image {
    background: url('../img/bckg.jpg');
    background-size: cover;
    background-position: center;}

.bg-image2 {
    background: url('../img/fachada.jpg');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    height: 350px;}

.bg-image3 {
    background:linear-gradient(rgb(1 6 19 / 65%), rgb(7 12 26 / 65%)), url('../img/bg-Professora.png');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;}

.bg-galeria {
    background: url('../img/Metodologia-banner.png');
    background-size: cover;}

.btn-primary {
    background-color: #749D2D;
    border-color: #749D2D;}

.btn-primary:hover {
    background-color: #3D6296;
    border-color: #3D6296;}

.bg-conheca {
    background-image: url('../img/topo4.jpg');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    background-color: #5a5353;
    background-blend-mode: multiply;}

    .nav-underline .nav-link.active, .nav-underline .show>.nav-link {    
    border-bottom-color: #113abf !important;}

.carousel-indicators{
    position: relative;}


.box-quadrado {
width: 280px;       /* Largura fixa */
height: 280px;      /* Altura igual para ser quadrado */
background-color: #a4c639; /* Verde limão da referência */
border: 6px solid #ffffff; /* A borda branca grossa */
/* Centraliza o texto e botão DENTRO do quadrado */
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
box-shadow: 0 10px 30px rgba(0,0,0,0.3);}

.meta-badge {
background-color: #113abf;
color: #ffffff;
padding: 8px 20px;
font-size: 0.75rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.5px;
display: inline-block;
position: absolute; 
left: 0;           
bottom: 0;          
transform: translateY(50%);
z-index: 10; }

.line-clamp-4 {
display: -webkit-box;
-webkit-line-clamp: 4; 
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis; }

/* Texto "Instalações" */
.box-quadrado h3 {
    color: #333;        /* Cinza escuro */
    font-weight: 400;   /* Fonte normal/fina */
    margin-bottom: 20px;
    font-size: 1.8rem;}

/* -- O Botão Branco Pequeno -- */
.btn-branco-sm {
    background-color: #ffffff;
    color: #333;
    font-size: 0.8rem;      /* Letra pequena */
    font-weight: bold;
    text-transform: uppercase;
    padding: 8px 25px;      /* Tamanho do botão */
    border-radius: 0;       /* Cantos retos (quadrados) */
    text-decoration: none;
    transition: transform 0.2s;}

.btn-branco-sm:hover {
    transform: scale(1.05); /* Leve zoom ao passar o mouse */
    background: #e6a303;}


    /* Card Branco Limpo */
.testimonial-card {
    background: #ffffff;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.05); /* Sombra leve */
    text-align: center;
    border-bottom: 4px solid #a4c639; /* Detalhe verde na base do card */
    height: 100%; /* Garante altura igual */}

/* Ícone de Aspas */
.quote-icon i {
    font-size: 3rem;
    color: #10359a; /* Azul Royal */
    opacity: 0.2;}

/* Cores da Tipografia */
.text-primary {
    color: #10359a !important;}


/* --- CUSTOMIZAÇÃO DOS DOTS (BOLINHAS) DO OWL --- */
/* Bolinha Inativa */
.owl-theme .owl-dots .owl-dot span {
    width: 12px;
    height: 12px;
    margin: 5px 7px;
    background: #ccc; /* Cinza */
    display: block;
    transition: opacity .2s ease;
    border-radius: 30px;
}

/* Bolinha Ativa (A que está selecionada) */
.owl-theme .owl-dots .owl-dot.active span, 
.owl-theme .owl-dots .owl-dot:hover span {
    background: #10359a; }

.insta-link-circle {
    display: inline-flex;  
    align-items: center;
    justify-content: center;    
    width: 40px;          
    height: 40px;             
    border: 1px solid #6c757d;
    border-radius: 50%;      
    text-decoration: none;
    transition: all 0.3s ease;}


.insta-link-circle .icon-insta {
    font-size: 1.3rem; 
    line-height: 1;}


.insta-link-circle:hover {
    border-color: #d62976; 
    background-color: rgba(214, 41, 118, 0.1);}

.whatsapp_float{
    position: fixed;
    right: 25px;
    bottom: 30px;
    z-index: 9999;
    width: 60px;
    height: 60px;}

.hover-shadow:hover {
    transform: translateY(-5px);
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, .175) !important;}

.transition-all {
    transition: all 0.3s ease;}

    .dropdown:hover .dropdown-menu {
        display: block;
        margin-top: 0;  }

    /* -- Estilos Gerais -- */
.text-primary {
    color: #113abf !important;}

/* Traço cinza pequeno */
.divider-gray {
    width: 50px;      
    height: 1px;       
    background-color: #ddd; 
    opacity: 1;       
    border: none;}


.space-y-2 li {
    margin-bottom: 0.8rem;}


.box-curso {
    background-color: #fff;
    border: 1px solid #1a2e40; 
    border-radius: 0px 40px 0px 0px; 
    position: relative;

    border-top-width: 10px;}


.btn-verde {
    background-color: #7da33e; 
    border-radius: 0px 0px 30px 0px;
    border: none;
    transition: all 0.3s ease;}

.btn-verde:hover {
    background-color: #6b8f32;
    transform: translateY(-2px);}
   
   
       .bg-gradient-dark {
        background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);}
    
    /* Círculo para os ícones */
    .icon-wrap {
        width: 40px;
        height: 40px;
        background-color: rgba(17, 58, 191, 0.1); /* Azul bem clarinho */
        color: #113abf;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.2rem;
        flex-shrink: 0;    }

    /* Botão Verde Personalizado (Igual à referência) */
    .btn-matricula {
        background-color: #749D2D; /* Verde Olíva/Grama */
        color: white;
        transition: all 0.3s ease;    }
    
    .btn-matricula:hover {
        background-color: #5d8022; /* Verde mais escuro no hover */
        color: white;
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(116, 157, 45, 0.4);    }

    /* Efeito de Levitar o Card */
    .hover-lift {
        transition: transform 0.3s ease, box-shadow 0.3s ease;    }
    .hover-lift:hover {
        transform: translateY(-10px);
        box-shadow: 0 1rem 3rem rgba(0,0,0,.15) !important;    }

    .testimonial-card {
        background: #ffffff;
        border-radius: 15px;
        box-shadow: 0 10px 30px rgba(0,0,0,0.05); /* Sombra leve */
        padding: 40px 30px;
        margin: 15px; /* Espaço para a sombra não cortar */
        text-align: center;
        border-bottom: 4px solid #749D2D; /* Detalhe verde na base do card */
        height: 100%; /* Garante altura igual */    }

    /* Ícone de Aspas */
    .quote-icon i {
        font-size: 3rem;
        color: #113abf; /* Azul Royal */
        opacity: 0.2;    }

    /* Imagem do Aluno */
    .client-img {
        width: 100px;
        height: 100px;
        margin: 0 auto 20px;
        position: relative;    }
    
    .client-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 50%;
        border: 4px solid #749D2D; /* Borda Verde igual aos botões */
        padding: 3px; /* Espaço branco entre foto e borda */    }

    .img-galeria {
        width: 100%;
        height: 200px;
        object-fit: cover;
        object-position: center;}

/* Somente Mobile */

@media (max-width: 480px) {
    .py-5 {
        padding-top: 25px !important;
        padding-bottom: 20px !important;
    }

    .mb-5 {
        padding-bottom: 20px !important;
    }

    .pb-5 {
        padding-bottom: 20px !important;
    }

    .pt-5 {
        padding-top: 20px !important;
    }

    
}