@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap');

html { scroll-behavior: smooth; }
body, html { margin: 0; padding: 0; width: 100%; font-family: 'Poppins', Helvetica, sans-serif; overflow-x: hidden; color: #101010; }

/* --- BARRA DE SCROLL DOURADA --- */
::-webkit-scrollbar { width: 12px; }
::-webkit-scrollbar-track { background: #011f5b; }
::-webkit-scrollbar-thumb { background: #ffc700; border-radius: 10px; border: 3px solid #011f5b; }
::-webkit-scrollbar-thumb:hover { background: #e6b300; }

/* --- HEADER --- */
.main-header { background-color: #011f5b; position: sticky; top: 0; z-index: 1000; }
.header-container { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; padding: 5px 20px; height: 90px; }
.logo-img { height: 80px; width: auto; }
.nav-wrapper { display: flex; align-items: center; gap: 30px; }
.nav-menu ul { list-style: none; display: flex; gap: 25px; margin: 0; padding: 0; }
.nav-menu a { color: white; text-decoration: none; font-weight: 700; font-size: 0.9rem; text-transform: uppercase; }
.btn-aderir { background-color: #ffc700; color: #101010; padding: 10px 22px; border-radius: 5px; text-decoration: none; font-weight: 700; text-transform: uppercase; font-size: 0.85rem; }
.header-divider { height: 3px; background-color: #ffc700; width: 100%; }

/* --- HERO (COM A NOVA IMAGEM) --- */
.hero { 
    height: calc(100vh - 93px); 
    background: linear-gradient(rgba(1, 31, 91, 0.45), rgba(1, 31, 91, 0.45)), 
                url('img/vicentesaragosa.jpg') no-repeat center center/cover; 
    display: flex; 
    justify-content: center; 
    align-items: center; 
}
.hero-title { color: white; font-family: "Times New Roman", serif; font-style: italic; font-size: clamp(3rem, 8vw, 5.5rem); text-shadow: 3px 3px 15px rgba(0, 0, 0, 0.6); text-align: center; }
.scroll-arrow { margin-top: 40px; animation: bounce 2s infinite; text-align: center; }
@keyframes bounce { 0%, 20%, 50%, 80%, 100% { transform: translateY(0); } 40% { transform: translateY(-15px); } 60% { transform: translateY(-7px); } }

/* --- QUEM SOMOS --- */
.quem-somos { background-color: #011f5b; padding: 100px 20px; color: white; text-align: center; }
.container-small { max-width: 850px; margin: 0 auto; }
.section-title { font-size: 2.5rem; margin-bottom: 30px; font-weight: 700; }
.section-text { font-size: 1.15rem; line-height: 1.8; margin-bottom: 40px; opacity: 0.95; }
.btn-docs { background-color: #ffc700; color: #101010; padding: 12px 25px; border-radius: 5px; text-decoration: none; font-weight: 700; display: inline-block; }
.doc-icon { margin-right: 8px; animation: gentle-shake 8s infinite; }

@keyframes gentle-shake {
    0%, 90%, 100% { transform: rotate(0deg); }
    92% { transform: rotate(8deg); }
    94% { transform: rotate(-8deg); }
    96% { transform: rotate(8deg); }
}

/* --- CITAÇÃO --- */
.citacao-section { position: relative; padding: 140px 20px; background-color: white; text-align: center; overflow: hidden; }
.frase-principal { font-size: 1.8rem; color: #101010; position: relative; z-index: 2; }
.autor-citacao { color: #ffc700; font-family: "Times New Roman", serif; font-style: italic; font-size: 1.5rem; font-weight: bold; }
.aspas { position: absolute; font-size: 18rem; color: rgba(16, 16, 16, 0.04); font-family: serif; pointer-events: none; }
.aspa-top { top: -40px; left: 5%; }
.aspa-bottom { bottom: -100px; right: 5%; }

/* --- FOOTER --- */
.main-footer { background-color: #011f5b; color: white; padding: 0; }
.footer-divider-gold { height: 3px; background-color: #ffc700; width: 100%; }
.footer-container { max-width: 1200px; margin: 40px auto; display: flex; justify-content: space-between; align-items: center; padding: 0 20px; flex-wrap: wrap; }
.logo-footer-img { height: 75px; width: auto; }
.footer-columns { display: flex; gap: 60px; }
.footer-col h3 { font-size: 1rem; color: #ffc700; margin-bottom: 15px; text-transform: uppercase; }
.footer-col a, .footer-col p { color: white; text-decoration: none; font-size: 0.9rem; opacity: 0.8; }
.footer-bottom { text-align: center; width: 100%; padding-bottom: 20px; }
.footer-bottom p { font-size: 0.8rem; opacity: 0.6; margin-top: 20px; }

/* Mobile */
.mobile-menu-icon { display: none; background: none; border: none; color: white; font-size: 2.2rem; cursor: pointer; }
@media (max-width: 1024px) {
    .nav-menu, .btn-aderir { display: none; }
    .mobile-menu-icon { display: block; }
    .nav-menu.active { display: block !important; position: absolute; top: 93px; left: 0; width: 100%; background-color: #011f5b; padding: 20px 0; z-index: 999; border-bottom: 3px solid #ffc700; }
    .nav-menu.active ul { flex-direction: column; align-items: center; gap: 20px; }
}