.site-main:has(.apply-page),
.brand-content:has(.apply-page) { padding: 0 !important; }

.apply-page {
    --apply-red: #ef4938;
    --apply-yellow: #f4c84b;
    --apply-blue: #17304f;
    --apply-cream: #f2eadc;
    --apply-ink: #151515;
    --apply-line: rgba(21, 21, 21, .17);
    width: 100%;
    color: var(--apply-ink);
}

.apply-page h1, .apply-page h2, .apply-page h3 { color: inherit; }
.apply-page em { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.apply-label { display: flex; align-items: center; gap: .65rem; font-size: .64rem; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.apply-label::before { content: ''; width: 1.8rem; height: 1px; background: currentColor; }
.apply-label--light { color: rgba(255, 255, 255, .58); }

.apply-hero {
    position: relative;
    min-height: calc(100svh - 4.5rem);
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 4rem clamp(1rem, 4vw, 4.5rem);
    overflow: hidden;
    background: var(--apply-yellow);
}

.apply-hero::after { content: '→'; position: absolute; right: -.1em; bottom: -.28em; color: rgba(255, 255, 255, .45); font-size: clamp(22rem, 45vw, 42rem); font-weight: 900; line-height: 1; }
.apply-hero__inner { position: relative; z-index: 1; }
.brand-content .apply-page .apply-hero h1 { max-width: 10ch; margin: 1.5rem 0; color: var(--apply-ink) !important; font-size: clamp(3.6rem, 14vw, 8.4rem); line-height: .82; letter-spacing: -.08em; }
.apply-hero h1 em { display: block; color: var(--apply-red); }
.apply-hero__intro { max-width: 40rem; margin: 0; color: #6f5e2e; font-size: clamp(1rem, 2vw, 1.15rem); }
.apply-hero__actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 2rem; }
.apply-hero__free { display: flex; align-items: center; gap: .8rem; margin-top: 2rem; font-size: .65rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.apply-hero__free b { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: 50%; background: var(--apply-red); color: #fff; }

.apply-dates { display: grid; background: var(--apply-ink); color: #fff; }
.apply-date { padding: 1.1rem clamp(1rem, 4vw, 1.8rem); border-bottom: 1px solid rgba(255, 255, 255, .15); }
.apply-date span, .apply-date strong { display: block; }
.apply-date span { color: rgba(255, 255, 255, .45); font-size: .55rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.apply-date strong { color: #fff; font-size: .82rem; }
.apply-date--key { background: var(--apply-red); }

.apply-section { padding: 5rem clamp(1rem, 4vw, 4.5rem); }
.apply-section--cream { background: var(--apply-cream); }
.apply-section--paper { background: #fff; }
.apply-section--navy { background: var(--apply-blue); color: #fff; }
.apply-section--red { background: var(--apply-red); color: #fff; }
.apply-section--yellow { background: var(--apply-yellow); }
.apply-section__head { display: grid; gap: 1.5rem; margin-bottom: 3rem; }
.apply-section__head h2 { margin: 1.1rem 0 0; font-size: clamp(2.7rem, 9vw, 5.8rem); line-height: .9; letter-spacing: -.065em; }
.apply-section__head h2 em { color: var(--apply-red); }
.apply-section--navy .apply-section__head h2 em, .apply-section--red .apply-section__head h2 em { color: var(--apply-yellow); }
.apply-section__head p { max-width: 36rem; margin: 0; color: #6e665d; }
.apply-section--navy .apply-section__head p, .apply-section--red .apply-section__head p { color: rgba(255, 255, 255, .65); }

.apply-steps { display: grid; border-top: 1px solid var(--apply-line); }
.apply-step { padding: 2rem 0; border-bottom: 1px solid var(--apply-line); }
.apply-step__number { color: var(--apply-red); font-size: .62rem; font-weight: 900; letter-spacing: .12em; }
.apply-step h3 { margin: .7rem 0 1rem; font-size: clamp(1.6rem, 5vw, 2.4rem); line-height: 1; }
.apply-step > p { color: #6c645b; font-size: .84rem; }
.apply-step ul, .apply-info-card ul, .apply-panel ul, .apply-stage-card ul { margin: 0; padding: 0; list-style: none; }
.apply-step li, .apply-info-card li, .apply-panel li, .apply-stage-card li { position: relative; padding: .55rem 0 .55rem 1.15rem; border-bottom: 1px solid var(--apply-line); font-size: .78rem; }
.apply-step li::before, .apply-info-card li::before, .apply-panel li::before, .apply-stage-card li::before { content: '→'; position: absolute; left: 0; color: var(--apply-red); font-weight: 900; }
.apply-step__note { margin-top: 1rem !important; padding: 1rem; border-left: 4px solid var(--apply-yellow); background: rgba(244, 200, 75, .18); }

.apply-info-grid { display: grid; border-top: 1px solid rgba(255, 255, 255, .2); }
.apply-info-card { padding: 2rem 0; border-bottom: 1px solid rgba(255, 255, 255, .2); }
.apply-info-card > span { color: var(--apply-yellow); font-size: .6rem; font-weight: 900; letter-spacing: .1em; }
.apply-info-card h3 { margin: .6rem 0 1rem; color: #fff; font-size: 1.65rem; }
.apply-info-card > p { color: rgba(255, 255, 255, .62); font-size: .82rem; }
.apply-info-card li { border-color: rgba(255, 255, 255, .15); color: rgba(255, 255, 255, .72); }
.apply-info-card li::before { color: var(--apply-yellow); }

.apply-panels { display: grid; gap: 1rem; }
.apply-panel { padding: 1.7rem; background: #fff; }
.apply-panel--dark { background: var(--apply-ink); color: #fff; }
.apply-panel h3 { margin: 0 0 1rem; font-size: 1.65rem; }
.apply-panel > p { color: #6d655c; font-size: .82rem; }
.apply-panel--dark > p { color: rgba(255, 255, 255, .62); }
.apply-panel--dark li { border-color: rgba(255, 255, 255, .15); }
.apply-panel--dark li::before { color: var(--apply-yellow); }

.apply-screening { display: grid; gap: 2rem; }
.apply-statuses { display: flex; flex-wrap: wrap; align-content: flex-start; gap: .5rem; }
.apply-statuses span { padding: .65rem .75rem; border: 1px solid rgba(255, 255, 255, .35); color: #fff; font-size: .63rem; font-weight: 750; }
.apply-corrections { border-top: 1px solid rgba(255, 255, 255, .22); counter-reset: corrections; }
.apply-corrections p { counter-increment: corrections; display: grid; grid-template-columns: 2.5rem 1fr; margin: 0; padding: .7rem 0; border-bottom: 1px solid rgba(255, 255, 255, .22); color: rgba(255, 255, 255, .76); font-size: .78rem; }
.apply-corrections p::before { content: counter(corrections, decimal-leading-zero); color: var(--apply-yellow); font-size: .58rem; font-weight: 900; }

.apply-stage-grid { display: grid; gap: .75rem; }
.apply-stage-card { padding: 1.5rem; background: var(--apply-yellow); }
.apply-stage-card:nth-child(2) { background: var(--apply-blue); color: #fff; }
.apply-stage-card:nth-child(3) { background: var(--apply-red); color: #fff; }
.apply-stage-card span { font-size: .58rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.apply-stage-card h3 { margin: .6rem 0 1rem; font-size: 1.8rem; }
.apply-stage-card:nth-child(n+2) li { border-color: rgba(255, 255, 255, .2); }
.apply-stage-card:nth-child(n+2) li::before { color: var(--apply-yellow); }

.apply-checklist { display: grid; border-top: 2px solid var(--apply-ink); }
.apply-checklist p { display: grid; grid-template-columns: 2rem 1fr; margin: 0; padding: .75rem 0; border-bottom: 1px solid rgba(21, 21, 21, .3); font-size: .78rem; }
.apply-checklist b { color: var(--apply-red); font-size: .58rem; }

.apply-contact { display: grid; gap: 3rem; padding: 5rem clamp(1rem, 4vw, 4.5rem); background: var(--apply-ink); color: #fff; }
.apply-contact h2 { margin: 1rem 0; color: #fff; font-size: clamp(2.8rem, 9vw, 5.8rem); line-height: .9; }
.apply-contact h2 em { color: var(--apply-yellow); }
.apply-contact p { color: rgba(255, 255, 255, .62); }
.apply-contact__details { border-top: 1px solid rgba(255, 255, 255, .2); }
.apply-contact__details p { margin: 0; padding: .75rem 0; border-bottom: 1px solid rgba(255, 255, 255, .2); }
.apply-contact__details b { display: block; color: var(--apply-yellow); font-size: .55rem; letter-spacing: .1em; text-transform: uppercase; }

@media (min-width: 768px) {
    .apply-hero__inner { max-width: 72%; }
    .apply-dates { grid-template-columns: repeat(4, 1fr); }
    .apply-date { border-right: 1px solid rgba(255, 255, 255, .15); border-bottom: 0; }
    .apply-section { padding-top: 7rem; padding-bottom: 7rem; }
    .apply-section__head { grid-template-columns: 1.2fr .8fr; align-items: end; }
    .apply-steps, .apply-info-grid { grid-template-columns: 1fr 1fr; }
    .apply-step, .apply-info-card { padding: 2.4rem; }
    .apply-step:nth-child(odd) { padding-left: 0; border-right: 1px solid var(--apply-line); }
    .apply-info-card:nth-child(odd) { padding-left: 0; border-right: 1px solid rgba(255, 255, 255, .2); }
    .apply-panels { grid-template-columns: 1fr 1fr; }
    .apply-screening { grid-template-columns: 1fr 1fr; }
    .apply-stage-grid { grid-template-columns: repeat(3, 1fr); }
    .apply-contact { grid-template-columns: 1fr 1fr; align-items: end; padding-top: 7rem; padding-bottom: 7rem; }
}
