@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700;800&display=swap'); *{box-sizing:border-box;margin:0;padding:0;} html{scroll-behavior:smooth;font-size:16px;} body{font-family:'Montserrat',Arial,sans-serif;background:#f8fafc;color:#0f172a;line-height:1.7;} a{color:inherit;text-decoration:none;} button,a{font-family:inherit;} button:focus,a:focus{outline:4px solid #facc15;outline-offset:3px;} .site-header{position:sticky;top:0;z-index:20;background:#ffffff;border-bottom:2px solid #2563eb;box-shadow:0 4px 20px rgba(15,23,42,.08);} .header-container{width:92%;max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;} .brand{display:flex;align-items:center;gap:12px;} .brand-icon{font-size:2.4rem;} .brand h1{font-size:1.3rem;color:#0f172a;} .brand p{font-size:.9rem;color:#2563eb;font-weight:700;} .menu{display:flex;flex-wrap:wrap;gap:10px;} .menu a{padding:9px 12px;border:2px solid #2563eb;border-radius:10px;color:#1e3a8a;font-weight:700;background:#eff6ff;transition:.2s;} .menu a:hover{background:#2563eb;color:#ffffff;} .accessibility-bar{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;background:#1e3a8a;padding:10px 16px;} .accessibility-bar button{border:2px solid #ffffff;background:#ffffff;color:#1e3a8a;border-radius:10px;padding:8px 12px;font-weight:800;cursor:pointer;transition:.2s;} .accessibility-bar button:hover{background:#facc15;color:#111827;border-color:#facc15;} main{width:92%;max-width:1200px;margin:auto;} .hero{min-height:72vh;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:34px;padding:70px 0;} .tag{display:inline-block;background:#dbeafe;color:#1e3a8a;border:2px solid #2563eb;border-radius:999px;padding:7px 14px;font-weight:800;margin-bottom:18px;} .hero h2{font-size:clamp(2.2rem,5vw,4.5rem);line-height:1.1;color:#0f172a;margin-bottom:20px;} .hero p{font-size:1.1rem;color:#334155;margin-bottom:22px;} .btn-primary{display:inline-block;background:#2563eb;color:#ffffff;font-weight:800;padding:13px 20px;border-radius:12px;border:2px solid #1e40af;transition:.2s;} .btn-primary:hover{background:#1e40af;transform:translateY(-2px);} .hero-card,.card{background:#ffffff;border:2px solid #bfdbfe;border-radius:22px;padding:26px;box-shadow:0 16px 35px rgba(37,99,235,.12);} .hero-card{text-align:center;} .hero-card span{display:block;font-size:5rem;margin-bottom:16px;} .hero-card h3,.card h3{color:#1e3a8a;margin-bottom:10px;font-size:1.35rem;} .hero-card p,.card p{color:#334155;} .section{padding:62px 0;border-top:2px solid #e2e8f0;} .section h2{font-size:2.1rem;color:#0f172a;margin-bottom:18px;} .section p{font-size:1.05rem;color:#334155;margin-bottom:16px;} .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px;} .destaque{background:#eff6ff;border:2px solid #bfdbfe;border-radius:24px;padding:38px;margin:50px 0;} .lista{margin:18px 0 0 24px;color:#334155;font-size:1.05rem;} .lista li{margin-bottom:10px;} .mensagem-final{background:#fef9c3;border:2px solid #facc15;border-radius:24px;padding:36px;margin:50px 0;} .contato p{background:#ffffff;border:2px solid #bfdbfe;border-radius:14px;padding:12px;margin-bottom:10px;} .site-footer{text-align:center;background:#1e3a8a;color:#ffffff;padding:30px 20px;margin-top:40px;} .site-footer p{margin-bottom:6px;} body.alto-contraste{background:#000000;color:#ffffff;} body.alto-contraste .site-header,body.alto-contraste .hero-card,body.alto-contraste .card,body.alto-contraste .contato p{background:#000000;color:#ffffff;border-color:#ffff00;} body.alto-contraste .accessibility-bar,body.alto-contraste .site-footer{background:#000000;border-top:2px solid #ffff00;} body.alto-contraste h1,body.alto-contraste h2,body.alto-contraste h3,body.alto-contraste p,body.alto-contraste li,body.alto-contraste .brand p,body.alto-contraste .card p,body.alto-contraste .hero-card p{color:#ffffff;} body.alto-contraste a,body.alto-contraste .menu a,body.alto-contraste .btn-primary,body.alto-contraste button{background:#000000;color:#ffff00;border-color:#ffff00;} body.alto-contraste .tag,body.alto-contraste .destaque,body.alto-contraste .mensagem-final{background:#000000;color:#ffffff;border-color:#ffff00;} @media(max-width:900px){.header-container{flex-direction:column;align-items:flex-start;}.menu{width:100%;}.menu a{flex:1;text-align:center;}.hero{grid-template-columns:1fr;padding:45px 0;}.grid{grid-template-columns:1fr;}.section{padding:45px 0;}}