:root {
    font-family: 'Jost', 'Noto Sans', sans-serif;
}

html {
    scroll-behavior: smooth;
}

/* Performance: pula render/layout de seções off-screen.
   Cada seção da LP tem ~600-900px de altura, então essa estimativa
   evita scrollbar jumping enquanto o navegador "salta" o trabalho. */
section {
    content-visibility: auto;
    contain-intrinsic-size: 800px;
}
/* Hero precisa estar sempre composto (preload + LCP). */
#Hero {
    content-visibility: visible;
    contain-intrinsic-size: auto;
}

/* Imagens responsivas por padrão. */
img { max-width: 100%; height: auto; }

#eccaplan-timeline-modal.is-open {
    display: flex !important;
}

[data-faq-content].is-open {
    grid-template-rows: 1fr !important;
    opacity: 1 !important;
}

/* Toast (substitui react-hot-toast) */
.eccaplan-toast {
    pointer-events: auto;
    padding: 12px 18px;
    border-radius: 14px;
    font-size: 14px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.25);
    max-width: 360px;
}
.eccaplan-toast--error {
    background: #ffffff;
    color: #111111;
}
.eccaplan-toast--success {
    background: #1D2E1F;
    color: #ffffff;
}

/* Tailwind 3xl/4xl breakpoints custom (cobertura básica via media query) */
@media (min-width: 1600px) {
    .\32xl\:max-w-\[1400px\] { max-width: 1400px; }
}
