.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;
    object-fit: cover;
}

.content-flex-min {
    min-width: 0;
}

.content-flex-min {
    min-width: 0;
}

.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-watermark__ghost {
    transform: translateX(-50%);
}

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

.content-grid-gap {
    gap: 2rem;
}

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

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

.content-img-fullheight {
    display: block;
    width: 100%;
    height: 16rem;
    min-height: 16rem;
    flex-shrink: 0;
    object-fit: cover;
}
@media (min-width: 992px) {
    .content-img-fullheight {
        height: 100%;
        min-height: 16rem;
    }
}

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

.document-folio__photo--shift:hover { transform: scale(1.05); transition: transform .2s ease; }

.document-folio__appeal--shift:hover { transform: scale(1.05); transition: transform .2s ease; }

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

.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-index-sheet__shell {
    display: grid;
    grid-template-columns: minmax(14rem, 18rem) minmax(0, 1fr);
    width: 100%;
}

.content-index-sheet__shell .rounded-circle,
.content-index-sheet__shell [class*="rounded-full"] {
    flex-shrink: 0;
}

@media (max-width: 991.98px) {
    .content-index-sheet__shell {
        grid-template-columns: 1fr;
    }
}

/* Values v22 - Bauhaus asymmetric grid geometric accents (layout/shape only, no colors) */

/* Match TW container (~1280–1536px); default BS .container caps at 1140px */
.values-bauhaus__wrap {
    max-width: 96rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

/* Shared shape sizing/position; hover scale+rotate is triggered by the parent card via
   the arbitrary-variant selector hover:[&_.values-bauhaus__shape]:scale-125 / :rotate-12
   authored in component.html tw:. Renaming this class requires updating that selector too. */
.values-bauhaus__shape {
    position: absolute;
    top: -1.5rem;
    right: -1.5rem;
    width: 6rem;
    height: 6rem;
    opacity: 0.16;
    pointer-events: none;
    transition: transform 300ms ease;
}

/* featured card - large ring */
.values-bauhaus__shape--00 {
    top: -2.5rem;
    right: -2.5rem;
    width: 10rem;
    height: 10rem;
    border-radius: 9999px;
    border: 0.75rem solid currentColor;
    background: transparent;
    opacity: 0.12;
}

/* circle */
.values-bauhaus__shape--01 {
    border-radius: 9999px;
    background: currentColor;
}

/* triangle */
.values-bauhaus__shape--02 {
    background: currentColor;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

/* square rotated */
.values-bauhaus__shape--03 {
    background: currentColor;
    transform: rotate(15deg);
}

/* half circle */
.values-bauhaus__shape--04 {
    border-radius: 9999px 9999px 0 0;
    background: currentColor;
}

/* diamond */
.values-bauhaus__shape--05 {
    background: currentColor;
    clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}

