.container {
    width: min(calc(100% - 2rem), var(--max-width));
    margin-inline: auto;
}

.section {
    padding: var(--space-16) 0;
}

.section-dark {
    background: var(--color-charcoal);
    color: var(--color-paper);
}

.section-maroon {
    background: var(--color-maroon-dark);
    color: var(--color-paper);
}

.section-heading {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: var(--space-8);
    margin-bottom: var(--space-8);
}

.section-heading p {
    color: var(--color-muted);
    margin-bottom: 0;
}

.section-dark .section-heading p,
.section-maroon .section-heading p {
    color: rgba(253, 251, 247, .68);
}

.grid {
    display: grid;
    gap: var(--space-6);
}

.grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.split {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
    gap: var(--space-12);
    align-items: center;
}

.content-narrow {
    max-width: 760px;
}

.stack>*+* {
    margin-top: var(--space-4);
}

.page-hero {
    padding: var(--space-16) 0 var(--space-12);
    background: var(--color-charcoal);
    color: var(--color-paper);
    position: relative;
    overflow: hidden;
}

.page-hero::after {
    content: '';
    position: absolute;
    width: 28rem;
    height: 28rem;
    right: -12rem;
    top: -12rem;
    border: 1px solid rgba(215, 168, 75, .25);
    border-radius: 50%;
    box-shadow: 0 0 0 4rem rgba(215, 168, 75, .04), 0 0 0 8rem rgba(215, 168, 75, .03);
}

.page-hero .container {
    position: relative;
    z-index: 1;
}

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    color: var(--color-gold-soft);
    font-family: var(--font-accent);
    font-size: .78rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-bottom: var(--space-4);
}

.breadcrumb a {
    text-decoration: none;
}

.breadcrumb a:hover {
    color: var(--color-white);
}

.hero {
    min-height: min(720px, 82vh);
    display: flex;
    align-items: end;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: var(--color-paper);
    background: var(--color-charcoal);
}

.hero::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -2;
    background: linear-gradient(90deg, rgba(18, 18, 18, .94) 0%, rgba(18, 18, 18, .68) 48%, rgba(18, 18, 18, .18) 100%), url('https://images.unsplash.com/photo-1576280314550-773c50583407?auto=format&fit=crop&w=1800&q=82') center/cover;
}

.hero::after {
    content: '';
    position: absolute;
    inset: auto 0 0;
    height: 35%;
    z-index: -1;
    background: linear-gradient(0deg, var(--color-charcoal), transparent);
}

.hero-content {
    padding: var(--space-16) 0 var(--space-12);
    max-width: 780px;
}

.hero-kicker {
    color: var(--color-gold-soft);
}

.hero p {
    color: rgba(253, 251, 247, .8);
    font-size: clamp(1rem, 2vw, 1.25rem);
    max-width: 620px;
}

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-3);
    margin-top: var(--space-8);
}