        :root {
            --primary-color: #4A148C; /* Roxo vibrante */
            --secondary-color: #00E676; /* Verde chamativo para CTAs */
            --dark-color: #1A0732;
            --light-color: #f4f7fc;
            --text-color: #333;
            --unisociesc-blue: #002D5B;
        }

        body {
            font-family: 'Poppins', sans-serif;
            color: var(--text-color);
            background-color: #fff;
        }

        /* --- Componentes Reutilizáveis --- */
        .section-padding { padding: 80px 0; }
        .section-title { font-weight: 700; color: var(--dark-color); margin-bottom: 40px; }
        .btn-cta { background: var(--secondary-color); color: var(--dark-color); border: none; border-radius: 50px; padding: 15px 35px; font-weight: 700; text-transform: uppercase; transition: all 0.3s ease; box-shadow: 0 5px 20px rgba(0, 230, 118, 0.4); }
        .btn-cta:hover { transform: translateY(-3px); box-shadow: 0 8px 25px rgba(0, 230, 118, 0.6); color: var(--dark-color);  background: var(--secondary-color);}

        /* --- Navbar --- */
        .navbar { background-color: white; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }

        /* --- Hero Section --- */
        #hero { background-color: var(--light-color); padding: 100px 0; text-align: center; background-image:url('./img/background.jpg');  background-size: cover;       /* cobre o espaço */
  background-position: center;  /* centraliza */
  background-repeat: no-repeat;
  background-color: #4a148c75; /* camada preta com 50% */
  background-blend-mode: darken; }
        #hero h1 { font-weight: 800; font-size: 3.5rem; color: white; }
        #hero .lead { font-size: 1.25rem; max-width: 700px; margin: 20px auto 40px auto; color: white;}

        /* --- Parceiros --- */
        #partners { background-color: #fff; padding: 30px 0; }
        #partners img { max-height: 40px; filter: grayscale(100%); opacity: 0.6; transition: all 0.3s ease; }
        #partners img:hover { filter: grayscale(0%); opacity: 1; }
        
        /* --- Depoimentos --- */
        .testimonial-card { background: white; padding: 30px; border-left: 5px solid var(--primary-color); box-shadow: 0 10px 30px rgba(0,0,0,0.08); border-radius: 10px; }
        .testimonial-card img { width: 60px; height: 60px; border-radius: 50%; }

        /* --- CTA Final / Formulário --- */
        #final-cta { background: linear-gradient(135deg, var(--primary-color), var(--dark-color)); color: white; }
        #final-cta .form-container { background: white; color: var(--text-color); padding: 40px; border-radius: 15px; box-shadow: 0 15px 50px rgba(0,0,0,0.2); }
        .radio-group { display: flex; gap: 15px; margin-bottom: 20px; }
        .radio-group input[type="radio"] { display: none; }
        .radio-group label { flex: 1; text-align: center; padding: 12px; border: 2px solid #ddd; border-radius: 8px; cursor: pointer; transition: all 0.3s ease; }
        .radio-group input[type="radio"]:checked + label { background-color: var(--primary-color); color: white; border-color: var(--primary-color); }

        /* --- ESTILOS PARA SEÇÃO DE CURSOS CLONADA --- */
        #courses { background-image: radial-gradient(circle at 75% 26%, rgba(116, 116, 116,0.04) 0%, rgba(116, 116, 116,0.04) 50%,rgba(222, 222, 222,0.04) 50%, rgba(222, 222, 222,0.04) 100%),radial-gradient(circle at 62% 63%, rgba(60, 60, 60,0.04) 0%, rgba(60, 60, 60,0.04) 50%,rgba(152, 152, 152,0.04) 50%, rgba(152, 152, 152,0.04) 100%),radial-gradient(circle at 80% 64%, rgba(108, 108, 108,0.04) 0%, rgba(108, 108, 108,0.04) 50%,rgba(252, 252, 252,0.04) 50%, rgba(252, 252, 252,0.04) 100%),radial-gradient(circle at 97% 83%, rgba(184, 184, 184,0.04) 0%, rgba(184, 184, 184,0.04) 50%,rgba(137, 137, 137,0.04) 50%, rgba(137, 137, 137,0.04) 100%),radial-gradient(circle at 60% 7%, rgba(69, 69, 69,0.04) 0%, rgba(69, 69, 69,0.04) 50%,rgba(211, 211, 211,0.04) 50%, rgba(211, 211, 211,0.04) 100%),linear-gradient(90deg, rgb(212, 245, 239),rgb(253, 123, 174)); }
        .nav-pills .nav-link { color: var(--text-color); font-weight: 500; padding: 10px 20px; border-radius: 50px; }
        .nav-pills .nav-link.active, .nav-pills .show>.nav-link { color: var(--unisociesc-blue); background-color: transparent; border-bottom: 3px solid var(--unisociesc-blue); border-radius: 0; }
        .course-card-clone { display: block; border-radius: 12px; overflow: hidden; position: relative; text-decoration: none; color: white; box-shadow: 0 5px 15px rgba(0,0,0,0.1); transition: transform 0.3s ease; height: 380px; }
        .course-card-clone:hover { transform: translateY(-5px); }
        .course-card-clone .card-img-top { height: 100%; background-size: cover; background-position: center; transition: transform 0.4s ease; }
        .course-card-clone:hover .card-img-top { transform: scale(1.05); }
        .course-card-clone .card-icon { position: absolute; top: 15px; right: 15px; width: 40px; height: 40px; background-color: rgba(0,0,0,0.5); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; }
        .course-card-clone .card-body-clone { position: absolute; bottom: 0; left: 0; right: 0; padding: 20px; background: linear-gradient(to top, rgba(0,0,0,0.9), rgba(0,0,0,0.6) 50%, transparent); }
        .course-card-clone .card-subtitle { font-size: 0.8rem; margin-bottom: 5px; }
        .course-card-clone .card-title-clone { font-size: 1.5rem; font-weight: 700; margin-bottom: 10px; }
        .course-card-clone .card-text-clone { font-size: 0.9rem; margin-bottom: 10px; }
        
        /* CARD CTA "VER CATÁLOGO" */
        .cta-card-clone {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            background-color: var(--light-color);
            color: var(--unisociesc-blue);
            border: 2px dashed #ccc;
        }
        .cta-card-clone:hover {
            border-color: var(--unisociesc-blue);
            background-color: #e9ecef;
        }
        .cta-card-clone .icon {
            font-size: 3rem;
        }
        .cta-card-clone h5 {
            font-weight: 700;
        }

        .carousel-control-prev, .carousel-control-next { width: 50px; height: 50px; border-radius: 50%; background-color: white; box-shadow: 0 2px 10px rgba(0,0,0,0.15); top: 50%; transform: translateY(-50%); }
        .carousel-control-prev { left: -25px; }
        .carousel-control-next { right: -25px; }
        .carousel-control-prev-icon, .carousel-control-next-icon { background-color: var(--unisociesc-blue); border-radius: 50px; padding: 10px; background-size: 50%; }

        /* ==== ESTILO DO BALÃO FLUTUANTE DO WHATSAPP ==== */
.whatsapp-float {
    position: fixed; /* Posição fixa na tela */
    bottom: 25px;    /* Distância do fundo */
    right: 25px;     /* Distância da direita */
    z-index: 1000;   /* Para ficar por cima de tudo */

    /* Estilo do balão */
    background-color: #25D366; /* Cor verde do WhatsApp */
    color: #FFF;               /* Cor do ícone (branco) */
    width: 60px;
    height: 60px;
    border-radius: 50%; /* Deixa o botão redondo */
    
    /* Centraliza o ícone */
    display: flex;
    align-items: center;
    justify-content: center;

    /* Estilo do ícone */
    font-size: 32px;
    text-decoration: none; /* Remove o sublinhado do link */
    
    /* Sombra para dar profundidade */
    box-shadow: 2px 2px 10px rgba(0,0,0,0.2);
    
    /* Animação suave */
    transition: transform 0.2s ease-in-out;
}

/* Efeito ao passar o mouse por cima */
.whatsapp-float:hover {
    transform: scale(1.1); /* Aumenta um pouco o tamanho */
    color: #FFF; /* Mantém a cor do ícone */
}