/* /Components/Layout/MainLayout.razor.rz.scp.css */
.app-shell[b-ni3ue5rzpd] {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    background: var(--app-gradient);
    color: var(--text);
}

/* HEADER */

.kairos-header[b-ni3ue5rzpd] {
    position: sticky;
    top: 0;
    z-index: 60;
    border-bottom: 1px solid var(--border);
    background: var(--header-bg);
    backdrop-filter: blur(18px);
}

.kairos-header-main[b-ni3ue5rzpd] {
    display: flex;
    align-items: center;
    gap: 1.35rem;
    min-height: 3.65rem;
    max-width: 1720px;
    margin: 0 auto;
    padding: 0 1.35rem;
    /*
       overflow: visible è OBBLIGATORIO: i submenu RadzenMenu si renderizzano
       come popup posizionati assolutamente sotto la voce di menu. Con
       overflow:hidden questo container li taglia e i submenu sembrano
       non aprirsi affatto.
    */
    overflow: visible;
}

/* LOGO */

.kairos-brand[b-ni3ue5rzpd] {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    color: var(--text);
    font-size: 1.05rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

    .kairos-brand:hover[b-ni3ue5rzpd] {
        color: var(--brand);
        text-decoration: none;
    }

    .kairos-brand img[b-ni3ue5rzpd] {
        display: block;
        width: 42px;
        max-width: 22vw;
        height: auto;
        flex: 0 0 auto;
    }

    .kairos-brand span[b-ni3ue5rzpd] {
        letter-spacing: -0.01em;
    }

/* PULSANTE MENU MOBILE */

/*
   Checkbox nascosto che pilota lo stato aperto/chiuso del menu mobile.
   Pattern CSS-only: il <label for="..."> funge da pulsante e cliccandolo
   commuta lo stato del checkbox; le regole successive usano
   `.mobile-menu-checkbox:checked ~ .nav-wrapper` per mostrare il menu.
   In questo modo non serve interattività Blazor sul layout.
*/
.mobile-menu-checkbox[b-ni3ue5rzpd] {
    display: none;
}

/* Pulsante hamburger: visibile solo nei viewport stretti (vedi media query <640px). */
.menu-mobile-button[b-ni3ue5rzpd] {
    display: none;
    width: 2.45rem;
    height: 2.45rem;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--surface);
    color: var(--text);
    cursor: pointer;
}

    .menu-mobile-button .material-icons[b-ni3ue5rzpd] {
        font-size: 1.45rem;
    }

    .menu-mobile-button:hover[b-ni3ue5rzpd] {
        color: var(--brand);
        background: rgba(92, 81, 245, 0.08);
    }

    .menu-mobile-button[b-ni3ue5rzpd]  .rz-icon,
    .menu-mobile-button[b-ni3ue5rzpd]  .rzi {
        font-size: 1.45rem;
    }

/* NAVMENU */

.nav-wrapper[b-ni3ue5rzpd] {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
}

    .nav-wrapper[b-ni3ue5rzpd]  .kairos-nav {
        flex: 1 1 auto;
        min-width: 0;
        /*
           overflow: visible è obbligatorio anche qui: era hidden per
           evitare che il menu sforasse orizzontalmente, ma ciò tagliava
           i popup dei submenu Radzen che si posizionano sotto le voci.
           La regola successiva (.rz-menu min-width: max-content)
           garantisce comunque che il menu non vada a capo.
        */
        overflow: visible;
    }

        .nav-wrapper[b-ni3ue5rzpd]  .kairos-nav .rz-menu {
            flex-wrap: nowrap;
            min-width: max-content;
        }

/* AZIONI DESTRA HEADER */

.header-actions[b-ni3ue5rzpd] {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.75rem;
    margin-left: auto;
    min-width: max-content;
    white-space: nowrap;
}

.header-action-social[b-ni3ue5rzpd],
.header-action-theme[b-ni3ue5rzpd],
.header-action-notification[b-ni3ue5rzpd],
.header-action-login[b-ni3ue5rzpd] {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
}

.header-actions[b-ni3ue5rzpd]  .social-share-links {
    display: inline-flex;
    align-items: center;
    gap: 0.38rem;
}

.header-actions[b-ni3ue5rzpd]  .share-label {
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.header-actions[b-ni3ue5rzpd]  .share-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.85rem;
    height: 1.85rem;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.74);
    color: var(--brand);
    line-height: 1;
    text-decoration: none;
    transition: transform 0.16s ease, border-color 0.16s ease, background-color 0.16s ease, color 0.16s ease;
}

    .header-actions[b-ni3ue5rzpd]  .share-link svg {
        width: 1rem;
        height: 1rem;
        fill: currentColor;
    }

.header-actions[b-ni3ue5rzpd]  .share-whatsapp {
    color: #25d366;
}

.header-actions[b-ni3ue5rzpd]  .share-telegram {
    color: #229ed9;
}

.header-actions[b-ni3ue5rzpd]  .share-facebook {
    color: #1877f2;
}

.header-actions[b-ni3ue5rzpd]  .share-email {
    color: var(--brand);
}

.header-actions[b-ni3ue5rzpd]  .share-link:hover {
    transform: translateY(-1px);
    color: #ffffff;
    text-decoration: none;
}

.header-actions[b-ni3ue5rzpd]  .share-whatsapp:hover {
    border-color: #25d366;
    background: #25d366;
}

.header-actions[b-ni3ue5rzpd]  .share-telegram:hover {
    border-color: #229ed9;
    background: #229ed9;
}

.header-actions[b-ni3ue5rzpd]  .share-facebook:hover {
    border-color: #1877f2;
    background: #1877f2;
}

.header-actions[b-ni3ue5rzpd]  .share-email:hover {
    border-color: var(--brand);
    background: var(--brand);
}

.header-actions[b-ni3ue5rzpd]  a,
.header-actions[b-ni3ue5rzpd]  .btn-link,
.header-actions span[b-ni3ue5rzpd] {
    white-space: nowrap;
    color: var(--text);
    font-size: 0.9rem;
    text-decoration: none;
}

    .header-actions[b-ni3ue5rzpd]  a:hover,
    .header-actions[b-ni3ue5rzpd]  .btn-link:hover {
        color: var(--brand);
        text-decoration: none;
    }

/* LOGIN */

.header-actions[b-ni3ue5rzpd]  .login-menu {
    display: flex;
    align-items: center;
    gap: 0.85rem;
}

    .header-actions[b-ni3ue5rzpd]  .login-menu a,
    .header-actions[b-ni3ue5rzpd]  .login-menu button {
        margin-left: 0;
        border: 0;
        background: transparent;
        color: var(--text);
        font-weight: 700;
        text-decoration: none;
    }

    .header-actions[b-ni3ue5rzpd]  .login-menu .login-action {
        padding: 0.48rem 1.15rem;
        border: 0;
        border-radius: 999px;
        background: #1b1717;
        color: #ffffff;
    }

    .header-actions[b-ni3ue5rzpd]  .login-menu form {
        margin: 0;
    }

/* NOTIFICHE */

.header-actions[b-ni3ue5rzpd]  .notification-link {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--brand);
    font-weight: 700;
    text-decoration: none;
}

    .header-actions[b-ni3ue5rzpd]  .notification-link span {
        min-width: 1.25rem;
        padding: 0.05rem 0.32rem;
        border-radius: 999px;
        background: #b42318;
        color: #ffffff;
        font-size: 0.74rem;
        line-height: 1.2;
        text-align: center;
    }

/* TOGGLE RADZEN */

.header-actions[b-ni3ue5rzpd]  .kairos-appearance-toggle {
    display: inline-flex;
    align-items: center;
}

.header-actions[b-ni3ue5rzpd]  .rz-appearance-toggle,
.header-actions[b-ni3ue5rzpd]  .rz-button {
    flex: 0 0 auto;
}

/*
   .theme-switcher è ora un <button> custom (no più RadzenAppearanceToggle).
   Reset degli stili nativi del button per un aspetto pulito e adattabile
   al tema chiaro/scuro tramite var(--text).
*/
.header-actions[b-ni3ue5rzpd]  .theme-switcher {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.32rem 0.7rem;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--text);
    font-size: 0.9rem;
    font-weight: 500;
    white-space: nowrap;
    cursor: pointer;
}

    .header-actions[b-ni3ue5rzpd]  .theme-switcher:hover {
        background: rgba(92, 81, 245, 0.08);
        color: var(--brand);
    }

.header-actions[b-ni3ue5rzpd]  .theme-switcher-icon {
    color: var(--text);
    font-size: 1.05rem;
}

.header-actions[b-ni3ue5rzpd]  .theme-switcher .rz-button {
    min-width: 2rem;
    min-height: 2rem;
    border-radius: 999px;
}

/*
   Le regole di override per il tema scuro che dipendono da
   html[data-kairos-theme="dark"] sono in wwwroot/app.css (CSS globale).
   Tenerle qui richiederebbe :global() che l'IDE non riconosce.
*/

/* CORPO PAGINA */

.app-main[b-ni3ue5rzpd] {
    display: flex;
    min-width: 0;
    flex: 1;
    align-items: stretch;
}

.main-scroll[b-ni3ue5rzpd] {
    display: flex;
    min-height: 0;
    flex: 1;
    flex-direction: column;
}

.content[b-ni3ue5rzpd] {
    flex: 1;
    width: 100%;
    max-width: 1720px;
    margin: 0 auto;
    padding: clamp(1.25rem, 2.2vw, 2.75rem) 1.35rem;
}

/* SIDE PANEL */

.kairos-side-panel[b-ni3ue5rzpd] {
    position: sticky;
    top: 3.65rem;
    z-index: 20;
    width: 17rem;
    min-height: calc(100vh - 3.65rem);
    flex: 0 0 17rem;
    padding: 1rem 0.85rem 1.25rem;
    border-right: 1px solid var(--border);
    background: var(--panel-bg);
    backdrop-filter: blur(16px);
}

.kairos-panel-heading[b-ni3ue5rzpd] {
    display: grid;
    gap: 0.15rem;
    margin: 0 0 0.65rem 0.25rem;
    color: var(--text);
}

    .kairos-panel-heading span[b-ni3ue5rzpd] {
        color: var(--muted);
        font-size: 0.72rem;
        font-weight: 800;
        letter-spacing: 0.02em;
        text-transform: uppercase;
    }

    .kairos-panel-heading strong[b-ni3ue5rzpd] {
        font-size: 1rem;
        line-height: 1.2;
    }

.kairos-side-panel[b-ni3ue5rzpd]  .kairos-panel-menu {
    overflow: hidden;
    padding: 0.7rem;
    border: 1px solid var(--border);
    border-radius: 20px;
    background: var(--panel-menu-bg);
    box-shadow: var(--panel-shadow);
    backdrop-filter: blur(16px);
}

/* Override dark-theme per .kairos-panel-menu in wwwroot/app.css. */

.kairos-side-panel[b-ni3ue5rzpd]  .rz-panel-menu,
.kairos-side-panel[b-ni3ue5rzpd]  .rz-navigation-menu {
    width: 100%;
    border: 0;
    background: transparent;
}

.kairos-side-panel[b-ni3ue5rzpd]  .rz-navigation-item-wrapper {
    border-radius: 10px;
}

.kairos-side-panel[b-ni3ue5rzpd]  .rz-navigation-item-link {
    min-height: 2.72rem;
    border-radius: 14px;
    color: var(--text);
    font-weight: 750;
}

    .kairos-side-panel[b-ni3ue5rzpd]  .rz-navigation-item-link:hover,
    .kairos-side-panel[b-ni3ue5rzpd]  .rz-navigation-item-active > .rz-navigation-item-wrapper > .rz-navigation-item-link {
        background: rgba(92, 81, 245, 0.12);
        color: var(--brand);
        text-decoration: none;
    }

.kairos-side-panel[b-ni3ue5rzpd]  .rz-navigation-item-icon {
    color: currentColor;
}

.kairos-side-panel[b-ni3ue5rzpd]  .rz-navigation-item-chevron {
    color: currentColor;
    opacity: 0.78;
}

.kairos-side-panel[b-ni3ue5rzpd]  .rz-navigation-menu .rz-navigation-menu {
    padding-left: 0.4rem;
}

    .kairos-side-panel[b-ni3ue5rzpd]  .rz-navigation-menu .rz-navigation-menu .rz-navigation-item-link {
        min-height: 2.34rem;
        padding-left: 2.45rem;
        font-weight: 650;
    }

    .kairos-side-panel[b-ni3ue5rzpd]  .rz-navigation-menu .rz-navigation-menu .rz-navigation-item-active > .rz-navigation-item-wrapper > .rz-navigation-item-link {
        background: var(--panel-sub-active-bg);
        box-shadow: inset 3px 0 0 var(--brand);
    }

/* FOOTER */

.app-footer[b-ni3ue5rzpd] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 1.5rem;
    width: min(100% - 2.7rem, 1600px);
    min-height: 7rem;
    margin: 0 auto;
    padding: 2rem 0 2.25rem;
    border-top: 1px solid rgba(47, 43, 72, 0.14);
    color: var(--muted);
}

.footer-copy[b-ni3ue5rzpd] {
    display: grid;
    gap: 0.18rem;
    align-items: start;
}

    .footer-copy strong[b-ni3ue5rzpd] {
        color: var(--text);
    }

.software-update[b-ni3ue5rzpd] {
    color: var(--muted);
    font-size: 0.84rem;
}

.footer-socials[b-ni3ue5rzpd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 1.25rem;
}

    .footer-socials a[b-ni3ue5rzpd] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: #7c7686;
        text-decoration: none;
    }

        .footer-socials a:hover[b-ni3ue5rzpd] {
            color: var(--brand);
        }

    .footer-socials svg[b-ni3ue5rzpd] {
        width: 1.08rem;
        height: 1.08rem;
        fill: currentColor;
    }

.app-footer nav[b-ni3ue5rzpd] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 1.7rem;
}

.app-footer a[b-ni3ue5rzpd] {
    color: #ef2d2d;
    font-weight: 500;
    text-decoration: none;
}

    .app-footer a:hover[b-ni3ue5rzpd] {
        text-decoration: underline;
    }

/* RESPONSIVE HEADER */

@media (max-width: 1180px) {
    .kairos-header-main[b-ni3ue5rzpd] {
        gap: 0.9rem;
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .header-actions[b-ni3ue5rzpd] {
        gap: 0.5rem;
    }

    .header-action-social[b-ni3ue5rzpd] {
        display: none;
    }
}

@media (max-width: 900px) {
    .kairos-header-main[b-ni3ue5rzpd] {
        flex-wrap: wrap;
        align-items: center;
        gap: 0.65rem 1rem;
        padding-top: 0.65rem;
        padding-bottom: 0.65rem;
        overflow: visible;
    }

    .kairos-brand[b-ni3ue5rzpd] {
        order: 1;
    }

    .header-actions[b-ni3ue5rzpd] {
        order: 2;
        margin-left: auto;
    }

    .nav-wrapper[b-ni3ue5rzpd] {
        order: 3;
        flex: 0 0 100%;
        width: 100%;
        overflow-x: auto;
        padding-top: 0.35rem;
        scrollbar-width: none;
    }

        .nav-wrapper[b-ni3ue5rzpd]::-webkit-scrollbar {
            display: none;
        }

        .nav-wrapper[b-ni3ue5rzpd]  .kairos-nav {
            width: 100%;
            overflow: visible;
        }

            .nav-wrapper[b-ni3ue5rzpd]  .kairos-nav .rz-menu {
                min-width: max-content;
            }
}

@media (max-width: 760px) {
    .app-main[b-ni3ue5rzpd] {
        flex-direction: column;
    }

    .kairos-side-panel[b-ni3ue5rzpd] {
        position: static;
        width: 100%;
        min-height: 0;
        flex: 0 0 auto;
        padding: 0.75rem 1rem;
        border-right: 0;
        border-bottom: 1px solid rgba(47, 43, 72, 0.1);
    }

    .kairos-panel-heading[b-ni3ue5rzpd] {
        display: none;
    }

    .kairos-brand img[b-ni3ue5rzpd] {
        width: 38px;
        max-width: 42vw;
    }

    .header-action-notification[b-ni3ue5rzpd] {
        display: none;
    }

    .header-actions[b-ni3ue5rzpd] {
        width: auto;
        justify-content: flex-end;
        gap: 0.45rem;
        overflow: visible;
    }

        .header-actions[b-ni3ue5rzpd]  .share-label,
        .header-actions[b-ni3ue5rzpd]  .theme-switcher-label {
            display: none;
        }

    .app-footer[b-ni3ue5rzpd] {
        grid-template-columns: 1fr;
        gap: 1rem;
        align-items: start;
    }

        .footer-socials[b-ni3ue5rzpd],
        .app-footer nav[b-ni3ue5rzpd] {
            justify-content: flex-start;
        }
}

/* MOBILE CON HAMBURGER */

@media (max-width: 640px) {
    .kairos-header-main[b-ni3ue5rzpd] {
        gap: 0.65rem;
    }

    .kairos-brand[b-ni3ue5rzpd] {
        order: 1;
    }

    .menu-mobile-button[b-ni3ue5rzpd] {
        display: inline-flex;
        order: 2;
        margin-left: auto;
    }

    .header-actions[b-ni3ue5rzpd] {
        order: 3;
        margin-left: 0;
    }

    .nav-wrapper[b-ni3ue5rzpd] {
        order: 4;
        display: none;
        flex: 0 0 100%;
        width: 100%;
        padding-top: 0.6rem;
        overflow: visible;
    }

        /*
           Quando il checkbox hamburger è "checked" (utente ha cliccato
           il pulsante), mostra il menu sotto l'header. Il selettore `~`
           funziona perché checkbox e nav-wrapper sono fratelli dentro
           .kairos-header-main.
        */
        .mobile-menu-checkbox:checked ~ .nav-wrapper[b-ni3ue5rzpd] {
            display: block;
        }

        .nav-wrapper[b-ni3ue5rzpd]  .kairos-nav {
            width: 100%;
            overflow: visible;
        }

        .nav-wrapper[b-ni3ue5rzpd]  .rz-menu {
            width: 100%;
            display: grid;
            gap: 0.35rem;
            background: transparent;
            min-width: 0;
        }

        .nav-wrapper[b-ni3ue5rzpd]  .rz-menuitem {
            width: 100%;
        }

        .nav-wrapper[b-ni3ue5rzpd]  .rz-menuitem-link {
            width: 100%;
            justify-content: space-between;
            min-height: 2.75rem;
            padding: 0 0.9rem;
            border-radius: 14px;
            background: rgba(92, 81, 245, 0.06);
        }
}

@media (max-width: 560px) {
    .kairos-brand span[b-ni3ue5rzpd] {
        display: none;
    }

    .header-action-theme[b-ni3ue5rzpd] {
        display: inline-flex;
    }

    .header-actions[b-ni3ue5rzpd]  .login-menu {
        gap: 0.45rem;
    }

        .header-actions[b-ni3ue5rzpd]  .login-menu a:not(.login-action) {
            display: none;
        }

        .header-actions[b-ni3ue5rzpd]  .login-menu .login-action {
            padding: 0.45rem 0.9rem;
        }
}

/* ERRORE BLAZOR */

#blazor-error-ui[b-ni3ue5rzpd] {
    color-scheme: light only;
    background: #fff7d6;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-ni3ue5rzpd] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.kairos-nav[b-00v4vkys2n] {
    display: flex;
    align-items: center;
    flex: 1;
    min-width: 0;
    font-family: inherit;
}

    .kairos-nav[b-00v4vkys2n]  .rz-menu {
        gap: 0.1rem;
        border: 0;
        background: transparent;
        box-shadow: none;
    }

    .kairos-nav[b-00v4vkys2n]  .rz-menuitem {
        background: transparent;
    }

    .kairos-nav[b-00v4vkys2n]  .rz-menuitem-link,
    .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-link,
    .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-wrapper {
        min-height: 42px;
        padding: 0 0.9rem;
        border-radius: 999px;
        background: transparent;
        color: var(--nav-item-color) !important;
        font-size: 0.94rem;
        font-weight: 700;
        text-decoration: none !important;
        box-shadow: none;
    }

    .kairos-nav[b-00v4vkys2n]  .rz-menuitem-text,
    .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-text,
    .kairos-nav[b-00v4vkys2n]  .rz-caret,
    .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-chevron {
        color: var(--nav-item-color) !important;
        white-space: nowrap;
    }

    .kairos-nav[b-00v4vkys2n]  .rz-menuitem-link:hover,
    .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-link:hover,
    .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-wrapper:hover {
        background: var(--nav-hover-bg);
        color: var(--brand) !important;
    }

        .kairos-nav[b-00v4vkys2n]  .rz-menuitem-link:hover .rz-menuitem-text,
        .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-link:hover .rz-navigation-item-text,
        .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
        .kairos-nav[b-00v4vkys2n]  .rz-menuitem-link:hover .rz-caret,
        .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-link:hover .rz-navigation-item-chevron {
            color: var(--brand) !important;
        }

    .kairos-nav[b-00v4vkys2n]  .rz-state-active > .rz-menuitem-link,
    .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-active > .rz-navigation-item-wrapper,
    .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-active > .rz-navigation-item-wrapper > .rz-navigation-item-link {
        background: var(--nav-active-bg);
        color: var(--brand) !important;
    }

        .kairos-nav[b-00v4vkys2n]  .rz-state-active > .rz-menuitem-link .rz-menuitem-text,
        .kairos-nav[b-00v4vkys2n]  .rz-state-active > .rz-menuitem-link .rz-caret,
        .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-active .rz-navigation-item-text,
        .kairos-nav[b-00v4vkys2n]  .rz-navigation-item-active .rz-navigation-item-chevron {
            color: var(--brand) !important;
        }

    .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu,
    .kairos-nav[b-00v4vkys2n]  .rz-menu-popup {
        min-width: 240px;
        padding: 0.45rem;
        border: 1px solid var(--border);
        border-radius: 16px;
        background: var(--nav-popup-bg) !important;
        box-shadow: 0 18px 48px rgba(24, 24, 31, 0.14);
    }

        .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu .rz-menuitem-link,
        .kairos-nav[b-00v4vkys2n]  .rz-menu-popup .rz-menuitem-link,
        .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu .rz-navigation-item-link,
        .kairos-nav[b-00v4vkys2n]  .rz-menu-popup .rz-navigation-item-link,
        .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu .rz-navigation-item-wrapper,
        .kairos-nav[b-00v4vkys2n]  .rz-menu-popup .rz-navigation-item-wrapper {
            min-height: 38px;
            padding: 0.45rem 0.75rem;
            border-radius: 10px;
            background: transparent !important;
            color: var(--text) !important;
            font-weight: 600;
        }

        .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu .rz-menuitem-text,
        .kairos-nav[b-00v4vkys2n]  .rz-menu-popup .rz-menuitem-text,
        .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu .rz-navigation-item-text,
        .kairos-nav[b-00v4vkys2n]  .rz-menu-popup .rz-navigation-item-text {
            color: var(--text) !important;
        }

        .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu .rz-menuitem-link:hover,
        .kairos-nav[b-00v4vkys2n]  .rz-menu-popup .rz-menuitem-link:hover,
        .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu .rz-navigation-item-link:hover,
        .kairos-nav[b-00v4vkys2n]  .rz-menu-popup .rz-navigation-item-link:hover,
        .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu .rz-navigation-item-wrapper:hover,
        .kairos-nav[b-00v4vkys2n]  .rz-menu-popup .rz-navigation-item-wrapper:hover {
            background: var(--nav-hover-bg) !important;
            color: var(--brand) !important;
        }

            .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu .rz-menuitem-link:hover .rz-menuitem-text,
            .kairos-nav[b-00v4vkys2n]  .rz-menu-popup .rz-menuitem-link:hover .rz-menuitem-text,
            .kairos-nav[b-00v4vkys2n]  .rz-navigation-menu .rz-navigation-item-link:hover .rz-navigation-item-text,
            .kairos-nav[b-00v4vkys2n]  .rz-menu-popup .rz-navigation-item-link:hover .rz-navigation-item-text {
                color: var(--brand) !important;
            }
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-9od7at9ong],
.components-reconnect-repeated-attempt-visible[b-9od7at9ong],
.components-reconnect-failed-visible[b-9od7at9ong],
.components-pause-visible[b-9od7at9ong],
.components-resume-failed-visible[b-9od7at9ong],
.components-rejoining-animation[b-9od7at9ong] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-9od7at9ong],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-9od7at9ong],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-9od7at9ong],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-9od7at9ong],
#components-reconnect-modal.components-reconnect-retrying[b-9od7at9ong],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-9od7at9ong],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-9od7at9ong],
#components-reconnect-modal.components-reconnect-failed[b-9od7at9ong],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-9od7at9ong] {
    display: block;
}


#components-reconnect-modal[b-9od7at9ong] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-9od7at9ong 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-9od7at9ong 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-9od7at9ong 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-9od7at9ong]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-9od7at9ong 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-9od7at9ong {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-9od7at9ong {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-9od7at9ong {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-9od7at9ong] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-9od7at9ong] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-9od7at9ong] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-9od7at9ong] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-9od7at9ong] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-9od7at9ong] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-9od7at9ong] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-9od7at9ong 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-9od7at9ong] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-9od7at9ong {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
.radzen-style-announcement[b-t938xgqjg1] {
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 0 auto 3.4rem;
}

    .radzen-style-announcement a[b-t938xgqjg1] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.7rem;
        min-width: min(58rem, 100%);
        min-height: 3.45rem;
        padding: 0.8rem 1.35rem;
        border-radius: 999px;
        background: rgba(82, 112, 142, 0.34);
        color: var(--kairos-hero-text);
        font-size: 0.88rem;
        font-weight: 650;
        text-decoration: none;
        backdrop-filter: blur(18px);
    }

    .radzen-style-announcement span[b-t938xgqjg1] {
        display: inline-flex;
        align-items: center;
        min-height: 1.15rem;
        padding: 0.1rem 0.35rem;
        border-radius: 0.25rem;
        background: #169bf2;
        color: #ffffff;
        font-size: 0.64rem;
        font-weight: 900;
        letter-spacing: -0.01em;
    }

    .radzen-style-announcement strong[b-t938xgqjg1] {
        font-weight: 650;
    }

.app-hero[b-t938xgqjg1] {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(21rem, 0.72fr);
    align-items: center;
    gap: clamp(2.5rem, 5vw, 6.5rem);
    min-height: clamp(31rem, 62vh, 46rem);
    margin: 0 auto 1rem;
    padding: clamp(2.2rem, 5vw, 5.5rem);
    overflow: hidden;
    border: 1px solid var(--kairos-card-border);
    border-radius: 2rem;
    background: var(--kairos-hero-bg);
    color: var(--kairos-hero-text);
    box-shadow: 0 2.2rem 7rem rgba(0, 0, 0, 0.12);
}

    .app-hero[b-t938xgqjg1]::before {
        content: "";
        position: absolute;
        inset: 0;
        background-image: linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
        background-size: 3.9rem 3.9rem;
        mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.92), rgba(0, 0, 0, 0.38));
        pointer-events: none;
    }

.hero-main[b-t938xgqjg1],
.hero-panel[b-t938xgqjg1] {
    position: relative;
    z-index: 1;
}

.hero-main[b-t938xgqjg1] {
    max-width: 49rem;
}

.eyebrow[b-t938xgqjg1],
.panel-kicker[b-t938xgqjg1],
.section-header span[b-t938xgqjg1],
.mission-strip article span[b-t938xgqjg1],
.tag[b-t938xgqjg1] {
    margin: 0;
    color: var(--brand);
    font-size: 0.78rem;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.hero-main h1[b-t938xgqjg1] {
    max-width: 54rem;
    margin: 1rem 0 1rem;
    color: var(--kairos-hero-text);
    font-size: clamp(3rem, 6vw, 5.8rem);
    font-weight: 520;
    line-height: 0.98;
    letter-spacing: -0.075em;
}

.hero-copy[b-t938xgqjg1] {
    max-width: 42rem;
    margin: 0;
    color: var(--kairos-hero-muted);
    font-size: clamp(1rem, 1.35vw, 1.18rem);
    font-weight: 500;
    line-height: 1.65;
}

.hero-actions[b-t938xgqjg1] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 2rem;
}

.marketing-button[b-t938xgqjg1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.85rem;
    padding: 0.75rem 1.28rem;
    border-radius: 999px;
    font-size: 0.92rem;
    font-weight: 800;
    text-decoration: none;
    transition: transform 0.18s ease, border-color 0.18s ease, background-color 0.18s ease, color 0.18s ease;
}

    .marketing-button:hover[b-t938xgqjg1] {
        transform: translateY(-1px);
        text-decoration: none;
    }

.marketing-button-primary[b-t938xgqjg1] {
    border: 1px solid var(--kairos-accent);
    background: var(--kairos-accent);
    color: var(--kairos-accent-contrast);
}

.marketing-button-secondary[b-t938xgqjg1] {
    border: 1px solid var(--kairos-secondary-button-border);
    background: var(--kairos-secondary-button-bg);
    color: var(--kairos-hero-text);
}

.hero-panel[b-t938xgqjg1] {
    display: grid;
    gap: 1.2rem;
    padding: clamp(1.25rem, 2.2vw, 2.1rem);
    border: 1px solid var(--kairos-card-border);
    border-radius: 1.35rem;
    background: var(--kairos-panel-bg);
    color: var(--kairos-panel-text);
    box-shadow: 0 2.5rem 7rem rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(18px);
}

.hero-image-panel[b-t938xgqjg1] {
    align-self: stretch;
    padding: 0;
    overflow: hidden;
}

.hero-bridge-image[b-t938xgqjg1] {
    width: 100%;
    height: 100%;
    min-height: 26rem;
    display: block;
    object-fit: cover;
}

    .hero-panel h2[b-t938xgqjg1] {
        max-width: 24rem;
        margin: 0.45rem 0 0;
        color: var(--kairos-panel-text);
        font-size: clamp(1.55rem, 2.1vw, 2.15rem);
        font-weight: 720;
        line-height: 1.1;
        letter-spacing: -0.04em;
    }

.quick-finder-list[b-t938xgqjg1] {
    display: grid;
    gap: 0.75rem;
}

    .quick-finder-list a[b-t938xgqjg1] {
        display: grid;
        gap: 0.38rem;
        padding: 1rem 1.05rem;
        border: 1px solid var(--kairos-panel-item-border);
        border-radius: 0.75rem;
        background: var(--kairos-panel-item-bg);
        color: var(--kairos-panel-text);
        text-decoration: none;
        transition: transform 0.18s ease, border-color 0.18s ease, background-color 0.18s ease;
    }

        .quick-finder-list a:hover[b-t938xgqjg1] {
            transform: translateY(-1px);
            border-color: var(--brand);
            text-decoration: none;
        }

    .quick-finder-list strong[b-t938xgqjg1] {
        color: var(--brand);
        font-size: 1.02rem;
        font-weight: 850;
        line-height: 1.25;
    }

    .quick-finder-list span[b-t938xgqjg1] {
        color: var(--kairos-panel-muted);
        font-size: 0.95rem;
        line-height: 1.45;
    }

.public-metrics[b-t938xgqjg1] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin: 1rem 0 1rem;
}

.metric[b-t938xgqjg1],
.mission-strip article[b-t938xgqjg1],
.activity-card[b-t938xgqjg1] {
    border: 1px solid var(--kairos-card-border);
    border-radius: 1rem;
    background: var(--kairos-surface);
    color: var(--text);
    box-shadow: 0 1.6rem 5rem rgba(0, 0, 0, 0.08);
    backdrop-filter: blur(18px);
}

.metric[b-t938xgqjg1] {
    display: grid;
    gap: 0.2rem;
    padding: 1.25rem;
}

    .metric strong[b-t938xgqjg1] {
        color: var(--text);
        font-size: clamp(2.1rem, 4vw, 3.15rem);
        font-weight: 720;
        line-height: 0.95;
        letter-spacing: -0.055em;
    }

    .metric span[b-t938xgqjg1] {
        color: var(--muted);
        font-size: 0.96rem;
        font-weight: 550;
    }

.mission-strip[b-t938xgqjg1] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin: 1rem 0 clamp(2.5rem, 5vw, 4.5rem);
}

    .mission-strip article[b-t938xgqjg1] {
        display: grid;
        gap: 0.7rem;
        padding: clamp(1.25rem, 2vw, 1.7rem);
    }

    .mission-strip h2[b-t938xgqjg1] {
        margin: 0;
        color: var(--text);
        font-size: clamp(1.22rem, 2vw, 1.55rem);
        font-weight: 760;
        line-height: 1.15;
        letter-spacing: -0.04em;
    }

    .mission-strip p[b-t938xgqjg1] {
        margin: 0;
        color: var(--muted);
        font-size: 0.98rem;
        line-height: 1.6;
    }

.kairos-landing-block[b-t938xgqjg1] {
    display: grid;
    grid-template-columns: minmax(24rem, 0.9fr) minmax(0, 1.1fr);
    gap: clamp(1.5rem, 4vw, 4rem);
    align-items: center;
    margin: clamp(2.5rem, 6vw, 5rem) 0;
    padding: clamp(2rem, 5vw, 4.5rem);
    border: 1px solid var(--kairos-card-border);
    border-radius: 1.6rem;
    background: radial-gradient(circle at 18% 18%, rgba(255, 223, 190, 0.56), transparent 34%), radial-gradient(circle at 82% 20%, rgba(188, 207, 255, 0.56), transparent 38%), var(--kairos-surface);
    box-shadow: 0 2rem 7rem rgba(42, 36, 87, 0.1);
}

    .kairos-landing-block h2[b-t938xgqjg1] {
        max-width: 42rem;
        margin: 0.8rem 0 1rem;
        color: var(--text);
        font-size: clamp(2.4rem, 5vw, 5.2rem);
        font-weight: 520;
        line-height: 0.98;
        letter-spacing: -0.07em;
    }

    .kairos-landing-block p[b-t938xgqjg1] {
        max-width: 38rem;
        margin: 0;
        color: var(--muted);
        font-size: 1.04rem;
        line-height: 1.7;
    }

.landing-actions[b-t938xgqjg1] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.6rem;
}

.landing-feature-grid[b-t938xgqjg1] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
}

    .landing-feature-grid a[b-t938xgqjg1],
    .landing-pro-list a[b-t938xgqjg1] {
        display: grid;
        gap: 0.55rem;
        padding: 1.1rem;
        border: 1px solid var(--kairos-card-border);
        border-radius: 1rem;
        background: rgba(255, 255, 255, 0.64);
        color: var(--text);
        text-decoration: none;
        box-shadow: 0 1rem 3rem rgba(42, 36, 87, 0.08);
        backdrop-filter: blur(16px);
        transition: transform 0.18s ease, border-color 0.18s ease, background-color 0.18s ease;
    }

        .landing-feature-grid a:hover[b-t938xgqjg1],
        .landing-pro-list a:hover[b-t938xgqjg1] {
            transform: translateY(-2px);
            border-color: var(--brand);
            color: var(--text);
            text-decoration: none;
        }

    .landing-story-reverse .landing-story-visual[b-t938xgqjg1] {
        order: -1;
    }

.landing-feature-grid[b-t938xgqjg1]  .landing-feature-icon {
    /* Questa regola applica lo stile al componente RadzenIcon anche con CSS isolation attivo. */
    width: 2.6rem;
    height: 2.6rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.8rem;
    background: var(--brand);
    color: #ffffff;
    font-size: 1.35rem;
    overflow: hidden;
}

    .landing-feature-grid strong[b-t938xgqjg1] {
        font-size: 1.05rem;
        font-weight: 850;
    }

    .landing-feature-grid p[b-t938xgqjg1] {
        font-size: 0.95rem;
        line-height: 1.55;
    }

.kairos-pros-block[b-t938xgqjg1] {
    grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.8fr);
}

.landing-pro-list[b-t938xgqjg1] {
    display: grid;
    gap: 0.75rem;
}

    .landing-pro-list a[b-t938xgqjg1] {
        font-weight: 750;
        line-height: 1.35;
    }

.landing-security-card[b-t938xgqjg1] {
    /* Questa card comunica la sicurezza della piattaforma senza esporre dettagli tecnici dell'infrastruttura. */
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.85rem;
    padding: 1.1rem;
    border: 1px solid var(--kairos-card-border);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.74);
    color: var(--text);
    box-shadow: 0 1rem 3rem rgba(42, 36, 87, 0.08);
    backdrop-filter: blur(16px);
}

    .landing-security-card[b-t938xgqjg1]  .landing-security-icon {
        /* Questa regola applica lo stile al componente RadzenIcon anche con CSS isolation attivo. */
        width: 2.6rem;
        height: 2.6rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 0.8rem;
        background: var(--brand);
        color: #ffffff;
        font-size: 1.35rem;
        overflow: hidden;
    }

    .landing-security-card strong[b-t938xgqjg1] {
        display: block;
        margin-bottom: 0.35rem;
        color: var(--text);
        font-size: 1.05rem;
        font-weight: 850;
        line-height: 1.25;
    }

    .landing-security-card p[b-t938xgqjg1] {
        max-width: none;
        margin: 0;
        color: var(--muted);
        font-size: 0.95rem;
        line-height: 1.55;
    }

.section-header[b-t938xgqjg1] {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.5rem;
    margin: clamp(2.3rem, 5vw, 4rem) 0 1rem;
}

    .section-header h2[b-t938xgqjg1] {
        margin: 0.35rem 0 0.35rem;
        color: var(--text);
        font-size: clamp(2rem, 4.2vw, 3.8rem);
        font-weight: 560;
        line-height: 0.98;
        letter-spacing: -0.06em;
    }

    .section-header p[b-t938xgqjg1] {
        max-width: 46rem;
        margin: 0;
        color: var(--muted);
        font-size: 1.02rem;
        line-height: 1.55;
    }

.section-link[b-t938xgqjg1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.55rem;
    padding: 0.65rem 1.05rem;
    border: 1px solid var(--kairos-secondary-button-border);
    border-radius: 999px;
    background: var(--kairos-secondary-button-bg);
    color: var(--text);
    font-size: 0.9rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

    .section-link:hover[b-t938xgqjg1] {
        border-color: var(--brand);
        color: var(--brand);
        text-decoration: none;
    }

.activity-grid[b-t938xgqjg1] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.activity-card[b-t938xgqjg1] {
    display: grid;
    gap: 1.25rem;
    min-height: 17rem;
    padding: clamp(1.25rem, 2vw, 1.65rem);
}

    .activity-card h3[b-t938xgqjg1] {
        margin: 0.45rem 0 0.55rem;
        color: var(--text);
        font-size: clamp(1.25rem, 1.8vw, 1.55rem);
        font-weight: 780;
        line-height: 1.15;
        letter-spacing: -0.035em;
    }

    .activity-card p[b-t938xgqjg1] {
        margin: 0;
        color: var(--muted);
        font-size: 0.98rem;
        line-height: 1.6;
    }

    .activity-card dl[b-t938xgqjg1] {
        display: grid;
        gap: 0.9rem;
        align-self: end;
        margin: 0;
        padding-top: 1rem;
        border-top: 1px solid var(--kairos-card-border);
    }

        .activity-card dl div[b-t938xgqjg1] {
            display: grid;
            gap: 0.15rem;
        }

    .activity-card dt[b-t938xgqjg1] {
        color: var(--brand);
        font-size: 0.72rem;
        font-weight: 900;
        letter-spacing: 0.035em;
        text-transform: uppercase;
    }

    .activity-card dd[b-t938xgqjg1] {
        margin: 0;
        color: var(--text);
        font-size: 0.94rem;
        line-height: 1.5;
    }

.entity-link[b-t938xgqjg1] {
    display: inline-flex;
    margin-left: 0.45rem;
    color: var(--brand);
    font-weight: 800;
    text-decoration: none;
}

    .entity-link:hover[b-t938xgqjg1] {
        text-decoration: underline;
    }

.faded-card[b-t938xgqjg1] {
    opacity: 0.72;
}

.hero-image-panel[b-t938xgqjg1] {
    /* La scheda viene usata come contenitore dell'immagine. */
    align-self: stretch;
    padding: 0;
    overflow: hidden;
    display: flex;
}

    .hero-image-panel[b-t938xgqjg1]  .hero-bridge-image {
        /* L'immagine riempie tutta la scheda disponibile. */
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        min-height: 25rem;
    }


@media (max-width: 1180px) {
    .app-hero[b-t938xgqjg1] {
        grid-template-columns: 1fr;
    }

    .hero-main[b-t938xgqjg1] {
        max-width: 100%;
    }

        .hero-main h1[b-t938xgqjg1] {
            max-width: 58rem;
        }

    .hero-panel[b-t938xgqjg1] {
        max-width: 45rem;
    }
}

@media (max-width: 900px) {
    .radzen-style-announcement[b-t938xgqjg1] {
        margin-bottom: 1.5rem;
    }

    .app-hero[b-t938xgqjg1] {
        min-height: 0;
        padding: 2rem;
        border-radius: 1.4rem;
    }

    .public-metrics[b-t938xgqjg1],
    .mission-strip[b-t938xgqjg1],
    .activity-grid[b-t938xgqjg1],
    .kairos-landing-block[b-t938xgqjg1],
    .landing-feature-grid[b-t938xgqjg1] {
        grid-template-columns: 1fr;
    }

    .landing-story-reverse .landing-story-visual[b-t938xgqjg1] {
        order: 0;
    }

    .section-header[b-t938xgqjg1] {
        align-items: start;
        flex-direction: column;
    }
}

@media (max-width: 560px) {
    .app-hero[b-t938xgqjg1] {
        padding: 1.25rem;
        border-radius: 1rem;
    }

    .hero-main h1[b-t938xgqjg1] {
        font-size: clamp(2.45rem, 13vw, 3.4rem);
    }

    .hero-actions[b-t938xgqjg1] {
        flex-direction: column;
    }

    .marketing-button[b-t938xgqjg1],
    .section-link[b-t938xgqjg1] {
        width: 100%;
    }

    .radzen-style-announcement a[b-t938xgqjg1] {
        justify-content: flex-start;
        border-radius: 1rem;
    }
}
