:root {
    --primary: #001f3f;       /* Azul Marinho */
    --secondary: #00d4ff;     /* Ciano */
    --accent: #0056b3;        /* Azul médio para hover */
    --dark: #0a0a0a;
    --light: #f4f7f6;
    --text: #333;
    --text-light: #666;
    --white: #ffffff;
    --gradient: radial-gradient(circle at top right, #003366, #001f3f);
}

/* ===========================
   Reset e Base
   =========================== */
* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Inter', sans-serif; }
html { scroll-behavior: smooth; }
body { background-color: var(--white); color: var(--text); line-height: 1.6; overflow-x: hidden; }

/* ===========================
   Utilitários
   =========================== */
.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }

/* Botões */
.btn-primary { 
    background: var(--secondary); 
    color: var(--primary); 
    padding: 12px 30px; 
    border-radius: 6px; 
    text-decoration: none; 
    font-weight: 700; 
    transition: 0.3s; 
    border: none; 
    cursor: pointer; 
    display: inline-block;
}
.btn-primary:hover { 
    background: #33e4ff; 
    transform: translateY(-2px); 
    box-shadow: 0 5px 15px rgba(0, 212, 255, 0.4); 
}

.btn-secondary { 
    background: transparent; 
    color: var(--white); 
    border: 2px solid var(--secondary); 
    padding: 10px 28px; 
    border-radius: 6px; 
    text-decoration: none; 
    font-weight: 600; 
    transition: 0.3s; 
    margin-left: 10px; 
}
.btn-secondary:hover { background: var(--secondary); color: var(--primary); }

/* Seções e Cores */
.section { padding: 80px 0; }
.bg-light { background: var(--light); }
.bg-dark { background: var(--primary); color: var(--white); }
.text-white { color: var(--white); }
.text-gray { color: #ccc; }
.section-title { font-size: 2.5rem; margin-bottom: 10px; text-align: center; }
.section-subtitle { text-align: center; margin-bottom: 50px; color: var(--text-light); }

/* ===========================
   Navbar
   =========================== */
.navbar { 
    background: var(--white); 
    padding: 15px 0; 
    position: sticky; 
    top: 0; 
    z-index: 1000; 
    box-shadow: 0 2px 10px rgba(0,0,0,0.1); 
}
.nav-container { display: flex; justify-content: space-between; align-items: center; }

.logo { font-size: 1.8rem; font-weight: 800; color: var(--primary); display: flex; align-items: center; gap: 10px; }
.logo img { height: 80px; width: auto; }

.nav-links { display: flex; gap: 30px; list-style: none; }
.nav-links a { color: var(--primary); text-decoration: none; font-weight: 500; transition: 0.3s; }
.nav-links a:hover { color: var(--secondary); }

.btn-nav { 
    background: var(--primary); 
    color: var(--white) !important; /* Ajuste para contraste */
    padding: 8px 20px; 
    border-radius: 20px; 
}
.btn-nav:hover { background: var(--secondary); color: var(--primary) !important; }
.menu-toggle { display: none; color: var(--primary); font-size: 1.5rem; cursor: pointer; }

/* ===========================
   Hero Section (Topo)
   =========================== */
.hero { 
    min-height: 90vh; 
    background: var(--gradient); 
    display: flex; 
    align-items: center; 
    position: relative; 
    overflow: hidden; 
}

.hero-content { 
    display: grid; 
    grid-template-columns: 1fr 1fr; 
    gap: 50px; 
    align-items: center; 
    width: 100%; 
}

.hero h1 { font-size: 3.5rem; line-height: 1.2; color: var(--white); margin-bottom: 20px; }
.hero h1 .highlight { color: var(--secondary); }
.hero p { color: #e0e0e0; font-size: 1.1rem; margin-bottom: 30px; max-width: 500px; }

/* -- NOVO: Estilo para o Robô/GIF -- */
.hero-img {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 30px;
}

.robot-gif {
    max-width: 100%;
    width: 600px; /* Tamanho ideal para Desktop */
    height: auto;
    filter: drop-shadow(0 10px 20px rgba(0,0,0,0.3)); /* Sombra suave no contorno do robô */
    animation: floatRobot 4s ease-in-out infinite; /* Efeito de flutuar */
}

/* ===========================
   Soluções (Grid)
   =========================== */
.grid-3 { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.card { 
    background: var(--white); 
    padding: 40px; 
    border-radius: 12px; 
    box-shadow: 0 5px 20px rgba(0,0,0,0.05); 
    transition: 0.3s; 
    border-top: 4px solid transparent; 
}
.card:hover { transform: translateY(-10px); border-top-color: var(--secondary); }
.icon-box { font-size: 2.5rem; color: var(--primary); margin-bottom: 20px; }
.card h3 { margin-bottom: 15px; color: var(--primary); }

/* ===========================
   Diferenciais
   =========================== */
.split-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: center; }
.check-list { list-style: none; margin-top: 20px; }
.check-list li { margin-bottom: 15px; font-size: 1.1rem; display: flex; align-items: center; gap: 10px; }
.check-list i { color: var(--secondary); }
.stat-box { 
    background: var(--primary); 
    color: var(--white); 
    padding: 30px; 
    border-radius: 10px; 
    margin-bottom: 20px; 
    text-align: center; 
    border: 1px solid var(--secondary); 
}
.stat-box h3 { font-size: 2.5rem; color: var(--secondary); }

/* ===========================
   Calculadora
   =========================== */
.calculator-box { background: var(--white); padding: 40px; border-radius: 15px; max-width: 600px; margin: 0 auto; color: var(--text); }
.input-group { margin-bottom: 20px; text-align: left; }
.input-group label { display: block; margin-bottom: 8px; font-weight: 600; }
.input-group input { width: 100%; padding: 12px; border: 1px solid #ddd; border-radius: 5px; font-size: 1rem; }
.full-width { width: 100%; font-size: 1.1rem; }
.calc-result { margin-top: 30px; text-align: center; padding-top: 20px; border-top: 1px solid #eee; animation: fadeIn 0.5s ease; }
.result-value { font-size: 2.5rem; font-weight: 800; color: #28a745; margin: 10px 0; }
.link-highlight { color: var(--primary); font-weight: 700; text-decoration: none; display: block; margin-top: 10px; }

/* ===========================
   Contato & Footer
   =========================== */
.contact-container { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }
.info-item { display: flex; align-items: center; gap: 15px; margin-bottom: 20px; font-size: 1.1rem; }
.info-item i { color: var(--secondary); font-size: 1.2rem; }
.form-group { margin-bottom: 20px; }
.form-group label { display: block; margin-bottom: 5px; font-weight: 600; }
.form-group input, .form-group textarea { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 5px; font-family: 'Inter', sans-serif; }

footer { background: #001021; color: #777; padding: 30px 0; text-align: center; }
.footer-content { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }
.socials a { color: var(--white); margin-left: 15px; font-size: 1.2rem; transition: 0.3s; }
.socials a:hover { color: var(--secondary); }

/* ===========================
   Animações
   =========================== */
.fade-in { opacity: 0; transform: translateY(20px); transition: opacity 0.6s ease-out, transform 0.6s ease-out; }
.fade-in.visible { opacity: 1; transform: translateY(0); }

@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }


/* =========================================
   RESPONSIVIDADE (MOBILE / IPHONE)
   Cole isso no FINAL do seu arquivo CSS
   ========================================= */

@media (max-width: 768px) {
    
    /* 1. Ajustes Gerais de Layout */
    .container {
        padding: 0 20px; /* Garante margem nas laterais */
        width: 100%;
    }

    .section {
        padding: 50px 0; /* Reduz o espaçamento vertical das seções */
    }

    /* 2. Menu (Navbar) */
    .nav-links {
        position: fixed; /* Fixa na tela */
        top: 70px; /* Logo abaixo da barra de navegação */
        right: 0;
        height: calc(100vh - 70px);
        background: var(--primary); /* Fundo Azul Escuro */
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        padding-top: 50px;
        width: 100%; /* Ocupa a tela toda para evitar toques acidentais fora */
        transform: translateX(100%); /* Esconde para a direita */
        transition: transform 0.3s ease-in-out;
    }

    .nav-links.active {
        transform: translateX(0); /* Mostra o menu quando ativo */
    }

    .nav-links li {
        margin: 20px 0;
    }

    .nav-links a {
        color: var(--white); /* Texto branco para contraste */
        font-size: 1.5rem; /* Texto maior para toque */
    }

    .menu-toggle {
        display: block; /* Mostra o ícone de hambúrguer */
        cursor: pointer;
    }

    /* 3. Hero Section (Topo) */
    .hero {
        min-height: auto; /* Remove altura forçada */
        padding-top: 100px; /* Espaço para não ficar colado no topo */
        padding-bottom: 50px;
        text-align: center; /* Centraliza tudo */
    }

    .hero-content {
        display: flex;
        flex-direction: column-reverse; /* Inverte: Imagem em cima, texto embaixo (ou vice-versa) */
        gap: 30px;
    }
    
    /* Se quiser a imagem EM CIMA do texto, use column-reverse. 
       Se quiser a imagem ABAIXO do texto, use apenas column. */

    .hero h1 {
        font-size: 2.2rem; /* Reduz a fonte gigante */
    }

    .hero p {
        font-size: 1rem;
        margin: 0 auto 30px auto; /* Centraliza o parágrafo */
    }

    .cta-group {
        display: flex;
        flex-direction: column; /* Botões um embaixo do outro */
        gap: 15px;
        width: 100%;
    }

    .btn-primary, .btn-secondary {
        width: 100%; /* Botões ocupam a largura toda */
        margin: 0;
        text-align: center;
    }

    /* Ajuste do GIF do Robô no Mobile */
    .hero-img {
        width: 100%;
        margin-bottom: 20px;
    }
    
    .robot-gif {
        width: 250px; /* Tamanho controlado no celular */
        max-width: 80%;
    }

    /* 4. Grids (Soluções e Diferenciais) */
    .grid-3, .split-layout, .contact-container {
        display: flex;
        flex-direction: column; /* Empilha os cards */
        gap: 30px;
    }

    .card {
        padding: 30px; /* Cards um pouco menores */
    }

    /* 5. Seção Diferenciais (Texto e Números) */
    .split-text {
        text-align: center;
    }
    
    .check-list li {
        justify-content: flex-start; /* Mantém alinhado à esquerda para leitura */
        text-align: left;
    }

    /* 6. Footer */
    .footer-content {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }

    .socials {
        margin-top: 10px;
    }
    
    .socials a {
        margin: 0 10px; /* Espaçamento lateral nos ícones */
    }
}
/* ===========================
   Botão Flutuante WhatsApp
   =========================== */
.whatsapp-btn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    background-color: #25d366; /* Verde Oficial do WhatsApp */
    color: #fff;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    text-align: center;
    font-size: 35px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    z-index: 9999; /* Garante que fique acima de tudo */
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    text-decoration: none;
}

.whatsapp-btn:hover {
    background-color: #128c7e; /* Verde mais escuro no hover */
    transform: scale(1.1); /* Aumenta levemente */
}

/* Animação de Pulso (Chama a atenção) */
.whatsapp-btn {
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7); }
    70% { box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); }
    100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
}

/* Ajuste para celular (para não cobrir conteúdo importante) */
@media (max-width: 768px) {
    .whatsapp-btn {
        width: 50px;
        height: 50px;
        font-size: 28px;
        bottom: 20px;
        right: 20px;
    }
}