.ledger-hero__photo { object-fit: cover; object-position: 70% 30%; }
.ledger-hero__title { line-height: 1.2; letter-spacing: -.005em; }
.ledger-hero__lead { line-height: 1.55; }

.ledger-hero__diamond { width: 18rem; height: 18rem; transform: rotate(45deg); pointer-events: none; }
.ledger-hero__diamond--left { left: -3.5rem; top: -11rem; }
.ledger-hero__diamond--right { right: -6rem; bottom: -12rem; width: 22rem; height: 22rem; }

.ledger-hero__mark { width: 3rem; }
.ledger-hero__logo svg, .ledger-hero__logo img { display: block; width: 100%; height: auto; max-height: 1.75rem; }
.ledger-hero__brand { font-size: .4375rem; letter-spacing: .04em; word-break: break-word; }

@media (min-width: 768px) {
    .ledger-hero__mark { width: 3.5rem; }
    .ledger-hero__diamond--left { left: 1rem; top: -9rem; width: 13rem; height: 13rem; }
}

@media (min-width: 1024px) {
    .ledger-hero__mark { width: 6rem; }
    .ledger-hero__logo svg, .ledger-hero__logo img { max-height: 3.5rem; }
    .ledger-hero__brand { font-size: .6875rem; }
    .ledger-hero__diamond--left { left: 0; top: -10rem; width: 15rem; height: 15rem; }
    .ledger-hero__diamond--right { right: -3rem; bottom: -14rem; width: 26rem; height: 26rem; }
}

/* bootstrap parity — responsive sizes mirrored from the Tailwind utilities */
.ledger-hero__area.ledger-hero__area { position: relative; overflow: hidden; }
@media (min-width: 768px) { .ledger-hero__area.ledger-hero__area { min-height: 14rem; } }
@media (min-width: 1024px) { .ledger-hero__area.ledger-hero__area { min-height: 23.4375rem; } }

.ledger-hero__media.ledger-hero__media { position: relative; height: 6.25rem; }
@media (min-width: 768px) {
    .ledger-hero__media.ledger-hero__media { position: absolute; inset: 0; height: auto; }
}

.ledger-hero__diamond.ledger-hero__diamond { position: absolute; }

.ledger-hero__mark.ledger-hero__mark { position: absolute; right: 0.625rem; top: 0.625rem; padding: 0.375rem; }
@media (min-width: 768px) { .ledger-hero__mark.ledger-hero__mark { right: 1rem; top: 1.5rem; } }
@media (min-width: 1024px) { .ledger-hero__mark.ledger-hero__mark { right: 1.375rem; top: 1.875rem; padding: 0.625rem; } }

.ledger-hero__wrap.ledger-hero__wrap { max-width: 75rem; padding: 0.75rem 0.625rem 0.5rem; }
@media (min-width: 768px) { .ledger-hero__wrap.ledger-hero__wrap { padding-top: 1.5rem; padding-bottom: 1.75rem; } }
@media (min-width: 1024px) { .ledger-hero__wrap.ledger-hero__wrap { padding: 3.5rem 1rem 4rem; } }

@media (min-width: 768px) { .ledger-hero__inner.ledger-hero__inner { max-width: 37rem; } }
@media (min-width: 1024px) { .ledger-hero__inner.ledger-hero__inner { max-width: 38rem; margin-left: 0.875rem; } }

.ledger-hero__title.ledger-hero__title { font-size: 1.375rem; }
@media (min-width: 768px) { .ledger-hero__title.ledger-hero__title { font-size: 2rem; } }
@media (min-width: 1024px) { .ledger-hero__title.ledger-hero__title { font-size: 3rem; } }

.ledger-hero__lead.ledger-hero__lead { margin: 0.5rem 0 0; font-size: 1rem; }
@media (min-width: 768px) {
    .ledger-hero__lead.ledger-hero__lead { margin-top: 1rem; font-size: 1.0625rem; font-weight: 700; }
}
@media (min-width: 1024px) { .ledger-hero__lead.ledger-hero__lead { margin-top: 1.5rem; } }

.ledger-hero__btn.ledger-hero__btn {
    display: flex;
    width: 100%;
    margin-top: 1rem;
    padding: 0.625rem 1.25rem;
    border-radius: 0.75rem;
    font-size: 1.125rem;
}
@media (min-width: 768px) {
    .ledger-hero__btn.ledger-hero__btn {
        display: inline-flex;
        width: auto;
        margin-top: 1.25rem;
        border-radius: 0.5rem;
        font-size: 1rem;
    }
}
@media (min-width: 1024px) {
    .ledger-hero__btn.ledger-hero__btn { margin-left: 0.875rem; margin-top: 2rem; padding-block: 0.75rem; }
}

/* Bootstrap-only text colors: :where() has zero specificity, so Tailwind color utilities always win */
:where(.ledger-hero__title, .ledger-hero__lead) { color: var(--bs-emphasis-color); }
@media (min-width: 768px) {
    :where(.ledger-hero__title, .ledger-hero__lead) { color: var(--bs-white); }
}

.ledger-figures__title { line-height: 1.15; letter-spacing: -.005em; }
.ledger-figures__caption { line-height: 1.5; }
@media (min-width: 768px) { .ledger-figures__tile { min-height: 8.3rem; } }

/* Bootstrap parity — values mirror the Tailwind utilities exactly */
.ledger-figures { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.ledger-figures__wrap { max-width: 75rem; padding-left: 0.625rem; padding-right: 0.625rem; }
.ledger-figures__title { font-size: 2.375rem; }
.ledger-figures__grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 0.625rem;
    margin-top: 2rem;
}
.ledger-figures__tile { gap: 0.75rem; padding: 1.75rem 1.875rem 2rem; }
.ledger-figures__figure { font-size: 2rem; line-height: 1.25; }

@media (min-width: 768px) {
    .ledger-figures { padding-top: 2rem; }
    .ledger-figures__title { font-size: 2.25rem; }
    .ledger-figures__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; margin-top: 2.5rem; }
    .ledger-figures__tile { padding-top: 2.25rem; padding-bottom: 2.25rem; }
}

@media (min-width: 1024px) {
    .ledger-figures { padding-top: 2.5rem; padding-bottom: 0.5rem; }
    .ledger-figures__wrap { padding-left: 1rem; padding-right: 1rem; }
    .ledger-figures__title { font-size: 2.375rem; }
    .ledger-figures__tile { padding-bottom: 2.5rem; }
}

.ledger-pitch__title { line-height: 1.35; }
.ledger-pitch__text { line-height: 1.6; }
.ledger-pitch__media { aspect-ratio: 574 / 423; }
.ledger-pitch__img { object-fit: cover; object-position: center; }
.ledger-pitch__tagline { line-height: 1.4; text-shadow: none; }

/* Bootstrap parity — values mirror the Tailwind utilities exactly */
.ledger-pitch { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.ledger-pitch__wrap { max-width: 75rem; padding-left: .625rem; padding-right: .625rem; }
.ledger-pitch__grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    align-items: start;
    gap: 2rem;
}
.ledger-pitch__title { font-size: 1.5rem; }
.ledger-pitch__lead { margin-top: 1rem; }
.ledger-pitch__gap { margin-top: 1.5rem; }
.ledger-pitch__btn {
    margin-top: 2.5rem;
    gap: 1rem;
    padding: .875rem 1.25rem .875rem 1.125rem;
    line-height: 1.25;
    transition: background-color .15s cubic-bezier(.4, 0, .2, 1);
}
.ledger-pitch__rule { margin-left: 1.25rem; width: 1px; height: 1rem; }
.ledger-pitch__chev { font-size: .75rem; line-height: 1rem; }
.ledger-pitch__tagline { position: absolute; left: 1rem; right: 1rem; top: 12%; font-size: 1.25rem; }
.ledger-pitch__underline { margin-left: .375rem; padding-bottom: .125rem; border-bottom-width: 2px; border-bottom-style: solid; }

@media (min-width: 768px) {
    .ledger-pitch { padding-top: 2rem; }
    .ledger-pitch__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
    .ledger-pitch__tagline { font-size: 1.5625rem; }
}

@media (min-width: 1024px) {
    .ledger-pitch { padding-top: 3.125rem; }
    .ledger-pitch__wrap { padding-left: 1rem; padding-right: 1rem; }
    .ledger-pitch__title.ledger-pitch__title { font-size: 1.625rem; }
    .ledger-pitch__lead { margin-top: 1.5rem; }
    .ledger-pitch__btn { margin-top: 4.25rem; gap: 1.25rem; }
    .ledger-pitch__rule { margin-left: 2.25rem; }
}

.ledger-facts__title { line-height: 1.25; }
.ledger-facts__text { line-height: 1.5; }

/* bootstrap parity — values mirror the Tailwind utilities */
.ledger-facts {
    padding-top: 1.5rem;
    padding-bottom: 2.5rem;
}

.ledger-facts__wrap {
    max-width: 75rem;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
}

.ledger-facts__rule {
    height: 1px;
}

.ledger-facts__notch {
    margin-top: -1px;
    width: 2rem;
    height: 1rem;
}

.ledger-facts__title {
    font-size: 2rem;
}

.ledger-facts__grid {
    margin-top: 1.5rem;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
}

.ledger-facts__area {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
}

.ledger-facts__cta {
    margin-top: 2.5rem;
    gap: 1rem;
    padding: 0.875rem 1.25rem 0.875rem 1.125rem;
}

.ledger-facts__line {
    margin-left: 1.25rem;
    width: 1px;
    height: 1rem;
}

.ledger-facts__chev {
    font-size: 0.75rem;
}

@media (min-width: 768px) {
    .ledger-facts__grid {
        margin-top: 2.5rem;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ledger-facts__area {
        grid-column: span 2 / span 2;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .ledger-facts {
        padding-top: 2.5rem;
    }

    .ledger-facts__wrap {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .ledger-facts__grid {
        margin-top: 3.25rem;
    }

    .ledger-facts__area {
        margin-top: -0.375rem;
    }

    .ledger-facts__cta {
        margin-top: 3.25rem;
        gap: 1.25rem;
    }

    .ledger-facts__line {
        margin-left: 2.25rem;
    }
}

.ledger-route__title { line-height: 1.25; }
.ledger-route__title.ledger-route__title { font-size: 2rem; }
.ledger-route__text { line-height: 1.65; }
.ledger-route__list { line-height: 1.5; }
.ledger-route__summary.ledger-route__summary { list-style: none; cursor: pointer; padding-top: 1.25rem; padding-bottom: 1.25rem; }
.ledger-route__summary::-webkit-details-marker { display: none; }
.ledger-route__summary::marker { content: ""; }
.ledger-route__chev { font-size: 0.875rem; line-height: 1.25rem; transition: transform 200ms ease; }
.ledger-route__item[open] .ledger-route__chev { font-size: 0.875rem; line-height: 1.25rem; transform: rotate(180deg); }

/* Bootstrap parity — exact Tailwind values (identical in both frameworks) */
.ledger-route.ledger-route { padding-top: 1.5rem; padding-bottom: 2.5rem; }
.ledger-route__wrap.ledger-route__wrap { max-width: 75rem; padding-left: 0.625rem; padding-right: 0.625rem; }
.ledger-route__rule.ledger-route__rule { height: 1px; }
.ledger-route__notch.ledger-route__notch { margin-top: -1px; width: 2rem; height: 1rem; }
.ledger-route__grid.ledger-route__grid { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; margin-top: 1.5rem; }
.ledger-route__vline.ledger-route__vline { width: 1px; height: 1.5rem; }
.ledger-route__panel.ledger-route__panel { padding-top: 0.25rem; padding-bottom: 2rem; }
.ledger-route__list.ledger-route__list { margin-top: 1.25rem; padding-left: 1.125rem; list-style: disc; }
.ledger-route__point.ledger-route__point { padding-left: 0.125rem; }

@media (min-width: 768px) {
    .ledger-route__grid.ledger-route__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 2.5rem; }
}

@media (min-width: 1024px) {
    .ledger-route.ledger-route { padding-top: 2.5rem; }
    .ledger-route__wrap.ledger-route__wrap { padding-left: 1rem; padding-right: 1rem; }
    .ledger-route__grid.ledger-route__grid { margin-top: 3.25rem; }
    .ledger-route__intro.ledger-route__intro { padding-right: 3rem; }
    .ledger-route__acc.ledger-route__acc { margin-top: -0.5rem; }
    .ledger-route__summary.ledger-route__summary { padding-top: 1.5rem; padding-bottom: 1.5rem; }
    .ledger-route__panel.ledger-route__panel { padding-top: 0.5rem; }
}

.ledger-faculty__title { line-height: 1.25; }
.ledger-faculty__text { line-height: 1.65; }
.ledger-faculty__bio { line-height: 1.55; }
.ledger-faculty__slide.ledger-faculty__slide.is-off { display: none; }
.ledger-faculty__slide { animation: ledger-faculty-in 300ms ease; }
@keyframes ledger-faculty-in { from { opacity: 0; } to { opacity: 1; } }
.ledger-faculty__photo-box { aspect-ratio: 1 / 0.84; }
.ledger-faculty__photo { object-fit: cover; object-position: center top; }
.ledger-faculty__arrow { appearance: none; -webkit-appearance: none; cursor: pointer; width: 2rem; height: 2rem; font-size: 1rem; }
.ledger-faculty__dot { appearance: none; -webkit-appearance: none; cursor: pointer; width: .75rem; height: .75rem; transition: background-color 150ms ease; }
@media (min-width: 768px) {
    .ledger-faculty__photo-box { aspect-ratio: 1 / 1; }
    .ledger-faculty__slide { min-height: 16rem; }
}
@media (prefers-reduced-motion: reduce) { .ledger-faculty__slide { animation: none; } }

/* bootstrap parity — values mirror the Tailwind utilities */
.ledger-faculty {
    padding-top: 1.5rem;
    padding-bottom: 2.5rem;
}

.ledger-faculty__wrap {
    max-width: 75rem;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
}

.ledger-faculty__rule {
    height: 1px;
}

.ledger-faculty__notch {
    margin-top: -1px;
    width: 2rem;
    height: 1rem;
}

.ledger-faculty__title {
    font-size: 2rem;
}

.ledger-faculty__grid {
    margin-top: 1.5rem;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 1.5rem;
}

.ledger-faculty__text {
    margin-top: 0.75rem;
}

.ledger-faculty__bio {
    margin-top: 1.5rem;
}

.ledger-faculty__slide {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
}

.ledger-faculty__inner {
    padding: 1.25rem 0.875rem 1rem;
}

.ledger-faculty__nav {
    gap: 1rem;
    padding: 0.5rem 0.75rem 2rem;
}

@media (min-width: 768px) {
    .ledger-faculty__grid {
        margin-top: 2.5rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ledger-faculty__panel {
        margin-top: 0.375rem;
    }

    .ledger-faculty__slide {
        grid-template-columns: minmax(0, 1fr) 43%;
    }

    .ledger-faculty__inner {
        padding: 2.5rem 2.5rem 1.5rem;
    }

    .ledger-faculty__nav {
        gap: 1.5rem;
        padding-top: 1rem;
        padding-bottom: 2.5rem;
    }
}

@media (min-width: 1024px) {
    .ledger-faculty {
        padding-top: 2.5rem;
    }

    .ledger-faculty__wrap {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .ledger-faculty__grid {
        margin-top: 3.25rem;
    }
}

.ledger-support__title { line-height: 1.25; }
.ledger-support__text { line-height: 1.65; }
.ledger-support__item { line-height: 1.5; }

/* bootstrap parity — grid/spacing mirrored from the Tailwind utilities */
.ledger-support.ledger-support { padding: 1.5rem 0 2.5rem; }
@media (min-width: 1024px) { .ledger-support.ledger-support { padding-top: 2.5rem; } }

.ledger-support__wrap.ledger-support__wrap { max-width: 75rem; padding-inline: 0.625rem; }
@media (min-width: 1024px) { .ledger-support__wrap.ledger-support__wrap { padding-inline: 1rem; } }

.ledger-support__rule { height: 1px; }
.ledger-support__notch { width: 2rem; height: 1rem; margin-top: -1px; }

.ledger-support__grid.ledger-support__grid { margin-top: 1.5rem; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
@media (min-width: 768px) {
    .ledger-support__grid.ledger-support__grid { margin-top: 2.5rem; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 1.5rem; }
}
@media (min-width: 1024px) { .ledger-support__grid.ledger-support__grid { margin-top: 3.25rem; } }

.ledger-support__title.ledger-support__title { font-size: 2rem; }
.ledger-support__text.ledger-support__text { margin: 0.75rem 0 0; font-size: 1rem; }

.ledger-support__list.ledger-support__list {
    margin: 0;
    grid-template-columns: minmax(0, 1fr);
    column-gap: 1.5rem;
    row-gap: 1.25rem;
}
@media (min-width: 768px) {
    .ledger-support__list.ledger-support__list {
        grid-column: span 2 / span 2;
        grid-auto-flow: column;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: repeat(3, minmax(0, 1fr));
    }
}
@media (min-width: 1024px) { .ledger-support__list.ledger-support__list { margin-top: -0.5rem; } }

.ledger-support__tick.ledger-support__tick { padding-top: 0.125rem; }
.ledger-support__check { font-size: 1.25rem; }
.ledger-support__vrule { width: 1px; height: 1.25rem; }
.ledger-support__item.ledger-support__item { padding-top: 0.125rem; font-size: 1rem; }

.ledger-support__btn.ledger-support__btn {
    margin-top: 2.5rem;
    gap: 1rem;
    padding: 0.875rem 1.25rem 0.875rem 1.125rem;
    font-size: 1rem;
    line-height: 1.25;
}
@media (min-width: 1024px) { .ledger-support__btn.ledger-support__btn { margin-top: 4.25rem; gap: 1.25rem; } }
.ledger-support__cta-rule { width: 1px; height: 1rem; margin-left: 1.25rem; }
@media (min-width: 1024px) { .ledger-support__cta-rule { margin-left: 2.25rem; } }
.ledger-support__chev { font-size: 0.75rem; }

.ledger-assess__title { line-height: 1.25; }
.ledger-assess__text { line-height: 1.65; }

/* layout mirrors of the utility scale (identical values in both frameworks) */
.ledger-assess.ledger-assess {
    padding-top: 1.5rem;
    padding-bottom: 2.5rem;
}

.ledger-assess__wrap.ledger-assess__wrap {
    max-width: 75rem;
    padding-inline: 0.625rem;
}

.ledger-assess__rule.ledger-assess__rule {
    height: 1px;
}

.ledger-assess__notch.ledger-assess__notch {
    width: 2rem;
    height: 1rem;
    margin-top: -1px;
}

.ledger-assess__grid.ledger-assess__grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1.5rem;
}

.ledger-assess__title.ledger-assess__title {
    font-size: 2rem;
}

.ledger-assess__col.ledger-assess__col {
    gap: 1.5rem;
}

.ledger-assess__text.ledger-assess__text {
    font-size: 1rem;
}

@media (min-width: 768px) {
    .ledger-assess__grid.ledger-assess__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1.5rem;
        margin-top: 2.5rem;
    }
}

@media (min-width: 1024px) {
    .ledger-assess.ledger-assess {
        padding-top: 2.5rem;
    }

    .ledger-assess__wrap.ledger-assess__wrap {
        padding-inline: 1rem;
    }

    .ledger-assess__grid.ledger-assess__grid {
        margin-top: 3.25rem;
    }

    .ledger-assess__col.ledger-assess__col {
        padding-top: 0.25rem;
    }
}

.ledger-admit__title { line-height: 1.25; }
.ledger-admit__sub { line-height: 1.3; }
.ledger-admit__text { line-height: 1.5; }
.ledger-admit__list { line-height: 1.5; }
.ledger-admit__list > li + li { margin-top: .25rem; }

/* layout mirrors of the utility scale (identical values in both frameworks) */
.ledger-admit.ledger-admit {
    padding-top: 1.5rem;
    padding-bottom: 2.5rem;
}

.ledger-admit__wrap.ledger-admit__wrap {
    max-width: 75rem;
    padding-inline: 0.625rem;
}

.ledger-admit__rule.ledger-admit__rule {
    height: 1px;
}

.ledger-admit__notch.ledger-admit__notch {
    width: 2rem;
    height: 1rem;
    margin-top: -1px;
}

.ledger-admit__grid.ledger-admit__grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    align-items: flex-start;
    gap: 1.5rem;
    margin-top: 1.5rem;
}

.ledger-admit__title.ledger-admit__title {
    font-size: 2rem;
}

.ledger-admit__sub.ledger-admit__sub {
    font-size: 1.5rem;
}

.ledger-admit__text.ledger-admit__text {
    margin: 1.25rem 0 0;
    font-size: 1rem;
}

.ledger-admit__box.ledger-admit__box {
    padding: 1.75rem 1.25rem;
}

.ledger-admit__list.ledger-admit__list {
    margin: 1rem 0 0;
    padding-left: 1.125rem;
    font-size: 1rem;
}

@media (min-width: 768px) {
    .ledger-admit__grid.ledger-admit__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin-top: 2.5rem;
    }
}

@media (min-width: 1024px) {
    .ledger-admit.ledger-admit {
        padding-top: 2.5rem;
    }

    .ledger-admit__wrap.ledger-admit__wrap {
        padding-inline: 1rem;
    }

    .ledger-admit__grid.ledger-admit__grid {
        margin-top: 3.25rem;
    }

    .ledger-admit__box.ledger-admit__box {
        padding: 2rem 1.875rem 1.75rem;
    }
}

.ledger-alumni__title { line-height: 1.25; }
.ledger-alumni__sub { line-height: 1.3; }
.ledger-alumni__text { line-height: 1.6; }

/* Bootstrap parity — values identical to the Tailwind utilities */
.ledger-alumni { padding-top: 1.5rem; padding-bottom: 2.5rem; }
.ledger-alumni__wrap.ledger-alumni__wrap { padding-inline: 0.625rem; }
.ledger-alumni__line.ledger-alumni__line { height: 1px; flex: 1 1 0%; }
.ledger-alumni__notch.ledger-alumni__notch { width: 2rem; height: 1rem; margin-top: -1px; }
.ledger-alumni__title { font-size: 2rem; }
.ledger-alumni__text.ledger-alumni__text { margin-top: 0.75rem; }
.ledger-alumni__grid.ledger-alumni__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; margin-top: 1.5rem; }
.ledger-alumni__cta.ledger-alumni__cta { margin-top: 2.5rem; padding: 0.875rem 1.25rem 0.875rem 1.125rem; gap: 1rem; line-height: 1.25; }
.ledger-alumni__sep.ledger-alumni__sep { width: 1px; height: 1rem; margin-left: 1.25rem; }
.ledger-alumni__chev.ledger-alumni__chev { font-size: 0.75rem; line-height: 1rem; }
@media (min-width: 768px) {
    .ledger-alumni__grid.ledger-alumni__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 2.5rem; }
}
@media (min-width: 1024px) {
    .ledger-alumni { padding-top: 2.5rem; }
    .ledger-alumni__wrap.ledger-alumni__wrap { padding-inline: 1rem; }
    .ledger-alumni__grid.ledger-alumni__grid { margin-top: 3.25rem; }
    .ledger-alumni__cta.ledger-alumni__cta { margin-top: 3.25rem; gap: 1.25rem; }
    .ledger-alumni__sep.ledger-alumni__sep { margin-left: 2.25rem; }
}

.ledger-voices__title { line-height: 1.25; }
.ledger-voices__lead { line-height: 1.85; max-width: 72rem; }
.ledger-voices__band { height: 9rem; }
.ledger-voices__photo { object-fit: cover; object-position: right center; }
.ledger-voices__name { line-height: 1.4; }
.ledger-voices__quote { line-height: 1.5; }
.ledger-voices__story { line-height: 1.5; overflow: hidden; transition: max-height 300ms ease, opacity 300ms ease; max-height: 30rem; opacity: 1; }
.ledger-voices__story.ledger-voices__story.is-folded { max-height: 0; opacity: 0; margin-top: 0; }
.ledger-voices__toggle { appearance: none; -webkit-appearance: none; cursor: pointer; font: inherit; font-weight: 700; padding-top: .25rem; padding-bottom: .25rem; }
.ledger-voices__chev { transition: transform 200ms ease; }
.ledger-voices__toggle[aria-expanded="true"] .ledger-voices__chev { transform: rotate(90deg); }
@media (min-width: 768px) { .ledger-voices__band { height: 9.0625rem; } }
@media (prefers-reduced-motion: reduce) { .ledger-voices__story, .ledger-voices__chev { transition: none; } }

/* Bootstrap parity — values identical to the Tailwind utilities */
.ledger-voices.ledger-voices { padding-top: 1.5rem; padding-bottom: 2.5rem; }
.ledger-voices__wrap.ledger-voices__wrap { padding-inline: 0.625rem; }
.ledger-voices__line.ledger-voices__line { height: 1px; flex: 1 1 0%; }
.ledger-voices__notch.ledger-voices__notch { width: 2rem; height: 1rem; margin-top: -1px; }
.ledger-voices__inner.ledger-voices__inner { margin-top: 1.5rem; }
.ledger-voices__title { font-size: 2rem; }
.ledger-voices__lead.ledger-voices__lead { margin: 1rem 0 0; }
.ledger-voices__grid.ledger-voices__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.25rem; margin-top: 2rem; }
.ledger-voices__wash {
    /* Tailwind defines --tw-gradient-stops (from/via/to utilities) and keeps its own look; Bootstrap falls back to theme tokens */
    background-image: linear-gradient(to right, var(--tw-gradient-stops, color-mix(in srgb, var(--bs-emphasis-color) 75%, transparent), color-mix(in srgb, var(--bs-emphasis-color) 45%, transparent), transparent));
}
.ledger-voices__over.ledger-voices__over { padding-inline: 1.875rem; padding-bottom: 0.875rem; }
.ledger-voices__name { font-size: 1.25rem; }
.ledger-voices__body.ledger-voices__body { padding: 1.5rem 1.875rem 1.25rem; }
.ledger-voices__story { margin-top: 0.75rem; }
.ledger-voices__toggle.ledger-voices__toggle { padding-inline: 0; }
.ledger-voices__sep.ledger-voices__sep { width: 1px; height: 1rem; }
.ledger-voices__chev { font-size: 0.75rem; line-height: 1rem; }
@media (min-width: 768px) {
    .ledger-voices__inner.ledger-voices__inner { margin-top: 2.5rem; }
    .ledger-voices__grid.ledger-voices__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 1px; row-gap: 1.25rem; }
}
@media (min-width: 1024px) {
    .ledger-voices.ledger-voices { padding-top: 2.5rem; }
    .ledger-voices__wrap.ledger-voices__wrap { padding-inline: 1rem; }
    .ledger-voices__inner.ledger-voices__inner { margin-top: 2.75rem; }
    .ledger-voices__grid.ledger-voices__grid { margin-top: 3.5rem; }
}

.ledger-brochure [hidden] { display: none !important; }
.ledger-brochure__title { line-height: 1.25; }
.ledger-brochure__text { line-height: 1.55; }
.ledger-brochure__ctrl:focus-visible { outline: 2px solid currentColor; outline-offset: 1px; }
.ledger-brochure__ctrl.is-invalid { border-width: 2px; }
.ledger-brochure__ctrl.is-invalid.is-invalid.is-invalid { border-width: 2px !important; }
.ledger-brochure__select { appearance: none; -webkit-appearance: none; cursor: pointer; padding-right: 3.5rem; }
.ledger-brochure__check { width: 1.5rem; height: 1.5rem; margin: 0; cursor: pointer; }
.ledger-brochure__consent { line-height: 1.85; }
.ledger-brochure__btn { appearance: none; -webkit-appearance: none; cursor: pointer; font: inherit; min-width: 9.75rem; }

/* Bootstrap-mode parity (values mirror the Tailwind classes) */
.ledger-brochure.ledger-brochure { scroll-margin-top: 1rem; padding-top: 1rem; padding-bottom: 2.5rem; }
.ledger-brochure__wrap.ledger-brochure__wrap { max-width: 75rem; padding-inline: 0.625rem; }
.ledger-brochure__box.ledger-brochure__box { grid-template-columns: repeat(1, minmax(0, 1fr)); gap: 1.5rem; padding: 1.75rem 1.25rem 2rem; }
.ledger-brochure__title.ledger-brochure__title { font-size: 2rem; }
.ledger-brochure__text.ledger-brochure__text { margin: 1rem 0 0; }
.ledger-brochure__note.ledger-brochure__note { margin: 0 0 0.5rem; }
.ledger-brochure__label.ledger-brochure__label { gap: 0.375rem; font-size: 0.6875rem; }
.ledger-brochure__ctrl.ledger-brochure__ctrl { height: 2.5rem; font-size: 1rem; line-height: 1.5rem; }
.ledger-brochure__ctrl.ledger-brochure__ctrl:not(.ledger-brochure__select) { padding: 0 0.625rem; }
.ledger-brochure__select.ledger-brochure__select { padding-left: 0.625rem; }
.ledger-brochure__err.ledger-brochure__err { font-size: 0.875rem; line-height: 1.25rem; }
.ledger-brochure__chev.ledger-brochure__chev { gap: 0.75rem; padding-right: 0.75rem; }
.ledger-brochure__rule { width: 1px; height: 1.5rem; }
.ledger-brochure__chev-i.ledger-brochure__chev-i { font-size: 0.875rem; line-height: 1.25rem; }
.ledger-brochure__slot.ledger-brochure__slot { margin-top: 1.25rem; }
.ledger-brochure__consent.ledger-brochure__consent { gap: 1rem; cursor: pointer; }
.ledger-brochure__check.ledger-brochure__check { width: 1.5rem; height: 1.5rem; }
.ledger-brochure__btn.ledger-brochure__btn { margin-top: 1.25rem; padding: 0.875rem 1.25rem; font-size: 0.875rem; line-height: 1.25rem; }
@media (min-width: 768px) {
    .ledger-brochure__box.ledger-brochure__box { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ledger-brochure__fields { max-width: 25rem; }
}
@media (min-width: 1024px) {
    .ledger-brochure.ledger-brochure { padding-top: 2rem; padding-bottom: 3rem; }
    .ledger-brochure__wrap.ledger-brochure__wrap { padding-inline: 1rem; }
    .ledger-brochure__box.ledger-brochure__box { padding: 2.75rem 1.875rem 2.25rem; }
    .ledger-brochure__note.ledger-brochure__note { margin-top: -0.5rem; }
}

