.content-trio-showcase__image {
    display: block;
    width: 100%;
    height: 10rem;
    object-fit: cover;
}

.content-trio-showcase__image--tall {
    height: 14rem;
}

.content-trio-showcase__image--short {
    height: 8rem;
}

.content-trio-showcase__card-lift {
    transition: transform 180ms ease;
}

.content-trio-showcase__card-lift:hover {
    transform: translateY(-0.25rem);
}

.content-trio-showcase__float {
    animation: content-trio-showcase-float 7s ease-in-out infinite;
}

.content-trio-showcase__rail {
    width: 100%;
    height: 0.25rem;
}

.content-trio-showcase__thumb {
    width: 7rem;
    height: 5rem;
}

.content-trio-showcase__badge {
    width: 2.5rem;
    height: 2.5rem;
}

@media (min-width: 768px) {
    .content-trio-showcase__rail {
        width: 0.25rem;
        height: auto;
    }
}

@keyframes content-trio-showcase-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(0.5rem); }
}

.content-trio-showcase__dot {
    width: 0.5rem;
    height: 0.5rem;
}

.content-trio-showcase__float {
    width: 6rem;
    height: 6rem;
}

@media (min-width: 768px) {
    .content-trio-showcase__offset {
        margin-top: 2.5rem;
    }
}

.content-river__arc {
    width: 18rem;
    height: 18rem;
}

.content-river__node {
    width: 0.75rem;
    height: 0.75rem;
    transform: translate(-50%, -50%);
}

@media (min-width: 768px) {
    .content-river__copy--right {
        grid-column-start: 2;
    }

    .content-river__copy--left {
        grid-column-start: 1;
        grid-row-start: 1;
    }

    .content-river__spacer--left {
        order: 2;
    }
}

/* Decor geometry (layout only; colors stay in Blade / @sem) */
.leaflet-document__decor-1 {
    position: absolute;
    width: 8rem;
    height: 8rem;
    top: 0;
    left: 0;
    transform: translate(-4rem, -4rem);
    z-index: 0;
    pointer-events: none;
}

.leaflet-document__decor-2 {
    position: absolute;
    width: 12rem;
    height: 12rem;
    bottom: 0;
    right: 0;
    transform: translate(6rem, 6rem);
    z-index: 0;
    pointer-events: none;
}

.leaflet-document__decor-3 {
    position: absolute;
    width: 6rem;
    height: 6rem;
    top: 50%;
    right: 0;
    transform: translate(3rem, -50%);
    z-index: 0;
    pointer-events: none;
}

.leaflet-document__decor-4 {
    position: absolute;
    width: 4rem;
    height: 4rem;
    left: 25%;
    bottom: 25%;
    transform: translate(-50%, 50%);
    z-index: 0;
    pointer-events: none;
}

.leaflet-document__divider-bar {
    height: 0.25rem;
}

.leaflet-document__title-trail { margin-bottom: 2rem; }

.leaflet-document__rule-trail { margin-bottom: 3rem; }

.leaflet-document__wrapper-section-pad {
    padding-top: 6rem;
    padding-bottom: 6rem;
}

.content-prose-measure {
    max-width: 48rem;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.content-heading-gap {
    margin-bottom: 2rem;
}

.content-col-grow {
    flex: 1 1 0%;
    min-width: 0;
}

.content-img-fill {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 16rem;
    min-width: 0;
    object-fit: cover;
    flex-shrink: 0;
}

.narrative-chapter__column-inset {
    padding: 4rem;
}

.outlook-mission__icon-box {
    width: 3.5rem;
    height: 3.5rem;
}

.outlook-mission__grid {
    column-count: 1;
    column-gap: 1.5rem;
}

@media (min-width: 640px) {
    .outlook-mission__grid {
        column-count: 2;
    }
}

@media (min-width: 1024px) {
    .outlook-mission__grid {
        column-count: 3;
    }
}

.outlook-mission__item {
    margin-bottom: 1.5rem;
    break-inside: avoid;
}

.outlook-mission__icon-box-sm {
    width: 3rem;
    height: 3rem;
}

.content-brief__float-square {
    width: 4rem;
    height: 4rem;
}

.content-brief__float-square--slow {
    animation: content-brief-float-slow 10s ease-in-out infinite;
}

.content-brief__float-square--fast {
    animation: content-brief-float-fast 7s ease-in-out infinite;
}

@keyframes content-brief-float-slow {
    0%,
    100% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-8px) rotate(6deg);
    }
}

@keyframes content-brief-float-fast {
    0%,
    100% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(8px) rotate(-7deg);
    }
}

.content-margin-notes__aside {
    align-self: start;
}

@media (min-width: 992px) {
    .content-margin-notes__aside {
        position: sticky;
        top: 2rem;
    }
}

/* values split v16 - layout/size only, no colors */
.values-split__decor-circle {
    aspect-ratio: 1 / 1;
}

.values-split__numeral {
    line-height: 0.85;
    letter-spacing: -0.04em;
}

.values-split__row {
    will-change: transform;
}

