.ep-public{--ep-blue:#2563eb;--ep-ink:#142340;--ep-muted:#52627a;margin:0;background:#fff;color:var(--ep-ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
.ep-public *{box-sizing:border-box}.ep-public a{color:inherit;text-decoration:none}.ep-public button{font:inherit}.ep-public h1,.ep-public h2,.ep-public h3,.ep-public p,.ep-public figure{margin:0}.ep-public a:focus-visible,.ep-public button:focus-visible{outline:3px solid #1d4ed8;outline-offset:5px}.ep-public [id]{scroll-margin-top:110px}.ep-public .ep-container{width:calc(100% - 80px);max-width:1280px;margin-inline:auto}.ep-public .ep-icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}.ep-public .ep-skip{position:fixed;top:10px;left:12px;transform:translateY(-160%);z-index:100;background:white;padding:10px 20px;border:2px solid var(--ep-blue)}.ep-public .ep-skip:focus{transform:none}
.ep-public .ep-header{position:sticky;top:0;z-index:20;border-bottom:1px solid #e7edf6;background:rgba(255,255,255,.97)}.ep-public .ep-nav{display:flex;align-items:center;gap:35px;min-height:90px}.ep-public .ep-brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-size:23px;font-weight:750;letter-spacing:-.8px}.ep-public .ep-brand-mark{width:35px;height:35px;color:var(--ep-blue)}.ep-public .ep-brand-dot{color:var(--ep-blue)}.ep-public .ep-menu{display:flex;align-items:center;justify-content:space-between;flex:1;gap:24px}.ep-public .ep-nav-links,.ep-public .ep-nav-actions{display:flex;align-items:center;gap:22px;font-size:13px;font-weight:600;white-space:nowrap}.ep-public .ep-nav-links a:hover,.ep-public .ep-footer a:hover{color:var(--ep-blue)}.ep-public .ep-nav-links [aria-current]{color:var(--ep-blue)}.ep-public [aria-disabled]{color:#65738a;cursor:default}.ep-public .ep-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:54px;padding:14px 25px;border-radius:9px;background:var(--ep-blue);color:#fff;font-size:15px;font-weight:700;box-shadow:0 5px 12px #2563eb18;transition:background .15s,box-shadow .15s}.ep-public .ep-button:hover{background:#1d4ed8;box-shadow:0 6px 18px #2563eb30}.ep-public .ep-button-small{min-height:44px;padding:10px 16px;font-size:13px;gap:10px}.ep-public .ep-button-small .ep-icon{width:17px}.ep-public .ep-button-secondary{background:white;color:var(--ep-ink);border:1px solid #cbd5e1;box-shadow:none;min-width:114px}.ep-public .ep-button-secondary:hover{background:#eff6ff}.ep-public .ep-menu-toggle{display:none}
.ep-public .ep-hero{background:linear-gradient(115deg,#fff 25%,#f5f9ff 75%,#edf5ff);border-bottom:1px solid #edf2fa;padding:90px 0 70px;overflow:hidden}.ep-public .ep-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.ep-public .ep-eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid #dce7fb;border-radius:30px;background:#f1f6ff;color:#2453a4;padding:7px 12px;font-size:12px;font-weight:600;letter-spacing:.3px}.ep-public .ep-status-dot{height:7px;width:7px;border-radius:50%;background:var(--ep-blue)}.ep-public h1{font-size:clamp(44px,4.6vw,67px);line-height:1.08;letter-spacing:-3px;margin:25px 0}.ep-public h1 span{color:var(--ep-blue)}.ep-public .ep-hero-description{max-width:510px;font-size:17px;line-height:1.85;color:var(--ep-muted)}.ep-public .ep-hero-actions{display:flex;gap:12px;margin:29px 0}.ep-public .ep-assurances{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:12px 18px;font-size:11px;color:var(--ep-muted)}.ep-public .ep-assurances li{display:flex;align-items:center;gap:6px}.ep-public .ep-assurances .ep-icon{width:16px;height:16px;color:var(--ep-blue)}
.ep-public .ep-product{position:relative;padding:20px 0 0;min-width:0}.ep-public .ep-product-glow{position:absolute;inset:-30px -50px 0;background:radial-gradient(ellipse,#c9dcff88,transparent 68%);pointer-events:none}.ep-public .ep-dashboard{position:relative;border:1px solid #dfe7f3;border-radius:15px;background:#fff;box-shadow:0 20px 55px #203c7020;transform:rotate(-2deg);overflow:hidden}.ep-public .ep-dashboard-top{padding:17px 21px;border-bottom:1px solid #e8edf5;display:flex;justify-content:space-between;align-items:center;gap:10px}.ep-public .ep-mini-brand{font-size:14px;font-weight:700;display:flex;gap:8px;align-items:center}.ep-public .ep-mini-brand .ep-icon{color:var(--ep-blue);width:20px}.ep-public .ep-demo-label{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:#596b86;background:#f0f4fa;border-radius:4px;padding:3px 7px}.ep-public .ep-dashboard-body{padding:25px}.ep-public .ep-dashboard-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.ep-public .ep-kicker{font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--ep-blue)}.ep-public .ep-dashboard-heading h2{font-size:19px;letter-spacing:-.5px;margin-top:5px;line-height:1.35}.ep-public .ep-avatar{display:grid;place-items:center;flex-shrink:0;width:35px;height:35px;background:#e7edff;color:#3356a2;border-radius:50%;font-size:13px;font-weight:bold}.ep-public .ep-mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:23px 0}.ep-public .ep-mini-stats>div{padding:15px;background:#f5f8fd;border:1px solid #e8eef8;border-radius:9px}.ep-public .ep-mini-stats>div>span{font-size:10px;color:#52627a}.ep-public .ep-mini-stats strong{display:block;font-size:29px;font-weight:700;line-height:1.5}.ep-public .ep-mini-stats strong span{font-size:16px;color:#687991}.ep-public .ep-mini-stats p{font-size:9px;color:#62718a}.ep-public .ep-progress-track{height:5px;background:#dce6f7;border-radius:8px;margin-top:8px}.ep-public .ep-progress-track span{display:block;height:100%;background:var(--ep-blue);border-radius:8px}.ep-public .ep-lesson{display:flex;align-items:center;gap:13px;border:1px solid #e1e9f5;padding:15px;border-radius:10px}.ep-public .ep-lesson-icon{display:grid;place-items:center;width:43px;height:47px;border-radius:8px;background:#eaf1ff;color:var(--ep-blue);font-size:24px;font-style:italic;flex-shrink:0}.ep-public .ep-lesson p{font-size:8px;color:#65748d;letter-spacing:1px}.ep-public .ep-lesson h3{font-size:14px;margin:2px 0}.ep-public .ep-lesson div>span{font-size:10px;color:#64748b}.ep-public .ep-lesson-arrow{margin-left:auto;color:var(--ep-blue);font-size:23px}.ep-public .ep-topic-row{display:flex;gap:20px;margin-top:18px;color:#5b6c84;font-size:10px}.ep-public .ep-topic-row .ep-icon{width:13px;height:13px;color:#228266}.ep-public .ep-tutor-card{position:relative;width:78%;margin:-5px -15px 0 auto;padding:18px;border:1px solid #dce6f7;border-radius:13px;background:#fff;box-shadow:0 16px 45px #29466c1c;transform:rotate(2deg)}.ep-public .ep-tutor-title{display:flex;align-items:center;gap:9px}.ep-public .ep-tutor-title strong{display:block;font-size:13px}.ep-public .ep-tutor-title div>span{display:block;color:#65748c;font-size:9px}.ep-public .ep-tutor-icon{display:grid;place-items:center;background:#edf3ff;color:var(--ep-blue);width:34px;height:34px;border-radius:9px}.ep-public .ep-chat-question{margin:13px 0 8px 30px;padding:8px 12px;background:#edf3ff;border-radius:8px 8px 0 8px;font-size:11px;color:#345583}.ep-public .ep-chat-answer{font-size:11px;line-height:1.8;color:#455670;padding:4px 0}.ep-public .ep-tutor-bottom{display:flex;justify-content:space-between;border-top:1px solid #edf1f6;margin-top:10px;padding-top:8px;font-size:9px;color:#5677af}.ep-public figcaption{position:relative;font-size:10px;color:#62738d;text-align:center;margin-top:22px}
.ep-public .ep-footer{background:#f7f9fc;border-top:1px solid #e6edf6;padding-top:50px}.ep-public .ep-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.1fr;gap:40px;padding-bottom:43px}.ep-public .ep-footer-intro>p{font-size:14px;color:var(--ep-muted);margin:17px 0 8px;max-width:220px}.ep-public .ep-footer-tag{font-size:11px;color:#64748b}.ep-public .ep-footer h2{font-size:13px;margin:4px 0 16px}.ep-public .ep-footer ul{list-style:none;padding:0;margin:0;font-size:12px;color:var(--ep-muted)}.ep-public .ep-footer li{margin:9px 0}.ep-public .ep-footer li a{display:inline-block;padding:3px 0}.ep-public .ep-contact{font-size:11px;color:#64748b;margin-top:20px}.ep-public .ep-contact a{color:var(--ep-blue)}.ep-public .ep-contact .ep-icon{width:13px}.ep-public .ep-footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #dfe6ef;padding-block:22px;color:#64748b;font-size:11px}.ep-public .ep-footer-bottom small{font-size:11px}
@media(max-width:1150px){.ep-public .ep-nav{flex-wrap:wrap;justify-content:space-between;gap:0;min-height:78px;padding-block:15px}.ep-public .ep-menu{flex-basis:100%;flex-direction:column;align-items:stretch;padding:22px 0 7px;gap:22px}.ep-public .ep-nav-links{flex-wrap:wrap}.ep-public.ep-enhanced .ep-menu-toggle{display:flex;align-items:center;gap:9px;min-height:44px;padding:8px 12px;border:1px solid #d1ddf1;background:#fff;color:var(--ep-ink);border-radius:8px;font-size:13px}.ep-public.ep-enhanced .ep-menu-toggle[aria-expanded=false]+.ep-menu{display:none}.ep-public .ep-hero-grid{gap:35px}.ep-public .ep-hero{padding-top:65px}.ep-public .ep-hero-description{font-size:15px}.ep-public .ep-dashboard-body{padding:18px}.ep-public .ep-tutor-card{width:90%;margin-right:0}.ep-public .ep-dashboard-heading h2{font-size:17px}.ep-public .ep-mini-stats>div{padding:10px}.ep-public .ep-topic-row{gap:12px}.ep-public .ep-lesson{gap:9px;padding:10px}}
@media(max-width:800px){.ep-public .ep-container{width:calc(100% - 48px)}.ep-public .ep-hero-grid{grid-template-columns:1fr;gap:35px}.ep-public .ep-hero-copy{max-width:570px}.ep-public h1{font-size:59px}.ep-public .ep-hero-description{font-size:17px}.ep-public .ep-product{width:100%;max-width:540px;margin:0 auto}.ep-public .ep-tutor-card{width:75%}.ep-public .ep-footer-grid{grid-template-columns:1.5fr 1fr;gap:30px}}
@media(max-width:480px){.ep-public .ep-container{width:calc(100% - 36px)}.ep-public .ep-brand{font-size:21px}.ep-public .ep-brand-mark{width:30px}.ep-public .ep-nav-links{flex-direction:column;align-items:stretch;gap:0}.ep-public .ep-nav-links>a,.ep-public .ep-nav-links>span{padding:10px 0;min-height:44px}.ep-public .ep-nav-actions{justify-content:space-between}.ep-public .ep-hero{padding:42px 0}.ep-public .ep-eyebrow{font-size:10px}.ep-public h1{font-size:46px;letter-spacing:-2px;margin:23px 0}.ep-public .ep-hero-description{font-size:15px}.ep-public .ep-assurances{gap:12px;font-size:10px}.ep-public .ep-hero-actions .ep-button{flex:1;padding:13px 17px}.ep-public .ep-dashboard{transform:none}.ep-public .ep-dashboard-top{padding:14px}.ep-public .ep-dashboard-body{padding:15px}.ep-public .ep-dashboard-heading h2{font-size:16px}.ep-public .ep-tutor-card{width:92%;transform:none;margin-top:12px;padding:15px}.ep-public .ep-demo-label{font-size:8px}.ep-public .ep-mini-stats{gap:9px}.ep-public figcaption{font-size:9px}.ep-public .ep-footer-grid{grid-template-columns:1fr 1fr;gap:25px}.ep-public .ep-footer-intro{grid-column:1/-1}.ep-public .ep-footer-bottom{flex-direction:column;gap:4px}.ep-public .ep-footer{padding-top:35px}}
.ep-public .ep-section{padding-block:85px}.ep-public .ep-section-heading{max-width:670px;margin:0 auto 40px;text-align:center}.ep-public .ep-section-heading h2,.ep-public .ep-section-copy h2{font-size:36px;line-height:1.18;letter-spacing:-1.1px;margin:12px 0 18px}.ep-public .ep-section-heading>p:last-child,.ep-public .ep-section-copy>p:not(.ep-kicker){color:var(--ep-muted);font-size:16px;line-height:1.8}.ep-public .ep-feature-grid,.ep-public .ep-role-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.ep-public .ep-feature-card{padding:25px;border:1px solid #dfe7f3;border-radius:14px;background:#fff}.ep-public .ep-card-icon{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:11px;background:#eef4ff;color:var(--ep-blue);flex-shrink:0}.ep-public .ep-feature-card h3,.ep-public .ep-role-card h3{font-size:17px;margin:17px 0 10px}.ep-public .ep-feature-card p,.ep-public .ep-role-card p{font-size:14px;color:var(--ep-muted);line-height:1.8}.ep-public .ep-band{background:#f6f9fe;border-block:1px solid #e9eff8}.ep-public .ep-role-card{padding:28px 24px;background:white;border:1px solid #e1e9f4;border-radius:14px;display:flex;flex-direction:column;align-items:flex-start}.ep-public .ep-role-card>.ep-icon{color:var(--ep-blue);width:27px;height:27px}.ep-public .ep-role-card p{flex:1}.ep-public .ep-text-link{display:inline-flex;align-items:center;gap:10px;color:var(--ep-blue);font-size:14px;font-weight:700;min-height:44px;margin-top:16px}.ep-public .ep-text-link:hover{text-decoration:underline}.ep-public .ep-text-link .ep-icon{width:18px}.ep-public .ep-section-note{margin:25px auto 0;text-align:center;max-width:760px;color:var(--ep-muted);font-size:12px}.ep-public .ep-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:75px;align-items:center}.ep-public .ep-check-list{list-style:none;padding:0;margin:25px 0;display:grid;gap:13px;font-size:14px;color:#3c506f}.ep-public .ep-check-list li{display:flex;gap:12px;align-items:flex-start}.ep-public .ep-check-list .ep-icon{color:var(--ep-blue);width:19px;height:22px}.ep-public .ep-section-copy>p.ep-fine-print{font-size:12px;margin-top:18px;color:#60708a}.ep-public .ep-demo-panel{min-width:0;background:#fff;border:1px solid #dce6f4;border-radius:16px;box-shadow:0 15px 40px #29466c0d;overflow:hidden}.ep-public .ep-demo-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:18px 22px;border-bottom:1px solid #e7edf6;font-size:13px;font-weight:700}.ep-public .ep-demo-heading>span:first-child{display:flex;align-items:center;gap:8px}.ep-public .ep-demo-heading .ep-icon{color:var(--ep-blue);width:20px}.ep-public .ep-demo-panel figcaption{padding:0 16px 17px;font-size:11px}.ep-public .ep-chat-demo{background:linear-gradient(150deg,#f6f9ff,#fff);border-color:#cedefa}.ep-public .ep-conversation{padding:24px}.ep-public .ep-speaker{font-size:9px;letter-spacing:1.5px;color:#5d7090;margin-bottom:7px}.ep-public .ep-message{font-size:14px;line-height:1.8;background:#fff;padding:19px;border:1px solid #e4ebf7;border-radius:0 13px 13px}.ep-public .ep-message-student{margin:0 0 20px 30px;background:#e9f1ff;border:0;border-radius:13px 0 13px 13px;color:#2b4d84}.ep-public .ep-equation{font-size:25px;color:#254b8f;margin:10px 0;letter-spacing:1px}.ep-public .ep-equation-result{display:inline-block;padding:3px 17px;background:#eaf6ef;color:#216446;border-radius:6px}.ep-public .ep-file-chip{display:inline-block;margin-top:18px;font-size:10px;padding:6px 10px;border:1px solid #d6e1f3;border-radius:6px;color:#566c90}
.ep-public .ep-live-band{background:#10294d;color:#fff}.ep-public .ep-live-band .ep-section-heading>p:last-child{color:#c0d2eb}.ep-public .ep-live-band .ep-kicker{color:#a7c7ff}.ep-public .ep-live-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;list-style:none;counter-reset:lesson;padding:0;margin:0 0 35px}.ep-public .ep-live-steps li{counter-increment:lesson;position:relative;padding-left:42px}.ep-public .ep-live-steps li:before{content:counter(lesson);position:absolute;left:0;top:0;display:grid;place-items:center;background:#284970;border:1px solid #416694;border-radius:50%;height:29px;width:29px;font-size:12px}.ep-public .ep-live-steps strong{display:block;font-size:15px}.ep-public .ep-live-steps span{display:block;color:#c0d2eb;font-size:13px;margin-top:6px}.ep-public .ep-classroom{color:var(--ep-ink)}.ep-public .ep-classroom-grid{display:grid;grid-template-columns:165px minmax(0,1fr) 190px;gap:20px;padding:25px;background:#f4f7fc}.ep-public .ep-teacher-tile{background:#e6eefb;border-radius:10px;padding:20px 10px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:7px}.ep-public .ep-teacher-tile>.ep-avatar{width:50px;height:50px;background:#fff}.ep-public .ep-teacher-tile>strong{font-size:13px}.ep-public .ep-teacher-tile>span:not(.ep-avatar){font-size:11px;color:#516584}.ep-public .ep-pin{margin-top:20px;font-size:8px;letter-spacing:1px;color:#536987}.ep-public .ep-pin strong{display:block;font-size:19px;letter-spacing:3px;color:#244873}.ep-public .ep-pin span{display:block;letter-spacing:0;margin-top:5px}.ep-public .ep-shared-lesson{background:#fff;border:1px solid #dfe7f2;border-radius:10px;padding:28px}.ep-public .ep-shared-lesson .ep-kicker{color:var(--ep-blue)}.ep-public .ep-shared-lesson h3{font-size:21px;margin:9px 0 18px}.ep-public .ep-shared-lesson>p:not(.ep-kicker){font-size:14px;color:#516584}.ep-public .ep-shared-lesson>p.ep-board-equation{font-size:28px;letter-spacing:2px;color:#244873;margin:12px 0}.ep-public .ep-shared-lesson mark{background:#fff0a5;color:#35445f;padding:2px 3px}.ep-public .ep-underlined{border-bottom:3px solid #6896ee}.ep-public .ep-participants{display:flex;flex-direction:column;gap:20px;font-size:12px;padding:15px 0}.ep-public .ep-participants>span{display:flex;gap:8px;align-items:center;color:#526581}.ep-public .ep-participants .ep-icon{width:17px}.ep-public .ep-tool-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:17px}.ep-public .ep-tool-strip span{background:#f0f4fa;padding:6px 13px;border-radius:6px;font-size:11px;color:#4e6382}.ep-public .ep-classroom figcaption{margin-top:0}.ep-public .ep-live-notes{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:28px;color:#c0d2eb;font-size:13px}.ep-public .ep-live-notes strong{color:#fff}
.ep-public .ep-workspace-body{padding:26px}.ep-public .ep-workspace-title h3{font-size:21px}.ep-public .ep-workspace-title p{font-size:12px;color:#60738e;margin:5px 0 22px}.ep-public .ep-task-row{display:flex;align-items:center;gap:12px;padding:18px 0;border-bottom:1px solid #e4ebf5}.ep-public .ep-task-row>div{min-width:0;flex:1}.ep-public .ep-task-row strong{display:block;font-size:12px}.ep-public .ep-task-row div>span{display:block;font-size:10px;color:#61738e}.ep-public .ep-badge{font-size:9px;padding:3px 7px;border-radius:20px;background:#edf3ff;color:#3a5f9c}.ep-public .ep-teacher-summary{margin-top:24px;background:#f3f7fd;border-radius:9px;padding:16px;font-size:13px}.ep-public .ep-teacher-summary p{font-size:12px;color:#60718a;margin-top:5px}.ep-public .ep-learning-title{font-size:23px;line-height:1.35;margin:12px 0 25px}.ep-public .ep-learning-path{list-style:none;counter-reset:learning;padding:0;margin:0;display:grid;gap:24px}.ep-public .ep-learning-path li{position:relative;counter-increment:learning;padding-left:48px}.ep-public .ep-learning-path li:before{content:counter(learning);position:absolute;left:0;top:0;width:31px;height:31px;display:grid;place-items:center;background:#eaf1ff;color:var(--ep-blue);border-radius:9px;font-size:13px}.ep-public .ep-learning-path strong{display:block;font-size:14px}.ep-public .ep-learning-path span{font-size:12px;color:#60718a}.ep-public figcaption.ep-sample-banner{margin:0 0 22px;font-size:12px;padding:12px;background:#eef4ff;color:#3e5f91;border-radius:8px}.ep-public .ep-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.ep-public .ep-stat-grid>div{border:1px solid #dfe7f4;border-radius:12px;padding:23px}.ep-public .ep-stat-grid span{font-size:13px;color:#546883}.ep-public .ep-stat-grid strong{display:block;font-size:37px;color:var(--ep-blue);margin:5px 0}.ep-public .ep-stat-grid small{display:block;font-size:10px;color:#687b96}.ep-public .ep-topic-progress{background:#f7f9fd;border:1px solid #e1e9f4;border-radius:12px;padding:25px;margin-top:22px}.ep-public .ep-topic-progress h3{font-size:15px;margin-bottom:22px}.ep-public .ep-topic-progress h3 span{display:inline-block;font-size:10px;font-weight:400;color:#61728b;margin-left:10px}.ep-public .ep-bar-row{display:grid;grid-template-columns:150px minmax(0,1fr) 40px;align-items:center;gap:20px;margin:17px 0;font-size:12px;color:#526784}.ep-public .ep-bar-row .ep-progress-track{margin:0;height:8px}.ep-public .ep-bar-row strong{text-align:right}.ep-public .ep-school-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ep-public .ep-final-cta{text-align:center;padding:75px 0;background:linear-gradient(140deg,#eaf2ff,#f6f9ff);border-bottom:1px solid #dce6f5}.ep-public .ep-final-cta h2{font-size:40px;line-height:1.2;letter-spacing:-1.3px;margin:14px 0 20px}.ep-public .ep-final-cta p:not(.ep-kicker){max-width:570px;margin-inline:auto;color:var(--ep-muted);font-size:16px}.ep-public .ep-final-cta .ep-hero-actions{justify-content:center}.ep-public .ep-final-cta .ep-container>span{font-size:11px;color:#5b7190}
@media(max-width:1150px){.ep-public .ep-split{gap:35px}.ep-public .ep-feature-grid,.ep-public .ep-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-public .ep-classroom-grid{grid-template-columns:140px minmax(0,1fr)}.ep-public .ep-participants{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:15px;padding:0}.ep-public .ep-section-heading h2,.ep-public .ep-section-copy h2{font-size:31px}.ep-public .ep-task-row{flex-wrap:wrap}}
@media(max-width:800px){.ep-public .ep-section{padding-block:60px}.ep-public .ep-split{grid-template-columns:1fr;gap:30px}.ep-public #students .ep-section-copy{grid-row:1}.ep-public .ep-live-steps{gap:18px}.ep-public .ep-live-steps li{padding-left:0;padding-top:42px}.ep-public .ep-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-public .ep-live-notes{gap:22px}.ep-public .ep-final-cta h2{font-size:34px}.ep-public .ep-school-grid{gap:18px}}
@media(max-width:480px){.ep-public .ep-section{padding-block:45px}.ep-public .ep-section-heading{margin-bottom:28px}.ep-public .ep-section-heading h2,.ep-public .ep-section-copy h2{font-size:28px}.ep-public .ep-section-heading>p:last-child,.ep-public .ep-section-copy>p:not(.ep-kicker){font-size:14px}.ep-public .ep-feature-grid,.ep-public .ep-role-grid,.ep-public .ep-school-grid{grid-template-columns:1fr;gap:14px}.ep-public .ep-feature-card{padding:22px}.ep-public .ep-live-steps{grid-template-columns:1fr;gap:22px}.ep-public .ep-live-steps li{padding:0 0 0 42px}.ep-public .ep-classroom-grid{grid-template-columns:1fr;padding:14px;gap:14px}.ep-public .ep-teacher-tile{flex-direction:row;flex-wrap:wrap;justify-content:center;padding:12px;gap:9px}.ep-public .ep-teacher-tile>.ep-avatar{height:30px;width:30px}.ep-public .ep-pin{width:100%;margin:5px 0 0}.ep-public .ep-pin strong{display:inline-block;margin:0 10px;font-size:15px}.ep-public .ep-pin span{display:inline-block}.ep-public .ep-shared-lesson{padding:19px}.ep-public .ep-shared-lesson h3{font-size:19px}.ep-public .ep-participants{gap:12px;font-size:10px}.ep-public .ep-participants>strong{width:100%}.ep-public .ep-tool-strip{gap:6px;padding:12px}.ep-public .ep-tool-strip span{padding:6px 9px}.ep-public .ep-live-notes{grid-template-columns:1fr}.ep-public .ep-conversation,.ep-public .ep-workspace-body{padding:19px}.ep-public .ep-demo-heading{padding:16px;font-size:12px}.ep-public .ep-stat-grid{gap:12px}.ep-public .ep-stat-grid>div{padding:16px}.ep-public .ep-stat-grid span{font-size:11px}.ep-public .ep-stat-grid strong{font-size:29px}.ep-public .ep-topic-progress{padding:18px}.ep-public .ep-topic-progress h3 span{display:block;margin:5px 0 0}.ep-public .ep-bar-row{grid-template-columns:105px minmax(0,1fr) 33px;gap:9px;font-size:10px}.ep-public .ep-final-cta{padding-block:50px}.ep-public .ep-final-cta h2{font-size:31px}.ep-public .ep-final-cta .ep-hero-actions{flex-wrap:wrap}.ep-public .ep-final-cta .ep-button{min-width:130px}}
@media(prefers-reduced-motion:reduce){.ep-public .ep-button{transition:none}}

/* Public policy/error pages share branding without touching the application layout. */
.ep-public [tabindex="-1"]:focus-visible{outline:3px solid #1d4ed8;outline-offset:5px}
.ep-public .ep-footer-grid{grid-template-columns:1.7fr repeat(4,minmax(0,1fr))}
.ep-public .ep-policy{max-width:860px;padding-block:65px 80px}
.ep-public .ep-policy h1{font-size:clamp(36px,5vw,52px);letter-spacing:-1.8px}
.ep-public .ep-policy h2{font-size:23px;line-height:1.35;margin:32px 0 12px;letter-spacing:-.4px}
.ep-public .ep-policy p{color:var(--ep-muted);margin-bottom:16px;overflow-wrap:anywhere}
.ep-public .ep-policy a{color:#1d4ed8;text-decoration:underline;text-underline-offset:3px}
.ep-public .ep-policy .ep-policy-notice{padding:22px;background:#eef4ff;border:1px solid #cadbfa;border-radius:12px;color:#304c79}
.ep-public .ep-error-page{max-width:740px;min-height:480px;padding-block:70px;text-align:center}
.ep-public .ep-error-page .ep-kicker{margin-top:18px}
.ep-public .ep-error-page h1{font-size:clamp(38px,5vw,58px);letter-spacing:-2px}
.ep-public .ep-error-page>p:last-of-type{color:var(--ep-muted)}
.ep-public .ep-error-page .ep-hero-actions{justify-content:center;flex-wrap:wrap}
.ep-public .ep-demo-label,.ep-public figcaption,.ep-public .ep-stat-grid small{font-size:11px;color:#526580}
@media(min-width:801px){.ep-public #students .ep-section-copy{grid-column:2;grid-row:1}.ep-public #students figure{grid-column:1;grid-row:1}}
@media(max-width:800px){.ep-public .ep-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-public .ep-footer-intro{grid-column:1/-1}.ep-public .ep-policy{padding-block:42px 55px}}

/* Hero illustration refresh. Deliberately scoped to this section only. */
.ep-public .ep-hero-illustrated {
    padding: 0;
    background: #f2f8ff;
}
.ep-public .ep-hero-illustrated .ep-hero-grid { grid-template-columns: minmax(0, .92fr) minmax(0, 1.2fr); gap: 0; min-height: 540px; }
.ep-public .ep-hero-illustrated .ep-hero-copy { position: relative; z-index: 1; padding-block: 50px; }
.ep-public .ep-hero-illustrated .ep-eyebrow { background: transparent; border: 0; padding: 0; font-size: 11px; letter-spacing: 1.5px; }
.ep-public .ep-hero-illustrated h1 { font-size: clamp(44px, 4.5vw, 64px); line-height: 1.04; letter-spacing: -2.5px; margin: 21px 0 20px; }
.ep-public .ep-hero-illustrated h1 span { display: inline-block; white-space: nowrap; }
.ep-public .ep-hero-illustrated .ep-hero-description { max-width: 450px; font-size: 16px; line-height: 1.7; }
.ep-public .ep-hero-illustrated .ep-hero-actions { margin: 30px 0 26px; gap: 14px; }
.ep-public .ep-hero-illustrated .ep-button { min-height: 56px; border-radius: 8px; padding-inline: 28px; }
.ep-public .ep-hero-illustrated .ep-button:not(.ep-button-secondary) { box-shadow: 0 8px 20px #2563eb26; }
.ep-public .ep-hero-illustrated .ep-assurances { max-width: 485px; gap: 12px 18px; font-size: 11px; }
.ep-public .ep-hero-illustrated .ep-assurances li { gap: 7px; }
.ep-public .ep-hero-illustrated .ep-assurances .ep-icon { width: 23px; height: 23px; padding: 4px; border-radius: 7px; background: #e7efff; }
.ep-public .ep-hero-illustrated .ep-assurances li:nth-child(2) .ep-icon { background: #e7f4ef; color: #257a68; }
.ep-public .ep-hero-illustrated .ep-assurances li:nth-child(3) .ep-icon { background: #eeeafa; color: #7655a9; }
.ep-public .ep-hero-illustrated .ep-hero-art { min-width: 0; width: 112%; align-self: stretch; display: flex; align-items: flex-end; }
.ep-public .ep-hero-illustrated .ep-hero-art img { display: block; width: 100%; height: auto; mix-blend-mode: multiply; mask-image: linear-gradient(90deg, transparent, #000 8%, #000 96%, transparent); }
.ep-public .ep-hero-illustrated .ep-hero-art figcaption { margin-top: -4px; color: #5b7290; font-size: 12px; letter-spacing: .2px; }
@media (max-width: 1150px) {
    .ep-public .ep-hero-illustrated { padding-block: 0; }
    .ep-public .ep-hero-illustrated h1 { font-size: clamp(40px, 4.8vw, 56px); letter-spacing: -2.3px; }
    .ep-public .ep-hero-illustrated .ep-eyebrow { font-size: 9px; letter-spacing: 1.1px; }
    .ep-public .ep-hero-illustrated .ep-hero-description { font-size: 15px; }
}
@media (max-width: 800px) {
    .ep-public .ep-hero-illustrated .ep-hero-grid { grid-template-columns: minmax(0, 1fr); gap: 0; min-height: auto; }
    .ep-public .ep-hero-illustrated .ep-hero-copy { max-width: 600px; margin-inline: auto; text-align: center; padding: 42px 0 24px; }
    .ep-public .ep-hero-illustrated h1 { font-size: clamp(43px, 8vw, 62px); letter-spacing: -2.5px; }
    .ep-public .ep-hero-illustrated .ep-hero-description { margin-inline: auto; }
    .ep-public .ep-hero-illustrated .ep-hero-actions, .ep-public .ep-hero-illustrated .ep-assurances { justify-content: center; }
    .ep-public .ep-hero-illustrated .ep-assurances { margin-inline: auto; }
    .ep-public .ep-hero-illustrated .ep-hero-art { max-width: 680px; width: 100%; margin-inline: auto; }
}
@media (max-width: 480px) {
    .ep-public .ep-hero-illustrated { padding: 0; }
    .ep-public .ep-hero-illustrated h1 { font-size: clamp(35px, 10.7vw, 48px); letter-spacing: -1.8px; margin-block: 22px 20px; }
    .ep-public .ep-hero-illustrated .ep-eyebrow { font-size: 9px; letter-spacing: 1px; }
    .ep-public .ep-hero-illustrated .ep-hero-description { font-size: 14px; line-height: 1.8; }
    .ep-public .ep-hero-illustrated .ep-hero-actions { flex-wrap: wrap; gap: 12px; margin-block: 24px 20px; }
    .ep-public .ep-hero-illustrated .ep-button { padding-inline: 16px; min-height: 52px; gap: 10px; white-space: nowrap; flex: 1 0 130px; }
    .ep-public .ep-hero-illustrated .ep-assurances { font-size: 10px; gap: 9px 12px; }
    .ep-public .ep-hero-illustrated .ep-hero-art figcaption { font-size: 10px; margin-top: 0; }
}

.ep-public .ep-hero-illustrated .ep-status-dot { display: none; }
.ep-public .ep-hero-illustrated .ep-button-secondary { color: #2563eb; border-color: #a9c4fa; }

/* Reference-inspired feature strip and audience cards; public sections only. */
.ep-public .ep-feature-strip { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:26px; padding-block:38px 48px; }
.ep-public .ep-strip-item { text-align:center; }
.ep-public .ep-strip-icon { display:inline-grid; place-items:center; width:68px; height:68px; border-radius:19px; background:#e8f1ff; color:#2563eb; margin-bottom:16px; }
.ep-public .ep-strip-icon .ep-icon { width:35px; height:35px; stroke-width:2; }
.ep-public .ep-strip-item:nth-child(2) .ep-strip-icon { background:#f1eaff; color:#8546dc; }
.ep-public .ep-strip-item:nth-child(3) .ep-strip-icon { background:#e2f7ef; color:#0b9977; }
.ep-public .ep-strip-item:nth-child(4) .ep-strip-icon { background:#fde6ef; color:#d82d6b; }
.ep-public .ep-strip-item:nth-child(5) .ep-strip-icon { background:#fff4e4; color:#d98917; }
.ep-public .ep-strip-item:nth-child(6) .ep-strip-icon { background:#e3f8f5; color:#119c8b; }
.ep-public .ep-strip-item h2 { font-size:14px; line-height:1.4; margin-bottom:8px; letter-spacing:-.3px; }
.ep-public .ep-strip-item p { font-size:13px; line-height:1.7; color:var(--ep-muted); max-width:175px; margin-inline:auto; }
.ep-public .ep-audience { background:#eef8ef; padding:12px 0 45px; }
.ep-public .ep-audience .ep-section-heading { margin-bottom:26px; }
.ep-public .ep-audience .ep-section-heading h2 { font-size:34px; margin:9px 0 10px; letter-spacing:-1px; }
.ep-public .ep-audience .ep-section-heading h2 span { color:#2563eb; }
.ep-public .ep-audience .ep-section-heading>p:last-child { font-size:15px; }
.ep-public .ep-audience-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.ep-public .ep-audience-card { display:flex; flex-direction:column; align-items:center; text-align:center; background:white; border:1px solid #dfe7f2; border-radius:11px; padding:16px 23px 22px; box-shadow:0 3px 10px #254b8010; }
.ep-public .ep-audience-card img { display:block; width:145px; height:100px; object-fit:contain; margin-bottom:10px; }
.ep-public .ep-audience-card h3 { font-size:17px; line-height:1.4; margin-bottom:9px; letter-spacing:-.4px; }
.ep-public .ep-audience-card p { color:var(--ep-muted); font-size:14px; line-height:1.7; flex:1; }
.ep-public .ep-audience-card .ep-text-link { color:#2563eb; font-size:12px; border:1px solid #b2cafa; border-radius:7px; padding:8px 14px; margin-top:20px; min-height:42px; gap:10px; }
.ep-public .ep-audience-card .ep-text-link:hover { background:#eff6ff; text-decoration:none; }
.ep-public .ep-audience .ep-section-note { font-size:11px; margin-top:22px; }
@media(max-width:1100px) {
 .ep-public .ep-feature-strip { gap:16px; }
 .ep-public .ep-strip-item h2 { font-size:12px; }
 .ep-public .ep-strip-item p { font-size:12px; }
 .ep-public .ep-audience-grid { gap:14px; }
 .ep-public .ep-audience-card { padding-inline:14px; }
 .ep-public .ep-audience-card h3 { font-size:15px; }
 .ep-public .ep-audience-card .ep-text-link { padding-inline:9px; font-size:11px; }
}
@media(max-width:800px) {
 .ep-public .ep-feature-strip { grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px 20px; padding-block:32px 40px; }
 .ep-public .ep-audience-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
 .ep-public .ep-audience .ep-section-heading h2 { font-size:30px; }
}
@media(max-width:480px) {
 .ep-public .ep-feature-strip { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 16px; }
 .ep-public .ep-strip-icon { width:58px; height:58px; border-radius:16px; margin-bottom:12px; }
 .ep-public .ep-audience-grid { grid-template-columns:1fr; gap:16px; }
 .ep-public .ep-audience-card { padding:18px 28px 24px; }
 .ep-public .ep-audience-card h3 { font-size:18px; }
 .ep-public .ep-audience-card .ep-text-link { font-size:13px; padding-inline:16px; }
 .ep-public .ep-audience .ep-section-heading h2 { font-size:28px; }
}

/* Eight-feature overview, isolated from the hero and other feature grids. */
.ep-public .ep-capabilities { padding:48px 0 40px; background:#fff; border-bottom:12px solid #eef8ff; }
.ep-public .ep-capabilities .ep-section-heading { max-width:100%; margin-bottom:42px; }
.ep-public .ep-capabilities .ep-section-heading h2 { font-size:34px; margin:10px 0 8px; letter-spacing:-1px; }
.ep-public .ep-capabilities .ep-section-heading h2 span { color:#214e94; }
.ep-public .ep-capabilities .ep-section-heading>p:last-child { font-size:16px; }
.ep-public .ep-capability-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:48px 28px; }
.ep-public .ep-capability { display:flex; align-items:flex-start; gap:15px; min-width:0; }
.ep-public .ep-capability-icon { display:grid; place-items:center; flex:0 0 58px; height:58px; border-radius:21px; background:#fff5e5; color:#e69b21; }
.ep-public .ep-capability-icon .ep-icon { width:33px; height:33px; stroke-width:2; }
.ep-public .ep-capability:nth-child(2) .ep-capability-icon,.ep-public .ep-capability:nth-child(5) .ep-capability-icon { background:#e5f0ff; color:#2563eb; }
.ep-public .ep-capability:nth-child(3) .ep-capability-icon { background:#e1f8ef; color:#109c7c; }
.ep-public .ep-capability:nth-child(4) .ep-capability-icon,.ep-public .ep-capability:nth-child(8) .ep-capability-icon { background:#f2eaff; color:#8242db; }
.ep-public .ep-capability:nth-child(7) .ep-capability-icon { background:#ffe6f0; color:#df397a; }
.ep-public .ep-capability h3 { font-size:15px; line-height:1.4; margin:8px 0 7px; letter-spacing:-.25px; }
.ep-public .ep-capability p { font-size:14px; line-height:1.65; color:var(--ep-muted); }
.ep-public .ep-capability-note { margin-top:30px; text-align:center; color:var(--ep-muted); font-size:11px; }
@media(max-width:1150px) {
 .ep-public .ep-capability-grid { gap:32px 20px; }
 .ep-public .ep-capability { gap:10px; }
 .ep-public .ep-capability-icon { flex-basis:48px; height:48px; border-radius:17px; }
 .ep-public .ep-capability h3 { font-size:13px; margin-top:4px; }
 .ep-public .ep-capability p { font-size:12px; }
}
@media(max-width:800px) {
 .ep-public .ep-capability-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 24px; }
 .ep-public .ep-capabilities .ep-section-heading h2 { font-size:29px; }
 .ep-public .ep-capability h3 { font-size:15px; }
 .ep-public .ep-capability p { font-size:13px; }
}
@media(max-width:480px) {
 .ep-public .ep-capabilities { padding-block:35px; }
 .ep-public .ep-capabilities .ep-section-heading { margin-bottom:28px; }
 .ep-public .ep-capabilities .ep-section-heading h2 { font-size:28px; }
 .ep-public .ep-capability-grid { grid-template-columns:1fr; gap:25px; }
 .ep-public .ep-capability { gap:16px; }
 .ep-public .ep-capability-icon { flex-basis:56px; height:56px; }
}

/* Static product showcase: all controls and numbers are illustrative. */
.ep-public .ep-showcase { padding:38px 0 34px; background:linear-gradient(120deg,#f0f8ff,#eaf5ff 55%,#f4faff); }
.ep-public .ep-showcase .ep-section-heading { margin-bottom:30px; max-width:100%; }
.ep-public .ep-showcase .ep-section-heading h2 { font-size:34px; margin:10px 0 8px; letter-spacing:-1px; }
.ep-public .ep-showcase .ep-section-heading h2 span { color:#2563eb; }
.ep-public .ep-showcase .ep-section-heading>p:last-child { font-size:16px; }
.ep-public .ep-showcase-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ep-public .ep-showcase-item { min-width:0; }
.ep-public .ep-preview { height:340px; background:#fff; border:1px solid #e2eaf3; border-radius:9px; overflow:hidden; box-shadow:0 5px 18px #34577e12; }
.ep-public .ep-preview-top { height:37px; display:flex; align-items:center; gap:5px; padding:0 11px; border-bottom:1px solid #edf1f7; font-size:10px; }
.ep-public .ep-preview-top>.ep-icon { width:16px; height:16px; color:#2563eb; }
.ep-public .ep-preview-top>span { margin-left:auto; font-size:8px; color:#617087; }
.ep-public .ep-preview-workspace { display:grid; grid-template-columns:94px minmax(0,1fr); height:calc(100% - 37px); }
.ep-public .ep-preview-sidebar { border-right:1px solid #edf1f7; padding:9px 5px; display:flex; flex-direction:column; gap:4px; font-size:8px; color:#566680; }
.ep-public .ep-preview-sidebar>span { padding:6px 5px; border-radius:4px; }
.ep-public .ep-preview-sidebar .ep-icon { width:10px; height:10px; }
.ep-public .ep-preview-sidebar .ep-preview-selected { background:#2563eb; color:#fff; }
.ep-public .ep-preview-content { padding:14px 11px; }
.ep-public .ep-preview-content h3 { font-size:12px; line-height:1.4; }
.ep-public .ep-preview-content>p { font-size:8px; margin-top:5px; color:#60718a; }
.ep-public .ep-preview-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin:14px 0; }
.ep-public .ep-preview-stats>div { border:1px solid #e9eef7; border-radius:6px; text-align:center; padding:9px 3px; }
.ep-public .ep-preview-stats strong { display:block; font-size:16px; color:#2563eb; }
.ep-public .ep-preview-stats>div:last-child strong { color:#228d76; }
.ep-public .ep-preview-stats span { display:block; font-size:7px; line-height:1.4; color:#586b86; }
.ep-public .ep-preview-content h4 { font-size:10px; margin:12px 0 7px; }
.ep-public .ep-preview-topic { display:flex; align-items:center; gap:7px; padding:10px 6px; border:1px solid #e7eef8; border-radius:6px; margin-bottom:9px; font-size:8px; }
.ep-public .ep-preview-topic>.ep-icon { width:21px; height:21px; padding:3px; color:#2563eb; background:#eaf2ff; border-radius:50%; }
.ep-public .ep-preview-topic>div { flex:1; }
.ep-public .ep-preview-topic strong { font-size:8px; }
.ep-public .ep-preview-meter { height:3px; margin-top:5px; background:#e6edf6; border-radius:4px; }
.ep-public .ep-preview-meter i { display:block; width:60%; height:100%; background:#2563eb; }
.ep-public .ep-preview-meter-short i { width:30%; }
.ep-public .ep-preview-content>p.ep-preview-sample { font-size:8px; line-height:1.5; }
.ep-public .ep-preview-live { background:#28343e; border-color:#c7d9e7; color:white; }
.ep-public .ep-preview-live .ep-preview-top { border:0; height:28px; font-size:9px; }
.ep-public .ep-preview-live .ep-preview-top>.ep-icon { color:#ffb6b6; }
.ep-public .ep-preview-live .ep-preview-top>span { color:#c1d0dd; }
.ep-public .ep-preview-classroom { display:grid; grid-template-columns:1.1fr 1fr; gap:7px; padding:0 10px; height:257px; }
.ep-public .ep-preview-people { display:grid; grid-template-rows:1fr 1fr; gap:7px; }
.ep-public .ep-preview-people>div { position:relative; display:grid; place-items:center; background:linear-gradient(140deg,#d4dedf,#afc1ca); border-radius:5px; overflow:hidden; }
.ep-public .ep-preview-people>div:last-child { background:linear-gradient(130deg,#e5ddd2,#b9c4cb); }
.ep-public .ep-preview-people img { width:100%; height:110px; object-fit:contain; }
.ep-public .ep-preview-people span { position:absolute; bottom:4px; left:6px; padding:1px 5px; font-size:8px; background:#253a4acc; border-radius:3px; }
.ep-public .ep-preview-board { background:#f9fbfd; color:#253348; border-radius:5px; padding:21px 10px; text-align:center; }
.ep-public .ep-preview-board h3 { font-size:14px; font-weight:400; margin-bottom:16px; }
.ep-public .ep-preview-board p { font-size:15px; margin-block:8px; }
.ep-public .ep-preview-board strong { font-size:17px; }
.ep-public .ep-preview-board>span { display:block; font-size:8px; color:#65748a; margin-top:22px; }
.ep-public .ep-preview-tools { height:52px; display:flex; align-items:center; gap:17px; padding:0 16px; }
.ep-public .ep-preview-tools .ep-icon { width:14px; height:14px; }
.ep-public .ep-preview-end { margin-left:auto; background:#d7424e; border-radius:5px; padding:3px 12px; font-size:10px; }
.ep-public .ep-preview-chat { padding:13px 12px; }
.ep-public .ep-preview-question { font-size:9px; background:#deecff; color:#254a7d; border-radius:10px 10px 0 10px; padding:8px; margin-left:23px; }
.ep-public .ep-preview-answer { background:#f7f9fc; border:1px solid #eaf0f8; border-radius:0 9px 9px; margin:11px 18px 10px 0; padding:11px; font-size:9px; line-height:1.7; }
.ep-public .ep-preview-answer p { margin-top:6px; }
.ep-public .ep-preview-answer ol { padding-left:15px; margin:7px 0; }
.ep-public .ep-preview-file { display:flex; align-items:center; gap:4px; font-size:8px; color:#60718a; }
.ep-public .ep-preview-file .ep-icon { width:12px; height:12px; }
.ep-public .ep-preview-input { display:flex; align-items:center; justify-content:space-between; border:1px solid #e7edf6; border-radius:6px; margin-top:10px; padding:5px 6px; color:#758298; font-size:9px; }
.ep-public .ep-preview-input>span { background:#2563eb; color:#fff; padding:3px; border-radius:5px; }
.ep-public .ep-preview-input .ep-icon { width:14px; height:14px; }
.ep-public .ep-showcase-item figcaption { margin-top:13px; }
.ep-public .ep-showcase-item figcaption h3 { font-size:16px; color:var(--ep-ink); margin-bottom:4px; }
.ep-public .ep-showcase-item figcaption p { font-size:13px; color:var(--ep-muted); }
.ep-public .ep-showcase-note { max-width:900px; text-align:center; margin:23px auto 0; color:#526580; font-size:11px; line-height:1.7; }
@media(max-width:1150px) {
 .ep-public .ep-showcase-grid { gap:16px; }
 .ep-public .ep-preview-workspace { grid-template-columns:70px minmax(0,1fr); }
 .ep-public .ep-preview-content { padding-inline:7px; }
 .ep-public .ep-preview-sidebar { font-size:7px; }
 .ep-public .ep-preview-board p { font-size:12px; }
 .ep-public .ep-preview-answer { padding:8px; margin-right:0; }
 .ep-public .ep-showcase-item figcaption h3 { font-size:14px; }
}
@media(max-width:850px) {
 .ep-public .ep-showcase-grid { grid-template-columns:1fr; gap:28px; max-width:480px; margin-inline:auto; }
 .ep-public .ep-preview-workspace { grid-template-columns:100px minmax(0,1fr); }
 .ep-public .ep-preview-sidebar { font-size:9px; }
 .ep-public .ep-preview-content { padding-inline:14px; }
 .ep-public .ep-preview-board p { font-size:16px; }
 .ep-public .ep-showcase .ep-section-heading h2 { font-size:29px; }
}
@media(max-width:480px) {
 .ep-public .ep-showcase { padding-block:32px; }
 .ep-public .ep-showcase .ep-section-heading h2 { font-size:28px; }
 .ep-public .ep-preview-workspace { grid-template-columns:83px minmax(0,1fr); }
 .ep-public .ep-preview-content { padding-inline:9px; }
 .ep-public .ep-preview-sidebar { font-size:8px; }
}

/* Student showcase mirrors My Subjects, not an invented dashboard. */
.ep-public .ep-preview-subjects { background:#f8fafc; }
.ep-public .ep-preview-subjects .ep-preview-top { background:#fff; }
.ep-public .ep-subject-preview-body { padding:19px 15px; }
.ep-public .ep-subject-preview-body>h3 { font-size:19px; letter-spacing:-.4px; }
.ep-public .ep-subject-preview-body>p { font-size:10px; line-height:1.6; color:#52627a; margin-top:5px; }
.ep-public .ep-subject-preview-card { background:#fff; border:1px solid #dfe7f2; border-radius:9px; padding:14px; margin-top:16px; box-shadow:0 3px 9px #203b6610; }
.ep-public .ep-subject-preview-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:8px; }
.ep-public .ep-subject-preview-heading h4 { font-size:14px; margin:0 0 3px; }
.ep-public .ep-subject-preview-heading p { font-size:9px; color:#52627a; }
.ep-public .ep-subject-preview-heading>span { background:#edf4ff; color:#2563eb; padding:3px 7px; border-radius:12px; font-size:8px; white-space:nowrap; }
.ep-public .ep-subject-preview-meta { display:grid; grid-template-columns:1fr 1.4fr; gap:10px; padding:12px 0; margin-top:10px; border-top:1px solid #edf1f6; }
.ep-public .ep-subject-preview-meta span { display:block; font-size:8px; color:#64748b; margin-bottom:3px; }
.ep-public .ep-subject-preview-meta strong { display:block; font-size:10px; }
.ep-public .ep-subject-preview-actions { display:flex; gap:7px; }
.ep-public .ep-subject-preview-actions span { border:1px solid #cdd9eb; border-radius:5px; padding:6px 8px; color:#34517a; font-size:9px; }
.ep-public .ep-subject-preview-body>p.ep-subject-preview-note { font-size:8px; margin-top:12px; }
@media(max-width:1150px) and (min-width:851px) {
 .ep-public .ep-subject-preview-body { padding:14px 10px; }
 .ep-public .ep-subject-preview-card { padding:10px; }
 .ep-public .ep-subject-preview-heading h4 { font-size:12px; }
}

/* Readable preview of the existing subject-progress fields, adapted to a card. */
.ep-public .ep-preview-progress { background:#f8fafc; }
.ep-public .ep-preview-progress .ep-preview-top { background:white; font-size:12px; }
.ep-public .ep-preview-progress .ep-preview-top>span { font-size:10px; }
.ep-public .ep-student-progress-body { padding:17px 15px; }
.ep-public .ep-student-progress-body>h3 { font-size:21px; line-height:1.25; letter-spacing:-.5px; }
.ep-public .ep-student-progress-body>p { font-size:12px; line-height:1.5; color:#52627a; margin-top:6px; }
.ep-public .ep-student-progress-topic { background:#fff; border:1px solid #dfe7f2; border-radius:9px; padding:14px; margin-top:14px; }
.ep-public .ep-student-progress-title { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; }
.ep-public .ep-student-progress-title>strong { font-size:15px; }
.ep-public .ep-student-progress-title>span { font-size:11px; background:#e9f2ff; color:#2453a4; padding:3px 7px; border-radius:12px; }
.ep-public .ep-student-progress-topic dl { display:grid; grid-template-columns:1fr 1.5fr; gap:10px; margin:12px 0; }
.ep-public .ep-student-progress-topic dt { font-size:11px; color:#52627a; }
.ep-public .ep-student-progress-topic dd { font-size:17px; font-weight:700; margin:2px 0 0; }
.ep-public .ep-student-progress-open { display:inline-flex; align-items:center; gap:9px; border:1px solid #cbd9ee; border-radius:5px; padding:5px 10px; font-size:12px; color:#2453a4; }
.ep-public .ep-student-progress-open .ep-icon { width:15px; height:15px; }
.ep-public .ep-student-progress-body>p.ep-student-progress-sample { font-size:11px; margin-top:10px; }
@media(min-width:851px) and (max-width:1150px) {
 .ep-public .ep-student-progress-body { padding:13px 10px; }
 .ep-public .ep-student-progress-body>h3 { font-size:19px; }
 .ep-public .ep-student-progress-topic { padding:10px; }
}

/* Larger text in the showcase AI Tutor preview. */
.ep-public .ep-preview-tutor .ep-preview-top { font-size:12px; }
.ep-public .ep-preview-tutor .ep-preview-top>span { font-size:10px; }
.ep-public .ep-preview-tutor .ep-preview-chat { padding:12px; }
.ep-public .ep-preview-tutor .ep-preview-question { font-size:12px; line-height:1.45; padding:8px 10px; margin-left:12px; }
.ep-public .ep-preview-tutor .ep-preview-answer { font-size:12px; line-height:1.5; padding:10px; margin:10px 0; }
.ep-public .ep-preview-tutor .ep-preview-answer ol { margin:6px 0; padding-left:18px; }
.ep-public .ep-preview-tutor .ep-preview-file { font-size:11px; }
.ep-public .ep-preview-tutor .ep-preview-input { font-size:11px; margin-top:8px; }
.ep-public .ep-showcase .ep-preview { height:395px; }
.ep-public .ep-preview-live .ep-preview-classroom { height:312px; }

/* Educator showcase */
.ep-public .ep-educator-band { position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(ellipse at 78% 25%, #eaf2ff 0, transparent 52%), linear-gradient(120deg, #f5f9ff, #fff 55%, #f6f9ff); }
.ep-public .ep-educator-band::before { content: ''; position: absolute; z-index: -1; width: 620px; height: 620px; border-radius: 50%; background: #e8f1ff80; right: -180px; top: -240px; }
.ep-public .ep-educator-band::after { content: ''; position: absolute; right: 3%; bottom: 30px; width: 80px; height: 105px; background: radial-gradient(circle, #cdddff 1.5px, transparent 2px) 0 0 / 18px 18px; z-index: -1; }
.ep-public .ep-educator-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 65px; padding-block: 72px 58px; padding-right: 65px; }
.ep-public #educators .ep-section-copy h2 { font-size: clamp(34px, 3.4vw, 46px); line-height: 1.09; letter-spacing: -1.6px; margin: 16px 0; }
.ep-public #educators .ep-section-copy > p:not(.ep-kicker) { font-size: 17px; line-height: 1.5; }
.ep-public #educators .ep-check-list { gap: 10px; margin: 28px 0 34px; font-size: 15px; }
.ep-public #educators .ep-check-list li { align-items: center; gap: 16px; }
.ep-public #educators .ep-check-list .ep-icon { width: 30px; height: 30px; padding: 6px; border-radius: 50%; background: #e9f2ff; }
.ep-public .ep-educator-actions { display: flex; align-items: center; gap: 30px; }
.ep-public .ep-educator-actions .ep-button { border-radius: 40px; background: linear-gradient(#3075ff, #2154f5); box-shadow: 0 14px 26px #285ce533; padding-inline: 29px; font-size: 18px; white-space: nowrap; }
.ep-public .ep-educator-actions .ep-button:hover { background: #1d4ed8; }
.ep-public .ep-educator-actions p { font-size: 12px; line-height: 1.5; color: #60799f; }
.ep-public .ep-educator-preview { position: relative; min-width: 0; }
.ep-public .ep-educator-preview::before { content: ''; position: absolute; z-index: -1; width: 290px; height: 290px; border-radius: 50%; background: #e7f0ff99; bottom: -40px; left: -80px; }
.ep-public .ep-educator-rays { position: absolute; width: 43px; height: 62px; top: -20px; left: -55px; color: #5389ff; }
.ep-public #educators .ep-workspace-demo { box-shadow: 0 15px 35px #345f9c1c; border-color: #d5e4ff; border-radius: 18px; }
.ep-public #educators .ep-demo-heading { padding: 19px 28px; min-height: 64px; }
.ep-public #educators .ep-demo-heading > span:first-child { gap: 17px; }
.ep-public #educators .ep-demo-label { color: #2465ff; background: #edf4ff; border: 1px solid #dce9ff; border-radius: 10px; font-size: 10px; letter-spacing: 0; padding: 5px 12px; }
.ep-public #educators .ep-workspace-body { padding: 24px 28px; }
.ep-public #educators .ep-workspace-title h3 { font-size: 23px; letter-spacing: -.7px; line-height: 1.25; }
.ep-public #educators .ep-workspace-title p { font-size: 13px; margin: 5px 0 4px; }
.ep-public #educators .ep-task-row { flex-wrap: nowrap; padding: 13px 5px; gap: 18px; }
.ep-public #educators .ep-card-icon { width: 50px; height: 50px; border-radius: 13px; }
.ep-public #educators .ep-task-row strong { font-size: 13px; }
.ep-public #educators .ep-task-row div > span { font-size: 11px; margin-top: 3px; }
.ep-public #educators .ep-badge { padding: 5px 12px; color: #2465ff; font-size: 10px; font-weight: 600; }
.ep-public #educators .ep-teacher-summary { display: flex; align-items: center; gap: 16px; padding: 13px; margin-top: 16px; background: linear-gradient(110deg, #f0f5ff, #f2f7fe); }
.ep-public #educators .ep-teacher-summary p { font-size: 11px; line-height: 1.5; margin-top: 4px; }
.ep-public .ep-educator-bulb { display: grid; place-items: center; width: 48px; height: 48px; flex-shrink: 0; border: 1px solid #ccdaff; border-radius: 50%; background: #eaf0ff; color: #2966ff; }
.ep-public .ep-educator-chevron { color: #2966ff; font-size: 28px; margin-left: auto; }
.ep-public #educators figcaption { margin: 0 28px; padding: 13px 0; border-top: 1px solid #e5edfa; font-size: 10px; }
.ep-public .ep-educator-note { position: absolute; left: calc(100% + 30px); top: 85px; transform: rotate(-12deg); color: #aecafb; font: italic 23px/1.15 'Segoe Print', cursive; }
.ep-public .ep-educator-note::after { content: ''; display: block; width: 75px; height: 25px; margin-top: 12px; border-top: 3px solid #bdd4fc; border-radius: 50%; transform: rotate(-18deg); }
@media (max-width: 1150px) {
    .ep-public .ep-educator-grid { gap: 35px; padding-right: 0; }
    .ep-public .ep-educator-note, .ep-public .ep-educator-rays { display: none; }
    .ep-public .ep-educator-actions { gap: 18px; flex-wrap: wrap; }
}
@media (max-width: 800px) {
    .ep-public .ep-educator-grid { grid-template-columns: 1fr; padding-block: 55px; gap: 35px; }
    .ep-public #educators .ep-section-copy h2 { max-width: 520px; }
    .ep-public .ep-educator-preview { width: 100%; max-width: 620px; margin-inline: auto; }
}
@media (max-width: 480px) {
    .ep-public #educators .ep-section-copy h2 { font-size: 34px; }
    .ep-public #educators .ep-check-list { font-size: 14px; }
    .ep-public #educators .ep-demo-heading { padding: 16px; gap: 12px; }
    .ep-public #educators .ep-workspace-body { padding: 20px 16px; }
    .ep-public #educators .ep-task-row { gap: 10px; padding-inline: 0; }
    .ep-public #educators .ep-card-icon { width: 38px; height: 42px; }
    .ep-public #educators .ep-badge { padding: 4px 7px; font-size: 9px; }
    .ep-public #educators .ep-teacher-summary { gap: 10px; }
    .ep-public .ep-educator-bulb { width: 36px; height: 36px; }
    .ep-public #educators figcaption { margin-inline: 16px; }
}

/* Student showcase: live content over a decorative illustration. */
.ep-public .ep-student-band { position: relative; isolation: isolate; overflow: hidden; background: #fff8ee url('/static/images/student-section-background.png') center bottom / cover no-repeat; }
.ep-public .ep-student-grid { position: relative; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: clamp(40px, 5vw, 75px); width: 77%; max-width: 1200px; margin-left: 7.5%; margin-right: auto; padding-block: 70px; min-height: 600px; }
.ep-public #students .ep-section-copy { grid-column: 2; grid-row: 1; align-self: center; }
.ep-public #students .ep-section-copy h2 { font-size: clamp(32px, 3.3vw, 48px); line-height: 1.05; letter-spacing: -1.4px; margin: 16px 0 32px; }
.ep-public #students .ep-section-copy h2 span { position: relative; display: inline-block; z-index: 0; }
.ep-public #students .ep-section-copy h2 span::after { content: ''; position: absolute; z-index: -1; height: 11px; width: 90%; left: 4%; bottom: -13px; border-top: 5px solid #ffbc7b; border-radius: 50%; transform: rotate(-2deg); }
.ep-public #students .ep-section-copy > p:not(.ep-kicker) { font-size: 16px; line-height: 1.5; }
.ep-public #students .ep-check-list { gap: 10px; margin: 22px 0 25px; font-size: 14px; }
.ep-public #students .ep-check-list li { align-items: center; gap: 13px; }
.ep-public #students .ep-check-list .ep-icon { width: 29px; height: 29px; padding: 6px; border-radius: 50%; background: #e8efff; }
.ep-public #students .ep-student-cta { border-radius: 40px; padding: 14px 26px; font-size: 18px; background: linear-gradient(#3075ff, #245bff); box-shadow: 0 13px 25px #2563eb30; }
.ep-public #students .ep-student-cta:hover { background: #1d4ed8; }
.ep-public #students .ep-workspace-demo { grid-column: 1; grid-row: 1; border: 1px solid #e0e9f7; border-radius: 22px; box-shadow: 0 15px 35px #db9e5820; background: #ffffffed; }
.ep-public #students .ep-demo-heading { padding: 19px 28px; min-height: 63px; }
.ep-public #students .ep-demo-label { font-size: 10px; letter-spacing: 1px; border-radius: 7px; }
.ep-public #students .ep-workspace-body { padding: 26px 28px 30px; }
.ep-public #students .ep-learning-title { font-size: 24px; line-height: 1.25; letter-spacing: -.65px; margin: 12px 0 28px; }
.ep-public #students .ep-learning-path { gap: 29px; }
.ep-public #students .ep-learning-path li { padding-left: 65px; min-height: 51px; }
.ep-public #students .ep-learning-path li::before { background: #ffecd3; color: #f47c14; border-radius: 50%; width: 40px; height: 40px; font-size: 18px; font-weight: 700; left: 6px; }
.ep-public #students .ep-learning-path li:not(:last-child)::after { content: ''; position: absolute; left: 25px; top: 46px; height: 29px; border-left: 2px dashed #d8dfe9; }
.ep-public #students .ep-learning-path strong { display: block; font-size: 16px; }
.ep-public #students .ep-learning-path span { display: block; font-size: 13px; margin-top: 3px; line-height: 1.5; }
.ep-public #students figcaption { margin: 0 28px; padding: 14px 0 18px; border-top: 1px solid #e5edf8; font-size: 11px; }
.ep-public .ep-student-rays { position: absolute; left: -45px; top: 35px; z-index: -1; }
.ep-public .ep-student-note { position: absolute; top: 165px; right: 2%; color: #d78236; transform: rotate(-13deg); font: italic 21px/1.3 'Segoe Print', cursive; }
@media (max-width: 1150px) {
    .ep-public .ep-student-grid { width: 85%; margin-inline: auto; gap: 32px; }
    .ep-public .ep-student-band { background-size: auto 100%; }
    .ep-public .ep-student-note { display: none; }
    .ep-public #students .ep-section-copy { background: #fff8efdf; border-radius: 20px; padding: 18px; }
}
@media (max-width: 800px) {
    .ep-public .ep-student-grid { width: calc(100% - 48px); grid-template-columns: 1fr; padding-block: 50px 220px; gap: 32px; }
    .ep-public .ep-student-band { background-size: auto 450px; }
    .ep-public #students .ep-section-copy { grid-column: 1; grid-row: 1; padding: 0; background: none; }
    .ep-public #students .ep-section-copy h2 { max-width: 480px; font-size: 38px; }
    .ep-public #students .ep-workspace-demo { grid-column: 1; grid-row: 2; }
    .ep-public .ep-student-rays { display: none; }
}
@media (max-width: 480px) {
    .ep-public .ep-student-grid { width: calc(100% - 36px); }
    .ep-public #students .ep-section-copy h2 { font-size: 34px; }
    .ep-public #students .ep-section-copy > p:not(.ep-kicker) { font-size: 15px; }
    .ep-public #students .ep-demo-heading { padding: 17px; gap: 8px; }
    .ep-public #students .ep-demo-label { font-size: 8px; }
    .ep-public #students .ep-workspace-body { padding: 23px 20px; }
    .ep-public #students .ep-learning-title { font-size: 22px; }
    .ep-public #students .ep-learning-path li { padding-left: 57px; }
    .ep-public #students .ep-learning-path strong { font-size: 15px; }
    .ep-public #students figcaption { margin-inline: 20px; }
}
@media (min-width: 1151px) {
    .ep-public .ep-student-band { background-size: 100% 100%; }
}
