@import url('https://fonts.googleapis.com/css2?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=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

:root {
    --background-color: #134596;
    --background-main: #fff;
    --cor-secundaria: #ececec;
    --cor-black: #000000;
    --font-padrao: "Poppins", sans-serif;
}

/* =========================================
   CORREÇÃO 1: Altura Dinâmica para iPhone
   ========================================= */
body {
    background: linear-gradient(45deg, #2ca5f5, #afdeff, #ffffff, #cacaca, #5fbaf7, #2ca5f5);
    background-size: 600% 600%;
    animation: gradientBackground 30s infinite linear;
    margin: 0; /* Importante zerar margem padrão */
    min-height: 100vh; /* Fallback */
    min-height: 100dvh; /* A mágica para o iPhone (Dynamic Viewport Height) */
}

@keyframes gradientBackground {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

.principal-head {
    display: flex;
    justify-content: center;
    margin-top: 5%;
}

.link-rede {
    text-decoration: none;
}

.head-logo {
    display: flex;
    background-image: url(./images/avatar.jpg);
    background-size: cover;
    border-radius: 100%;
    width: 100px;
    height: 100px;
    justify-content: center;
    align-items: center;
}

.img-principal {
    display: block; /* Alterado de flex para block para evitar bugs de imagem */
    width: 80%;
    /* Removemos align-items aqui pois img não é container */
}

.titulo-principal {
    text-align: center;
    margin-top: 1%;
    padding: 0 10px; /* Margem de segurança lateral */
}

.subtitulo {
    font-family: var(--font-padrao);
    padding: 1%;
    line-height: 1.4; /* Melhor leitura */
}

.notus-arroba {
    font-family: var(--font-padrao);
    font-size: 20px;
    font-weight: 700;
    padding: 15px;
}

.redes-sociais-head {
    display: flex;
    font-size: 25px;
    justify-content: center;
    gap: 20px; /* Gap fixo é melhor que % aqui */
    margin-top: 5%;
}

.fa-brands {
    color: var(--background-main)
}

/* =========================================
   CORREÇÃO 2: Container dos Links
   ========================================= */
.link-geral {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px; /* Aumentei um pouco o espaço entre botões */
    margin-top: 20px;
    width: 100%; /* Garante que o container use a tela toda */
    font-family: var(--font-padrao);
}

.link-acesso {
    display: flex;
    text-decoration: none;
    color: var(--background-main);
    width: 100%; /* O link ocupa a largura disponível */
    justify-content: center; /* Centraliza o botão dentro do link */
}

.link-acesso:hover {
    color: var(--background-color);
}

/* =========================================
   CORREÇÃO 3: Botões Fluídos (Responsivos)
   ========================================= */
.background-link {
    display: flex;
    /* TRUQUE: 90% da tela, mas trava em 400px no máximo */
    width: 90%; 
    max-width: 400px; 
    height: 60px; 
    justify-content: center;
    align-items: center;
    background-color: var(--background-color);
    border: solid 0.1rem var(--background-color);
    border-radius: 40px;
    /* Transição suave no hover */
    transition: all 0.3s ease; 
}

.background-link:hover {
    background-color: transparent;
    border: solid 0.1rem var(--background-color);
    color: var(--background-color); /* Garante que o texto mude de cor */
}

.apresentacao-video {
    display: flex; /* Melhor controle que block */
    justify-content: center;
    margin-bottom: 40px;
    width: 100%;
}

.youtube-secao {
    box-shadow: 4px 4px 10px 0px #134596;
    width: 90%; /* Porcentagem segura */
    max-width: 500px;
    aspect-ratio: 16/9;
}

.sobre-notus {
    margin: 30px 0 10px 0;
    font-size: 25px;
    font-weight: 600;
    font-family: var(--font-padrao);
    text-align: center;
}

strong {
    color: #134596;
}

.verde {
    background-color: #008000;
    height: 3px;
    margin: 0;
    border: none;
}

.amarelo {
    background-color: #FFD700;
    height: 3px;
    margin: 0;
    border: none;
}

/* =========================================
   CORREÇÃO 4: Rodapé Automático
   ========================================= */
.footer {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-family: var(--font-padrao);
    background-color: var(--background-color);
    color: var(--background-main);
    text-align: center;
    
    /* MUDANÇA CRÍTICA: */
    height: auto; /* Deixa o conteúdo definir a altura */
    padding: 40px 20px; /* Dá o respiro necessário */
    gap: 15px;
}

.logo-footer {
    max-width: 200px;
    width: 100%; /* Responsivo */
    height: auto;
}

.text-rodape {
    font-weight: 500;
    font-size: 14px;
    margin-top: 10px;
}

/* =========================================
   RESPONSIVIDADE (Simplificada)
   ========================================= */
/* Como usamos max-width e width: 90% acima, 
   quase não precisamos de media queries complexas */

@media (max-width: 500px) {
    /* Ajustes finos apenas se necessário */
    .head-logo {
        width: 80px;
        height: 80px;
    }
    
    .notus-arroba {
        font-size: 18px;
    }
}