/* /Components/EditablePageView.razor.rz.scp.css */
.composed-page[b-jdyusrt2ld] {
    margin-top: 1.5rem;
}

.composed-section[b-jdyusrt2ld] {
    position: relative;
    container: layout-section / inline-size;
}

.composed-section__tools[b-jdyusrt2ld] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 20;
    display: flex;
    gap: 0.4rem;
    opacity: 0;
    transition: opacity 0.15s ease;
}

.composed-section:hover .composed-section__tools[b-jdyusrt2ld],
.composed-section__tools:focus-within[b-jdyusrt2ld],
.composed-section__tools.is-active[b-jdyusrt2ld] {
    opacity: 1;
}

.composed-section__tool[b-jdyusrt2ld] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    color: #1b1b1f;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
    cursor: pointer;
}

.composed-section__tool.is-active[b-jdyusrt2ld] {
    color: #fff;
    background: var(--color-green-solid);
    border-color: var(--color-green-solid);
}

.composed-section__tool:disabled[b-jdyusrt2ld] {
    opacity: 0.4;
    cursor: default;
}

.composed-section__tool--danger:hover:not(:disabled)[b-jdyusrt2ld] {
    color: #fff;
    background: #b00020;
    border-color: #b00020;
}

.composed-section__drag[b-jdyusrt2ld] {
    cursor: grab;
}

.composed-section__drag:active[b-jdyusrt2ld] {
    cursor: grabbing;
}

.composed-section.is-drop-target[b-jdyusrt2ld]::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 15;
    pointer-events: none;
    border: 3px dashed var(--color-green-solid);
    background: rgba(87, 177, 45, 0.08);
}

.section-editor[b-jdyusrt2ld] {
    position: absolute;
    top: 3.5rem;
    right: 1rem;
    z-index: 20;
    width: min(22rem, calc(100vw - 2rem));
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    padding: 1rem;
    background: #fff;
    color: #1b1b1f;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

.section-editor--wide[b-jdyusrt2ld] {
    width: min(34rem, calc(100vw - 2rem));
}

.section-editor__tabs[b-jdyusrt2ld] {
    display: flex;
    gap: 0.25rem;
    margin-bottom: 0.25rem;
    border-bottom: 1px solid #e0e0e0;
}

.section-editor__tab[b-jdyusrt2ld] {
    font: inherit;
    font-size: 0.85rem;
    font-weight: 600;
    padding: 0.4rem 0.75rem;
    color: #777;
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    cursor: pointer;
}

.section-editor__tab.is-active[b-jdyusrt2ld] {
    color: var(--color-green-to);
    border-bottom-color: var(--color-green-solid);
}

.section-editor__tab:disabled[b-jdyusrt2ld] {
    opacity: 0.5;
    cursor: default;
}

.section-editor__scroll[b-jdyusrt2ld] {
    max-height: min(60vh, 30rem);
    overflow-y: auto;
    padding-right: 0.4rem;
}

.section-editor__errors[b-jdyusrt2ld] {
    margin: 0;
    padding: 0.5rem 0.75rem 0.5rem 1.5rem;
    color: #b00020;
    font-size: 0.85rem;
    background: #fdeef0;
    border-radius: 5px;
}

.section-editor__label[b-jdyusrt2ld] {
    font-weight: 600;
    font-size: 0.85rem;
}

.section-editor__label span[b-jdyusrt2ld] {
    font-weight: 400;
    color: #999;
}

.section-editor__type[b-jdyusrt2ld],
.section-editor__instructions[b-jdyusrt2ld] {
    font: inherit;
    padding: 0.4rem 0.5rem;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.section-editor__instructions[b-jdyusrt2ld] {
    resize: vertical;
}

.section-editor__position[b-jdyusrt2ld] {
    font: inherit;
    width: 5rem;
    padding: 0.4rem 0.5rem;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.section-editor__unavailable[b-jdyusrt2ld] {
    margin: 0;
    color: #777;
    font-size: 0.85rem;
    line-height: 1.4;
}

.section-editor__actions[b-jdyusrt2ld] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.25rem;
}

.section-editor__apply[b-jdyusrt2ld] {
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-btn);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 0.5rem 1rem;
    color: #fff;
    background: var(--gradient-green);
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.section-editor__apply:hover:not(:disabled)[b-jdyusrt2ld] {
    filter: brightness(1.06);
}

.section-editor__cancel[b-jdyusrt2ld] {
    font: inherit;
    padding: 0.4rem 1rem;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    cursor: pointer;
}

.section-editor__apply:disabled[b-jdyusrt2ld],
.section-editor__cancel:disabled[b-jdyusrt2ld] {
    opacity: 0.5;
    cursor: default;
}
/* /Components/Editing/ContentEditor.razor.rz.scp.css */
.content-editor[b-8hkz0q1t90] {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.content-editor__field[b-8hkz0q1t90] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.content-editor__label[b-8hkz0q1t90],
.content-editor__group-label[b-8hkz0q1t90] {
    font-weight: 600;
    font-size: 0.8rem;
    color: #444;
}

.content-editor__group-label[b-8hkz0q1t90] {
    text-transform: uppercase;
    letter-spacing: 0.03em;
    font-size: 0.72rem;
    color: #888;
    margin-top: 0.2rem;
}

.content-editor__input[b-8hkz0q1t90] {
    font: inherit;
    width: 100%;
    padding: 0.4rem 0.5rem;
    border: 1px solid #ccc;
    border-radius: 5px;
    resize: vertical;
}

.content-editor__input--num[b-8hkz0q1t90] {
    width: 6rem;
}

.content-editor__check[b-8hkz0q1t90] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    color: #444;
}

.content-editor__nested[b-8hkz0q1t90] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding-left: 0.75rem;
    border-left: 2px solid #e2e2e2;
}

.content-editor__list[b-8hkz0q1t90] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.content-editor__list-item[b-8hkz0q1t90] {
    display: flex;
    align-items: flex-start;
    gap: 0.4rem;
}

.content-editor__list-item .content-editor__input[b-8hkz0q1t90] {
    flex: 1;
}

.content-editor__record[b-8hkz0q1t90] {
    border: 1px solid #e2e2e2;
    border-radius: 6px;
    padding: 0.6rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    background: #fafafa;
}

.content-editor__record-head[b-8hkz0q1t90] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: #888;
}

.content-editor__item-tools[b-8hkz0q1t90] {
    display: flex;
    gap: 0.2rem;
}

.content-editor__item-tools button[b-8hkz0q1t90] {
    font: inherit;
    line-height: 1;
    width: 1.6rem;
    height: 1.6rem;
    padding: 0;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    cursor: pointer;
}

.content-editor__item-tools button:disabled[b-8hkz0q1t90] {
    opacity: 0.4;
    cursor: default;
}

.content-editor__add[b-8hkz0q1t90],
.content-editor__remove[b-8hkz0q1t90] {
    align-self: flex-start;
    font: inherit;
    font-size: 0.8rem;
    padding: 0.3rem 0.7rem;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    cursor: pointer;
}

.content-editor__remove[b-8hkz0q1t90] {
    color: #b00020;
    border-color: #e0a0a8;
}

.content-editor__image-slot[b-8hkz0q1t90] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.content-editor__current[b-8hkz0q1t90] {
    width: 64px;
    height: 48px;
    object-fit: cover;
    border: 1px solid #ccc;
    border-radius: 4px;
    background: #f2f2f2;
}

.content-editor__current--empty[b-8hkz0q1t90] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7rem;
    color: #999;
}

.content-editor__change[b-8hkz0q1t90] {
    font: inherit;
    font-size: 0.8rem;
    padding: 0.3rem 0.7rem;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    cursor: pointer;
}

.content-editor__images[b-8hkz0q1t90] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.4rem;
}

.content-editor__thumb[b-8hkz0q1t90] {
    width: 64px;
    height: 48px;
    padding: 0;
    border: 2px solid #ccc;
    border-radius: 4px;
    background: #f2f2f2;
    cursor: pointer;
    overflow: hidden;
}

.content-editor__thumb img[b-8hkz0q1t90] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.content-editor__thumb--none[b-8hkz0q1t90] {
    font-size: 0.7rem;
    color: #777;
}

.content-editor__thumb.is-selected[b-8hkz0q1t90] {
    border-color: var(--color-green-solid);
    box-shadow: 0 0 0 2px rgba(87, 177, 45, 0.35);
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-buxk1k3xaq] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-buxk1k3xaq] {
    flex: 1;
    /* Let main shrink below its content's intrinsic width so a wide section (e.g. the
       marquee track) is clipped by its own overflow instead of scrolling the whole page. */
    min-width: 0;
}

.sidebar[b-buxk1k3xaq] {
    background-image: linear-gradient(180deg, var(--color-green-from) 0%, var(--color-green-to) 100%);
}

.top-row[b-buxk1k3xaq] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-buxk1k3xaq]  a, .top-row[b-buxk1k3xaq]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-buxk1k3xaq]  a:hover, .top-row[b-buxk1k3xaq]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-buxk1k3xaq]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-buxk1k3xaq] {
        justify-content: space-between;
    }

    .top-row[b-buxk1k3xaq]  a, .top-row[b-buxk1k3xaq]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-buxk1k3xaq] {
        flex-direction: row;
    }

    .sidebar[b-buxk1k3xaq] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-buxk1k3xaq] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-buxk1k3xaq]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-buxk1k3xaq], article[b-buxk1k3xaq] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-buxk1k3xaq] {
    color-scheme: light only;
    background: lightyellow;
    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-buxk1k3xaq] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-jpkpyvbnf2] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-jpkpyvbnf2] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-jpkpyvbnf2] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-jpkpyvbnf2] {
    font-size: 1.1rem;
    display: flex;
    align-items: center;
}

.navbar-logo[b-jpkpyvbnf2] {
    width: 1.6rem;
    height: 1.6rem;
    margin-right: 0.5rem;
}

.bi[b-jpkpyvbnf2] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-magic-nav-menu[b-jpkpyvbnf2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M8 .5 9.6 6.4 15.5 8 9.6 9.6 8 15.5 6.4 9.6 .5 8 6.4 6.4Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-jpkpyvbnf2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-cloud-arrow-up-fill-nav-menu[b-jpkpyvbnf2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-cloud-arrow-up-fill' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2m2.354 5.146a.5.5 0 0 1-.708.708L8.5 6.707V10.5a.5.5 0 0 1-1 0V6.707L6.354 7.854a.5.5 0 1 1-.708-.708l2-2a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-jpkpyvbnf2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.bi-info-circle-fill-nav-menu[b-jpkpyvbnf2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-info-circle-fill' viewBox='0 0 16 16'%3E%3Cpath d='M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2z'/%3E%3C/svg%3E");
}

.nav-item[b-jpkpyvbnf2] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-jpkpyvbnf2] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-jpkpyvbnf2] {
        padding-bottom: 1rem;
    }

    .nav-item[b-jpkpyvbnf2]  .nav-link {
        color: rgba(255, 255, 255, 0.85);
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-jpkpyvbnf2]  a.active {
    background-color: rgba(0,0,0,0.28);
    color: white;
}

.nav-item[b-jpkpyvbnf2]  .nav-link:hover {
    background-color: rgba(0,0,0,0.15);
    color: white;
}

.nav-scrollable[b-jpkpyvbnf2] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-jpkpyvbnf2] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-jpkpyvbnf2] {
        display: none;
    }

    .nav-scrollable[b-jpkpyvbnf2] {
        display: block;
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-av0gapbl7k],
.components-reconnect-repeated-attempt-visible[b-av0gapbl7k],
.components-reconnect-failed-visible[b-av0gapbl7k],
.components-pause-visible[b-av0gapbl7k],
.components-resume-failed-visible[b-av0gapbl7k],
.components-rejoining-animation[b-av0gapbl7k] {
    display: none;
}

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


#components-reconnect-modal[b-av0gapbl7k] {
    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-av0gapbl7k 0.5s both;
    &[open]

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

}

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

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

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

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

    100% {
        opacity: 1;
    }
}

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

    100% {
        opacity: 0;
    }
}

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

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

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

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

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

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

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

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

@keyframes components-rejoining-animation-b-av0gapbl7k {
    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/Gallery.razor.rz.scp.css */
.gallery__section[b-vcabt73jec] {
    position: relative;
    container: layout-section / inline-size;
}

.gallery__bar[b-vcabt73jec] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 20;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.35rem 0.6rem;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 999px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
    color: #1b1b1f;
    font-size: 0.85rem;
}

.gallery__name[b-vcabt73jec] {
    font-weight: 600;
}

.gallery__nav[b-vcabt73jec] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.gallery__count[b-vcabt73jec] {
    font-variant-numeric: tabular-nums;
    color: #555;
}

.gallery__arrow[b-vcabt73jec] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    padding: 0;
    font-size: 1.1rem;
    line-height: 1;
    color: #1b1b1f;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    cursor: pointer;
}

.gallery__arrow:hover[b-vcabt73jec] {
    background: #1b1b1f;
    color: #fff;
}

.gallery__btn[b-vcabt73jec] {
    padding: 0.3rem 0.75rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: #1b1b1f;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 999px;
    cursor: pointer;
}

.gallery__btn:hover[b-vcabt73jec] {
    background: #1b1b1f;
    color: #fff;
}

.gallery__btn--primary[b-vcabt73jec] {
    background: #1b1b1f;
    color: #fff;
}

.gallery__btn--primary:hover[b-vcabt73jec] {
    background: #000;
}

.gallery__edited[b-vcabt73jec] {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #e71d63;
}

.gallery__editor[b-vcabt73jec] {
    position: absolute;
    top: 4rem;
    right: 1rem;
    z-index: 19;
    width: min(380px, calc(100% - 2rem));
    max-height: 75vh;
    overflow-y: auto;
    padding: 1rem;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
    color: #1b1b1f;
}

.gallery__hint[b-vcabt73jec] {
    margin: 0 0 0.75rem;
    font-size: 0.78rem;
    color: #555;
}

.gallery__errors[b-vcabt73jec] {
    margin: 0.75rem 0 0;
    padding: 0.5rem 0.75rem 0.5rem 1.5rem;
    background: #fff4f6;
    border: 1px solid #f3c0cc;
    border-radius: 8px;
    color: #a11540;
    font-size: 0.8rem;
}
/* /Components/Pages/Guide.razor.rz.scp.css */
.guide[b-bkkh3arbmz] {
    max-width: 60rem;
    margin: 0 auto;
    padding: 2rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.guide__intro h1[b-bkkh3arbmz] {
    margin: 0 0 0.75rem;
    font-family: var(--font-display);
    font-size: 40px;
    font-weight: 900;
    line-height: 0.95;
    text-transform: uppercase;
    letter-spacing: 0.01em;
    color: var(--color-text-black);
}

.guide__intro h1[b-bkkh3arbmz]::after {
    content: "";
    display: block;
    width: 64px;
    height: 4px;
    margin-top: 12px;
    border-radius: 2px;
    background: var(--gradient-green);
}

.guide__intro p[b-bkkh3arbmz] {
    color: #555;
    max-width: 48rem;
}

.guide-card[b-bkkh3arbmz] {
    border: 1px solid #e0e0e0;
    border-left: 3px solid var(--color-green-solid);
    border-radius: 8px;
    padding: 1.1rem 1.35rem;
    background: var(--color-bg-white);
}

.guide-card__title[b-bkkh3arbmz] {
    margin: 0 0 0.5rem;
    font-family: var(--font-display);
    font-size: 1.15rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: var(--color-text-black);
}

.guide-card__lead[b-bkkh3arbmz] {
    margin: 0;
    color: #444;
    line-height: 1.55;
}

.guide-card__more[b-bkkh3arbmz] {
    margin-top: 0.85rem;
    border-top: 1px dashed #e0e0e0;
    padding-top: 0.6rem;
}

.guide-card__more > summary[b-bkkh3arbmz] {
    font-family: var(--font-display);
    font-weight: 900;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--color-green-to);
    cursor: pointer;
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

/* Hide the native marker; draw our own rotating chevron instead. */
.guide-card__more > summary[b-bkkh3arbmz]::-webkit-details-marker {
    display: none;
}

.guide-card__more > summary[b-bkkh3arbmz]::before {
    content: "";
    width: 0.5rem;
    height: 0.5rem;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(-45deg);
    transition: transform 0.15s ease;
}

.guide-card__more[open] > summary[b-bkkh3arbmz]::before {
    transform: rotate(45deg);
}

.guide-card__more > summary:hover[b-bkkh3arbmz] {
    color: var(--color-green-solid);
}

.guide-card__detail[b-bkkh3arbmz] {
    margin-top: 0.7rem;
    color: #444;
    line-height: 1.55;
}

.guide-card__detail p[b-bkkh3arbmz] {
    margin: 0 0 0.6rem;
}

.guide-card__detail p:last-child[b-bkkh3arbmz] {
    margin-bottom: 0;
}

.guide-card__detail ul[b-bkkh3arbmz],
.guide-card__detail ol[b-bkkh3arbmz] {
    margin: 0 0 0.6rem;
    padding-left: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.guide-card__detail code[b-bkkh3arbmz] {
    font-size: 0.9em;
    background: var(--color-surface-light);
    padding: 0.05rem 0.3rem;
    border-radius: 4px;
}
/* /Components/Pages/Home.razor.rz.scp.css */
.generator[b-ddqfmb3182] {
    max-width: 820px;
    margin: 0 auto;
    padding: 24px 0 8px;
}

.generator__intro h1[b-ddqfmb3182] {
    margin: 0 0 12px;
    font-family: var(--font-display);
    font-size: 40px;
    font-weight: 900;
    line-height: 0.95;
    text-transform: uppercase;
    letter-spacing: 0.01em;
    color: var(--color-text-black);
}

.generator__intro h1[b-ddqfmb3182]::after {
    content: "";
    display: block;
    width: 64px;
    height: 4px;
    margin-top: 12px;
    border-radius: 2px;
    background: var(--gradient-green);
}

.generator__intro p[b-ddqfmb3182] {
    margin: 0 0 24px;
    color: #555;
    line-height: 1.5;
}

.generator__samples[b-ddqfmb3182] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    font-size: 14px;
    color: #555;
}

.sample-btn[b-ddqfmb3182] {
    padding: 6px 12px;
    font: inherit;
    font-size: 14px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 999px;
    cursor: pointer;
}

.sample-btn:hover[b-ddqfmb3182] {
    border-color: var(--color-green-solid);
    color: var(--color-green-solid);
}

.generator__input textarea[b-ddqfmb3182] {
    width: 100%;
    padding: 14px 16px;
    font: inherit;
    border: 1px solid #ccc;
    border-radius: 8px;
    resize: vertical;
}

.generator__instructions-label[b-ddqfmb3182] {
    display: block;
    margin: 16px 0 6px;
    font-size: 14px;
    font-weight: 600;
    color: #333;
}

.generator__instructions-label span[b-ddqfmb3182] {
    font-weight: 400;
    color: #888;
}

.generator__actions[b-ddqfmb3182] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 16px;
}

.generate-btn[b-ddqfmb3182] {
    padding: 14px 24px;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-btn);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #fff;
    background: var(--gradient-green);
    border: none;
    border-radius: 8px;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(87, 177, 45, 0.3);
    transition: filter 0.15s ease, box-shadow 0.15s ease;
}

.generate-btn:hover:not(:disabled)[b-ddqfmb3182] {
    filter: brightness(1.06);
    box-shadow: 0 8px 22px rgba(87, 177, 45, 0.42);
}

.generate-btn:disabled[b-ddqfmb3182] {
    opacity: 0.5;
    cursor: not-allowed;
    box-shadow: none;
}

.generator__meta[b-ddqfmb3182] {
    font-size: 14px;
    color: #555;
}

.generator__error[b-ddqfmb3182] {
    margin-top: 12px;
    color: #b00020;
}

.generator__preview[b-ddqfmb3182] {
    margin-top: 32px;
    border-top: 1px solid #eee;
    container: layout-section / inline-size;
}
/* /Components/Pages/PageEditor.razor.rz.scp.css */
.editor-bar[b-30b74h9yzm] {
    max-width: 60rem;
    margin: 0 auto;
    padding: 1.5rem 1rem 0.5rem;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.editor-bar__info h1[b-30b74h9yzm] {
    margin: 0 0 0.4rem;
    font-family: var(--font-display);
    font-size: 1.75rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.01em;
    color: var(--color-text-black);
}

.editor-bar__hint[b-30b74h9yzm] {
    margin: 0.15rem 0 0;
    color: #777;
    font-size: 0.9em;
    max-width: 40rem;
}

.editor-bar__actions[b-30b74h9yzm] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex: none;
}

.editor-btn[b-30b74h9yzm] {
    padding: 0.5rem 1rem;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-btn);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--color-green-to);
    background: transparent;
    border: 2px solid var(--color-green-solid);
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.editor-btn:hover:not(:disabled)[b-30b74h9yzm] {
    background: var(--color-green-solid);
    color: #fff;
}

.editor-btn:disabled[b-30b74h9yzm] {
    opacity: 0.5;
    cursor: default;
}

.editor-status[b-30b74h9yzm],
.editor-error[b-30b74h9yzm],
.editor-loading[b-30b74h9yzm] {
    max-width: 60rem;
    margin: 0 auto;
    padding: 0 1rem;
}

.editor-status[b-30b74h9yzm] {
    color: var(--color-green-to);
    font-weight: 600;
}

.editor-error[b-30b74h9yzm] {
    color: #b00020;
    font-weight: 600;
}

.editor-loading[b-30b74h9yzm] {
    color: #777;
}

.editor-missing[b-30b74h9yzm] {
    max-width: 40rem;
    margin: 4rem auto;
    padding: 0 1rem;
    text-align: center;
}

.editor-missing h1[b-30b74h9yzm] {
    font-family: var(--font-display);
    text-transform: uppercase;
    color: var(--color-text-black);
}
/* /Components/Pages/Shared.razor.rz.scp.css */
.shared-missing[b-1wplvnnij6] {
    max-width: 32rem;
    margin: 6rem auto;
    padding: 0 1.5rem;
    text-align: center;
}

.shared-missing a[b-1wplvnnij6] {
    color: var(--color-green-to);
}
/* /Components/Pages/Upload.razor.rz.scp.css */
.upload[b-bp3yl0pg3z] {
    max-width: 60rem;
    margin: 0 auto;
    padding: 2rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.upload__intro h1[b-bp3yl0pg3z] {
    margin: 0 0 0.75rem;
    font-family: var(--font-display);
    font-size: 40px;
    font-weight: 900;
    line-height: 0.95;
    text-transform: uppercase;
    letter-spacing: 0.01em;
    color: var(--color-text-black);
}

.upload__intro h1[b-bp3yl0pg3z]::after {
    content: "";
    display: block;
    width: 64px;
    height: 4px;
    margin-top: 12px;
    border-radius: 2px;
    background: var(--gradient-green);
}

.upload__intro p[b-bp3yl0pg3z] {
    color: #555;
    max-width: 48rem;
}

.upload__file[b-bp3yl0pg3z]  input[type="file"],
.upload__extra-images[b-bp3yl0pg3z]  input[type="file"] {
    font: inherit;
    color: #555;
}

.upload__file[b-bp3yl0pg3z]  input[type="file"]::file-selector-button,
.upload__extra-images[b-bp3yl0pg3z]  input[type="file"]::file-selector-button {
    margin-right: 0.9rem;
    padding: 0.6rem 1.2rem;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-btn);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--color-green-to);
    background: transparent;
    border: 2px solid var(--color-green-solid);
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.upload__file[b-bp3yl0pg3z]  input[type="file"]::file-selector-button:hover,
.upload__extra-images[b-bp3yl0pg3z]  input[type="file"]::file-selector-button:hover {
    background: var(--color-green-solid);
    color: #fff;
}

.upload__file[b-bp3yl0pg3z]  input[type="file"]:disabled::file-selector-button,
.upload__extra-images[b-bp3yl0pg3z]  input[type="file"]:disabled::file-selector-button {
    opacity: 0.5;
    cursor: default;
    color: #999;
    border-color: #ccc;
    background: transparent;
}

.upload__status[b-bp3yl0pg3z] {
    color: #555;
}

.upload__error[b-bp3yl0pg3z] {
    color: #b00020;
    font-weight: 600;
}

.upload__compose[b-bp3yl0pg3z] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.upload__instructions-label[b-bp3yl0pg3z] {
    font-weight: 600;
    margin-top: 0.25rem;
}

.upload__instructions-label span[b-bp3yl0pg3z] {
    font-weight: 400;
    color: #999;
}

.upload__compose textarea[b-bp3yl0pg3z] {
    width: 100%;
    font: inherit;
    padding: 0.6rem 0.75rem;
    border: 1px solid #ccc;
    border-radius: 6px;
    resize: vertical;
}

.upload__optgroup[b-bp3yl0pg3z] {
    margin: 0.25rem 0 0;
    padding: 0.75rem 1rem 0.9rem;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    min-width: 0;
}

.upload__optgroup legend[b-bp3yl0pg3z] {
    padding: 0 0.4rem;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--color-text-black);
}

.upload__opts[b-bp3yl0pg3z] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
    gap: 0.6rem 1.25rem;
}

.upload__opt[b-bp3yl0pg3z] {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    cursor: pointer;
}

.upload__opt input[b-bp3yl0pg3z] {
    flex: none;
    width: 1.05rem;
    height: 1.05rem;
    margin: 0.1rem 0 0;
    accent-color: var(--color-green-solid);
    cursor: pointer;
}

.upload__opt-body[b-bp3yl0pg3z] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.upload__opt-name[b-bp3yl0pg3z] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #333;
}

.upload__opt-hint[b-bp3yl0pg3z] {
    font-size: 0.82rem;
    color: #888;
    line-height: 1.35;
}

.upload__opt-badge[b-bp3yl0pg3z] {
    display: inline-block;
    margin-left: 0.35rem;
    padding: 0.05rem 0.4rem;
    font-family: var(--font-display);
    font-size: 0.62rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    vertical-align: 0.08em;
    color: var(--color-green-to);
    background: #eaf7e3;
    border-radius: 999px;
}

.upload__optgroup:disabled[b-bp3yl0pg3z] {
    opacity: 0.55;
}

.upload__optgroup:disabled .upload__opt[b-bp3yl0pg3z],
.upload__optgroup:disabled .upload__opt input[b-bp3yl0pg3z] {
    cursor: default;
}

.upload__extra-images[b-bp3yl0pg3z] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.upload__extra-hint[b-bp3yl0pg3z] {
    margin: 0;
    color: #777;
    font-size: 0.9em;
}

.upload__extra-thumbs[b-bp3yl0pg3z] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin-top: 0.25rem;
}

.upload__extra-thumb[b-bp3yl0pg3z] {
    position: relative;
    width: 96px;
    height: 72px;
}

.upload__extra-thumb img[b-bp3yl0pg3z] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    background: var(--color-surface-light);
}

.upload__extra-remove[b-bp3yl0pg3z] {
    position: absolute;
    top: -0.4rem;
    right: -0.4rem;
    width: 1.35rem;
    height: 1.35rem;
    padding: 0;
    line-height: 1;
    font-size: 0.8rem;
    color: #fff;
    background: #b00020;
    border: 1px solid #fff;
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

.upload__extra-remove:disabled[b-bp3yl0pg3z] {
    opacity: 0.5;
    cursor: default;
}

.upload__extra-notice[b-bp3yl0pg3z] {
    margin: 0;
    color: #7a5900;
    font-size: 0.85em;
}

.compose-btn[b-bp3yl0pg3z] {
    align-self: flex-start;
    padding: 0.85rem 1.6rem;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-btn);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #fff;
    background: var(--gradient-green);
    border: none;
    border-radius: 6px;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(87, 177, 45, 0.3);
    transition: filter 0.15s ease, box-shadow 0.15s ease;
}

.compose-btn:hover:not(:disabled)[b-bp3yl0pg3z] {
    filter: brightness(1.06);
    box-shadow: 0 8px 22px rgba(87, 177, 45, 0.42);
}

.compose-btn:disabled[b-bp3yl0pg3z] {
    opacity: 0.5;
    cursor: default;
    box-shadow: none;
}

.upload__warnings[b-bp3yl0pg3z] {
    border: 1px solid #f0c36d;
    background: #fdf6e3;
    border-radius: 6px;
    padding: 0.5rem 0.9rem;
    color: #7a5900;
}

.upload__warnings p[b-bp3yl0pg3z] {
    margin: 0.25rem 0;
}

.upload__plan-head[b-bp3yl0pg3z] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.upload__plan-actions[b-bp3yl0pg3z] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex: none;
}

.export-btn[b-bp3yl0pg3z] {
    flex: none;
    align-self: center;
    padding: 0.5rem 1rem;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-btn);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--color-green-to);
    background: transparent;
    border: 2px solid var(--color-green-solid);
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.export-btn:hover:not(:disabled)[b-bp3yl0pg3z] {
    background: var(--color-green-solid);
    color: #fff;
}

.export-btn:disabled[b-bp3yl0pg3z] {
    opacity: 0.5;
    cursor: default;
}

.upload__plan ol[b-bp3yl0pg3z] {
    margin: 0;
    padding-left: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    color: #333;
}

.upload__plan-slides[b-bp3yl0pg3z] {
    color: #777;
    font-size: 0.85em;
}

.upload__plan-hint[b-bp3yl0pg3z] {
    margin: 0 0 0.75rem;
    color: #777;
    font-size: 0.9em;
}

.plan-item[b-bp3yl0pg3z] {
    margin-bottom: 0.6rem;
}

.plan-item__controls[b-bp3yl0pg3z] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.plan-item__type-label[b-bp3yl0pg3z] {
    font-weight: 600;
}

.plan-item__why[b-bp3yl0pg3z] {
    margin: 0.2rem 0 0;
    color: #777;
    font-size: 0.85em;
}

.upload__result[b-bp3yl0pg3z] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.upload__slides[b-bp3yl0pg3z] {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 0 1rem;
    background: var(--color-surface-light);
}

.upload__slides summary[b-bp3yl0pg3z] {
    padding: 0.85rem 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--color-text-black);
    cursor: pointer;
}

.upload__slides summary:hover[b-bp3yl0pg3z] {
    color: var(--color-green-to);
}

.upload__slides[open] summary[b-bp3yl0pg3z] {
    margin-bottom: 0.75rem;
    border-bottom: 1px solid #e0e0e0;
}

.upload__slides > .slide[b-bp3yl0pg3z] {
    margin-bottom: 0.75rem;
}

.slide[b-bp3yl0pg3z] {
    border: 1px solid #e0e0e0;
    border-left: 3px solid var(--color-green-solid);
    border-radius: 8px;
    padding: 1rem 1.25rem;
    background: var(--color-bg-white);
}

.slide h3[b-bp3yl0pg3z] {
    margin: 0 0 0.5rem;
    font-family: var(--font-display);
    font-size: 1.05rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: var(--color-text-black);
}

.slide__blocks[b-bp3yl0pg3z] {
    margin: 0;
    padding-left: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.slide__blocks li[b-bp3yl0pg3z] {
    white-space: pre-wrap;
}

.slide__block--group[b-bp3yl0pg3z] {
    margin-top: 0.6rem;
    padding-top: 0.6rem;
    border-top: 1px dashed #d0d0d0;
}

.slide__source[b-bp3yl0pg3z] {
    display: inline-block;
    margin-right: 0.4rem;
    padding: 0 0.4rem;
    border-radius: 999px;
    font-family: var(--font-display);
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    vertical-align: 0.05em;
    white-space: nowrap;
}

.slide__source--table[b-bp3yl0pg3z] {
    background: #e3f0fb;
    color: #1b5a99;
}

.slide__source--diagram[b-bp3yl0pg3z] {
    background: #f3e9fb;
    color: #6b3fa0;
}

.slide__empty[b-bp3yl0pg3z] {
    color: #999;
    font-style: italic;
    margin: 0;
}

.slide__images[b-bp3yl0pg3z] {
    margin: 0.6rem 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.slide__image[b-bp3yl0pg3z] {
    width: 96px;
    height: 72px;
    object-fit: cover;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    background: var(--color-surface-light);
}

.slide__notes[b-bp3yl0pg3z] {
    margin: 0.75rem 0 0;
    padding-top: 0.5rem;
    border-top: 1px dashed #e0e0e0;
    color: #555;
    white-space: pre-wrap;
}

.slide__vision[b-bp3yl0pg3z] {
    margin: 0.6rem 0 0;
    padding: 0.4rem 0.6rem;
    border-left: 3px solid var(--color-green-solid);
    background: #f2fbef;
    color: #2c5c1e;
    border-radius: 0 4px 4px 0;
}

.slide__vision strong[b-bp3yl0pg3z] {
    color: var(--color-green-solid);
}
/* /Layouts/Achievements/Achievements.razor.rz.scp.css */
.achievements__head[b-wj1z57lthg] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-lg);
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: var(--space-lg);
}

.achievements__intro[b-wj1z57lthg] { flex: 1 1 420px; }

.achievements__title[b-wj1z57lthg] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h2);
    line-height: .9;
    text-transform: uppercase;
}

.achievements__lead[b-wj1z57lthg] {
    flex: 1 1 360px;
    max-width: 560px;
    margin: 0;
    font-family: var(--font-lead);
    font-size: var(--text-body);
    line-height: 1.5;
    opacity: .9;
}

.achievements__grid[b-wj1z57lthg] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(248px, 1fr));
    gap: var(--space-md);
}

.credential[b-wj1z57lthg] {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: var(--space-sm);
    min-height: 118px;
    padding: 20px;
    background: var(--color-bg-black);
    color: var(--color-text-white);
    box-shadow: var(--shadow-tile);
}

.credential__head[b-wj1z57lthg] {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
}

.credential__logo[b-wj1z57lthg] {
    flex: none;
    display: flex;
    align-items: center;
    max-width: 64px;
    max-height: 44px;
}
.credential__logo img[b-wj1z57lthg] { max-width: 100%; max-height: 44px; object-fit: contain; }

/* Card labels use Inter in Figma; the site ships no Inter, so they fall back to the body face
   (a deliberate divergence — see docs/component-specs/achievements.md). */
.credential__title[b-wj1z57lthg] {
    margin: 0;
    font-family: var(--font-body);
    font-weight: 600;
    font-size: var(--text-body);
    line-height: 1.15;
}

.credential__detail[b-wj1z57lthg] {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--text-label);
    line-height: 1.3;
    opacity: .9;
}
/* /Layouts/Bento/Bento.razor.rz.scp.css */
.bento__shell[b-3ppd6m12lj] {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
    gap: var(--space-xl);
    align-items: stretch;
}

.bento__intro[b-3ppd6m12lj] { align-self: start; }
.bento__title[b-3ppd6m12lj] { font-size: var(--text-h2); }
.bento__body[b-3ppd6m12lj] { max-width: 34rem; }

.bento__grid[b-3ppd6m12lj] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: minmax(150px, 1fr);
    grid-auto-flow: row dense;
    gap: var(--space-md);
}
.bento__grid--cols3[b-3ppd6m12lj] { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.bento__block--tall[b-3ppd6m12lj] { grid-row: span 2; }
.bento__block--wide[b-3ppd6m12lj] { grid-column: span 2; }

.bento__block[b-3ppd6m12lj] {
    display: flex;
    flex-direction: column;
    gap: var(--space-md);
    padding: var(--space-md);
}

.card--white[b-3ppd6m12lj]  { background: var(--color-bg-white);     color: var(--color-text-black); box-shadow: var(--shadow-tile); }
.card--silver[b-3ppd6m12lj] { background: var(--color-surface-light); color: var(--color-text-black); }
.card--black[b-3ppd6m12lj]  { background: var(--gradient-dark);        color: var(--color-text-white); }

.bento__block .bento__icon[b-3ppd6m12lj] { color: currentColor; }

.bento__text[b-3ppd6m12lj] { margin: 0; font-family: var(--font-body); font-size: var(--text-lead); line-height: 1.25; }
.bento__lead[b-3ppd6m12lj] { font-family: var(--font-display); font-weight: 900; }
.bento__rest[b-3ppd6m12lj] { opacity: .92; }

@container layout-section (max-width: 900px) {
    .bento__shell[b-3ppd6m12lj] { grid-template-columns: 1fr; }
    .bento__grid[b-3ppd6m12lj],
    .bento__grid--cols3[b-3ppd6m12lj] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .bento__block--tall[b-3ppd6m12lj] { grid-row: auto; }
    .bento__block--wide[b-3ppd6m12lj] { grid-column: span 2; }
}
/* /Layouts/CaseStudies/CaseStudies.razor.rz.scp.css */
.cases__head[b-l8asgjkdxy] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: var(--space-xl);
}

.cases__title[b-l8asgjkdxy] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h2);
    line-height: .86;
    text-transform: uppercase;
}

.cases__head-text[b-l8asgjkdxy] { min-width: 0; }

.cases__head-cta[b-l8asgjkdxy] { flex: none; }

.cases__track[b-l8asgjkdxy] {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}
.cases__track[b-l8asgjkdxy]::-webkit-scrollbar { display: none; }

.cases__track > .cases__band[b-l8asgjkdxy] {
    flex: 0 0 100%;
    scroll-snap-align: start;
}

.cases__band--dark[b-l8asgjkdxy] {
    background: var(--gradient-dark);
    color: var(--color-text-white);
}

.cases__case[b-l8asgjkdxy] {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    gap: 104px;
    align-items: center;
    padding-block: var(--space-xl);
}

.cases__case--flip .cases__media[b-l8asgjkdxy] { order: 2; }

.cases__media[b-l8asgjkdxy] {
    aspect-ratio: 624 / 482;
    display: flex;
    align-items: center;
    justify-content: center;
}
.cases__media img[b-l8asgjkdxy] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.cases__content[b-l8asgjkdxy] {
    display: flex;
    flex-direction: column;
    gap: var(--space-xl);
}

.cases__tags[b-l8asgjkdxy] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.cases__tag[b-l8asgjkdxy] {
    padding: 6px 16px;
    border-radius: 200px;
    background: color-mix(in srgb, currentColor 12%, transparent);
    font-family: var(--font-badge);
    font-weight: 700;
    font-size: 14px;
    line-height: 20px;
    text-transform: uppercase;
}

.cases__text[b-l8asgjkdxy] {
    display: flex;
    flex-direction: column;
    gap: var(--space-md);
}

.cases__name[b-l8asgjkdxy] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h3);
    line-height: 1;
    text-transform: capitalize;
}

.cases__desc[b-l8asgjkdxy] {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--text-body);
    line-height: 1.5;
}

.cases__quote[b-l8asgjkdxy] {
    margin: 0;
    font-family: var(--font-body);
    font-weight: 700;
    font-style: italic;
    font-size: var(--text-body);
    line-height: 1.5;
}

.cases__controls[b-l8asgjkdxy] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-md);
    margin-top: var(--space-lg);
}

.cases__controls .btn[b-l8asgjkdxy],
.cases__arrow[b-l8asgjkdxy] {
    height: 44px;
    padding-block: 0;
    white-space: nowrap;
}

.cases__all[b-l8asgjkdxy] {
    background: var(--gradient-green);
    border-color: transparent;
    color: var(--color-text-black);
}
.cases__all:hover[b-l8asgjkdxy] { filter: brightness(1.08); }

.cases__switch[b-l8asgjkdxy] {
    display: flex;
    align-items: center;
    gap: var(--space-md);
}

.cases__arrow[b-l8asgjkdxy] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    flex: none;
    padding: 0;
    border: 2px solid var(--color-green-from);
    border-radius: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
}
.cases__arrow:hover[b-l8asgjkdxy] { background: var(--color-green-from); color: var(--color-bg-black); }
.cases__arrow svg[b-l8asgjkdxy] {
    width: 16px;
    height: 12px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}
.cases__arrow--prev svg[b-l8asgjkdxy] { transform: scaleX(-1); }

.cases__count[b-l8asgjkdxy] {
    display: flex;
    align-items: center;
    gap: var(--space-xs);
    font-family: var(--font-lead);
    font-size: 24px;
    line-height: 30px;
}
.cases__count-sep[b-l8asgjkdxy] {
    width: 1px;
    height: 19px;
    background: currentColor;
    opacity: .2;
}
.cases__count-total[b-l8asgjkdxy] { opacity: .2; }

@container layout-section (max-width: 900px) {
    .cases__head[b-l8asgjkdxy] { flex-direction: column; align-items: flex-start; gap: var(--space-md); }
    .cases__title[b-l8asgjkdxy] { font-size: var(--text-h3); }
    .cases__case[b-l8asgjkdxy] { grid-template-columns: 1fr; gap: var(--space-lg); }
    .cases__case--flip .cases__media[b-l8asgjkdxy] { order: 0; }
    .cases__media[b-l8asgjkdxy] { aspect-ratio: 16 / 10; }
}

@media print {
    .cases__track[b-l8asgjkdxy] { display: block; overflow: visible; }
    .cases__switch[b-l8asgjkdxy] { display: none; }
    .cases__band[b-l8asgjkdxy] { break-inside: avoid; page-break-inside: avoid; }
}
/* /Layouts/CheckerboardPlates/CheckerboardPlates.razor.rz.scp.css */
/* Plate color sets the caption color; icons follow the plate's contrast color unless the
   section opts into green icons (UseGreenIcons). */
.checker__head[b-yrrx0tp8c8] { margin-bottom: 40px; }
.checker__title[b-yrrx0tp8c8] { font-size: var(--text-h2); }

.checker__body[b-yrrx0tp8c8] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--space-xl);
    align-items: start;
}

.checker__text[b-yrrx0tp8c8] { display: flex; flex-direction: column; gap: var(--space-md); }
.checker__paragraph[b-yrrx0tp8c8] {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--text-body);
    line-height: 1.5;
    opacity: .9;
}
.checker__cta[b-yrrx0tp8c8] { align-self: flex-start; margin-top: var(--space-sm); }

.checker__grid[b-yrrx0tp8c8] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-md);
}
/* Staggered profile: a real grid whose empty cells (the row Leads) form the uneven staircase,
   so plates step across the grid without drifting off it. --cols is set per instance and each
   plate is placed with an inline grid-column / grid-row (mirrors TileGrid). */
.checker__grid--staggered[b-yrrx0tp8c8] { grid-template-columns: repeat(var(--cols), minmax(0, 1fr)); }

.checker__plate[b-yrrx0tp8c8] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-sm);
    aspect-ratio: 1;
    padding: var(--space-md);
    text-align: center;
    overflow: hidden;
}

.card--white[b-yrrx0tp8c8]  { background: var(--color-bg-white);     color: var(--color-text-black); box-shadow: var(--shadow-tile); }
.card--silver[b-yrrx0tp8c8] { background: var(--color-surface-light); color: var(--color-text-black); }
.card--black[b-yrrx0tp8c8]  { background: var(--gradient-dark);        color: var(--color-text-white); }

.checker__icon[b-yrrx0tp8c8] { color: currentColor; }
.checker__grid--green-icons .card--white .checker__icon[b-yrrx0tp8c8],
.checker__grid--green-icons .card--silver .checker__icon[b-yrrx0tp8c8] { color: var(--color-green-solid); }

.checker__image[b-yrrx0tp8c8] { max-width: 80%; max-height: 60%; object-fit: contain; }

.checker__caption[b-yrrx0tp8c8] {
    font-family: var(--font-body);
    font-size: var(--text-label);
    line-height: 1.3;
}

.checker__stat[b-yrrx0tp8c8] {
    margin: 0;
    font-family: var(--font-stat);
    font-weight: 900;
    font-size: var(--text-stat);
    line-height: .9;
}
.checker__stat-unit[b-yrrx0tp8c8] { font-size: var(--text-lead); font-weight: 400; }

@container layout-section (max-width: 900px) {
    .checker__body[b-yrrx0tp8c8] { grid-template-columns: 1fr; }
    .checker__grid[b-yrrx0tp8c8] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .checker__grid--staggered[b-yrrx0tp8c8] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .checker__grid--staggered .checker__plate[b-yrrx0tp8c8] { grid-column: auto !important; grid-row: auto !important; }
}
/* /Layouts/ComparisonColumns/ComparisonColumns.razor.rz.scp.css */
.cmp__title[b-bwfdne17pp] {
    margin: 0 0 var(--space-xl);
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h2);
    line-height: .86;
    text-transform: uppercase;
}

.cmp__cols[b-bwfdne17pp] {
    display: grid;
    grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
    /* One track for the header/intro/caption block, then one per compared row. Columns subgrid
       onto these tracks so every column's row N shares a height — the comparison stays aligned
       even when one column's value wraps to more lines. */
    grid-template-rows: auto repeat(var(--rows), auto);
    box-shadow: var(--shadow-card);
}

.cmp__col[b-bwfdne17pp] {
    display: grid;
    grid-row: 1 / -1;
    grid-template-rows: subgrid;
}
.cmp__col:not(:first-child)[b-bwfdne17pp] { border-left: 1px solid rgba(25, 25, 25, .08); }

.cmp__preamble[b-bwfdne17pp] {
    display: flex;
    flex-direction: column;
    padding-top: var(--space-md);
}

.cmp__col-head[b-bwfdne17pp] {
    display: flex;
    align-items: center;
    gap: var(--space-md);
    min-height: 70px;
    padding: 0 var(--space-md);
}

.cmp__cols--stacked-head .cmp__col-head[b-bwfdne17pp] {
    flex-direction: column;
    align-items: center;
    gap: var(--space-sm);
    min-height: 0;
    text-align: center;
}

.cmp__logo[b-bwfdne17pp] {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
}
.cmp__logo img[b-bwfdne17pp] { max-width: 100%; max-height: 100%; object-fit: contain; }

.cmp__name[b-bwfdne17pp] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h3);
    line-height: .8;
    text-transform: uppercase;
}

.cmp__intro[b-bwfdne17pp] {
    margin: var(--space-sm) 0 0;
    padding: 0 var(--space-md);
    font-family: var(--font-body);
    font-size: var(--text-label);
    line-height: 1.5;
}

.cmp__caption[b-bwfdne17pp] {
    margin: var(--space-md) 0 var(--space-xs);
    padding: 0 var(--space-md);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.2;
    color: #afafaf;
}

.cmp__row[b-bwfdne17pp] {
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
    padding: var(--space-xs) var(--space-md);
}
.cmp__row--alt[b-bwfdne17pp] { background: var(--color-surface-light); }

.cmp__row-label[b-bwfdne17pp] {
    font-family: var(--font-body);
    font-weight: 700;
    font-size: var(--text-label);
    line-height: 1.1;
}

.cmp__row-value[b-bwfdne17pp] {
    font-family: var(--font-body);
    font-size: var(--text-label);
    line-height: 1.4;
    opacity: .9;
}

.cmp__footer[b-bwfdne17pp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-lg);
    margin-top: var(--space-xl);
    text-align: center;
}

.cmp__footer-title[b-bwfdne17pp] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h3);
    text-transform: uppercase;
}

.cmp__footer-items[b-bwfdne17pp] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: var(--space-xl);
}

.cmp__footer-item[b-bwfdne17pp] {
    display: flex;
    align-items: center;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-lead);
    text-transform: uppercase;
}
.cmp__footer-item img[b-bwfdne17pp] { max-height: 40px; object-fit: contain; }

@container layout-section (max-width: 820px) {
    /* Stacked: each column becomes its own row-major block, so subgrid alignment no longer
       applies (there's nothing to align side-by-side). */
    .cmp__cols[b-bwfdne17pp] { grid-template-columns: 1fr; grid-template-rows: none; }
    .cmp__col[b-bwfdne17pp] { grid-row: auto; grid-template-rows: none; }
    .cmp__col:not(:first-child)[b-bwfdne17pp] { border-left: none; border-top: 1px solid rgba(25, 25, 25, .08); }
}
/* /Layouts/Faq/Faq.razor.rz.scp.css */
.faq__col[b-a0o8w36c0v] {
    max-width: 808px;
    margin: 0 auto;
}

.faq__title[b-a0o8w36c0v] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h3);
    line-height: 1;
    text-transform: uppercase;
}

.faq__intro[b-a0o8w36c0v] {
    margin: var(--space-sm) 0 0;
    font-family: var(--font-body);
    font-size: var(--text-label);
    line-height: 1.5;
    opacity: .9;
}

.faq__list[b-a0o8w36c0v] {
    display: flex;
    flex-direction: column;
    gap: var(--space-lg);
    margin-top: 40px;
}

.faq__item:not(:last-child)[b-a0o8w36c0v] {
    padding-bottom: var(--space-md);
    border-bottom: 1px solid color-mix(in srgb, currentColor 20%, transparent);
}

.faq__q[b-a0o8w36c0v] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-sm);
    list-style: none;
    cursor: pointer;
}
.faq__q[b-a0o8w36c0v]::-webkit-details-marker { display: none; }
.faq__q:hover[b-a0o8w36c0v] { opacity: .8; }

.faq__q-text[b-a0o8w36c0v] {
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-lead);
    line-height: 1.2;
    text-transform: uppercase;
}

.faq__arrow[b-a0o8w36c0v] {
    flex: none;
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    transition: transform .2s ease;
}

.faq__item[open] .faq__arrow[b-a0o8w36c0v] { transform: rotate(90deg); }

.faq__a[b-a0o8w36c0v] {
    margin: var(--space-md) 0 0;
    font-family: var(--font-body);
    font-size: var(--text-label);
    line-height: 1.5;
    opacity: .9;
}

@container layout-section (max-width: 640px) {
    .faq__list[b-a0o8w36c0v] { gap: var(--space-md); }
    .faq__q-text[b-a0o8w36c0v] { font-size: var(--text-label); }
}

@media print {
    .faq__item[b-a0o8w36c0v]::details-content { content-visibility: visible; block-size: auto; }
    .faq__arrow[b-a0o8w36c0v] { display: none; }
}
/* /Layouts/Hero/Hero.razor.rz.scp.css */
.hero[b-bfuu89rtti] {
    position: relative;
    min-height: 720px;
    overflow: hidden;
    color: var(--color-text-white);
    background: var(--color-bg-black);
    font-family: var(--font-body);
}

.hero__media[b-bfuu89rtti] {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.hero__media img[b-bfuu89rtti] {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 82%;
    object-fit: cover;
    object-position: center;
}

.hero__media[b-bfuu89rtti]::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(104deg, rgba(25, 25, 25, 0.92) 34%, rgba(25, 25, 25, 0.35) 92%),
        linear-gradient(0deg, var(--color-bg-black) 0%, rgba(25, 25, 25, 0) 22%);
}

.hero__inner[b-bfuu89rtti] {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: var(--space-xl);
    padding: clamp(1.5rem, 7.5cqi, var(--space-page));
    max-width: 1440px;
    margin: 0 auto;
}

.hero__text[b-bfuu89rtti] {
    display: flex;
    flex-direction: column;
    gap: var(--space-lg);
    max-width: 620px;
}

.hero__title[b-bfuu89rtti] {
    margin: 0;
    font-family: "Futura Now Headline", var(--font-display);
    font-weight: 900;
    font-size: clamp(2.75rem, 8cqi, var(--text-hero));
    line-height: 0.88;
    text-transform: uppercase;
    letter-spacing: 0.01em;
}

.hero__subtitle[b-bfuu89rtti] {
    margin: 0;
    font-family: "Futura Bk", var(--font-body);
    font-size: var(--text-lead);
    line-height: 1.4;
    max-width: 555px;
}

.btn[b-bfuu89rtti] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-btn);
    line-height: 1;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 0.04em;
    cursor: pointer;
}

.btn--outline[b-bfuu89rtti] {
    align-self: flex-start;
    color: var(--color-text-white);
    background: transparent;
    border: 2px solid var(--color-green-from);
}

.btn--outline:hover[b-bfuu89rtti] {
    background: var(--color-green-from);
    color: var(--color-bg-black);
}

.hero__cards[b-bfuu89rtti] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-md);
    align-items: stretch;
}

.card[b-bfuu89rtti] {
    color: var(--color-text-white);
    border: none;
    border-radius: 0;
    background: var(--color-surface-glass);
    -webkit-backdrop-filter: blur(7.5px);
    backdrop-filter: blur(7.5px);
    padding: 16px 16px 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--space-sm);
    min-height: 154px;
}

.card--picture[b-bfuu89rtti],
.card--picture-text[b-bfuu89rtti] {
    width: 184px;
    align-items: center;
    justify-content: center;
}

.card--bigtext[b-bfuu89rtti] {
    min-width: 300px;
    flex: 1;
}

.card__img[b-bfuu89rtti] {
    max-width: 105px;
    height: auto;
}

.card__big[b-bfuu89rtti] {
    font-family: var(--font-display);
    font-weight: 700;
    font-size: var(--text-stat);
    line-height: 0.9;
    opacity: 0.9;
}

.card__small[b-bfuu89rtti] {
    font-size: var(--text-label);
    line-height: 1.5;
    opacity: 0.9;
    text-align: center;
}

.card--bigtext .card__small[b-bfuu89rtti] {
    text-align: left;
}

@container layout-section (max-width: 900px) {
    .hero__media img[b-bfuu89rtti] {
        width: 100%;
    }
}

@container layout-section (max-width: 480px) {
    .card--picture[b-bfuu89rtti],
    .card--picture-text[b-bfuu89rtti] {
        width: 100%;
    }

    .card--bigtext[b-bfuu89rtti] {
        min-width: 0;
    }
}
/* /Layouts/ImageBulletMosaic/ImageBulletMosaic.razor.rz.scp.css */
.mosaic__title[b-0mvqpqv67w] { font-size: var(--text-h2); }
.mosaic__head[b-0mvqpqv67w] { margin-bottom: 40px; }

/* Mosaic layout (reference: components/image-bullet-mosaic.html). A left checkerboard of
   images and bullet cards beside a right aside (two stacked vertical images + a 3-badge
   column, or two 3-badge columns).

   Design sizes (full-page): images & text panels 392×288, badges 184×184, aside images
   184×288. Each REGION carries the aspect-ratio (checker 808×600, every aside column
   184×600) and splits its fixed height into 1fr rows — so cell heights are driven by the
   region, never by their own content. That keeps the panels from inflating; the regions
   share the ~600px height at full width and scale together below it. */
/* Stretch so the aside matches the checker's (aspect-driven) height at every width — the
   aside's own aspect height drifts under the checker's below the design width because the
   fixed gaps don't scale. */
.mosaic__mosaic[b-0mvqpqv67w] {
    display: flex;
    gap: var(--space-md);
    align-items: stretch;
}

.mosaic__checker[b-0mvqpqv67w] {
    flex: 808 1 0;
    min-width: 0;
    aspect-ratio: 808 / 600;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: var(--space-md);
}

.mosaic__aside[b-0mvqpqv67w] {
    flex: 392 1 0;
    min-width: 0;
    display: flex;
    gap: var(--space-md);
    align-items: stretch;
}

.mosaic__aside > *[b-0mvqpqv67w] { flex: 1 1 0; min-width: 0; }

/* min-height: 0 + minmax(0, 1fr) stop tall badge content from pushing the column past the
   stretched height, which would make it outgrow the checker. */
.mosaic__badges[b-0mvqpqv67w] {
    aspect-ratio: 184 / 600;
    min-height: 0;
    display: grid;
    grid-template-rows: repeat(3, minmax(0, 1fr));
    gap: var(--space-md);
}

.mosaic__aside-images[b-0mvqpqv67w] {
    aspect-ratio: 184 / 600;
    min-height: 0;
    display: grid;
    grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--space-md);
}

.block--image[b-0mvqpqv67w] {
    margin: 0;
    overflow: hidden;
    background: var(--color-surface-accent-soft);
}
.block--image img[b-0mvqpqv67w] { width: 100%; height: 100%; object-fit: cover; }

.block--text[b-0mvqpqv67w] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--space-sm);
    padding: var(--space-md);
    overflow: hidden;
    background: var(--color-bg-white);
    color: var(--color-text-black);
    box-shadow: var(--shadow-tile);
}

.block__header[b-0mvqpqv67w] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h3);
    line-height: 1.1;
    text-transform: uppercase;
}

.block--badge[b-0mvqpqv67w] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-xs);
    padding: 16px;
    text-align: center;
    background: var(--color-bg-white);
    color: var(--color-text-black);
    box-shadow: var(--shadow-tile);
}

.block--badge-image[b-0mvqpqv67w] {
    padding: 0;
    overflow: hidden;
    background: var(--color-surface-accent-soft);
    box-shadow: none;
}
.block--badge-image img[b-0mvqpqv67w] { width: 100%; height: 100%; object-fit: cover; }

.badge__label[b-0mvqpqv67w] {
    font-family: var(--font-display);
    font-weight: 900;
    font-size: 18px;
    line-height: 1.15;
    text-transform: uppercase;
}

.badge__caption[b-0mvqpqv67w] {
    margin: 0;
    font-size: 14px;
    line-height: 1.3;
    color: var(--color-text-muted);
}

.mosaic__side[b-0mvqpqv67w] {
    display: flex;
    gap: var(--space-xl);
    align-items: center;
}
.mosaic__side > *[b-0mvqpqv67w] { flex: 1 1 0; aspect-ratio: 392 / 288; }

.mosaic__cta[b-0mvqpqv67w] { margin-top: var(--space-lg); display: inline-flex; }

@container layout-section (max-width: 900px) {
    .mosaic__mosaic[b-0mvqpqv67w] { flex-direction: column; }
    .mosaic__checker[b-0mvqpqv67w] { min-height: 0; }
    .mosaic__side[b-0mvqpqv67w] { flex-direction: column; align-items: stretch; }
}
/* /Layouts/IndustryGrid/IndustryGrid.razor.rz.scp.css */
.industries[b-h8yghgcjom] {
    background: var(--gradient-dark);
    color: var(--color-text-white);
}

.industries__grid[b-h8yghgcjom] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-md);
    grid-auto-rows: 1fr;
}

.industries__intro[b-h8yghgcjom] {
    display: flex;
    flex-direction: column;
    gap: var(--space-sm);
    padding: 40px;
    background: var(--gradient-green);
    box-shadow: var(--shadow-card);
}

.industries__title[b-h8yghgcjom] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: clamp(32px, 3.34cqi, 48px);
    line-height: .8;
    text-transform: uppercase;
    overflow-wrap: break-word;
}

.industries__lead[b-h8yghgcjom] {
    margin: 0;
    font-family: var(--font-lead);
    font-size: 16px;
    line-height: 1.5;
    opacity: .95;
}

.ind-card[b-h8yghgcjom] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: var(--color-bg-black);
}

.ind-card__media[b-h8yghgcjom] {
    flex: none;
    margin: 0;
    aspect-ratio: 392 / 158;
    overflow: hidden;
    background: var(--color-surface-accent-soft);
}
.ind-card__media img[b-h8yghgcjom] { width: 100%; height: 100%; object-fit: cover; }

.ind-card__body[b-h8yghgcjom] {
    display: flex;
    flex-direction: column;
    gap: var(--space-sm);
    padding: var(--space-md);
    overflow: hidden;
}

.ind-card__title[b-h8yghgcjom] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: 28px;
    line-height: 1.2;
    text-transform: uppercase;
}

.ind-card__desc[b-h8yghgcjom] {
    margin: 0;
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.5;
    opacity: .9;
}

@container layout-section (max-width: 1000px) {
    .industries__grid[b-h8yghgcjom] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@container layout-section (max-width: 640px) {
    .industries__grid[b-h8yghgcjom] { grid-template-columns: 1fr; grid-auto-rows: auto; }
}
/* /Layouts/LevelPyramid/LevelPyramid.razor.rz.scp.css */
.pyramid__head[b-2p6hozhohl] { margin: 0 0 var(--space-xl); }
.pyramid__title[b-2p6hozhohl] { font-size: var(--text-h2); }

.pyramid__split[b-2p6hozhohl] {
    display: grid;
    gap: var(--space-xl);
    align-items: start;
}
.pyramid__split--left[b-2p6hozhohl] { grid-template-columns: minmax(0, 1fr) minmax(0, 2.6fr); }
.pyramid__split--right[b-2p6hozhohl] { grid-template-columns: minmax(0, 2.6fr) minmax(0, 1fr); }

.pyramid__aside[b-2p6hozhohl] {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--text-body);
    line-height: 1.5;
    color: var(--color-text-black);
}

.pyramid__stage[b-2p6hozhohl] {
    --band-h: 72px;
    --tri-ratio: 1.52;
    --pyr-half: calc(var(--rows) * var(--band-h) * var(--tri-ratio) / 2);
    --pyr-cx: 50%;
    --marker-size: var(--text-h3);
    --marker-cap-size: var(--text-label);
    position: relative;
    height: calc(var(--rows) * var(--band-h));
}

.pyramid__stage--aside[b-2p6hozhohl] {
    --band-h: calc(40cqi / var(--rows) / var(--tri-ratio));
    --pyr-cx: var(--pyr-half);
    --marker-size: var(--text-lead);
    --marker-cap-size: 12px;
}

.pyramid__figure[b-2p6hozhohl],
.pyramid__markers[b-2p6hozhohl] {
    position: absolute;
    top: 0;
    bottom: 0;
    left: var(--pyr-cx);
    transform: translateX(-50%);
    width: calc(var(--pyr-half) * 2);
    display: flex;
    flex-direction: column;
}
.pyramid__figure[b-2p6hozhohl] { clip-path: polygon(50% 0, 100% 100%, 0 100%); z-index: 0; }
.pyramid__band[b-2p6hozhohl] { flex: 1 1 0; }

.pyramid__markers[b-2p6hozhohl] { z-index: 3; pointer-events: none; }
.pyramid__marker[b-2p6hozhohl] {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--color-text-black);
}
.pyramid__marker-num[b-2p6hozhohl] {
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--marker-size);
    line-height: 1;
    text-transform: uppercase;
}
.pyramid__marker-cap[b-2p6hozhohl] {
    font-family: var(--font-lead);
    font-size: var(--marker-cap-size);
    line-height: 1.4;
}

.pyramid__note[b-2p6hozhohl] {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(var(--start) * var(--band-h));
    height: calc(var(--count) * var(--band-h));
    box-sizing: border-box;
    overflow: hidden;
    z-index: 1;
    display: flex;
    align-items: center;
    padding: var(--space-sm) var(--space-lg);
    box-shadow: var(--shadow-tile);
}
.pyramid__note--green[b-2p6hozhohl] {
    border: 2px solid var(--color-green-solid);
    background: rgba(187, 248, 158, 0.3);
}
.pyramid__note--silver[b-2p6hozhohl] {
    border: 2px solid rgba(25, 25, 25, 0.35);
    background: rgba(245, 245, 245, 0.55);
}

.pyramid__note .section-icon[b-2p6hozhohl] {
    flex: none;
    width: auto;
    height: min(70px, calc(var(--count) * var(--band-h) - 2 * var(--space-sm) - 4px));
    color: var(--color-text-black);
}

.pyramid__note-inner[b-2p6hozhohl] {
    display: flex;
    align-items: center;
    gap: var(--space-md);
    max-width: calc(var(--pyr-cx) - var(--box-bottom) * var(--pyr-half) - var(--space-lg) - var(--space-sm));
}
.pyramid__note-body[b-2p6hozhohl] {
    margin: 0;
    font-family: var(--font-body);
    font-size: 24px;
    line-height: 1.2;
    color: var(--color-text-black);
}

.pyramid__label[b-2p6hozhohl] {
    position: absolute;
    z-index: 3;
    top: calc(var(--f) * 100%);
    left: calc(var(--pyr-cx) + var(--f) * var(--pyr-half) + var(--space-sm));
    transform: translateY(-50%);
    max-width: calc(100% - var(--pyr-cx) - var(--f) * var(--pyr-half) - var(--space-lg));
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-label);
    line-height: 1.15;
    text-transform: uppercase;
}
.pyramid__label[b-2p6hozhohl]::before {
    content: "";
    flex: none;
    width: 10px;
    height: 10px;
    background: var(--color-green-solid);
    transform: rotate(45deg);
}

@container layout-section (max-width: 900px) {
    .pyramid__stage[b-2p6hozhohl] { --band-h: 60px; }
    /* Stacked: the body sits above a full-width, centred pyramid again, whichever side it took. */
    .pyramid__split--left[b-2p6hozhohl],
    .pyramid__split--right[b-2p6hozhohl] { grid-template-columns: 1fr; }
    .pyramid__split--right .pyramid__aside[b-2p6hozhohl] { order: -1; }
    .pyramid__stage--aside[b-2p6hozhohl] {
        --band-h: 60px;
        --pyr-cx: 50%;
        --marker-size: var(--text-h3);
        --marker-cap-size: var(--text-label);
    }
    .pyramid__note-body[b-2p6hozhohl] { font-size: var(--text-lead); }
}

@container layout-section (max-width: 720px) {
    .pyramid__title[b-2p6hozhohl] { font-size: var(--text-h3); }
}

@container layout-section (max-width: 680px) {
    .pyramid__stage[b-2p6hozhohl] { --band-h: 50px; --marker-size: var(--text-lead); }
    .pyramid__label[b-2p6hozhohl] { font-size: 12px; }
    .pyramid__note-body[b-2p6hozhohl] { font-size: var(--text-label); }
}

@container layout-section (max-width: 520px) {
    .pyramid__stage[b-2p6hozhohl] { --band-h: 42px; }
}
/* /Layouts/MarqueeStrip/MarqueeStrip.razor.rz.scp.css */
.marquee[b-8vwhjvbnsq] { overflow: hidden; padding-block: var(--space-sm); }

.marquee__viewport[b-8vwhjvbnsq] { overflow: hidden; }

.marquee__track[b-8vwhjvbnsq] {
    display: flex;
    width: max-content;
    animation: marquee-scroll-b-8vwhjvbnsq 40s linear infinite;
}
.marquee:hover .marquee__track[b-8vwhjvbnsq] { animation-play-state: paused; }

.marquee__group[b-8vwhjvbnsq] {
    display: flex;
    flex: none;
    align-items: center;
}

.marquee__item[b-8vwhjvbnsq] {
    flex: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    width: 244px;
    height: 99px;
    margin-right: var(--space-md);
    padding: 0 var(--space-md);
    text-align: center;
    border: 1px solid transparent;
    filter: grayscale(1);
    opacity: .55;
    transition: filter .3s ease, opacity .3s ease, background .3s ease, box-shadow .3s ease, border-color .3s ease, color .3s ease;
}

.marquee__item:hover[b-8vwhjvbnsq] {
    background: var(--color-bg-white);
    border-color: rgba(25, 25, 25, .08);
    box-shadow: var(--shadow-tile);
    color: var(--color-text-black);
    opacity: 1;
}
.marquee__item--color:hover[b-8vwhjvbnsq] { filter: grayscale(0); }

.marquee__badge[b-8vwhjvbnsq] {
    display: flex;
    align-items: center;
    justify-content: center;
    max-height: 56px;
}
.marquee__badge img[b-8vwhjvbnsq] { max-height: 56px; max-width: 100%; object-fit: contain; }

.marquee__detail[b-8vwhjvbnsq] {
    font-family: var(--font-badge);
    font-weight: 900;
    font-size: var(--text-label);
    line-height: 1.15;
    text-transform: uppercase;
}

.marquee__caption[b-8vwhjvbnsq] {
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.2;
    opacity: .7;
}

@keyframes marquee-scroll-b-8vwhjvbnsq {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
    .marquee__track[b-8vwhjvbnsq] { animation: none; flex-wrap: wrap; justify-content: center; }
}
/* /Layouts/MatrixTable/MatrixTable.razor.rz.scp.css */
.matrix-table[b-d38pbp1z6w] {
    background: var(--color-bg-white);
    color: var(--color-text-black);
}

.matrix-table__head[b-d38pbp1z6w] {
    margin: 0 0 var(--space-xl);
}

.matrix-table__title[b-d38pbp1z6w] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h2);
    line-height: .86;
    text-transform: uppercase;
}

.matrix-table__layout--aside-left[b-d38pbp1z6w],
.matrix-table__layout--aside-right[b-d38pbp1z6w] {
    display: grid;
    gap: var(--space-xl);
    align-items: start;
}
.matrix-table__layout--aside-left[b-d38pbp1z6w] { grid-template-columns: minmax(0, 1fr) minmax(0, 2.6fr); }
.matrix-table__layout--aside-right[b-d38pbp1z6w] { grid-template-columns: minmax(0, 2.6fr) minmax(0, 1fr); }

.matrix-table__aside[b-d38pbp1z6w] {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--text-body);
    line-height: 1.5;
    color: var(--color-text-muted);
}

.matrix-table__scroll[b-d38pbp1z6w] {
    overflow-x: auto;
}

.matrix[b-d38pbp1z6w] {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
}

.matrix-table__layout--aside-left .matrix[b-d38pbp1z6w],
.matrix-table__layout--aside-right .matrix[b-d38pbp1z6w] { min-width: 520px; }

.matrix__corner[b-d38pbp1z6w] {
    background: transparent;
    border: none;
}

.matrix__col[b-d38pbp1z6w] {
    padding: var(--space-sm) var(--space-md);
    font-family: var(--font-badge);
    font-weight: 700;
    font-size: var(--text-label);
    text-transform: uppercase;
    letter-spacing: .04em;
    text-align: left;
    color: var(--color-text-white);
    background: var(--gradient-green);
    border: 2px solid var(--color-bg-white);
}

.matrix__row-label[b-d38pbp1z6w] {
    padding: var(--space-md);
    font-family: var(--font-badge);
    font-weight: 700;
    font-size: var(--text-body);
    text-align: left;
    vertical-align: top;
    background: rgba(25, 25, 25, 0.05);
    border-bottom: 1px solid rgba(25, 25, 25, 0.06);
}

.matrix__cell[b-d38pbp1z6w] {
    padding: var(--space-md);
    vertical-align: top;
    border-bottom: 1px solid rgba(25, 25, 25, 0.06);
    border-left: 1px solid rgba(25, 25, 25, 0.12);
}

.matrix tbody tr:nth-child(even) .matrix__cell[b-d38pbp1z6w] {
    background: rgba(25, 25, 25, 0.03);
}

.matrix__list[b-d38pbp1z6w] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
}

.matrix__list li[b-d38pbp1z6w] {
    position: relative;
    padding-left: 22px;
    font-family: var(--font-body);
    font-size: var(--text-label);
    line-height: 1.4;
    color: var(--color-text-muted);
}

.matrix__list li[b-d38pbp1z6w]::before {
    content: "";
    position: absolute;
    left: 0;
    top: .45em;
    width: 9px;
    height: 9px;
    background: var(--color-green-solid);
    transform: rotate(45deg);
}

.matrix__value[b-d38pbp1z6w] {
    margin: 0;
    font-family: var(--font-body);
    font-weight: 700;
    font-size: var(--text-label);
    color: var(--color-text-black);
}

@container layout-section (max-width: 900px) {
    .matrix-table__layout--aside-left[b-d38pbp1z6w],
    .matrix-table__layout--aside-right[b-d38pbp1z6w] { grid-template-columns: 1fr; }
    .matrix-table__layout--aside-right .matrix-table__aside[b-d38pbp1z6w] { order: -1; }
    .matrix-table__layout--aside-left .matrix[b-d38pbp1z6w],
    .matrix-table__layout--aside-right .matrix[b-d38pbp1z6w] { min-width: 760px; }
}

@container layout-section (max-width: 720px) {
    .matrix-table__title[b-d38pbp1z6w] { font-size: var(--text-h3); }
}
/* /Layouts/PanelGrid/PanelGrid.razor.rz.scp.css */
.panels__title[b-amsbwbjrt5] { font-size: var(--text-h2); }

.panels__head[b-amsbwbjrt5] { margin-bottom: 40px; }

.panels__grid[b-amsbwbjrt5] {
    display: grid;
    gap: var(--space-md);
    /* All rows share the tallest row's height, so every panel is the same size. */
    grid-auto-rows: 1fr;
}

/* minmax(0, 1fr), not 1fr: a bare 1fr floors at each column's min-content, so a column with
   wider content steals width and the others end up narrower. minmax(0, …) keeps them equal. */
.panels__grid--cols2[b-amsbwbjrt5] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.panels__grid--cols3[b-amsbwbjrt5] { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.panel[b-amsbwbjrt5] {
    display: flex;
    flex-direction: column;
    gap: var(--space-sm);
    padding: var(--space-md);
    min-height: 240px;
}

/* Card color is independent of the section background. */
.card--white[b-amsbwbjrt5]  { background: var(--color-bg-white);     color: var(--color-text-black); box-shadow: var(--shadow-tile); }
.card--silver[b-amsbwbjrt5] { background: var(--color-surface-light);  color: var(--color-text-black); }
.card--black[b-amsbwbjrt5]  { background: var(--gradient-dark);        color: var(--color-text-white); }

.panel__heading[b-amsbwbjrt5] {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
}

/* Icon stacked above the header (dark 3-column grids) rather than inline beside it. */
.panels__grid--icon-above .panel__heading[b-amsbwbjrt5] {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-lg);
}

.panel__header[b-amsbwbjrt5] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h3);
    line-height: 1.1;
    text-transform: uppercase;
}

.panel__body[b-amsbwbjrt5] {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--text-body);
    line-height: 1.5;
    opacity: .9;
}

.panel__cta[b-amsbwbjrt5] { align-self: flex-start; margin-top: auto; }

.panel--image[b-amsbwbjrt5] {
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: var(--color-surface-accent-soft);
}
.panel--image img[b-amsbwbjrt5] { width: 100%; height: 100%; object-fit: cover; }

@container layout-section (max-width: 900px) {
    .panels__grid--cols2[b-amsbwbjrt5],
    .panels__grid--cols3[b-amsbwbjrt5] { grid-template-columns: 1fr; }
}
/* /Layouts/ProcessTimeline/ProcessTimeline.razor.rz.scp.css */
.timeline-section[b-59ovyvd95w] {
    background: var(--color-bg-white);
    color: var(--color-text-black);
}

.timeline-section__head[b-59ovyvd95w] {
    margin: 0 0 var(--space-xl);
}

.timeline-section__title[b-59ovyvd95w] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h2);
    line-height: .86;
    text-transform: uppercase;
}

.timeline-wrap[b-59ovyvd95w] {
    overflow-x: auto;
}

.timeline[b-59ovyvd95w] {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(190px, 1fr);
    align-items: start;
}

.timeline__col[b-59ovyvd95w] {
    display: flex;
    flex-direction: column;
    padding: 0 var(--space-sm);
    border-left: 1px solid rgba(25, 25, 25, 0.08);
}

.timeline__marker[b-59ovyvd95w] {
    min-height: 3.4em;
    padding: var(--space-sm) 0;
    font-family: var(--font-badge);
    font-weight: 700;
    font-size: var(--text-label);
    line-height: 1.2;
    border-bottom: 1px solid rgba(25, 25, 25, 0.12);
}

.timeline__card[b-59ovyvd95w] {
    display: flex;
    flex-direction: column;
    gap: var(--space-sm);
    margin-top: var(--space-md);
    padding: var(--space-md);
    box-shadow: var(--shadow-card);
}

/* The middle steps cascade downward by position; the opening (dark) and closing
   (highlight) steps stay anchored at the top, echoing the Figma staircase. */
.timeline__card--normal[b-59ovyvd95w] {
    margin-top: calc(var(--space-md) + 28px * var(--tl-index, 0));
    background: var(--color-surface-green-soft);
    border: 1px solid var(--color-surface-accent-soft);
    color: var(--color-text-black);
}

.timeline__card--dark[b-59ovyvd95w] {
    background: var(--color-bg-black);
    color: var(--color-text-white);
}

.timeline__card--highlight[b-59ovyvd95w] {
    background: var(--gradient-green);
    color: var(--color-text-white);
}

.timeline__card-title[b-59ovyvd95w] {
    margin: 0;
    font-family: var(--font-badge);
    font-weight: 700;
    font-size: var(--text-body);
}

.timeline__card-desc[b-59ovyvd95w] {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--text-label);
    line-height: 1.5;
    opacity: .9;
}

.timeline__list[b-59ovyvd95w] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-sm);
}

.timeline__list li[b-59ovyvd95w] {
    font-family: var(--font-body);
    font-size: var(--text-label);
    line-height: 1.4;
    opacity: .9;
}

.timeline__cta[b-59ovyvd95w] {
    margin-top: var(--space-xs);
    align-self: flex-start;
}

@container layout-section (max-width: 900px) {
    .timeline[b-59ovyvd95w] { grid-auto-flow: row; grid-auto-columns: auto; }
    .timeline__col[b-59ovyvd95w] { border-left: none; border-top: 1px solid rgba(25, 25, 25, 0.08); }
    .timeline__marker[b-59ovyvd95w] { min-height: 0; border-bottom: none; }
    .timeline__card[b-59ovyvd95w],
    .timeline__card--normal[b-59ovyvd95w] { margin-top: var(--space-sm); }
    .timeline-section__title[b-59ovyvd95w] { font-size: var(--text-h3); }
}
/* /Layouts/Statistics/Statistics.razor.rz.scp.css */
.stats__head[b-oc908pswb6] {
    margin: 0 0 var(--space-xl);
}

.stats__title[b-oc908pswb6] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h2);
    line-height: .86;
    text-transform: uppercase;
}

.stats__grid[b-oc908pswb6] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-md);
}

.stat[b-oc908pswb6] {
    display: flex;
    flex-direction: column;
    gap: var(--space-sm);
    min-height: 130px;
    padding: var(--space-sm) var(--space-md);
    background: var(--color-surface-light);
    color: var(--color-text-black);
}

.stat__label[b-oc908pswb6] {
    display: flex;
    gap: var(--space-xs);
    align-items: flex-start;
    margin: 0;
    font-family: var(--font-lead);
    font-size: var(--text-label);
    line-height: 1.5;
    opacity: .9;
}

.stat__mark[b-oc908pswb6] {
    flex: none;
    width: 10px;
    height: 10px;
    margin-top: 7px;
    background: var(--color-green-solid);
    transform: rotate(45deg);
}

.stat__value[b-oc908pswb6] {
    display: flex;
    align-items: baseline;
    gap: 4px;
    margin: 0;
}

.stat__number[b-oc908pswb6] {
    font-family: var(--font-stat);
    font-weight: 700;
    font-size: var(--text-stat);
    line-height: .9;
    opacity: .9;
}

.stat__unit[b-oc908pswb6] {
    font-family: var(--font-display);
    font-weight: 900;
    font-size: 26px;
    line-height: .9;
    text-transform: uppercase;
}

.stats__footer[b-oc908pswb6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-md);
    margin-top: var(--space-xl);
    text-align: center;
}

.stats__footer-title[b-oc908pswb6] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h3);
    line-height: 1;
    text-transform: uppercase;
}

@container layout-section (max-width: 1000px) {
    .stats__grid[b-oc908pswb6] { grid-template-columns: repeat(2, 1fr); }
}

@container layout-section (max-width: 640px) {
    .stats__grid[b-oc908pswb6] { grid-template-columns: 1fr; }
}
/* /Layouts/Testimonial/Testimonial.razor.rz.scp.css */
.testimonial__head[b-9whn4fpsww] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-md);
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: var(--space-xl);
}

.testimonial__intro[b-9whn4fpsww] { flex: 1 1 520px; }

.testimonial__title[b-9whn4fpsww] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h2);
    line-height: .9;
    text-transform: uppercase;
}

.testimonial__cta[b-9whn4fpsww] { flex: none; }

.testimonial__card[b-9whn4fpsww] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-xl);
    padding: 40px;
    background: var(--color-bg-white);
    color: var(--color-text-black);
    box-shadow: var(--shadow-tile);
}

.testimonial__avatar[b-9whn4fpsww] {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 204px;
    height: 204px;
    border: 3px solid var(--color-green-from);
    border-radius: 50%;
    background: var(--color-bg-white);
    overflow: hidden;
}
.testimonial__avatar img[b-9whn4fpsww] { width: 100%; height: 100%; object-fit: cover; }

.testimonial__body[b-9whn4fpsww] { flex: 1 1 340px; display: flex; flex-direction: column; gap: var(--space-lg); }

.testimonial__quote[b-9whn4fpsww] { margin: 0; }
/* Oversized opening quote mark, matching the design's decorative glyph. */
.testimonial__quote[b-9whn4fpsww]::before {
    content: "\201C";
    display: block;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: 64px;
    line-height: .6;
    margin-bottom: var(--space-sm);
}
.testimonial__quote p[b-9whn4fpsww] {
    margin: 0 0 var(--space-md);
    font-family: var(--font-body);
    font-size: var(--text-body);
    line-height: 30px;
}
.testimonial__quote p:last-child[b-9whn4fpsww] { margin-bottom: 0; }

.testimonial__author[b-9whn4fpsww] { display: flex; flex-direction: column; gap: 2px; }
.testimonial__author-name[b-9whn4fpsww] {
    font-family: var(--font-body);
    font-weight: 700;
    font-size: var(--text-label);
    line-height: 1.4;
}
.testimonial__author-title[b-9whn4fpsww] {
    font-family: var(--font-body);
    font-weight: 300;
    font-size: var(--text-body);
    line-height: 1.4;
    opacity: .7;
}
/* /Layouts/TextImage/TextImage.razor.rz.scp.css */
.text-image[b-g2or9nskj8] {
    background: var(--color-bg-white);
    color: var(--color-text-black);
}

.text-image__title[b-g2or9nskj8] {
    margin: 0 0 var(--space-xl);
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h2);
    line-height: .86;
    text-transform: uppercase;
}

.text-image__split[b-g2or9nskj8] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-xl);
    align-items: stretch;
}

/* DOM order is panel then media (image right); this pulls the image ahead for image-left. */
.text-image__split--image-left .text-image__media[b-g2or9nskj8] { order: -1; }

.text-image__panel[b-g2or9nskj8] {
    display: flex;
    flex-direction: column;
    gap: var(--space-md);
    padding: var(--space-lg);
    background: var(--color-bg-white);
    border: 1px solid rgba(25, 25, 25, 0.08);
    box-shadow: var(--shadow-card);
}

.text-image__para[b-g2or9nskj8] {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--text-body);
    line-height: 1.5;
    color: var(--color-text-muted);
}

.text-image__media[b-g2or9nskj8] {
    margin: 0;
    overflow: hidden;
    background: var(--color-surface-light);
}
.text-image__media img[b-g2or9nskj8] { width: 100%; height: 100%; object-fit: cover; }

@container layout-section (max-width: 720px) {
    .text-image__split[b-g2or9nskj8] { grid-template-columns: 1fr; }
    .text-image__split--image-left .text-image__media[b-g2or9nskj8] { order: 0; }
    .text-image__media[b-g2or9nskj8] { aspect-ratio: 16 / 10; }
    .text-image__title[b-g2or9nskj8] { font-size: var(--text-h3); }
}
/* /Layouts/TileGrid/TileGrid.razor.rz.scp.css */
.tiles[b-dji4nqdypx] {
    background: linear-gradient(297.02deg, #000000 23.43%, #323232 88.6%);
    color: var(--color-text-white);
}

.tiles__head[b-dji4nqdypx] { margin-bottom: 40px; }

.tiles__title[b-dji4nqdypx] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-tile-h3); /* 42px */
    line-height: .9;
    text-transform: uppercase;
    text-align: left;
}

.tiles__body[b-dji4nqdypx] {
    margin: 16px 0 0;
    max-width: 640px;
    font-family: var(--font-body);
    font-size: var(--text-body);
    line-height: 1.5;
    opacity: .9;
}

.tiles__grid[b-dji4nqdypx] { display: grid; gap: var(--space-md); grid-auto-rows: auto; }
.tiles__grid--6[b-dji4nqdypx] { grid-template-columns: repeat(6, 1fr); }
.tiles__grid--4[b-dji4nqdypx] { grid-template-columns: repeat(4, 1fr); }
.tiles__grid--3[b-dji4nqdypx] { grid-template-columns: repeat(3, 1fr); }

.tiles__grid--staggered[b-dji4nqdypx] { grid-template-columns: repeat(6, 1fr); }

.tiles__split[b-dji4nqdypx] { display: flex; gap: var(--space-md); align-items: flex-start; }
.tiles__split--30-70 > .tiles__aside[b-dji4nqdypx] { flex: 0 0 30%; }
.tiles__split--30-70 > .tiles__grid[b-dji4nqdypx] { flex: 1 1 70%; }
.tiles__split--50-50 > .tiles__grid[b-dji4nqdypx] { flex: 1 1 50%; }
.tiles__split--50-50 > .tiles__image[b-dji4nqdypx] { flex: 1 1 50%; align-self: stretch; }
.tiles__split--30-70 .tiles__head[b-dji4nqdypx] { margin-bottom: 0; }

.tiles__image[b-dji4nqdypx] { margin: 0; overflow: hidden; background: var(--color-surface-accent-soft); min-height: 288px; }
.tiles__image img[b-dji4nqdypx] { width: 100%; height: 100%; object-fit: cover; }

.tile[b-dji4nqdypx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 24px 16px;
    text-align: center;
    overflow: hidden;
    aspect-ratio: 1 / 1;
}

.tile--white[b-dji4nqdypx],
.tile--silver[b-dji4nqdypx],
.tile--black[b-dji4nqdypx] {
    background: var(--color-surface-dark);
    color: var(--color-text-white);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.tile__caption[b-dji4nqdypx] {
    font-size: var(--text-label);
    text-align: center;
    font-family: "Futura XBlk BT", var(--font-display);
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 0;
    text-transform: uppercase;
}

.tile--header[b-dji4nqdypx] { justify-content: center; gap: 8px; }
.tile__header[b-dji4nqdypx] {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-h3); /* stat value reads big, distinct from an icon plate's caption */
    line-height: 1;
    text-transform: uppercase;
}
.tile__label[b-dji4nqdypx] {
    font-family: var(--font-body);
    font-size: var(--text-label);
    line-height: 1.3;
    opacity: .7;
}

@container layout-section (max-width: 1200px) {
    .tiles__grid--6[b-dji4nqdypx] { grid-template-columns: repeat(4, 1fr); }
}

@container layout-section (max-width: 1000px) {
    .tiles__grid--6[b-dji4nqdypx] { grid-template-columns: repeat(3, 1fr); }
    .tiles__grid--4[b-dji4nqdypx] { grid-template-columns: repeat(2, 1fr); }

    .tiles__grid--staggered[b-dji4nqdypx] { grid-template-columns: repeat(3, 1fr); }
    .tiles__grid--staggered .tile[b-dji4nqdypx] { grid-column: auto !important; grid-row: auto !important; }
    .tiles__split[b-dji4nqdypx] { flex-direction: column; }
    .tiles__split--30-70 > .tiles__aside[b-dji4nqdypx],
    .tiles__split--30-70 > .tiles__grid[b-dji4nqdypx],
    .tiles__split--50-50 > .tiles__grid[b-dji4nqdypx],
    .tiles__split--50-50 > .tiles__image[b-dji4nqdypx] { flex-basis: auto; width: 100%; }
}
