/* Mobile detail curriculum, matched to the 390 px reference artwork. */
@media (max-width: 768px) {
    .curriculum-page {
        width: 100%;
        overflow-x: hidden;
        background: #282828;
    }

    .curriculum-page .section-container {
        width: calc(100% - 40px);
        max-width: none;
        margin-inline: auto;
    }

    /* Hero: 0-1038 px in the reference. */
    .curriculum-header,
    .curriculum-hero {
        background: #282828;
    }

    .curriculum-hero {
        min-height: 1038px;
        padding: 94px 0 31px;
    }

    .breadcrumb {
        gap: 7px;
        margin-bottom: 27px;
        font-size: 8px;
        line-height: 1.25;
    }

    .breadcrumb span[aria-hidden]::before {
        font-size: 8px;
    }

    .curriculum-hero-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .curriculum-hero-copy h1,
    .curriculum-pillars h2,
    .classroom-section h2,
    .curriculum-benefits h2 {
        font-size: 22px;
        line-height: 1.03;
    }

    .curriculum-hero-copy h1 {
        max-width: none;
    }

    .curriculum-mobile-break {
        display: block;
    }

    .curriculum-lead {
        max-width: none;
        margin: 24px 0 20px;
        font-size: 14px;
        line-height: 1.5;
    }

    .curriculum-note {
        max-width: 325px;
        font-size: 11.5px;
        line-height: 1.5;
    }

    .curriculum-hero-image {
        width: 100%;
        height: 200px;
        margin-top: 77px;
        aspect-ratio: auto;
        object-position: center 48%;
        border-radius: 10px;
    }

    .curriculum-stat-grid {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 83px;
    }

    .curriculum-stat {
        min-height: 75px;
        padding: 14px 16px;
        background: #1f1f1f;
        border-left: 3px solid #55b96a;
        border-radius: 7px;
    }

    .curriculum-stat span {
        margin-bottom: 8px;
        font-size: 9px;
    }

    .curriculum-stat strong {
        font-size: 17px;
    }

    /* Curriculum pillars: 1038-1997 px. */
    .curriculum-pillars {
        min-height: 959px;
        margin-top: 0;
        padding: 33px 0 3px;
        background: #f7f9fd;
        clip-path: none;
    }

    .curriculum-badge {
        min-width: 0;
        min-height: 27px;
        margin-bottom: 18px;
        padding: 5px 10px;
        font-size: 9px;
        line-height: 1;
        border-radius: 999px;
    }

    .pillar-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-top: 36px;
    }

    .pillar-card {
        min-height: 0;
        height: 184px;
        padding: 22px 20px 18px;
        border-color: #e5e7eb;
        border-radius: 10px;
    }

    .pillar-card > span {
        margin-bottom: 18px;
        font-size: 31px;
    }

    .pillar-card h3 {
        margin-bottom: 12px;
        font-size: 13px;
    }

    .pillar-card p {
        font-size: 10.5px;
        line-height: 1.42;
    }

    /* Classroom implementation: 1997-3954 px. */
    .classroom-section {
        min-height: 1957px;
        padding: 65px 0 28px;
        background: #f7f9fd;
    }

    .classroom-intro {
        max-width: none;
        margin-top: 18px;
        font-size: 10px;
        line-height: 1.4;
    }

    .classroom-grid {
        grid-template-columns: 1fr;
        gap: 29px;
        margin-top: 89px;
    }

    .classroom-card {
        height: 249px;
        border-color: #e5e7eb;
        border-radius: 9px;
    }

    .classroom-card > img {
        height: 149px;
    }

    .classroom-card-copy {
        min-height: 100px;
        padding: 28px 15px 14px;
    }

    .classroom-card-icon {
        top: -22px;
        left: 14px;
        width: 44px;
        height: 44px;
        font-size: 21px;
        border-width: 4px;
        border-radius: 8px;
    }

    .classroom-card h3 {
        margin-bottom: 9px;
        font-size: 12px;
    }

    .classroom-card p {
        font-size: 10px;
        line-height: 1.35;
    }

    /* Benefits: 3954-4753 px. */
    .curriculum-benefits {
        min-height: 799px;
        padding: 33px 0 0;
        background: #282828;
    }

    .curriculum-badge-dark {
        margin-bottom: 18px;
    }

    .benefits-intro {
        max-width: none;
        margin-top: 18px;
        font-size: 10px;
        line-height: 1.4;
    }

    .benefit-list {
        gap: 18px;
        margin-top: 79px;
    }

    .benefit-list li {
        grid-template-columns: 42px minmax(0, 1fr) 24px;
        min-height: 124px;
        padding: 11px 12px;
        border-radius: 8px;
    }

    .benefit-icon {
        width: 36px;
        height: 36px;
        font-size: 18px;
        border-radius: 7px;
    }

    .benefit-copy {
        gap: 7px;
        padding-left: 10px;
    }

    .benefit-copy strong {
        font-size: 11px;
        line-height: 1.25;
    }

    .benefit-copy small {
        font-size: 9px;
        line-height: 1.35;
    }

    .benefit-check {
        display: block;
        font-size: 19px;
    }

    /* CTA: 4753-5063 px, immediately followed by the shared footer. */
    .curriculum-cta {
        min-height: 310px;
        padding: 76px 0 31px;
        background: #282828;
    }

    .curriculum-cta h2 {
        font-size: 24px;
        line-height: 1;
    }

    .curriculum-cta p {
        max-width: 330px;
        margin: 18px 0 24px;
        font-size: 10px;
        line-height: 1.4;
    }

    .curriculum-cta-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
        gap: 14px;
    }

    .curriculum-cta .solid-button,
    .curriculum-cta .outline-button {
        width: 100%;
        min-width: 0;
        min-height: 45px;
        padding: 8px 16px;
        font-size: 10px;
        border-radius: 4px;
    }
}
