* {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            -webkit-tap-highlight-color: transparent;
        }

        /* Fundo geral da tela */
        body, html {
            width: 100%;
            height: 100%;
            background-color: #0f1115;
            display: flex;
            justify-content: center;
            align-items: center;
            font-family: sans-serif;
            overflow: hidden;
        }

        /* Card Centralizado na proporção correta do celular (9:16) */
       
        .page {
            display: none;
            position: relative;
            width: 100%;
            max-width: 420px; /* Largura padrão de celular */
            height: 90vh;     /* MUDOU AQUI: De 100vh para 90vh para desgrudar das pontas */
            max-height: 746px; 
            background-position: center; /* ALTERADO: Mudou de 'center 110%' para 'center' para centralizar bem o He-Man */
            background-size: cover;      /* ALTERADO: Mudou de '190%' para 'cover' para encaixar perfeito */
            background-repeat: no-repeat;
            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
            border-radius: 18px;    /* ADICIONADO: Arredonda as pontas do card */
            overflow: hidden;       /* ADICIONADO: Corta a imagem de fundo nas curvas do card */
            
        }

        /* Mostra a página atual */
        .active {
            display: block;
        }

        /* Ajustado para centralizar e caber perfeitamente no container do botão */
        /* Faz a imagem ocupar ABSOLUTAMENTE TODO o espaço do botão, sem sobras */
        .btn-img {
            width: 100%;        /* ALTERADO: Força a largura total */
            height: 100%;       /* ALTERADO: Força a altura total */
            object-fit: cover;  /* ALTERADO: De 'contain' para 'cover' para preencher e esticar até as bordas */
            display: block;
        }

        /* Elementos de texto da Página 1 */
        .titulo-convite {
            position: absolute;
            top: 25%;
            width: 100%;
            display: flex;            /* Ativa o Flexbox */
            flex-direction: column;   /* Joga uma palavra embaixo da outra */
            align-items: center;      /* Centraliza por padrão */
            text-align: center;
            color: #fff;
            font-size: 45px;
            font-weight: bold;
            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9);
            color: gold;
        }

        /* Use este cara aqui para mexer SÓ na palavra CONVITE */
        .titulo-convite .palavra-convite {
            margin-right: 20px; /* Altere aqui! Se quiser puxar para a esquerda, use valores negativos, ex: -10px ou -15px */
        }

        .nome-aniversariante {
            position: relative;
            bottom: 12%;
            width: 100%;
            text-align: center;
            color: #fff;
            font-size: 45px;
            font-weight: bold;
            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9);
            margin-top: 380px;
            color: gold;
        }

        /* ================= MARCADORES DOS BOTÕES (VISÍVEIS PARA TESTE) ================= */
        /* Mude o 'background' para 'transparent' quando finalizar os testes */
        
        /* Página 1: Botão em cima do Envelope */
        .btn-envelope {
            position: relative;
            left: 20%;
            top: 280px;
            width: 55%;
            height: 25%;
            cursor: pointer;
            text-decoration: none;
            background: transparent;          /* ALTERADO: Fundo invisível */
            border: 2px solid transparent;    /* ALTERADO: Borda invisível que mantém o tamanho exato */
            display: flex;
            justify-content: center;
            align-items: center;
        }

        /* Página 2: Alinhamento dos 3 botões redondos inferiores */
        .nav-buttons-p2 {
            position: absolute;
            bottom: 6%;         
            left: 2%;           /* ALTERADO: De 6% para 2% para aproveitar melhor as laterais da tela */
            width: 96%;         /* ALTERADO: De 88% para 96% para abrir espaço para os textos grandes */
            height: 140px;      
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
        }

        /* Bloco que une verticalmente o botão redondo e o texto em arco */
        .bloco-botao-texto {
            width: 32%;         /* ALTERADO: Aumentado ligeiramente para o texto comprido caber */
            display: flex;
            flex-direction: column;
            align-items: center;
            position: relative;
        }

        /* Ajuste do botão redondo dentro do bloco */
        .bloco-botao-texto .btn-interativo {
            width: 85px;       
            height: 85px;     
            border-radius: 50%;
            cursor: pointer;
            text-decoration: none;
            background: transparent;
            border: 2px solid transparent;
            overflow: hidden;
            display: flex;
            justify-content: center;
            align-items: center;    
        }

        /* Estilização e posicionamento do efeito do Texto Curvado */
        .texto-curvo-svg {
            width: 140px;         /* ALTERADO: De 120px para 140px para o texto de 15px caber inteiro */
            height: 65px;         /* ALTERADO: De 55px para 65px para não cortar embaixo */
            position: absolute;
            top: 25px;            /* Ajustado para colar perfeitamente embaixo do botão */
            pointer-events: none; 
            overflow: visible;    
        }

        /* Configuração da Fonte do Arco (Mantendo os seus 15px) */
        .texto-curvo-svg text {
            font-size: 15px;      /* Mantido o tamanho que você deseja */
            font-weight: bold;
            fill: #ffffff;        
            font-family: sans-serif;
            letter-spacing: 0.2px;
            filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.9)) drop-shadow(-1px -1px 0px rgba(0, 0, 0, 0.9));
        }
        
        /* Cor de destaque se quiser mudar opcionalmente a palavra central ou do mapa */
        .texto-curvo-svg textPath {
            text-transform: none;
        }

        .btn-interativo {
            width: 28%;
            height: 100%;       
            border-radius: 50%;
            cursor: pointer;
            text-decoration: none;
            /* REMOVIDO: background e border de teste sumiram daqui! */
            overflow: hidden;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        /* Página 3: Botão Voltar (Canto inferior direito, em cima do 'Voltar 1 página') */
        .btn-voltar-p3 {
            position: absolute;
            bottom: 18%;
            right: 8%;
            width: 70px;
            height: 70px;
            cursor: pointer;
            text-decoration: none;
            border-radius: 50%;
            background: transparent;          /* ALTERADO: Fundo invisível */
            border: 2px solid transparent;    /* ALTERADO: Borda invisível que mantém o tamanho exato */
            overflow: hidden;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        /* ================= ESTILOS EXCLUSIVOS DA PÁGINA 2 ================= */

        /* Alinhamento do Título no Topo da P2 */
        .nome-aniversariante-p2 {
            position: absolute;
            top: 5%;
            width: 100%;
            text-align: center;
            color: gold;
            font-size: 40px;
            font-weight: bold;
            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9);
        }

        /* Texto do convite centralizado e com quebra suave */
        .texto-missao {
            position: absolute;
            top: 22%;
            width: 86%;
            left: 7%;
            text-align: center;
            color: #ffffff;
            font-size: 25px;
            line-height: 1.4;
            font-weight: bold;
            text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.9);
        }

        /* Caixinha cinza transparente de Data e Hora */
        .box-data-hora {
            position: absolute;
            top: 50%; 
            left: 5%;
            width: 90%;
            height: 120px;                      /* ALTERADO: De 110px para 120px para acomodar as fontes maiores sem espremer */
            background: rgba(255, 255, 255, 0.15); 
            backdrop-filter: blur(4px);            
            -webkit-backdrop-filter: blur(4px);
            border-radius: 15px;
            display: flex;
            justify-content: space-around;
            align-items: center;
            padding: 5px 10px;                  /* ALTERADO: Ajuste fino no padding interno */
            box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.1), 0 4px 15px rgba(0, 0, 0, 0.4);
        }

        /* Colunas internas da caixinha */
        .coluna-data, .coluna-hora {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            color: #ffffff;
        }

        /* Texto do meio (Terça-feira) */
        /* Texto do meio (Terça-feira) com efeito de luz piscando */
        .coluna-dia-semana {
            color: gold;
            font-size: 28px;                    
            font-weight: bold;
            border-left: 2px solid rgba(255, 255, 255, 0.2);  
            border-right: 2px solid rgba(255, 255, 255, 0.2); 
            padding: 0 12px;                    
            text-align: center;
            
            /* ADICIONADO: Ativa a animação chamada "luzPiscando" que dura 1.5 segundos e fica em loop infinito */
            animation: luzPiscando 1.5s infinite ease-in-out;
        }

        /* ADICIONADO: O segredo do efeito da luz piscando/pulsando */
        @keyframes luzPiscando {
            0%, 100% {
                color: gold;
                text-shadow: 0 0 4px rgba(255, 215, 0, 0.4), 1px 1px 2px rgba(0, 0, 0, 0.8);
                opacity: 1; /* Luz acesa normal */
            }
            50% {
                color: #fff7c2; /* Cor fica um pouco mais clara e brilhante no meio do pulso */
                /* Cria um brilho neon dourado forte em volta da palavra */
                text-shadow: 0 0 15px gold, 0 0 25px gold, 1px 1px 2px rgba(0, 0, 0, 0.8); 
                opacity: 0.85; /* Uma leve oscilação na intensidade para parecer lâmpada/aviso */
            }
        }

        /* Números grandes (28 e 18:00) */
        .box-data-hora .numero-destaque {
            font-size: 45px;                    /* ALTERADO: Aumentado de 32px para 38px para os números ficarem bem grandes */
            font-weight: bold;
            color: gold;
            line-height: 1;
            text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8);
        }

        /* Textos pequenos (No dia, de Abril, Às, Horas) */
        .box-data-hora .label-pequeno {
            font-size: 13px;                    /* ALTERADO: Aumentado de 11px para 13px para facilitar a leitura */
            text-transform: none;
            color: #ffffff;
            font-weight: bold;                  /* ALTERADO: Mudou de normal para bold para dar mais nitidez */
            opacity: 0.95;
        }

        /* ================= ESTILOS EXCLUSIVOS DA PÁGINA 3 ================= */

        /* Título Principal da P3 (Amarelo e Branco) */
        .titulo-sugestoes {
            position: absolute;
            top: 22%;
            width: 100%;
            display: flex;
            flex-direction: column;
            align-items: center;
            text-align: center;
            font-family: sans-serif;
            font-weight: bold;
            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9);
            line-height: 1.1;
        }

        .titulo-sugestoes .palavra-sugestoes {
            color: gold;
            font-size: 38px;
            letter-spacing: 2px;
        }

        .titulo-sugestoes .palavra-presente {
            color: #ffffff;
            font-size: 32px;
            letter-spacing: 1px;
        }

        /* Texto de introdução centralizado */
        /* Texto de introdução centralizado com efeito de luz piscando azul */
        .texto-intro-p3 {
            position: relative;
            top: 37%;
            width: 90%;
            left: 5%;
            text-align: center;
            color: #ffffff;
            font-size: 22px;
            line-height: 1.4;
            font-weight: bold;
            
            /* ATUALIZADO: Ativa a nova animação de luz azul em loop infinito */
            animation: luzPiscandoAzul 2s infinite ease-in-out;
        }

        /* ADICIONADO: O segredo do efeito da luz piscando azul (estilo Neon) */
        @keyframes luzPiscandoAzul {
            0%, 100% {
                color: #ffffff;
                /* Sombra padrão escura para leitura */
                text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.9);
                opacity: 1; /* Totalmente aceso */
            }
            50% {
                color: #e6ffff; /* O texto ganha um tom azulado bem clarinho no pico do brilho */
                /* Injeta o brilho de alerta azul (Cyan/Neon Blue) expandido em volta das letras */
                text-shadow: 0 0 10px #00ffff, 0 0 20px #00bfff, 1px 1px 4px rgba(0, 0, 0, 0.9);
                opacity: 0.9;  /* Uma leve oscilação suave para simular a luz pulsando */
            }
        }

        /* Container da lista vertical de itens */
        .lista-sugestoes-container {
            position: absolute;
            top: 55%;
            left: 5%;           /* ALTERADO: De 10% para 5% para dar mais espaço total na esquerda */
            width: 90%;         /* ALTERADO: De 80% para 90% para a fonte grande caber sem espremer */
            display: flex;
            flex-direction: column;
            gap: 15px; 
        }

        /* Alinhamento de cada linha */
        .item-sugestao {
            display: flex;
            align-items: center;
            gap: 20px;          /* ALTERADO: De 15px para 20px para afastar o texto do círculo */
        }

        /* Círculos das fotos: empurrados um pouco para a direita */
        .circulo-foto-p3 {
            width: 65px;
            height: 65px;
            border-radius: 50%;
            background: #ffffff;
            border: 3px solid #b0b0b0;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
            overflow: hidden;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-shrink: 0;
            margin-left: 15px;  /* ADICIONADO: Afasta o círculo para a direita, deixando livre o lado esquerdo */
        }

        .circulo-foto-p3 img {
            width: 80%;
            height: 80%;
            object-fit: contain;
        }

        /* Textos descritivos ao lado dos círculos */
        .texto-sugestao-p3 {
            color: #ffffff;
            font-size: 20px;    /* ALTERADO: Aumentado de 16px para 19px para destacar bem */
            font-weight: bold;
            text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.9);
            white-space: nowrap; /* ADICIONADO: Garante que o texto fique em uma linha só, igual à imagem */
        }

        /* Bloco que une o botão de voltar e seu texto arqueado */
        /* Bloco que une o botão de voltar e seu texto arqueado */
        .bloco-voltar-p3 {
            position: absolute;
            bottom: 12%; 
            right: 8%;
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        /* O botão redondo com a animação de luz piscando ciano */
        .btn-voltar-p3 {
            width: 65px;
            height: 65px;
            border-radius: 50%;
            background: #ffffff;
            border: 2px solid transparent;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
            cursor: pointer;
            overflow: hidden;
            display: flex;
            justify-content: center;
            align-items: center;
            
            /* ADICIONADO: Faz o botão piscar/pulsar na mesma velocidade da introdução */
            animation: luzPiscandoBotaoVoltar 2s infinite ease-in-out;
        }

        .btn-voltar-p3 img {
            width: 70%;
            height: 70%;
            object-fit: contain;
        }

        /* SVG do arco de texto do botão Voltar (Aumentado para acomodar a fonte) */
        .texto-curvo-voltar {
            width: 140px;         /* ALTERADO: De 90px para 140px para a curva abrir e não cortar as letras */
            height: 65px;         /* ALTERADO: De 40px para 65px */
            position: absolute;
            top: 32px;            /* Subiu para colar perfeitamente na parte de baixo do círculo */
            pointer-events: none;
            overflow: visible;
        }

        /* Configuração da Fonte do arco "VOLTAR" com efeito de luz */
        .texto-curvo-voltar text {
            font-size: 15px;      /* Fonte visível e grande que você pediu */
            font-weight: bold;
            fill: #00ffff;        /* Mantido o Ciano/Azul claro original */
            font-family: sans-serif;
            letter-spacing: 0.5px;
            filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.9)) drop-shadow(-1px -1px 0px rgba(0, 0, 0, 0.9));
            
            /* ADICIONADO: O texto também pisca junto com o botão */
            animation: luzPiscandoTextoVoltar 2s infinite ease-in-out;
        }

        /* ================= ANIMAÇÕES DE LUZ PISCANTE (BOTÃO E TEXTO) ================= */

        /* Efeito de pulso no fundo e na borda do botão redondo */
        @keyframes luzPiscandoBotaoVoltar {
            0%, 100% {
                box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
                border-color: transparent;
            }
            50% {
                /* Cria uma aura brilhante azul em volta do botão branco */
                box-shadow: 0 0 15px #00ffff, 0 0 25px #00bfff;
                border-color: #00ffff;
            }
        }

        /* Efeito de pulso de luz no texto em curva */
        @keyframes luzPiscandoTextoVoltar {
            0%, 100% {
                fill: #00ffff;
                text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.9);
            }
            50% {
                fill: #ffffff; /* O texto muda temporariamente para branco no pico do brilho */
                /* Brilho neon ciano intenso nas letras */
                text-shadow: 0 0 10px #00ffff, 0 0 20px #00ffff, 1px 1px 2px rgba(0, 0, 0, 0.9);
            }
        }

        /* SVG do arco de texto do botão Voltar */
        .texto-curvo-voltar {
            width: 90px;
            height: 40px;
            position: absolute;
            top: 48px; /* Colado perfeitamente na parte de baixo do círculo */
            pointer-events: none;
            overflow: visible;
        }

        /* Configuração da Fonte do arco "VOLTAR" (Nítida e Visível) */
        .texto-curvo-voltar text {
            font-size: 11px; /* Tamanho ajustado para perfeita leitura */
            font-weight: bold;
            fill: #00ffff; /* Ciano/Azul claro para combinar com o layout da imagem original */
            font-family: sans-serif;
            letter-spacing: 0.5px;
            filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.9)) drop-shadow(-1px -1px 0px rgba(0, 0, 0, 0.9));
        }