﻿/* === 1. VARIÁVEIS GLOBAIS E RESET === */
:root {
--azul-principal: #28324D; /* Azul Escuro GQ */
--laranja-destaque: #FBB307; /* Laranja GQ */
--amarelo-fundo: #FEFBF6; /* Amarelo Clarinho */
--verde-check: #10B981; /* Verde (Ícones Lista/Whatsapp) */
--verde-fundo-tag: #e6f7e6; /* Novo */
--verde-texto-tag: #0d8a0d; /* Novo */
--cinza-texto-principal: #374151; /* Cinza Escuro (Títulos Secundários, Texto Importante) */
--cinza-texto-secundario: #6b7280; /* Cinza Médio (Parágrafos) */
--cinza-borda: #e5e7eb; /* Cinza Claro (Bordas, Divisores) */
--cinza-fundo-claro: #f9fafb; /* Cinza Bem Claro (Fundos Alternativos) */
--branco: #ffffff;
--branco-texto-footer: rgba(255, 255, 255, 0.8); /* Ajustado no FQ */
--preto: #1f2937; /* Preto Suave (para texto sobre fundos claros) */
--texto-botao-laranja: var(--azul-principal); /* Alto contraste */
--texto-botao-azul: var(--branco);
/* Novas Cores Específicas FQ */
--azul-fundo-card-objecao: #eef2ff;
--verde-fundo-card-objecao: #f0fdf4;
--amarelo-fundo-bonus: #fffbeb;
}
/* === 1B. UTILIDADES DE COR === */
/* Classes reutilizáveis baseadas na paleta de cores */
.gq-text-azul { color: var(--azul-principal); }
.gq-text-laranja { color: var(--laranja-destaque); }
.gq-text-preto { color: var(--preto); }
.gq-text-verde { color: var(--verde-check); }
.gq-text-cinza { color: var(--cinza-texto-secundario); }
.gq-text-cinza-principal { color: var(--cinza-texto-principal); }
.gq-text-branco { color: var(--branco); }
/* Utilidade Link Azul */
.gq-link-azul { color: var(--azul-principal); }
.gq-link-azul:hover { color: var(--laranja-destaque); }
/* === 1C. UTILIDADES DE ESPAÇAMENTO === */
/* (Baseado em 1rem = 16px) */
.gq-pt-24 { padding-top: 6rem; }
.gq-pb-24 { padding-bottom: 6rem; }
.gq-mt-1 { margin-top: 0.25rem; } /* 4px */
.gq-mt-2 { margin-top: 0.5rem; } /* 8px */
.gq-mt-3 { margin-top: 0.75rem; } /* 12px */
.gq-mt-4 { margin-top: 1rem; } /* 16px */
.gq-mt-6 { margin-top: 1.5rem; } /* 24px */
.gq-mt-8 { margin-top: 2rem; } /* 32px */
.gq-mt-12 { margin-top: 3rem; } /* 48px */
.gq-mb-0 { margin-bottom: 0; } /* 0px */
.gq-mb-6 { margin-bottom: 1.5rem; }
.gq-mb-8 { margin-bottom: 2rem; }
.gq-mb-12 { margin-bottom: 3rem; } /* 48px */
.gq-mr-1 { margin-right: 0.25rem; } /* 4px */
.gq-mr-2 { margin-right: 0.5rem; } /* 8px */
.gq-mr-3 { margin-right: 0.75rem; } /* 12px */
.gq-ml-1 { margin-left: 0.25rem; } /* Novo */
.gq-pl-4 { padding-left: 1rem; } /* 16px */
.gq-gap-4 { gap: 1rem; } /* 16px */
.gq-pb-32 { padding-bottom: 8rem; } /* 128px */
/* === 1D. UTILIDADES DE TEXTO === */
.gq-text-center { text-align: center; }
.gq-font-semibold { font-weight: 600; }
.gq-font-bold { font-weight: 700; }
.gq-text-sm { font-size: 0.95em; } /* Novo */
.gq-text-base { font-size: 1rem; }
.gq-text-md { font-size: 1.125rem; }
.gq-text-lg { font-size: 1.25rem; }
.gq-text-xl { font-size: 1.3em; } /* Novo */
.gq-text-2xl { font-size: 1.4em; } /* Novo */
.gq-min-h-50 { min-height: 50px; } /* Novo */
/* === 1E. UTILIDADES DE LAYOUT === */
.gq-border-b-laranja-2 { border-bottom: 2px solid var(--laranja-destaque); } /* Novo */
.gq-header-centered { text-align: center; margin-bottom: 3rem; } /* Novo */
*, *::before, *::after { box-sizing: border-box; }
body, h1, h2, h3, h4, p, ul, li, figure, figcaption, blockquote, dl, dd { margin: 0; }
ul { padding: 0; list-style: none; }
img { max-width: 100%; height: auto; display: block; } /* height: auto evita distorção */
input, button, textarea, select { font: inherit; }
a { color: var(--laranja-destaque); text-decoration: none; transition: opacity 0.2s ease; }
a:hover { opacity: 0.8; text-decoration: none; } /* Sem sublinhado */
body {
font-family: 'Inter', sans-serif;
color: var(--cinza-texto-secundario);
background-color: var(--branco);
padding-top: 5rem; /* Espaço para o header fixo */
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* Tipografia Base */
/* Ajuste: h1 text-align inherit */
h1, h2, h3, h4 { color: var(--azul-principal); line-height: 1.3; font-weight: 800; text-align: inherit; }
h1 { font-size: clamp(2rem, 5vw + 1rem, 3rem); } /* Responsivo (aprox 32px a 48px) */
h2 { font-size: clamp(1.75rem, 4vw + 1rem, 2.25rem); } /* Aprox 28px a 36px */
h3 { font-size: clamp(1.25rem, 3vw + 1rem, 1.75rem); font-weight: 700; } /* Aprox 20px a 28px */
h4 { font-size: clamp(1.1rem, 2vw + 1rem, 1.25rem); font-weight: 600; } /* Aprox 18px a 20px */
p { line-height: 1.7; /* Aumentado para legibilidade */ margin-bottom: 1rem; }
p:last-child { margin-bottom: 0; }
strong { font-weight: 700; color: var(--azul-principal); }
blockquote { padding: 1.5rem; border-left: 5px solid var(--laranja-destaque); background-color: var(--cinza-fundo-claro); border-radius: 0 8px 8px 0; margin-bottom: 1.5rem; box-shadow: 0 2px 4px rgba(0,0,0,0.05); }
blockquote p { font-weight: 600; font-style: italic; color: var(--azul-principal); margin: 0; }
/* === 2. LAYOUT E CONTAINERS === */
.gq-container { width: 100%; max-width: 1200px; margin-left: auto; margin-right: auto; padding-left: 1rem; padding-right: 1rem; }
.gq-container-medium { width: 100%; max-width: 1024px; margin-left: auto; margin-right: auto; padding-left: 1rem; padding-right: 1rem; }
.gq-container-narrow { width: 100%; max-width: 896px; margin-left: auto; margin-right: auto; padding-left: 1rem; padding-right: 1rem; }
/* === 3. HEADER === */
#main-header { position: fixed; top: 0; left: 0; width: 100%; background: var(--branco); box-shadow: 0 2px 4px rgba(0,0,0,0.05); z-index: 1000; border-bottom: 1px solid var(--cinza-borda); }
.gq-header-flex { display: flex; justify-content: space-between; align-items: center; height: 5rem; }
.gq-logo-link { display: flex; align-items: center; flex-shrink: 0; } /* Evita encolher logo */
.gq-logo-img { margin-right: 0.5rem; width: 32px; height: 32px; }
.gq-logo-text-main { font-size: 1.15rem; /* Ajustado */ font-weight: 800; display: block; color: var(--azul-principal); }
.gq-logo-text-sub { display: block; font-size: 0.7rem; color: var(--cinza-texto-secundario); }
.desktop-nav { display: none; gap: 1.5rem; }
.gq-nav-link { color: var(--cinza-texto-principal); font-weight: 500; display: flex; align-items: center; white-space: nowrap; }
.gq-nav-link:hover { color: var(--laranja-destaque); opacity: 1; }
.gq-header-actions { display: flex; align-items: center; gap: 0.75rem; flex-shrink: 0; }
.gq-whatsapp-link { color: var(--verde-check); font-size: 1.5rem; padding: 0.5rem; border-radius: 50%; display: flex; } /* Flex para centralizar ícone */
.gq-whatsapp-link:hover { background-color: #f0fdf4; opacity: 1; }
.mobile-button { display: block; padding: 0.5rem; border: none; background: transparent; cursor: pointer; color: var(--cinza-texto-secundario); font-size: 1.5rem; line-height: 1; } /* line-height para alinhar ícone */
/* Menu Mobile */
#mobile-menu { display: none; background: var(--branco); border-top: 1px solid var(--cinza-borda); box-shadow: 0 4px 6px rgba(0,0,0,0.05); position: absolute; width: 100%; left: 0; top: 100%; }
.gq-mobile-menu-inner { padding: 1rem; display: flex; flex-direction: column; gap: 0.5rem; }
.gq-mobile-link { display: block; padding: 0.75rem; font-size: 1rem; font-weight: 500; color: var(--cinza-texto-principal); border-bottom: 1px solid var(--cinza-fundo-claro); }
.gq-mobile-link:hover { color: var(--laranja-destaque); opacity: 1; background-color: var(--cinza-fundo-claro); }
.gq-mobile-cta-wrapper { padding-top: 1rem; border-top: 1px solid var(--cinza-borda); margin-top: 0.5rem; }
/* Esconde os botões de ação do header principal no mobile */
.gq-cta-button-header { display: none;}
.gq-header-actions .gq-whatsapp-link { display: none;}
/* Força o logo e textos a empilhar (Req: Logo acima, textos abaixo) */
.gq-logo-link { flex-direction: column; align-items: flex-start;}
.gq-logo-img { margin-right: 0; margin-bottom: 0.25rem; /* Espaço entre logo e texto */ }
.gq-logo-text { line-height: 1.2; /* Aproxima os textos */ }
.gq-logo-text-main { font-size: 1rem; /* Ajuste para caber melhor */}
/* Novos estilos para o menu mobile (gaveta) */
.gq-mobile-actions-divider { height: 1px; background-color: var(--cinza-borda); margin: 0.5rem 0; /* Espaçamento do divisor */ }
.gq-mobile-whatsapp { color: var(--verde-check); /* Destaque verde */ font-weight: 500; }
.gq-mobile-whatsapp i { margin-right: 0.75rem; width: 20px; /* Alinha o texto dos links */}
/* Ajusta o wrapper do botão CTA no mobile */
.gq-mobile-cta-wrapper { padding-top: 0.5rem; /* Reduz padding */ margin-top: 0; border-top: none; /* Remove borda antiga */}
/* === 4. FOOTER === */
.gq-footer { background: var(--azul-principal); color: var(--branco); border-top: 8px solid var(--laranja-destaque); padding: 4rem 0 0 0; } /* Aumentado padding top */
.footer-grid-4 { display: grid; gap: 2rem; grid-template-columns: 1fr; margin-bottom: 3rem; }
.gq-footer-col h3 { font-size: 1.125rem; font-weight: 700; margin-bottom: 1.5rem; color: var(--branco); }
.gq-footer-col h3.destaque { color: var(--laranja-destaque); }
.gq-footer-col p { font-size: 0.9rem; color: var(--branco-texto-footer); margin-bottom: 1rem; line-height: 1.6; }
.gq-footer-col p.proposito { font-weight: 600; color: var(--branco); }
.gq-footer-list li a { color: var(--branco-texto-footer); display: block; padding: 0.3rem 0; font-size: 0.9rem; }
.gq-footer-list li a:hover { color: var(--branco); opacity: 1; }
.gq-footer-socials { display: flex; gap: 1rem; font-size: 1.35rem; margin-top: 1rem; }
.gq-footer-socials a { color: var(--branco); }
.gq-footer-socials a:hover { color: var(--laranja-destaque); opacity: 1; transform: scale(1.1); }
.gq-footer-bottom { border-top: 1px solid rgba(251, 179, 7, 0.4); padding: 1.5rem 0; }
.gq-footer-bottom-flex { display: flex; flex-direction: column; align-items: center; justify-content: space-between; font-size: 0.875rem; gap: 1rem; }
.gq-footer-bottom-flex p { color: var(--branco-texto-footer); text-align: center; margin: 0; }
.gq-footer-links { display: flex; gap: 1.5rem; }
.gq-footer-links a { color: var(--branco-texto-footer); font-size: 0.875rem; }
.gq-footer-links a:hover { color: var(--branco); opacity: 1; }
/* === 5. COMPONENTES REUTILIZÁVEIS === */
/* Botões */
.btn { display: inline-flex; align-items: center; justify-content: center; padding: 0.8rem 1.8rem; border-radius: 9999px; font-weight: 700; text-decoration: none; border: none; cursor: pointer; text-align: center; transition: background-color 0.2s ease, transform 0.1s ease, box-shadow 0.2s ease; box-shadow: 0 4px 6px rgba(0,0,0,0.1); white-space: nowrap; }
.btn:hover { transform: translateY(-2px); box-shadow: 0 6px 10px rgba(0,0,0,0.15); }
.btn i { margin-right: 0.6rem; font-size: 1em; } /* Tamanho relativo */
.btn-laranja { background-color: var(--laranja-destaque); color: var(--texto-botao-laranja); }
.btn-laranja:hover { background-color: #FBBF24; color: var(--texto-botao-laranja); }
.btn-azul { background-color: var(--azul-principal); color: var(--texto-botao-azul); }
.btn-azul:hover { background-color: #1e293b; color: var(--texto-botao-azul); } /* Azul mais escuro */
.btn-sm { padding: 0.5rem 1.2rem; font-size: 0.875rem; }
.btn-md { padding: 0.8rem 1.8rem; font-size: 1rem; }
.btn-lg { padding: 1rem 2.2rem; font-size: 1.125rem; }
.btn-xl { padding: 1rem 2.2rem; font-size: 1.25rem; } /* Novo tamanho de botão */
.btn-w-full { width: 100%; }
.btn-w-auto { width: auto; }
.btn-w-300 { width: 100%; max-width: 300px; } .btn-w-400 { width: 100%; max-width: 400px; } .btn-w-512 { width: 100%; max-width: 512px; }
/* Wrapper de Botões (para centralizar e agrupar) */
.botoes {
display: flex;
flex-direction: column;
align-items: center;
gap: 1rem;
}
/* Cards */
.card { background-color: var(--branco); border-radius: 12px; box-shadow: 0 4px 10px rgba(40,50,77,0.08); padding: 2.5rem; display: flex; flex-direction: column; height: 100%; /* Para alinhar botões em grids */ }
.card-content { flex-grow: 1; }
.card-titulo { font-size: 1.5rem; font-weight: 700; margin-bottom: 1.5rem; color: var(--azul-principal); }
.card-descricao { color: var(--cinza-texto-secundario); margin-bottom: 2rem; }
.card-subtitulo { font-size: 1.125rem; font-weight: 600; margin-bottom: 1rem; color: var(--azul-principal); }
.card-lista { margin-bottom: 2rem; }
.card-lista-item { display: flex; align-items: flex-start; /* Para textos longos */ margin-bottom: 0.75rem; color: var(--cinza-texto-principal); }
/* CORREÇÃO: Cor do ícone agora é herdada */
.card-lista-item i { color: inherit; margin-right: 10px; font-size: 1.1em; flex-shrink: 0; margin-top: 0.15em; /* Ajuste vertical */ }
.card-botao-wrapper { text-align: center; margin-top: auto; padding-top: 1.5rem; /* Garante espaço acima do botão */ }
/* Card Objeção (Padronizado) */
.card-objecao { padding: 1.5rem; border-radius: 8px; border-left: 5px solid var(--laranja-destaque); background-color: var(--amarelo-fundo); }
.card-objecao p { color: var(--cinza-texto-secundario); margin: 0; }
.card-objecao-titulo { font-size: 1.25rem; font-weight: 700; color: var(--azul-principal); margin-bottom: 0.5rem; }
/* Card Solução (Padronizado) */
.card-solucao { background-color: var(--branco); padding: 1.5rem; border-radius: 12px; box-shadow: 0 10px 15px -3px rgba(40,50,77,0.07); border-top: 8px solid var(--laranja-destaque); display: flex; flex-direction: column; height: 100%; }
.card-solucao h3 { font-size: 1.25rem; font-weight: 800; margin-bottom: 0.75rem; color: var(--azul-principal); }
.card-solucao p { color: var(--cinza-texto-secundario); margin-bottom: 1rem; flex-grow: 1; }
.card-solucao p strong { font-weight: 700; color: var(--azul-principal); }
.card-solucao-subtexto { font-size: 0.875rem; font-weight: 600; color: var(--verde-check); margin-bottom: 0 !important; margin-top: auto; }
/* Grids */
.grid { display: grid; gap: 2.5rem; /* Aumentado */ }
.grid-cols-1 { grid-template-columns: 1fr; }
.grid-cols-2 { grid-template-columns: 1fr; }
.grid-cols-3 { grid-template-columns: 1fr; }
.grid-cols-4 { grid-template-columns: 1fr; }
/* === 6. ESTILOS DE SEÇÕES GENÉRICAS === */
.secao { padding: 5rem 0; }
.secao-branca { background-color: var(--branco); }
.secao-cinza { background-color: var(--cinza-fundo-claro); border-top: 1px solid var(--cinza-borda); border-bottom: 1px solid var(--cinza-borda); }
.secao-azul { background-color: var(--azul-principal); color: var(--branco); }
.secao-azul h1, .secao-azul h2, .secao-azul h3, .secao-azul h4 { color: var(--branco); }
.secao-azul p, .secao-azul li { color: var(--branco-texto-footer); }
.secao-azul strong { color: var(--branco); }
.secao-azul .card-solucao p, .secao-azul .card-solucao li { color: var(--cinza-texto-secundario); } /* Texto dentro do card volta ao normal */
.secao-azul .card-solucao h3 { color: var(--azul-principal); }
.secao-amarela-clara { background-color: var(--amarelo-fundo); }
.secao-titulo { text-align: center; margin-bottom: 3rem; }
.secao-subtitulo { font-size: 1.125rem; /* Ajustado */ text-align: center; color: var(--cinza-texto-secundario); max-width: 700px; margin: -2rem auto 3rem auto; }
/* Hero Genérico de Página */
.hero-pagina { padding: 6rem 0; /* Aumentado */ text-align: center; border-bottom: 4px solid var(--cinza-fundo-claro); background-color: var(--branco); }
.hero-pagina .antetitulo { font-size: 0.875rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 1rem; color: var(--laranja-destaque); }
.hero-pagina .titulo { margin-bottom: 1.5rem; line-height: 1.2; }
.hero-pagina .descricao { font-size: 1.25rem; color: var(--cinza-texto-secundario); max-width: 896px; margin: 0 auto 2.5rem auto; }
.hero-pagina .subtexto { font-size: 0.875rem; color: var(--cinza-texto-secundario); margin-top: 1rem; }
/* CTA Final Genérico */
.cta-final { text-align: center; }
.cta-final .titulo { margin-bottom: 1rem; }
.cta-final .texto { font-size: 1.125rem; color: var(--cinza-texto-secundario); margin-bottom: 2rem; max-width: 700px; margin-left: auto; margin-right: auto; }
/* .botoes foi movido para Seção 5 (Componentes) */
.cta-final .link-alternativo { color: var(--azul-principal); font-weight: 600; }
.cta-final .link-alternativo:hover { color: var(--laranja-destaque); opacity: 1; }
.cta-final .legenda { font-size: 0.875rem; color: var(--cinza-texto-secundario); margin-top: 1rem; }
/* === 7. ESTILOS ESPECÍFICOS: HOME === */
.hero-home { background-color: var(--amarelo-fundo); text-align: center; }
.hero-home .titulo {
    font-size: clamp(2.5rem, 6vw + 1rem, 3.5rem); /* Aprox 40px a 56px */
    margin-bottom: 1rem; /* AJUSTE: Espaçamento vertical */
}
.hero-home .subtitulo { font-size: 0.9rem; font-weight: 600; text-transform: uppercase; margin-bottom: 0.5rem; color: var(--azul-principal); }
.hero-home .descricao {
    font-size: 1.25rem;
    max-width: 650px;
    margin-left: auto; /* FIX: Centraliza o bloco do parágrafo */
    margin-right: auto; /* FIX: Centraliza o bloco do parágrafo */
    margin-bottom: 2.5rem; /* AJUSTE: Maior espaçamento antes do botão */
}
.hero-home .features { display: flex; justify-content: center; gap: 2rem; margin-top: 3rem; flex-wrap: wrap; }
.hero-home .feature-item { display: flex; align-items: center; gap: 0.5rem; color: var(--azul-principal); font-size: 0.9rem; font-weight: 600; }
.hero-home .feature-item i { font-size: 1.1rem; color: var(--laranja-destaque); }
.curadoria-home .card-titulo { font-size: 1.5rem; }
/* === 8. ESTILOS ESPECÍFICOS: FATOR QUÂNTICO === */
/* Barra de Destaque (Sub-Header) */
.gq-barra-destaque { background-color: var(--azul-principal); color: var(--branco); padding: 1rem 0; }
.gq-barra-destaque-flex { display: flex; flex-wrap: wrap; justify-content: space-around; align-items: center; text-align: center; font-size: 0.875rem; font-weight: 600; }
.gq-barra-destaque-item { margin: 0.5rem 1rem; }
.gq-barra-destaque-item i { color: var(--laranja-destaque); margin-right: 5px; }
/* Modificadores de Card de Objeção */
.card-objecao-azul { border-color: var(--azul-principal); background-color: var(--azul-fundo-card-objecao); }
.card-objecao-verde { border-color: var(--verde-check); background-color: var(--verde-fundo-card-objecao); }
.card-lista-grande { font-size: 1.1rem; margin-bottom: 0; }
.card-lista-grande.gq-text-azul .card-lista-item { color: var(--azul-principal); }
.card-lista-grande.gq-text-verde .card-lista-item { color: var(--verde-check); }
/* Card de Feature (Transformação Prática) */
.card-feature-icon { text-align: center; padding: 1.5rem; }
.card-feature-icon-icone { font-size: 2.5rem; color: var(--azul-principal); margin-bottom: 1rem; }
.card-feature-icon h4 { color: var(--azul-principal); }
/* Seção Bônus Livro */
.secao-bonus-livro { background-color: var(--amarelo-fundo-bonus); border-top: 4px solid var(--laranja-destaque); text-align: center; padding: 3rem 0; }
.secao-bonus-livro .secao-titulo { font-size: 1.75rem; }
.secao-bonus-livro .secao-subtitulo { font-size: 1.25rem; margin-top: -1rem; }
.secao-bonus-lista { display: flex; justify-content: center; align-items: center; gap: 1.5rem; flex-wrap: wrap; font-size: 1.1rem; color: var(--azul-principal); font-weight: 600; }
.secao-bonus-lista span i { color: var(--azul-principal); }
.secao-bonus-aviso { font-size: 1rem; color: var(--azul-principal); font-weight: 700; margin-top: 2rem; }
/* Card de Preço (CTA Final FQ) */
.fq-cta-subtitulo { color: var(--branco); font-size: 1.25rem; }
.card-preco { background-color: var(--branco); color: var(--azul-principal); padding: 2rem; border-radius: 12px; margin-bottom: 2rem; max-width: 450px; margin-left: auto; margin-right: auto; }
.card-preco .preco-de { font-size: 1.1rem; font-weight: 600; margin-bottom: 0.5rem; }
.card-preco .preco-de span { text-decoration: line-through; }
.card-preco .preco-por { font-size: 3rem; font-weight: 900; line-height: 1; color: var(--azul-principal); margin-bottom: 1rem; }
.card-preco .preco-parcela { font-size: 1rem; margin-bottom: 0; }
.legenda-garantia { margin-top: 2rem; display: flex; align-items: center; justify-content: center; color: var(--branco-texto-footer); }
.legenda-garantia i { margin-right: 8px; color: var(--verde-check); }
/* === 9. ESTILOS ESPECÍFICOS: QUEM SOMOS === */
.hero-quemsomos-img { width: 160px; height: 160px; border-radius: 50%; margin: 0 auto 1.5rem; box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1); object-fit: cover; border: 4px solid var(--laranja-destaque); }
.hero-quemsomos-titulo { font-size: 2.25rem; }
.especialidades-box { background-color: var(--cinza-fundo-claro); padding: 1.5rem; border-radius: 12px; box-shadow: 0 4px 6px rgba(0,0,0,0.05); height: 100%; }
.especialidades-box ul { display: flex; flex-direction: column; gap: 1rem; }
.especialidades-box li { display: flex; align-items: center; color: var(--cinza-texto-principal); }
.especialidades-box li i { margin-right: 10px; color: var(--azul-principal); width: 20px; text-align: center; }
/* === 10. ESTILOS ESPECÍFICOS: JOVENS DIGITAIS === */
.hero-jovens-titulo { font-size: 2.5rem; } /* Override do tamanho padrão de h2 */
/* === 11. ESTILOS ESPECÍFICOS: O PODER DAS PERGUNTAS === */
.card-solucao-expandido { grid-column: span 2; } /* Faz o card ocupar 2 colunas */
/* === 12. ESTILOS ESPECÍFICOS: TREINAMENTOS (tecnologia.html) === */
.product-image-placeholder {
width: 100%;
height: 180px;
background-color: var(--azul-principal);
color: white;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.5em;
font-weight: 700;
opacity: 0.9;
border-radius: 8px 8px 0 0;
}
.product-card .card-content { padding: 1.5rem; }
.product-card .price {
font-size: 1.4em;
color: var(--azul-principal);
font-weight: 700;
margin: 10px 0;
}
.product-card .recurrence {
font-size: 0.85em;
color: var(--cinza-texto-principal);
font-weight: 400;
margin-left: 5px; /* Mantido como estava */
}
.product-card .card-botao-wrapper { padding: 0 1.5rem 1.5rem 1.5rem; }
.product-card .btn { width: 100%; font-size: 1rem; }
.status-tag {
display: inline-block;
padding: 3px 10px;
border-radius: 4px;
font-size: 0.8em;
font-weight: 700;
margin-top: 5px;
background-color: var(--verde-fundo-tag);
color: var(--verde-texto-tag);
}
/* Citação Final (Estilo específico) */
.gq-final-quote p {
font-size: 1.1rem;
color: var(--cinza-texto-secundario);
}
/* === 13. MEDIA QUERIES === */
@media (min-width: 640px) {
.gq-footer-bottom-flex { flex-direction: row; text-align: left; }
.gq-footer-bottom-flex p { text-align: left; }
}
@media (min-width: 768px) {
/* Tipografia Desktop */
h1 { font-size: 3rem; } h2 { font-size: 2.25rem; } h3 { font-size: 1.75rem; } h4 { font-size: 1.25rem; }
.secao-titulo { font-size: 2.25rem; }
.hero-pagina .titulo { font-size: 2.75rem; }
.hero-jovens-titulo { font-size: 3rem; } /* Ajuste Desktop Jovens */
.hero-titulo-md { font-size: 2.5rem; } /* Consolida títulos de heros médios */
/* Layout Desktop */
.desktop-nav { display: flex !important; }
.mobile-button { display: none !important; }
.gq-cta-button-header { display: inline-flex; }
.footer-grid-4 { grid-template-columns: repeat(4, 1fr); }
.grid-cols-2 { grid-template-columns: repeat(2, 1fr); }
.grid-cols-3 { grid-template-columns: repeat(3, 1fr); }
.grid-cols-4 { grid-template-columns: repeat(4, 1fr); }
/* Ajustes Específicos Desktop */
.curadoria-home .grid { grid-template-columns: 1fr 1fr; gap: 3rem; }
/* === AJUSTES HEADER DESKTOP (REVERSÕES) === */
/* Restaura o layout do logo para lado a lado */
.gq-logo-link {
    flex-direction: row;
    align-items: center;
}
.gq-logo-img {
    margin-right: 0.5rem; /* Devolve a margem lateral */
    margin-bottom: 0; /* Remove a margem inferior */
}
.gq-logo-text {
    line-height: normal; /* Restaura line-height */
}
.gq-logo-text-main {
    font-size: 1.15rem; /* Restaura tamanho original */
}
/* Mostra os botões de ação do header no desktop */
.gq-cta-button-header {
    display: inline-flex;
}
.gq-header-actions .gq-whatsapp-link {
    display: flex;
}
}
@media (min-width: 1024px) {
.gq-container { padding-left: 1.5rem; padding-right: 1.5rem; } /* Mais espaçamento lateral */
.grid-cols-lg-3 { grid-template-columns: repeat(3, 1fr); }
.grid-cols-lg-4 { grid-template-columns: repeat(4, 1fr); }
.grid-gap-lg { gap: 3rem; } /* Maior espaçamento em grids */
/* Layout Tanios Desktop */
.sobre-tanios-grid { grid-template-columns: 2fr 1fr; gap: 3rem; align-items: start; }
.eixos-grid { grid-template-columns: 1fr 1fr; gap: 2.5rem; }
}
/* Estado Padrão (Menu Fechado) */
#mobile-menu,
#icon-close {
display: none;
}
#icon-menu {
display: block;
}
/* Estado Expandido (via JS) */
[aria-expanded="true"] + #mobile-menu {
display: block; /* Mostra o menu */
}
/* Esconde o ícone 'menu' DENTRO do botão expandido */
[aria-expanded="true"] #icon-menu {
display: none;
}
/* Mostra o ícone 'fechar' DENTRO do botão expandido */
[aria-expanded="true"] #icon-close {
display: block;
}
