/* ============================================================
   Complementos da versão PHP. O style.css original não foi alterado.
   ============================================================ */

/* Acessibilidade */
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: absolute; left: 16px; top: -60px; z-index: 10000; background: var(--petrol); color: var(--white); padding: 10px 16px; border-radius: var(--radius-sm); font-family: var(--font-heading); font-weight: 600; }
.skip-link:focus { top: 12px; }
:focus-visible { outline: 3px solid rgba(232, 93, 4, 0.55); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }

/* Âncoras não ficam escondidas atrás do cabeçalho fixo */
section[id], .anchor-alias { scroll-margin-top: 90px; }
.anchor-alias { display: block; position: relative; top: -90px; visibility: hidden; }

/* Menu: página atual */
.nav-links a.is-active { color: var(--orange); }

/* Espaçamentos que antes eram estilos inline */
.page-section { padding: 72px 0; background: var(--white); }
.section-actions { text-align: center; margin-top: 40px; }
.cta-label { color: rgba(255, 255, 255, 0.6); }
.footer-company { font-size: 0.8rem; color: rgba(255, 255, 255, 0.4) !important; margin-top: 16px; }
.footer-subtitle { margin-top: 24px; }

/* Seção "Do nosso blog" */
.home-blog { padding: 96px 0; background: var(--gray-light); }
.home-blog .blog-thumb { display: block; }
.home-blog .blog-card h3 a { color: var(--petrol); }
.home-blog .blog-card h3 a:hover { color: var(--orange); }

/* Formulários */
.hp-field { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.form-group input[aria-invalid="true"],
.form-group textarea[aria-invalid="true"] { border-color: #dc2626; box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.15); }
.field-error { display: block; margin-top: 6px; font-size: 0.82rem; color: #b91c1c; }
.form-checkbox .field-error { flex-basis: 100%; }
.btn[aria-busy="true"] { opacity: .7; pointer-events: none; }
.newsletter-form { flex-wrap: wrap; }
.newsletter-consent { flex-basis: 100%; font-size: 0.78rem; color: rgba(255, 255, 255, 0.6); margin-top: 4px; }
.newsletter-consent a { color: rgba(255, 255, 255, 0.85); text-decoration: underline; }
.newsletter .field-error { color: #fecaca; flex-basis: 100%; }

/* 404 */
.page-hero-404 { padding: 160px 0 120px; }
.page-hero-404 .hero-actions { margin-top: 28px; display: flex; gap: 12px; flex-wrap: wrap; }
.btn-outline-light { color: var(--white); border-color: rgba(255, 255, 255, 0.6); }
.btn-outline-light:hover { background: var(--white); color: var(--petrol); }

/* Logo recortado (o PNG original tem muita margem e ficava pequeno) */
.logo-img.logo-img-crop { height: 40px; width: auto; }
.logo-img-footer.logo-img-crop { height: 44px; width: auto; margin-bottom: 8px; }
@media (max-width: 480px) { .logo-img.logo-img-crop { height: 34px; } }
