.students-page-shell {
    --students-ink: var(--neutral-800);
    --students-ink-soft: var(--neutral-600);
    --students-panel: var(--neutral-50);
    --students-card: var(--neutral-50);
    --students-line: var(--neutral-200);
    --students-primary: var(--primary-color);
    --students-primary-strong: var(--primary-hover);
    --students-accent: var(--secondary-color);
    --students-accent-soft: var(--secondary-light);
    --students-success: var(--success);
    padding: 1rem 0 2rem;
    color: var(--students-ink);
}

.students-page-content {
    display: grid;
    gap: 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

.students-marketing-page {
    display: grid;
    gap: 2rem;
}

.students-hero,
.students-section,
.students-highlight,
.students-closing-cta {
    border: 1px solid var(--students-line);
    border-radius: 28px;
    background: var(--students-card);
    box-shadow: var(--shadow-xl);
}

.students-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.9fr);
    gap: 1.5rem;
    padding: 1.5rem;
    background:
        linear-gradient(135deg, var(--neutral-50) 0%, var(--primary-light) 70%, var(--secondary-light) 100%);
}

.students-eyebrow,
.students-kicker,
.students-panel-label {
    margin: 0 0 0.75rem;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--students-primary);
}

.students-hero h1,
.students-section h2,
.students-highlight h2,
.students-closing-cta h2 {
    margin: 0;
    line-height: 1.05;
    letter-spacing: -0.03em;
    color: var(--neutral-900);
    font-family: var(--font-headings);
}

.students-hero h1 {
    max-width: 13.5ch;
    font-size: clamp(2.25rem, 4.2vw, 4.4rem);
}

.students-lead,
.students-highlight-copy > p,
.students-closing-cta p,
.students-benefit-card p,
.students-feature-card p,
.students-step-card p,
.students-scenario-card p,
.students-panel-card p {
    color: var(--students-ink-soft);
    line-height: 1.7;
}

.students-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    margin-top: 1.5rem;
}

.students-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0.85rem 1.25rem;
    border-radius: 999px;
    font-weight: 700;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.students-btn:hover,
.students-btn:focus {
    transform: translateY(-2px);
}

.students-btn:focus-visible {
    outline: 3px solid var(--secondary-color);
    outline-offset: 3px;
}

.students-btn-primary {
    background: linear-gradient(135deg, var(--students-primary) 0%, var(--secondary-color) 100%);
    color: var(--neutral-50);
    box-shadow: var(--shadow-lg);
}

.students-btn-primary:hover,
.students-btn-primary:focus {
    color: var(--neutral-50);
    box-shadow: var(--shadow-xl);
}

.students-btn-secondary {
    border: 1px solid var(--neutral-200);
    background: var(--neutral-50);
    color: var(--students-primary-strong);
}

.students-btn-secondary:hover,
.students-btn-secondary:focus {
    color: var(--students-primary-strong);
    background: var(--neutral-50);
}

.students-hero-list {
    display: grid;
    gap: 0.75rem;
    margin: 1.5rem 0 0;
    padding: 0;
    list-style: none;
}

.students-hero-list li {
    position: relative;
    padding-left: 1.7rem;
    color: var(--students-ink-soft);
}

.students-hero-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55rem;
    width: 0.7rem;
    height: 0.7rem;
    border-radius: 50%;
    background: var(--students-accent);
    box-shadow: 0 0 0 6px var(--students-accent-soft);
}

.students-hero-panel {
    display: grid;
    gap: 1rem;
    align-content: start;
}

.students-panel-card,
.students-mini-card,
.students-benefit-card,
.students-feature-card,
.students-step-card,
.students-scenario-card,
.students-metric {
    border: 1px solid var(--students-line);
    border-radius: 22px;
    background: var(--students-panel);
}

.students-panel-card {
    padding: 1.25rem;
}

.students-panel-card strong {
    display: block;
    margin-bottom: 0.5rem;
    font-size: 1.3rem;
    letter-spacing: -0.02em;
}

.students-panel-card-accent {
    background: linear-gradient(160deg, var(--students-primary) 0%, var(--students-primary-strong) 100%);
    color: var(--neutral-50);
}

.students-panel-card-accent p,
.students-panel-card-accent .students-panel-label {
    color: rgba(255, 255, 255, 0.84);
}

.students-panel-grid,
.students-benefits-grid,
.students-feature-grid,
.students-journey-grid,
.students-scenarios,
.students-highlight-metrics {
    display: grid;
    gap: 1rem;
}

.students-panel-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.students-mini-card {
    padding: 1rem;
    background: linear-gradient(180deg, var(--neutral-50) 0%, var(--primary-surface-soft) 100%);
}

.students-mini-card span {
    display: block;
    margin-bottom: 0.45rem;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--students-primary-strong);
}

.students-mini-card strong {
    font-size: 1rem;
    color: var(--students-ink);
}

.students-proof-strip {
    padding: 1rem 1.25rem;
    border-radius: 22px;
    background: linear-gradient(90deg, var(--primary-light) 0%, var(--neutral-50) 100%);
    border: 1px solid var(--neutral-200);
}

.students-proof-strip strong {
    display: inline-block;
    margin-right: 0.45rem;
    color: var(--students-primary-strong);
}

.students-proof-strip span {
    color: var(--students-ink-soft);
}

.students-section,
.students-highlight,
.students-closing-cta {
    padding: 1.5rem;
}

.students-section-heading {
    margin-bottom: 1.25rem;
}

.students-section h2,
.students-highlight h2,
.students-closing-cta h2 {
    font-size: clamp(1.9rem, 3vw, 3rem);
    max-width: 18ch;
}

.students-benefits-grid,
.students-feature-grid,
.students-scenarios {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.students-benefit-card,
.students-feature-card,
.students-scenario-card {
    padding: 1.25rem;
}

.students-benefit-card h3,
.students-feature-card h3,
.students-step-card h3,
.students-scenario-card h3 {
    margin: 0 0 0.75rem;
    font-size: 1.2rem;
    letter-spacing: -0.02em;
}

.students-highlight {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(260px, 0.8fr);
    gap: 1.25rem;
    background:
        linear-gradient(135deg, var(--neutral-50) 0%, var(--primary-light) 100%);
}

.students-highlight-copy > p {
    max-width: 64ch;
}

.students-highlight-metrics {
    align-content: center;
}

.students-metric {
    padding: 1.15rem 1.2rem;
    background: var(--neutral-50);
}

.students-metric strong {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 2rem;
    color: var(--students-primary-strong);
}

.students-metric span {
    color: var(--students-ink-soft);
}

.students-journey-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.students-step-card {
    position: relative;
    padding: 1.2rem;
    overflow: hidden;
}

.students-step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.2rem;
    height: 2.2rem;
    margin-bottom: 0.9rem;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--students-primary) 0%, var(--students-accent) 100%);
    color: var(--neutral-50);
    font-weight: 800;
}

.students-closing-cta {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) auto;
    gap: 1rem;
    align-items: center;
    background: linear-gradient(135deg, var(--students-primary) 0%, var(--students-primary-strong) 100%);
    color: var(--neutral-50);
}

.students-closing-cta .students-kicker,
.students-closing-cta p {
    color: rgba(255, 255, 255, 0.82);
}

.students-closing-cta h2 {
    color: var(--neutral-50);
}

.students-closing-cta .students-btn-secondary {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.18);
    color: var(--neutral-50);
}

.students-closing-cta .students-btn-secondary:hover,
.students-closing-cta .students-btn-secondary:focus {
    background: rgba(255, 255, 255, 0.14);
    color: var(--neutral-50);
}

@media (min-width: 1024px) {
    .students-hero,
    .students-section,
    .students-highlight,
    .students-closing-cta {
        padding: 2.25rem;
    }
}

@media (max-width: 1023.98px) {
    .students-hero,
    .students-highlight,
    .students-closing-cta {
        grid-template-columns: 1fr;
    }

    .students-journey-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .students-page-shell {
        padding: 0.75rem 0 1.5rem;
    }

    .students-hero,
    .students-section,
    .students-highlight,
    .students-closing-cta {
        padding: 1.25rem;
        border-radius: 22px;
    }

    .students-panel-grid,
    .students-benefits-grid,
    .students-feature-grid,
    .students-journey-grid,
    .students-scenarios {
        grid-template-columns: 1fr;
    }

    .students-hero h1,
    .students-section h2,
    .students-highlight h2,
    .students-closing-cta h2 {
        max-width: none;
    }

    .students-actions {
        flex-direction: column;
    }

    .students-btn {
        width: 100%;
    }
}
