.ema-page,.emf-page{--em-red:#ed1c2e;--em-navy:#082b55;--em-blue:#112a72;--em-ink:#10233d;--em-muted:#5c6877;--em-soft:#f3f6f9;--em-shell:1180px}
.ema-page,.emf-page{font-family:inherit;color:var(--em-ink)}
.ema-shell,.emf-shell{width:min(var(--em-shell),calc(100% - 42px));margin:auto}
.ema-section{padding:66px 0}

/* About */
.ema-hero{min-height:380px;display:grid;place-items:center;padding:50px 24px;background:linear-gradient(rgba(5,39,73,.35),rgba(5,39,73,.38)),var(--ema-hero) center 51%/cover no-repeat;text-align:center;color:#fff}
.ema-hero h1{margin:0;font-size:clamp(46px,6vw,76px);line-height:1.05;color:#fff}.ema-hero p{margin:14px 0 0;font-size:22px;color:#fff}
.ema-story-grid{display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);gap:58px;align-items:center}.ema-story-grid>img{width:100%;height:455px;object-fit:cover;border-radius:16px;box-shadow:0 14px 34px rgba(10,37,68,.12)}
.ema-kicker{display:block;margin-bottom:13px;color:var(--em-red);font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.ema-story h2,.ema-team h2{margin:0 0 22px;color:var(--em-ink);font-size:clamp(35px,4vw,54px);line-height:1.05}.ema-story-copy>p{margin:0 0 17px;color:#334254;line-height:1.72}
.ema-affiliation{display:flex;align-items:center;gap:18px;margin-top:25px;padding-top:20px;border-top:1px solid #e3e8ee}.ema-affiliation img{width:178px;height:72px;object-fit:contain}.ema-affiliation p{margin:0;color:#354456;line-height:1.5}
.ema-pillars{padding:28px 0 52px;background:linear-gradient(#f4f7fa,#fff)}.ema-pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.ema-pillar-grid article{min-height:235px;padding:32px 28px;border:1px solid #e1e6eb;border-radius:13px;background:#fff;box-shadow:0 12px 28px rgba(9,41,77,.08);text-align:center}.ema-line-icon{display:block;width:66px;height:66px;margin:0 auto 18px;overflow:visible}.ema-line-icon path,.ema-line-icon circle{vector-effect:non-scaling-stroke}.ema-icon-navy,.ema-icon-red,.ema-icon-link{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.ema-icon-navy{stroke:var(--em-navy)}.ema-icon-red{stroke:var(--em-red)}.ema-icon-red-fill{fill:var(--em-red)}.ema-icon-link{stroke:var(--em-red);stroke-dasharray:3 5}.ema-pillar-grid h3{margin:0 0 12px;color:var(--em-navy);font-size:23px}.ema-pillar-grid p{margin:0;color:#526172;line-height:1.6}
.ema-approach{display:grid;grid-template-columns:1fr 1.08fr;background:var(--em-navy);color:#fff}.ema-approach-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 64px clamp(42px, 5vw, 84px);
}.ema-approach h2{margin:0 0 32px;color:#fff;font-size:38px}.ema-approach-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 46px;
    row-gap: 34px;
}.ema-approach-grid span{color:var(--em-red);font-size:31px}.ema-approach-grid h3{margin:8px 0;color:#fff;font-size:18px}.ema-approach-grid p{margin:0;color:#d8e4ef;line-height:1.5}.ema-approach-image{min-height:430px;background:var(--ema-approach) center/cover no-repeat}
.ema-team {
    background: #fff;
}

.ema-team-intro {
    max-width: 520px;
    margin-bottom: 20px;
}

/*
 * Team layout:
 * Row 1: Sofiane
 * Row 2: Marine and Julian
 * Following rows: three cards per row
 */
.ema-team-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}

.ema-team-grid article {
    box-sizing: border-box;
    display: flex;
    width: 100%;
    height: 250px;
    min-height: 250px;
    gap: 18px;
    padding: 24px;
    border-left: 4px solid var(--em-red);
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 7px 22px rgba(10, 39, 72, 0.09);
}

/* Row 1: centred, approximately the distance between row-2 centres */
.ema-team-grid article:nth-child(1) {
    grid-column: 1 / -1;
    grid-row: 1;
    width: 50%;
    justify-self: center;
}

/* Row 2: two wide cards */
.ema-team-grid article:nth-child(2) {
    grid-column: 1 / 4;
    grid-row: 2;
}

.ema-team-grid article:nth-child(3) {
    grid-column: 4 / 7;
    grid-row: 2;
}

/* Row 3: three standard cards */
.ema-team-grid article:nth-child(4) {
    grid-column: 1 / 3;
    grid-row: 3;
}

.ema-team-grid article:nth-child(5) {
    grid-column: 3 / 5;
    grid-row: 3;
}

.ema-team-grid article:nth-child(6) {
    grid-column: 5 / 7;
    grid-row: 3;
}

/* Row 4: three standard cards */
.ema-team-grid article:nth-child(7) {
    grid-column: 1 / 3;
    grid-row: 4;
}

.ema-team-grid article:nth-child(8) {
    grid-column: 3 / 5;
    grid-row: 4;
}

.ema-team-grid article:nth-child(9) {
    grid-column: 5 / 7;
    grid-row: 4;
}

/* Row 5: final standard card centred */
.ema-team-grid article:nth-child(10) {
    grid-column: 3 / 5;
    grid-row: 5;
}

.ema-avatar {
    display: grid;
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    place-items: center;
    border-radius: 50%;
    background: #edf1f6;
    color: var(--em-navy);
    font-size: 24px;
}

.ema-team-content > h3 {
    margin: 0 0 5px;
    color: var(--em-navy);
    font-size: 20px;
}

.ema-team-content > strong {
    display: block;
    color: var(--em-red);
    font-size: 13px;
    line-height: 1.35;
}

.ema-team-content > p {
    display: -webkit-box;
    margin: 10px 0 0;
    overflow: hidden;
    color: #586575;
    font-size: 14px;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}
.ema-cta{padding:28px 0;background:linear-gradient(90deg,#e90f24,#f52532);color:#fff}.ema-cta .ema-shell{display:flex;align-items:center;gap:20px}.ema-cta-icon{width:58px;height:58px;display:grid;place-items:center;border:1px solid #fff;border-radius:50%;font-size:28px}.ema-cta h2{margin:0;color:#fff;font-size:26px}.ema-cta p{margin:5px 0 0;color:#fff}.ema-cta-actions{display:flex;gap:15px;margin-left:auto}.ema-cta a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 25px;border:1px solid #fff;border-radius:6px;background:#fff;color:var(--em-red);font-weight:800}.ema-cta a:last-child{background:transparent;color:#fff}

/* FSL */
.emf-page{background:#fff}.emf-hero{min-height:380px;display:grid;place-items:center;background:linear-gradient(rgba(4,30,63,.12),rgba(4,30,63,.18)),var(--emf-hero) center/cover no-repeat;color:#fff;clip-path:ellipse(82% 62% at 50% 38%)}.emf-hero h1{margin:0;color:#fff;font-size:clamp(50px,7vw,82px);text-shadow:0 4px 16px rgba(0,0,0,.35)}
.emf-content{margin-top:-24px;padding:24px 0 70px}.emf-heading{margin-bottom:22px}.emf-heading h2{margin:0 0 12px;color:var(--em-blue);font-size:34px}.emf-heading p{margin:0;color:#172d68;line-height:1.55}
.emf-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.emf-course{appearance:none;width:100%;min-height:245px;display:block;padding:25px 24px;border:1px solid #dfe5ed;border-radius:13px;background:#fff;color:var(--em-blue);box-shadow:0 8px 23px rgba(12,39,79,.06);text-align:left;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.emf-course:hover,.emf-course:focus-visible{transform:translateY(-4px);border-color:#aebbd2;box-shadow:0 14px 30px rgba(12,39,79,.12)}.emf-course-copy{display:block}.emf-course-copy strong{display:block;margin:2px 0 9px;font-size:18px;line-height:1.25}.emf-course-copy>span{display:block;font-size:12px;font-weight:750}.emf-course-copy i{display:inline-block;width:2px;height:14px;margin:0 9px;background:var(--em-red);vertical-align:middle}.emf-course-copy small{display:block;margin-top:9px;font-size:12px}.emf-course-copy .emf-method{display:flex;align-items:center;gap:6px}.emf-method svg{flex:0 0 17px;width:17px;height:17px;fill:none;stroke:var(--em-red);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.emf-course-copy p{margin:17px 0 0;color:#243a70;font-size:13px;line-height:1.55}
.emf-help{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;margin-top:22px;padding:18px 24px;border:1px solid #dfe5ed;border-radius:13px;box-shadow:0 7px 20px rgba(12,39,79,.05)}.emf-headset{width:62px;height:62px;display:grid;place-items:center;border:3px solid var(--em-blue);border-radius:50%;color:var(--em-red);font-size:32px}.emf-help h2{margin:0;color:var(--em-blue);font-size:27px}.emf-help p{margin:4px 0 0;color:#304474}.emf-help a{min-width:215px;padding:14px 26px;border-radius:6px;background:var(--em-red);color:#fff;text-align:center;font-weight:850}
.emf-dialog{width:min(920px,calc(100% - 34px));padding:0;border:0;border-radius:17px;box-shadow:0 25px 70px rgba(4,25,54,.32);color:var(--em-ink)}.emf-dialog::backdrop{background:rgba(4,25,54,.68);backdrop-filter:blur(3px)}.emf-close{position:absolute;right:16px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:#eef2f6;color:var(--em-navy);font-size:25px;cursor:pointer}.emf-dialog-head{display:flex;align-items:center;gap:17px;padding:28px 62px 22px 28px;border-bottom:1px solid #e5e9ef}.emf-dialog-head>span{width:60px;height:60px;display:grid;place-items:center;border-radius:10px;background:var(--em-blue);color:#fff;font-weight:850}.emf-dialog-head small{color:var(--em-red);font-weight:800;text-transform:uppercase}.emf-dialog h2{margin:3px 0 0;color:var(--em-blue);font-size:30px}.emf-dialog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:28px}.emf-dialog-grid section{padding:0 24px;border-right:1px solid #e2e7ed}.emf-dialog-grid section:first-child{padding-left:0}.emf-dialog-grid section:last-child{padding-right:0;border-right:0}.emf-dialog-grid h3{margin:0 0 12px;color:var(--em-blue);font-size:17px}.emf-dialog-grid p{margin:0;color:#435264;line-height:1.65;white-space:pre-line;}

@media (max-width: 980px) {
    .ema-story-grid,
    .ema-approach {
        grid-template-columns: 1fr;
    }

    .ema-approach-image {
        min-height: 360px;
    }

        /* Tablet: two-column team layout */
    .ema-team-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ema-team-grid article {
        grid-column: auto !important;
        grid-row: auto !important;
        width: 100%;
        height: 250px;
        min-height: 250px;
    }

    .ema-team-grid article:nth-child(1),
    .ema-team-grid article:nth-child(10) {
        grid-column: 1 / -1 !important;
        width: calc(50% - 10px);
        justify-self: center;
    }

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

    .emf-course {
        min-height: 260px;
    }

    .emf-dialog-grid {
        grid-template-columns: 1fr;
    }

    .emf-dialog-grid section {
        padding: 18px 0;
        border-right: 0;
        border-bottom: 1px solid #e2e7ed;
    }

    .emf-dialog-grid section:last-child {
        border-bottom: 0;
    }
}
@media (max-width: 680px) {
    .ema-shell,
    .emf-shell {
        width: min(100% - 28px, var(--em-shell));
    }

    .ema-section {
        padding: 48px 0;
    }

    .ema-hero {
        min-height: 290px;
    }

    .ema-hero p {
        font-size: 17px;
    }

    .ema-story-grid {
        gap: 32px;
    }

    .ema-story-grid > img {
        height: 320px;
    }

    .ema-affiliation {
        align-items: flex-start;
    }

    .ema-affiliation img {
        width: 135px;
        height: 58px;
    }

    .ema-pillar-grid,
    .ema-team-grid,
    .ema-approach-grid {
        grid-template-columns: 1fr;
    }

    .ema-approach-copy {
        padding: 46px 24px;
    }

    .ema-approach-image {
        min-height: 300px;
    }

    /* Phone: every team card becomes one full-width column */
    .ema-team-grid article,
    .ema-team-grid article:nth-child(1),
    .ema-team-grid article:nth-child(10) {
        grid-column: auto !important;
        grid-row: auto !important;
        width: 100%;
        height: 250px;
        min-height: 250px;
        justify-self: stretch;
    }

    .ema-team-content > strong {
    min-height: 36px;
}

.ema-team-content > p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

    .ema-cta .ema-shell {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .ema-cta-actions {
        width: 100%;
        margin: 0;
    }

    .ema-cta-actions a {
        flex: 1;
    }

    .emf-hero {
        min-height: 290px;
        clip-path: ellipse(100% 60% at 50% 38%);
    }

    .emf-content {
        margin-top: -10px;
    }

    .emf-grid {
        grid-template-columns: 1fr;
    }

    .emf-course {
        min-height: 0;
    }

    .emf-help {
        grid-template-columns: auto 1fr;
    }

    .emf-help a {
        grid-column: 1 / -1;
        min-width: 0;
    }

    .emf-dialog-grid {
        padding: 22px;
    }

    .emf-dialog h2 {
        font-size: 24px;
    }
}

/* 2.0 interaction and cross-page refinements */
.ema-team-intro{max-width:none;margin:0 0 34px;text-align:center}
.ema-team-intro .ema-kicker{margin:0;color:var(--em-navy);font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.035em;text-transform:none}
.emf-course{position:relative}
.emf-course:hover,.emf-course:focus-visible{transform:translateY(-3px);border-color:#aebbd2;box-shadow:0 16px 34px rgba(12,39,79,.15)}
.emf-course:focus-visible{outline:3px solid rgba(237,28,46,.32);outline-offset:3px}
.emf-card-plus{position:absolute;right:14px;top:12px;width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#eef3f8;color:var(--em-red);font-size:20px;font-weight:800;line-height:1;transition:.2s}
.emf-course:hover .emf-card-plus,.emf-course:focus-visible .emf-card-plus{background:var(--em-red);color:#fff;transform:rotate(90deg)}
.emf-view-details{display:none!important;margin-top:16px!important;color:var(--em-red);font-size:12px!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.06em}
body.home .emv2-header{background:#e2252d!important}
body.home .emv2-nav>a,body.home .emv2-nav-trigger,body.home .emv2-lang a{color:#fff!important}
body.home .emv2-login{border-color:rgba(255,255,255,.68)!important}
body.home .emc-mobile-toggle{color:#fff!important;border-color:rgba(255,255,255,.55)!important}
@media(max-width:680px){.emf-view-details{display:block!important}}

/* Keep every ESL/FSL card heading aligned to the top edge. */
body.page-id-11 .emf-grid,body.page-id-258 .emf-grid{align-items:stretch}
body.page-id-11 .emf-course,body.page-id-258 .emf-course{vertical-align:top}
body.page-id-11 .emf-course-copy,body.page-id-258 .emf-course-copy{height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}
body.page-id-11 .emf-course-copy strong,body.page-id-258 .emf-course-copy strong{width:100%;padding-right:30px;text-align:left}
/* Staff biography button and dialog */

.ema-biography-dialog {
    width: min(620px, calc(100% - 32px));
    max-height: calc(100vh - 40px);
    margin: auto;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 22px;
    background: #ffffff;
    color: #102f59;
    box-shadow:
        0 30px 80px rgba(3, 24, 52, 0.3),
        0 8px 28px rgba(3, 24, 52, 0.15);
}

.ema-biography-dialog::backdrop {
    background: rgba(5, 24, 50, 0.68);
    backdrop-filter: blur(4px);
}

.ema-biography-dialog[open] {
    animation: ema-biography-open 0.24s ease-out;
}

.ema-biography-dialog-inner {
    position: relative;
    max-height: calc(100vh - 40px);
    padding: 42px 46px 38px;
    overflow-y: auto;
    text-align: center;
}

.ema-page .ema-biography-close {
    position: absolute;
    top: 16px;
    right: 16px;
    display: grid;
    width: 38px;
    height: 38px;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: #eef3f8;
    color: #123765;
    font-size: 25px;
    line-height: 1;
    cursor: pointer;
    transition: 0.2s ease;
}

.ema-page .ema-biography-close:hover {
    background: #ed1c2a;
    color: #ffffff;
    transform: rotate(6deg);
}

.ema-biography-avatar {
    display: grid;
    width: 76px;
    height: 76px;
    margin: 0 auto 18px;
    place-items: center;
    border: 4px solid #ffffff;
    border-radius: 50%;
    background: linear-gradient(145deg, #123765, #071e42);
    color: #ffffff;
    font-size: 29px;
    font-weight: 700;
    box-shadow:
        0 0 0 4px rgba(237, 28, 42, 0.12),
        0 10px 24px rgba(8, 42, 82, 0.18);
}

.ema-biography-dialog h2 {
    margin: 0 0 7px;
    color: #082d5d;
    font-size: clamp(27px, 4vw, 36px);
    line-height: 1.15;
}

.ema-biography-role {
    display: block;
    margin-bottom: 24px;
    color: #ed1c2a;
    font-size: 14px;
    line-height: 1.45;
}

.ema-biography-text {
    position: relative;
    padding-top: 23px;
    border-top: 1px solid #e3eaf1;
    color: #40566f;
    font-size: 16px;
    line-height: 1.75;
    text-align: left;
}

.ema-biography-text::before {
    content: "";
    position: absolute;
    top: -2px;
    left: 50%;
    width: 66px;
    height: 3px;
    border-radius: 999px;
    background: #ed1c2a;
    transform: translateX(-50%);
}

.ema-biography-text p {
    margin: 0 0 15px;
}

.ema-biography-text p:last-child {
    margin-bottom: 0;
}

.ema-page .ema-biography-done {
    margin-top: 28px;
    padding: 11px 28px;
    border: 0;
    border-radius: 999px;
    background: #0b3567;
    color: #ffffff;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.2s ease;
}

.ema-page .ema-biography-done:hover {
    background: #ed1c2a;
    box-shadow: 0 8px 20px rgba(237, 28, 42, 0.2);
    transform: translateY(-2px);
}

@keyframes ema-biography-open {
    from {
        opacity: 0;
        transform: translateY(18px) scale(0.97);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media (max-width: 600px) {
    .ema-biography-dialog {
        width: calc(100% - 20px);
        max-height: calc(100vh - 20px);
        border-radius: 18px;
    }

    .ema-biography-dialog-inner {
        max-height: calc(100vh - 20px);
        padding: 38px 24px 28px;
    }

    .ema-biography-avatar {
        width: 66px;
        height: 66px;
        font-size: 25px;
    }

    .ema-biography-dialog h2 {
        font-size: 27px;
    }

    .ema-biography-role {
        padding: 0 20px;
        font-size: 13px;
    }

    .ema-biography-text {
        font-size: 15px;
        line-height: 1.68;
    }
}
/* Interactive staff cards — icon-only biography control */

.ema-team-grid article {
    position: relative;
    cursor: pointer;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease,
        border-color 0.22s ease;
}

.ema-team-grid article:hover {
    transform: translateY(-5px);
    box-shadow:
        0 18px 38px rgba(7, 34, 70, 0.13),
        0 5px 14px rgba(7, 34, 70, 0.08);
}

.ema-team-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    padding-bottom: 42px;
}

/* Accessible text: available to screen readers, invisible visually */

.ema-visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Transparent button covers the whole card */

.ema-page .ema-biography-button {
    position: absolute !important;
    z-index: 2;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: inherit !important;
    background: transparent !important;
    color: inherit !important;
    box-shadow: none !important;
    transform: none !important;
    cursor: pointer;
}

/* Red plus indicator */

.ema-biography-plus {
    position: absolute;
    right: 18px;
    bottom: 18px;
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid rgba(237, 28, 42, 0.34);
    border-radius: 50%;
    background: rgba(237, 28, 42, 0.08);
    color: #ed1c2a;
    font-size: 24px;
    font-weight: 400;
    line-height: 1;
    pointer-events: none;
    transition:
        color 0.2s ease,
        background-color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.ema-team-grid article:hover .ema-biography-plus {
    border-color: #ed1c2a;
    background: #ed1c2a;
    color: #ffffff;
    box-shadow: 0 7px 16px rgba(237, 28, 42, 0.24);
    transform: scale(1.08);
}

/* Keyboard focus */

.ema-page .ema-biography-button:focus-visible {
    outline: 3px solid rgba(237, 28, 42, 0.5) !important;
    outline-offset: 4px;
}

.ema-team-grid article:has(.ema-biography-button:focus-visible) {
    transform: translateY(-5px);
    box-shadow:
        0 0 0 3px rgba(237, 28, 42, 0.14),
        0 18px 38px rgba(7, 34, 70, 0.13);
}

@media (max-width: 600px) {
    .ema-team-content {
        padding-bottom: 38px;
    }

    .ema-biography-plus {
        right: 15px;
        bottom: 15px;
        width: 36px;
        height: 36px;
        font-size: 22px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ema-team-grid article,
    .ema-biography-plus {
        transition: none;
    }
}
/* Align content rows inside all ESL/FSL course cards */
.emf-page .emf-grid {
    align-items: stretch;
}

.emf-page .emf-course {
    box-sizing: border-box;
    height: 100%;
    vertical-align: top;
}

.emf-page .emf-course-copy {
    display: flex;
    height: 100%;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
}

.emf-page .emf-course-copy > strong {
    box-sizing: border-box;
    width: 100%;
    min-height: 48px;
    margin: 2px 0 7px;
    padding-right: 30px;
    line-height: 1.25;
    text-align: left;
}

.emf-page .emf-course-copy > span:not(.emf-view-details) {
    box-sizing: border-box;
    min-height: 32px;
    line-height: 1.35;
}

.emf-page .emf-course-copy .emf-method {
    box-sizing: border-box;
    min-height: 42px;
    margin-top: 7px;
    align-items: flex-start;
    line-height: 1.35;
}

.emf-page .emf-course-copy p {
    margin-top: 13px;
}

/* On phones, let every card return to its natural content height */
@media (max-width: 680px) {
    .emf-page .emf-course {
        height: auto;
    }

    .emf-page .emf-course-copy > strong,
    .emf-page .emf-course-copy > span:not(.emf-view-details),
    .emf-page .emf-course-copy .emf-method {
        min-height: 0;
    }
}