/* Layout condiviso da index/features/pricing (menu e footer in inc/).
   Gli stili specifici di ogni pagina restano nel suo <style>. */

/* Footer sempre in fondo anche sulle pagine corte (footer ha mt-auto). */
body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; }
.dot-green { background: #22c55e; box-shadow: 0 0 10px #22c55e; }
.dot-red { background: #ef4444; }

.hover-white { transition: color .15s ease; }
.hover-white:hover, .hover-white:focus-visible { color: #fff !important; }

/* Su mobile il menu resta visibile (prima spariva insieme al Login). */
.site-nav { gap: 1rem; }
@media (min-width: 768px) {
    .site-nav { gap: 1.5rem; }
}
/* Sotto i 400px logo + tre voci non stanno su una riga: compattiamo. */
@media (max-width: 399.98px) {
    .navbar .navbar-brand { margin-right: 0; }
    .site-nav { gap: .7rem; font-size: .75rem; }
    .site-nav .btn { font-size: .75rem; padding-left: .6rem !important; padding-right: .6rem !important; }
}
