.simab-carousel {
    max-width: var(--wp--style--global--wide-size);
    margin: var(--wp--preset--spacing--40) auto 0;
}

.simab-carousel__toolbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--wp--preset--spacing--20);
    margin-bottom: var(--wp--preset--spacing--20);
}

.simab-carousel__status {
    margin: 0;
    color: var(--sb-muted);
    font-size: var(--wp--preset--font-size--small);
    font-variant-numeric: tabular-nums;
}

.simab-carousel__buttons {
    display: flex;
    gap: calc(var(--wp--preset--spacing--20) / 2);
}

.simab-carousel__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    padding: 0;
    border: 0.0625rem solid var(--sb-line);
    border-radius: 50%;
    background: var(--wp--preset--color--base);
    color: var(--sb-ink);
    cursor: pointer;
}

.simab-carousel__button:hover:not(:disabled) {
    border-color: var(--sb-blue);
    color: var(--sb-blue);
}

.simab-carousel__button:disabled {
    cursor: default;
    opacity: 0.42;
}

.simab-carousel__button svg,
.simab-story__back svg {
    width: 1.25rem;
    height: 1.25rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.simab-carousel__track {
    list-style: none;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(13rem, 1fr);
    gap: var(--wp--preset--spacing--30);
    margin: 0;
    padding: 0 0 var(--wp--preset--spacing--20);
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scrollbar-width: thin;
    scrollbar-color: var(--sb-muted) transparent;
}

.simab-carousel__item {
    display: flex;
    min-height: 7rem;
    margin: 0;
    padding: var(--wp--preset--spacing--30);
    scroll-snap-align: start;
    background: var(--wp--preset--color--base);
    border: 0.0625rem solid var(--sb-line);
    border-radius: var(--sb-radius);
    box-shadow: var(--sb-shadow-sm);
}

.simab-carousel__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 2.75rem;
    border-radius: calc(var(--sb-radius) / 2);
}

.simab-carousel__logo {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 4rem;
    object-fit: contain;
    opacity: 0.8;
}

.simab-carousel__link:hover .simab-carousel__logo,
.simab-carousel__link:focus-visible .simab-carousel__logo {
    opacity: 1;
}

.simab-carousel__wordmark {
    color: var(--sb-muted);
    font-size: var(--wp--preset--font-size--small);
    font-weight: 800;
    letter-spacing: 0.06em;
    text-align: center;
}

.simab-carousel__editor-empty {
    padding: var(--wp--preset--spacing--30);
    border: 0.0625rem solid var(--sb-line);
    border-radius: var(--sb-radius);
    background: var(--wp--preset--color--base);
    color: var(--sb-muted);
}

.simab-story {
    background: var(--sb-surface);
}

.simab-story__hero {
    padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--50);
    background: linear-gradient(180deg, var(--sb-navy), var(--sb-navy-2));
    color: var(--wp--preset--color--base);
}

.simab-story__hero-inner,
.simab-story__content,
.simab-story__next {
    box-sizing: border-box;
    width: min(100%, var(--wp--style--global--wide-size));
    margin-inline: auto;
}

.simab-story__hero h1 {
    max-width: 18ch;
    margin-bottom: 0;
    color: var(--wp--preset--color--base);
}

.simab-story__back {
    display: inline-flex;
    align-items: center;
    min-height: 2.75rem;
    margin-bottom: var(--wp--preset--spacing--40);
    color: var(--wp--preset--color--base);
    font-weight: 700;
}

.simab-story__back:hover {
    color: var(--wp--preset--color--base);
}

.simab-story__logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 9rem;
    min-height: 5.5rem;
    margin-block: var(--wp--preset--spacing--30);
    padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
    border-radius: var(--sb-radius);
    background: var(--wp--preset--color--base);
}

.simab-story__logo img {
    width: auto;
    max-width: 14rem;
    height: auto;
    max-height: 4.5rem;
    object-fit: contain;
}

.simab-story__lede {
    max-width: 62ch;
    color: var(--wp--preset--color--sky);
    font-size: var(--wp--preset--font-size--large);
}

.simab-story__content {
    padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--50);
    background: var(--wp--preset--color--base);
}

.simab-story__content > * {
    max-width: var(--wp--style--global--content-size);
}

.simab-story__editor-note {
    color: var(--sb-muted);
}

.simab-story__next {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--wp--preset--spacing--50);
    padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--50);
}

.simab-story__next h2 {
    margin-block: 0 var(--wp--preset--spacing--20);
}

.simab-story__next p {
    max-width: 58ch;
    color: var(--sb-muted);
}

.simab-story__actions {
    display: flex;
    flex: none;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--20);
}

.simab-story__website {
    min-height: 2.75rem;
    font-weight: 700;
}

@media (max-width: 48rem) {
    .simab-carousel__track {
        grid-auto-columns: minmax(11rem, 80%);
    }

    .simab-story__next {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (prefers-reduced-motion: no-preference) {
    .simab-carousel__track {
        scroll-behavior: smooth;
    }

    .simab-carousel__button,
    .simab-carousel__logo {
        transition: color 0.2s var(--sb-ease), border-color 0.2s var(--sb-ease), opacity 0.2s var(--sb-ease);
    }
}

@media (prefers-contrast: more) {
    .simab-carousel__item,
    .simab-carousel__button {
        border-color: currentColor;
    }
}

@media (forced-colors: active) {
    .simab-carousel__item,
    .simab-carousel__button,
    .simab-story__logo {
        border: 0.0625rem solid CanvasText;
    }
}
