body, h1, h2, h3, h4, h5, h6, .font-headline-md, .font-display-lg, button, input, select, textarea {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

body, h1, h2, h3, h4, h5, h6, .font-headline-md, .font-display-lg, button, input, select, textarea {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

.material-symbols-outlined {
    font-family: 'Material Symbols Outlined' !important;
}

/* CSEN Catanzaro Digital Hub - Stili Personalizzati */

/* Regola per i font Montserrat e Inter */
body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    
    
    text-rendering: optimizeLegibility;
}



/* Transizioni globali morbide */
a, button, input, select {
    transition: all 0.2s ease-in-out;
}

/* Sfumatura atletica brand */
.athletic-gradient {
    background: linear-gradient(135deg, rgba(187, 0, 20, 0.1) 0%, rgba(0, 8, 30, 0) 100%);
}

/* Maschera Hero diagonale per un look dinamico e atletico */
.hero-mask {
    clip-path: polygon(0 0, 100% 0, 100% 90%, 0% 100%);
}

@media (max-width: 768px) {
    .hero-mask {
        clip-path: polygon(0 0, 100% 0, 100% 95%, 0% 100%);
    }
}


/* Fix for iOS font weight rendering */
strong, b, .font-bold, .font-headline-md, .font-display-lg, .font-headline-lg, .font-label-bold {
    -webkit-text-stroke: 0.3px;
}

/* ==========================================================================
   OTTIMIZZAZIONI RESPONSIVE & LAYOUT (TABLET & MOBILE)
   ========================================================================== */

/* Prevenzione overflow orizzontale anomalo su viewport stretti */
html, body {
    overflow-x: clip;
    max-width: 100vw;
}

/* Contenitore universale per tabelle responsive con scorrimento touch fluido */
.table-responsive-wrapper,
.table-scroll {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

/* Nasconde scrollbar visivamente ma mantiene lo scorrimento touch */
.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.no-scrollbar::-webkit-scrollbar {
    display: none;
}

/* Touch targets ottimali per accessibilità mobile (minimo 44x44px) */
@media (max-width: 768px) {
    button, 
    .btn, 
    [role="button"],
    input[type="submit"],
    input[type="button"] {
        min-height: 44px;
    }

    /* Supporto per safe-area su dispositivi moderni (iPhone notch/home bar) */
    #floating-whatsapp-btn {
        bottom: calc(1.5rem + env(safe-area-inset-bottom, 0px)) !important;
        right: calc(1.25rem + env(safe-area-inset-right, 0px)) !important;
    }

    /* Wizard steps e stepper responsive */
    .wizard-step-indicator {
        font-size: 0.75rem !important;
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }

    /* Modal padding safe su schermi piccoli */
    .modal-content-safe {
        max-height: 88vh;
        overflow-y: auto;
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
}

