/* Source: owner Forest (24), SHA256 23b6d6ee70c58196235d42923a86ec4e3e6570db883b78d89f762200b50ad98c. */
/* base */
@font-face{font-family:Onest;src:url("../r25/assets/onest-cyrillic-wght-normal.woff2") format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;src:url("../r25/assets/onest-latin-wght-normal.woff2") format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF,U+FEFF,U+FFFD}
@font-face{font-family:Onest;src:url("../r25/assets/onest-latin-ext-wght-normal.woff2") format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+20B4,U+20BD}
:root{--page:#f5f3ed;--paper:#fffcf5;--ink:#172a22;--muted:#5e6b61;--green:#145445;--deep:#123e34;--mint:#e3eade;--warm:#e8a17a;--line:#d7dcd1;--header:72px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:152px}
body{margin:0;color:var(--ink);background:var(--page);font-family:Onest,Arial,sans-serif;font-size:17px;line-height:1.55}
button,input,select{font:inherit;color:inherit;min-width:0}
button,a,summary,select{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button,summary{cursor:pointer}button{width:auto;height:auto;white-space:normal}button:disabled{cursor:default}
a{color:inherit;text-decoration:none}button{background:none}
h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15;font-weight:500;letter-spacing:-.045em}
h1{font-size:58px}h2{font-size:38px}h3{font-size:25px}
img{display:block;max-width:100%}[hidden]{display:none!important}
:focus-visible{outline:3px solid #bc754b;outline-offset:4px}
.shell{width:min(1180px,calc(100% - 64px));margin-inline:auto}
.muted{color:var(--muted)}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.small{font-size:14px}.section{padding-block:72px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:48px;padding:12px 20px;border:1px solid transparent;border-radius:10px;line-height:1.4;font-size:15px;font-weight:500;transition:background .16s,transform .16s}
.btn:hover{transform:translateY(-1px)}.btn-dark{background:var(--green);color:var(--paper)}.btn-dark:hover{background:var(--deep)}
.btn-warm{background:var(--warm);color:var(--deep)}.btn-warm:hover{background:#efb48e}
.btn-outline{border-color:#bdc8ba;background:transparent}.btn-outline:hover{background:var(--mint)}
.btn-light{background:var(--paper);color:var(--green)}.btn-wide{width:100%}
.text-link{display:inline-flex;align-items:center;gap:8px;min-height:42px;color:var(--green);font-size:15px;text-decoration:underline;text-underline-offset:5px;border:0;padding:0}
.arrow{font-size:21px;line-height:1}.tick{color:var(--green);font-size:15px}
.skip{position:absolute;top:-100px;left:16px;z-index:100;background:var(--paper);padding:12px}.skip:focus{top:10px}
.prototype-bar{background:#e7eadd;border-bottom:1px solid #d5dacb;padding:6px 0;font-size:12px;color:#4a5f50}
.prototype-bar .shell{display:flex;align-items:center;gap:14px}
.prototype-bar strong{font-weight:600;white-space:nowrap}.prototype-bar .shell>span{border-left:1px solid #b2bfae;padding-left:14px}
.site-header{position:sticky;top:0;z-index:30;background:rgba(245,243,237,.98);border-bottom:1px solid var(--line)}
.header-inner{height:var(--header);display:grid;grid-template-columns:180px minmax(0,1fr) 180px;align-items:center;gap:24px}
.header-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px}
.brand{flex:none}.brand img{width:161px;height:38px;object-fit:contain}
.desktop-nav{display:flex;align-items:center;justify-content:center;gap:30px;font-size:14px;white-space:nowrap;flex:none}
.desktop-nav>a{min-height:44px;display:flex;align-items:center;position:relative}
.desktop-nav>a.active:after,.courses-link.active:after{content:"";position:absolute;bottom:6px;height:2px;background:var(--green);left:0;right:0}
.course-nav{height:var(--header);position:relative;display:flex;align-items:center}
.courses-nav-control{display:flex;align-items:center;gap:4px}
.courses-link{position:relative;display:inline-flex;align-items:center;min-height:44px;font-size:inherit;line-height:1.5}
.courses-trigger{position:relative;display:inline-flex;flex:none;align-items:center;justify-content:center;width:32px;min-height:44px;padding:0;border:0;border-radius:7px;font-size:inherit;line-height:1.5}
.courses-chevron{transition:transform .16s;flex:none}.course-nav.is-open .courses-chevron{transform:rotate(180deg)}
.courses-link:hover,.courses-trigger:hover,.course-nav.is-open>.courses-nav-control{color:var(--green)}
.course-dropdown{position:absolute;top:100%;left:-20px;width:540px;border:1px solid #bdcbbb;border-radius:0 0 16px 16px;background:var(--paper);box-shadow:0 14px 35px #102c2224;color:var(--ink);z-index:60;white-space:normal;animation:course-menu-in .14s ease-out}
.course-dropdown-columns{display:grid;grid-template-columns:205px minmax(0,1fr);gap:0;padding:20px 18px 18px}
.course-dropdown-label{font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 11px}
.course-dropdown-directions{padding-right:17px;border-right:1px solid var(--line)}
.course-direction-links{display:grid;gap:3px}
.course-dropdown .course-direction-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding:8px 10px;border-radius:7px;font-size:14px;line-height:1.45}
.course-direction-link>span+span{font-size:20px;line-height:1;color:#71866d}
.course-dropdown .course-direction-link:hover,.course-dropdown .course-direction-link:focus-visible{background:var(--mint);color:var(--green)}
.course-dropdown-tags{padding-left:22px;display:grid;align-content:start;gap:23px}
.course-tag-list{display:flex;flex-wrap:wrap;gap:7px}
.course-dropdown .course-tag{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 11px;border:1px solid #d2dacb;border-radius:7px;background:#f2f3e9;font-size:13px;line-height:1.5;white-space:nowrap}
.course-dropdown .course-tag:hover,.course-dropdown .course-tag:focus-visible{border-color:var(--green);background:var(--green);color:var(--paper)}
@keyframes course-menu-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){
 .mobile-nav{max-height:calc(100vh - var(--top-chrome));max-height:calc(100dvh - var(--top-chrome));overflow-y:auto;overscroll-behavior:contain}
 .mobile-nav .course-nav{display:block;height:auto}
 .mobile-nav .courses-nav-control{width:100%}
 .mobile-nav .courses-link{display:flex;flex:1;min-height:45px;font-size:15px;padding:10px 0}
 .mobile-nav .courses-trigger{flex:none;width:44px;min-height:45px;padding:0}
 .mobile-nav .courses-link.active:after{display:none}.mobile-nav .courses-link.active{font-weight:600;color:var(--green)}
 .mobile-nav .course-dropdown{position:static;width:100%;border-radius:12px;box-shadow:none;margin:3px 0 9px}
 .mobile-nav .course-dropdown-columns{grid-template-columns:1fr 1fr;padding:17px 13px}
 .mobile-nav .course-dropdown-directions{padding-right:11px}.mobile-nav .course-dropdown-tags{padding-left:13px;gap:20px}
 .mobile-nav .course-direction-link{font-size:13px;min-height:42px;padding:8px 7px;gap:5px}
 .mobile-nav .course-tag{font-size:12px;padding:7px 8px;min-height:36px}.mobile-nav .course-tag-list{gap:6px}
}
.header-action{font-size:14px;min-height:42px;padding:9px 16px}
.menu-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);border-radius:9px;font-size:24px}
.mobile-nav{padding-block:6px 17px}.mobile-nav a{display:block;padding:10px 0;font-size:15px}
.mobile-nav a.active{font-weight:600;color:var(--green)}
.footer-links{align-items:center}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.home-hero{background:var(--green);color:var(--paper);position:relative;overflow:hidden}
.home-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .86fr;gap:110px;align-items:center;padding-block:54px 52px}
.home-hero-copy>.eyebrow{color:#d2dfc9;margin-bottom:25px}
.home-hero h1{font-size:58px;line-height:1.11;letter-spacing:-.045em;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.home-strip{display:block;background:var(--paper);color:var(--green);padding:1px 16px 5px;transform:rotate(-2deg);box-shadow:6px 6px 0 var(--warm);white-space:nowrap}
.home-strip:nth-child(2){transform:rotate(1deg);margin-left:5px}.home-strip:nth-child(3){transform:rotate(-1.3deg);margin-left:2px}
.home-strip strong{font-weight:600}
.home-hero-description{font-size:17px;line-height:1.7;max-width:510px;margin-top:31px;color:#e6ecdc}
.home-extra-directions{display:flex;gap:22px;flex-wrap:wrap;margin-top:17px;font-size:13px;color:#edf0e2}
.home-extra-directions a{display:flex;gap:12px;align-items:center;min-height:38px;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}
.home-extra-directions a:hover{color:var(--warm)}
.home-hero-options{display:grid;gap:18px}
.home-offer{padding:25px 28px 26px;background:var(--paper);color:var(--ink);border-radius:19px;border:1px solid #f3efdf}
.home-offer-top{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--green);font-size:13px}
.home-offer-top>span+span{font-size:11px;color:var(--muted)}
.home-offer h2{font-size:31px;line-height:1.2;margin:14px 0 22px;letter-spacing:-.035em}.home-offer h2 strong{font-weight:500;color:var(--green)}
.home-offer-oge{background:#e2e9d6;border-color:#e2e9d6}.home-offer-oge h2{font-size:27px}
.home-offer .btn{justify-content:space-between}
.home-hero-art{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.home-hero-art svg{position:absolute;display:block}
.home-hero-art .school-hero-orbits{width:335px;right:-150px;top:-42px;opacity:.8}
.home-hero-art .school-hero-paper{width:145px;right:-82px;bottom:-75px;transform:rotate(12deg)}
.home-hero-art .school-hero-book{width:160px;left:48%;bottom:-85px;transform:rotate(-7deg)}
.home-hero-art .school-hero-accents{width:320px;left:43%;top:10px;opacity:.6}
.home-catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px}
.home-direction-tabs{display:grid;grid-template-columns:66px 66px 205px 132px;width:489px;gap:4px;flex:none;padding:4px;background:#e4e9dd;border-radius:12px}
.home-catalog-toolbar>.text-link{white-space:nowrap;flex:none}
.home-direction-tabs .chip{padding-inline:19px}
.home-course-grid.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.home-course-grid .course-card{padding:28px 30px 19px}
.home-course-grid .course-card :is(h2,h3){max-width:none;min-height:0;font-size:31px}
.home-course-grid .course-desc{min-height:0;max-width:390px}.home-course-grid .card-facts{gap:18px 24px}
.home-course-grid .card-facts dt{font-size:12px}.home-course-grid .card-facts dd{font-size:14px}
.home-learning{background:#e4ebdf;border-block:1px solid #d6dfcd}
.home-learning-layout{display:grid;grid-template-columns:1fr 1.06fr;gap:84px}
.home-learning h2{margin-top:12px;font-size:36px}
.home-learning-intro{font-size:15px;line-height:1.75;color:var(--muted);max-width:420px;margin-top:20px}
.home-learning-sheet{background:var(--paper);border:1px solid #d4ddcb;border-radius:15px;padding:25px 27px;margin-top:28px;max-width:440px;transform:rotate(-1.5deg)}
.home-sheet-top{display:flex;justify-content:space-between;gap:14px;font-size:11px;color:var(--green);text-transform:uppercase;letter-spacing:.06em;padding-bottom:17px}
.home-sheet-row{display:flex;justify-content:space-between;gap:15px;font-size:13px;border-top:1px solid var(--line);padding:14px 0}.home-sheet-row:last-child{padding-bottom:0}.home-sheet-row strong{font-weight:500;white-space:nowrap}
.home-learning-list{list-style:none;padding:0;margin:0}
.home-learning-list li{display:grid;grid-template-columns:30px 1fr;gap:20px;border-top:1px solid #bdcbb4;padding:22px 0}
.home-learning-list li:last-child{border-bottom:1px solid #bdcbb4}
.home-learning-list .step-number{margin-top:4px}.home-learning-list h3{font-size:24px;margin-bottom:10px}.home-learning-list p{font-size:14px;line-height:1.7;color:var(--muted)}
.home-teacher-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.home-teacher-card{overflow:hidden;border:1px solid var(--line);border-radius:19px;background:var(--paper)}
.home-teacher-photo{height:250px;background-color:#e1e6d8;background-size:auto 360px;background-repeat:no-repeat;background-position:center 10%}
.portrait-c{background-image:url(assets/eeef5e428df108db3606.png)}
.home-teacher-photo.portrait-c{background-color:#d8ded9}
.home-teacher-body{padding:24px 26px}.home-teacher-body h3{font-size:25px}.home-teacher-role{font-size:13px;color:var(--muted);margin-top:8px}
.home-teacher-body .teacher-facts{display:block}.home-teacher-body .teacher-facts dd{font-size:13px}
.home-reviews{background:#eeeede;border-block:1px solid #dedfce}
.home-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.home-review-grid .review-placeholder{padding:26px}.home-review-grid h3{font-size:25px}.home-review-grid p{font-size:14px}
.catalog-hero{padding:44px 0 34px}
.catalog-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:62px}
.catalog-hero .eyebrow{color:var(--green);margin-bottom:16px}
.catalog-hero h1{font-size:56px;max-width:580px}
.catalog-hero h1 em{font-style:normal;color:var(--green)}
.catalog-hero p.lead{font-size:17px;color:var(--muted);max-width:475px;margin-top:20px;line-height:1.7}
.route-board{padding:27px 30px 25px;background:var(--green);color:var(--paper);border-radius:20px;position:relative;overflow:hidden}
.route-board:before{content:"";position:absolute;width:230px;height:230px;right:-70px;top:-100px;border:1px solid #548476;border-radius:50%}
.route-board-title{font-size:14px;color:#d7e3d4;position:relative}
.route-board strong{font-size:28px;font-weight:400;display:block;line-height:1.25;letter-spacing:-.03em;max-width:320px;margin-top:13px;position:relative}
.route-board-items{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;position:relative}
.route-board-items span{padding:6px 12px;border:1px solid #74988a;border-radius:30px;font-size:13px;color:#f4f4e8}
.catalog-area{padding-top:22px;padding-bottom:68px}
.filter-panel{padding:19px 21px;background:var(--paper);border:1px solid var(--line);border-radius:15px;display:grid;grid-template-columns:minmax(0,1fr) 182px 144px;gap:22px;align-items:end}
.direction-filter{min-width:0}
.filter-panel>label{display:block;min-width:0}
.field-label{display:block;font-size:12px;color:var(--muted);margin-bottom:9px}
.filter-chips{display:flex;flex-wrap:wrap;gap:5px}
.chip{border:0;border-radius:8px;padding:10px 14px;font-size:14px;line-height:22px;min-height:42px;flex:0 0 auto;white-space:nowrap}
.chip:hover{background:#eef0e7}.chip[aria-pressed=true]{background:var(--green);color:var(--paper)}
.select{display:block;width:100%;border:1px solid #c3ccbf;background:var(--paper);border-radius:8px;padding:10px 12px;height:44px;font-size:14px}
.catalog-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:20px 0;font-size:14px}
.catalog-count{font-weight:500}.reset{font-size:13px;min-height:30px;padding:0;border:0;text-decoration:underline;text-underline-offset:4px;color:var(--green);margin-left:12px}
.included-inline{display:flex;align-items:center;justify-content:flex-end;gap:17px;flex-wrap:wrap;font-size:13px;color:var(--muted);flex:0 0 520px}
.included-inline span{white-space:nowrap}
.included-inline span{display:inline-flex;gap:6px;align-items:center}
.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.course-card{display:block;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:26px 25px 19px;position:relative;transition:border-color .16s,box-shadow .16s}
.course-card:hover{border-color:#9bae9b;box-shadow:0 8px 22px #213a2610}
.course-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}
.category-badge{font-size:12px;font-weight:500;padding:5px 10px;border-radius:30px;display:inline-block;line-height:1.3;background:var(--mint);color:var(--green)}
.category-olympiad{background:#f2ddca;color:#714927}.category-school{background:#e8e8d3;color:#5c6236}
.class-label{font-size:12px;color:var(--muted)}
.course-card :is(h2,h3){font-size:28px;min-height:66px;letter-spacing:-.045em;max-width:260px}
.course-card :is(h2,h3) a:hover{text-decoration:underline;text-underline-offset:5px}
.course-desc{font-size:15px;line-height:1.55;color:var(--muted);min-height:45px;margin-top:10px}
.card-facts{display:grid;grid-template-columns:1fr 1fr;gap:13px 12px;margin:24px 0 23px;padding:0}
.card-facts div{min-width:0}.card-facts dt{font-size:11px;color:var(--muted);margin-bottom:3px}.card-facts dd{margin:0;font-size:13px;font-weight:500;line-height:1.4}
.card-price{margin-top:auto;border-top:1px solid var(--line);padding-top:18px}
.card-price strong{font-size:27px;font-weight:500;letter-spacing:-.04em}.card-price .unit{font-size:13px;color:var(--muted)}
.card-price p{font-size:13px;color:var(--muted);margin:3px 0 15px}
.course-card .btn{justify-content:space-between}.card-more{display:flex;justify-content:center;min-height:40px;align-items:center;font-size:13px;color:var(--green);margin-top:5px;text-decoration:underline;text-underline-offset:4px}
.empty-state{padding:54px 25px;text-align:center;border:1px dashed #a8b8a6;border-radius:18px}
.empty-state h2{font-size:28px}.empty-state p{margin:15px auto 25px;color:var(--muted);max-width:450px}
.catalog-helper{margin-top:30px;border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:28px;font-size:14px;color:var(--muted)}
.catalog-helper strong{font-weight:500;color:var(--ink)}
.process-band{background:#e4ebdf;border-top:1px solid #dae1d3;border-bottom:1px solid #dae1d3}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:30px}
.section-heading>div{flex:1;min-width:0}
.section-heading h2{margin-top:10px}.section-heading>p{font-size:15px;color:var(--muted);max-width:355px}
.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px}
.process-step{border-top:1px solid #becab7;padding-top:22px}
.step-number{font-size:13px;color:var(--green);display:block;margin-bottom:16px}
.process-step h3{font-size:24px;margin-bottom:12px}.process-step p{font-size:15px;color:var(--muted);line-height:1.7}
.faq-layout{display:grid;grid-template-columns:.75fr 1.35fr;gap:90px}
.faq-intro h2{margin:12px 0 18px}.faq-intro p{font-size:15px;color:var(--muted);max-width:300px}
details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}
summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;padding:20px 0;font-size:16px;font-weight:500}
summary::-webkit-details-marker{display:none}summary:after{content:"+";font-size:23px;line-height:1;flex:none;font-weight:400;color:var(--green)}
details[open]>summary:after{content:"−"}
.faq-answer{font-size:15px;line-height:1.75;color:var(--muted);padding:0 30px 23px 0}
.site-footer{border-top:1px solid var(--line);padding:30px 0}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:26px}
.footer-logo{width:142px;height:auto}
.footer-links{display:flex;gap:24px;font-size:13px;flex-wrap:wrap}
.footer-note{font-size:12px;line-height:1.6;color:var(--muted);margin-top:22px;max-width:1030px}
.footer-copyright{font-size:12px;color:var(--muted)}
.course-hero{background:var(--green);color:var(--paper);padding:24px 0 35px}
.breadcrumbs{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:12px;color:#d1dfcc;margin-bottom:28px}
.breadcrumbs a{text-decoration:underline;text-underline-offset:4px;min-height:24px}
.hero-grid{display:grid;grid-template-columns:1fr 350px;gap:75px;align-items:center}
.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:19px}
.hero-tags span{font-size:12px;border:1px solid #6e9283;border-radius:30px;padding:4px 11px;color:#e3ecdd}
.course-hero h1{font-size:57px;line-height:1.1;max-width:730px;margin-bottom:16px}
.course-goal{font-size:26px;line-height:1.35;letter-spacing:-.02em;color:#efbc98;max-width:615px;margin-bottom:18px}
.course-lead{font-size:16px;line-height:1.75;color:#e0e9d9;max-width:575px}
.hero-program{color:var(--paper);margin-top:16px;font-size:14px}
.hero-offer{background:var(--paper);color:var(--ink);padding:28px;border-radius:19px;position:relative}
.hero-offer-label{font-size:12px;color:var(--muted);letter-spacing:.02em}
.hero-price{margin-top:13px;line-height:1.2;font-size:15px}
.hero-price strong{font-size:39px;font-weight:500;letter-spacing:-.045em}
.hero-price-sub{font-size:14px;color:var(--muted);margin-top:7px}
.hero-offer-line{margin:22px 0;display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.65}
.hero-offer-line:before{content:"";width:7px;height:7px;background:var(--green);border-radius:50%;margin-top:6px;flex:none}
.hero-offer-foot{font-size:12px;color:var(--muted);text-align:center;margin-top:12px}
.hero-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:33px 0 0;padding:22px 0 0;border-top:1px solid #537e6c}
.hero-facts>div{padding:0 30px;border-left:1px solid #537e6c;text-align:center}
.hero-facts>div:first-child{padding-left:0;border-left:0}.hero-facts>div:last-child{padding-right:0}
.hero-facts dt{font-size:12px;color:#c8dcc9;margin-top:5px}.hero-facts dd{margin:0;font-size:18px;font-weight:400}
.course-subnav{position:sticky;top:var(--header);z-index:25;background:var(--page);border-bottom:1px solid var(--line)}
.course-subnav .shell{display:flex;gap:30px;align-items:center;overflow-x:auto;scrollbar-width:thin;padding-block:4px}
.course-subnav a{display:flex;align-items:center;min-height:47px;white-space:nowrap;font-size:13px;color:var(--muted)}
.course-subnav a:hover{color:var(--green)}.course-subnav a.emphasis{color:var(--green);font-weight:600}
.intro-layout{display:grid;grid-template-columns:.75fr 1.35fr;gap:75px}
.intro-title h2{margin:12px 0 18px}.intro-title>p{font-size:15px;color:var(--muted);max-width:320px}
.outcome-list{margin:0;padding:0;list-style:none}
.outcome-list li{display:grid;grid-template-columns:32px 1fr;gap:16px;padding:21px 0;border-top:1px solid var(--line)}
.outcome-list li:last-child{border-bottom:1px solid var(--line)}
.outcome-list .step-number{padding-top:5px}.outcome-list h3{font-size:22px;margin-bottom:9px}
.outcome-list p{font-size:15px;color:var(--muted);line-height:1.65}
.program-section{background:#ebeee3;border-top:1px solid #dce2d5;border-bottom:1px solid #dce2d5}
.program-layout{display:grid;grid-template-columns:.75fr 1.35fr;gap:75px}
.program-intro h2{margin:12px 0 19px}.program-intro>p{font-size:15px;color:var(--muted);max-width:320px}
.program-total{display:flex;align-items:baseline;gap:9px;margin-top:22px}
.program-total strong{font-size:38px;letter-spacing:-.04em;font-weight:400}.program-total span{font-size:14px;color:var(--muted)}
.program-help{font-size:13px!important;margin-top:13px}
.module summary{display:block;position:relative;padding:19px 110px 19px 38px}.module-no{position:absolute;left:0;top:23px;font-size:12px;color:var(--muted);width:22px}
.module summary:after{position:absolute;right:0;top:21px}.module-count{position:absolute;right:32px;top:23px;text-align:right}
.module-name{display:block;font-size:16px;line-height:1.45}.module-count{font-size:12px;color:var(--muted);white-space:nowrap;font-weight:400}
.module-body{padding:0 35px 22px 38px;color:var(--muted);font-size:14px;line-height:1.7}
.module-body p{margin-bottom:11px}.module-body ul{padding-left:18px;margin:0}.module-body li+li{margin-top:4px}
.sample-section{padding-top:45px}
.sample-layout{display:grid;grid-template-columns:.75fr 1.35fr;gap:75px}
.sample-title h3{font-size:25px;margin:10px 0}.sample-title p{font-size:14px;color:var(--muted);max-width:285px}
.sample-sheet{background:var(--paper);padding:25px 28px;border-radius:16px;border:1px solid #d5dbce}
.sheet-label{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.sample-question{margin:17px 0;font-size:17px;line-height:1.7}
.sample-sheet details{border:0}.sample-sheet summary{padding:4px 0 0;font-size:14px;color:var(--green);justify-content:flex-start;gap:12px;min-height:42px}
.sample-solution{padding-top:13px;font-size:15px;color:var(--muted);line-height:1.75}
.teacher-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.teacher-card{display:grid;grid-template-columns:170px 1fr;gap:0;border:1px solid var(--line);background:var(--paper);border-radius:19px;overflow:hidden}
.teacher-portrait{background:#e1e6d8;min-height:325px;position:relative;background-position:50% 20%;background-size:cover}
.portrait-a{background-image:url("../r27/assets/teacher-a.png")}
.portrait-b{background-image:url("../r27/assets/teacher-b.png")}
.teacher-portrait.russian{display:flex;align-items:center;justify-content:center;background:#e9e1d1}
.teacher-portrait.russian span{font-size:56px;font-weight:400;color:#8d987e;letter-spacing:-.06em}
.teacher-body{padding:24px 24px 19px;min-width:0}
.placeholder-label{font-size:11px;color:var(--muted);margin-bottom:10px}
.teacher-body h3{font-size:23px;margin-bottom:7px}
.teacher-body>.small{font-size:13px;color:var(--muted)}
.teacher-facts{margin:17px 0 0;padding:0}.teacher-facts>div{border-top:1px solid var(--line);padding-top:10px;margin-top:10px}
.teacher-facts dt{font-size:11px;color:var(--muted);margin-bottom:4px}.teacher-facts dd{font-size:13px;margin:0;color:#65725e}
.teacher-footnote{font-size:12px;color:var(--muted);margin-top:16px}
.enrollment-section{background:#e4ebdf;border-block:1px solid #d4ddcf}
.enrollment-layout{display:grid;grid-template-columns:minmax(0,1fr) 365px;gap:35px;align-items:start}
.enrollment-layout>*{min-width:0}
.group-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:19px}
.format-switch{display:inline-flex;gap:4px;background:#d6e1d0;border-radius:10px;padding:4px;flex:none}
.format-switch button{padding:10px 15px;border:0;border-radius:7px;min-height:42px;line-height:22px;font-size:13px;white-space:nowrap;flex:none}
.format-switch button[aria-pressed=true]{background:var(--paper);box-shadow:0 1px 3px #30422a15}
.timezone{font-size:12px;color:var(--muted)}
.groups-list{display:grid;gap:12px}
.group-option{display:block;position:relative;padding:22px 23px;background:var(--paper);border:1px solid #c1ccb9;border-radius:14px;cursor:pointer}
.group-option.selected{border:2px solid var(--green);padding:21px 22px;box-shadow:0 0 0 2px #14544508}
.group-top{display:flex;align-items:center;gap:10px;margin-bottom:15px}
.group-top input{accent-color:var(--green);width:17px;height:17px;margin:0;flex:none}
.group-name{font-size:16px;font-weight:500}.group-seats{font-size:12px;color:var(--muted);margin-left:auto;text-align:right}
.group-time{display:block;font-size:22px;font-weight:500;letter-spacing:-.03em;line-height:1.35}
.group-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-top:15px}
.group-meta{font-size:13px;color:var(--muted);line-height:1.9}.group-unit-price{font-size:14px;font-weight:500;white-space:nowrap}
.group-note{font-size:12px;color:var(--muted);line-height:1.7;margin-top:15px;max-width:560px}
.group-card-link{font-size:13px;margin-top:10px}
.purchase-panel{position:sticky;top:148px;background:var(--paper);border:1px solid #c5d0bd;border-radius:18px;padding:27px}
.purchase-panel h3{font-size:25px}.purchase-group{font-size:13px;color:var(--muted);margin-top:6px}
.package-label{font-size:13px;margin:22px 0 10px}
.package-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.package-option{border:1px solid #bdcbb8;border-radius:10px;min-height:65px;padding:9px 7px;font-size:13px;line-height:1.5;min-width:0;width:100%}
.package-option span{display:block;font-size:11px;color:var(--muted)}
.package-option[aria-pressed=true]{border:2px solid var(--green);background:#eef2e7;padding:8px 6px}
.purchase-total{display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-top:1px solid var(--line);padding-top:18px;margin-top:21px}
.purchase-total>span{font-size:13px}.purchase-total strong{font-size:31px;font-weight:500;letter-spacing:-.04em;white-space:nowrap}
.purchase-calculation{font-size:12px;color:var(--muted);margin-top:4px;text-align:right}
.purchase-panel .buy-button{margin-top:18px;min-height:49px}
.purchase-start{font-size:12px;color:var(--muted);margin-top:12px;text-align:center}
.purchase-includes{font-size:13px;padding:0;margin:20px 0 0;list-style:none;line-height:1.75}
.purchase-includes li{display:flex;gap:8px}.purchase-includes li+li{margin-top:4px}
.purchase-terms{margin-top:18px;border-top:1px solid var(--line);padding-top:14px;font-size:11px;color:var(--muted);line-height:1.75}
.purchase-terms a{text-decoration:underline;text-underline-offset:3px}
.reviews-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.review-placeholder{border:1px solid var(--line);border-radius:18px;background:var(--paper);padding:27px}
.review-placeholder .quote{font-size:47px;line-height:.9;color:#9eb195;display:block;height:39px}
.review-placeholder h3{font-size:23px;margin:7px 0 13px}
.review-placeholder p{font-size:14px;line-height:1.7;color:var(--muted)}
.review-fields{font-size:12px;background:#edf0e6;border-radius:7px;padding:9px 11px;margin-top:18px;color:#6e7a65}
.course-final{padding-bottom:70px}
.final-panel{background:var(--green);color:var(--paper);border-radius:22px;padding:35px 42px;display:flex;align-items:center;justify-content:space-between;gap:34px}
.final-panel h2{font-size:30px;max-width:620px}.final-panel p{font-size:14px;color:#dce5d5;margin-top:11px}
.final-panel .btn{min-width:225px}
.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:25px}
.related-link{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 21px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.related-link strong{font-size:16px;font-weight:500}.related-link small{font-size:12px;color:var(--muted);display:block;margin-top:4px}
.mobile-course-action{display:none}
.dialog{padding:0;border:1px solid #cad4c4;border-radius:21px;background:var(--paper);color:var(--ink);width:min(510px,calc(100% - 28px));max-height:calc(100dvh - 36px);overflow:auto;box-shadow:0 25px 90px #122b2240}
.dialog::backdrop{background:#102b2266;backdrop-filter:blur(3px)}
.dialog-inner{padding:31px}.dialog-top{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}
.dialog-top h2{font-size:30px}.dialog-close{border:1px solid var(--line);border-radius:50%;width:34px;height:34px;flex:none;font-size:23px;line-height:1}
.dialog-intro{font-size:14px;color:var(--muted);margin-top:15px;line-height:1.7}
.order-details{margin:24px 0;padding:0}.order-details div{padding:13px 0;border-top:1px solid var(--line)}
.order-details dt{font-size:12px;color:var(--muted);margin-bottom:4px}.order-details dd{font-size:15px;margin:0}
.order-summary{background:#e7edde;border-radius:12px;padding:17px 20px;display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:18px;font-size:14px}
.order-summary strong{font-size:30px;font-weight:500;white-space:nowrap}
.dialog-note{font-size:12px;color:var(--muted);line-height:1.7;margin-top:15px}
.dialog .back-to-selection{display:flex;width:100%;margin-top:7px;justify-content:center}
.noscript{padding:16px;background:#f3dfc5;font-size:14px}
@media(min-width:1600px){.catalog-hero{padding-top:55px}}
@media(max-width:1100px){
 .shell{width:calc(100% - 48px)}.desktop-nav{gap:19px}.header-inner{gap:18px}
 .catalog-hero-grid{gap:34px;grid-template-columns:1.15fr 1fr}.catalog-hero h1{font-size:47px}
 .filter-panel{grid-template-columns:minmax(0,1fr) 156px 118px;gap:12px;padding:17px}
 .chip{padding-inline:10px;font-size:13px}
 .course-grid{gap:17px}.course-card{padding:22px 20px 17px}.course-card :is(h2,h3){font-size:25px;min-height:59px}
 .card-facts{gap:14px 8px}.card-facts dd{font-size:12px}.course-desc{font-size:14px;min-height:42px}
 .hero-grid{gap:35px;grid-template-columns:1fr 320px}.course-hero h1{font-size:49px}.course-goal{font-size:24px}
 .hero-offer{padding:25px}.hero-facts>div{padding-inline:19px}
 .intro-layout,.program-layout,.sample-layout{gap:43px}.faq-layout{gap:48px}
 .teacher-card{grid-template-columns:132px 1fr}.teacher-body{padding:20px 18px}.teacher-body h3{font-size:21px}
 .enrollment-layout{grid-template-columns:minmax(0,1fr) 335px;gap:24px}.purchase-panel{padding:23px}
 .group-toolbar{align-items:flex-start;flex-direction:column;gap:10px}.group-time{font-size:20px}
}
@media(max-width:900px){
 .desktop-nav{display:none}.header-action{margin-left:auto}.menu-toggle{display:flex}
 .catalog-hero h1{font-size:44px}.route-board{padding:23px}.route-board strong{font-size:25px}
 .filter-panel{display:flex;flex-wrap:wrap;gap:17px}.direction-filter{flex:0 0 100%}.filter-panel>label{flex:1 1 40%}
 .filter-chips{gap:7px}.chip{padding:9px 15px;font-size:14px}
 .course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.course-card{padding:25px 24px 18px}
 .course-card :is(h2,h3){font-size:28px;min-height:64px}.card-facts dd{font-size:13px}.course-desc{font-size:15px}
 .catalog-caption{align-items:flex-start}.included-inline{max-width:350px;gap:6px 13px;justify-content:flex-end}
 .section{padding-block:56px}h2{font-size:33px}
 .hero-grid{grid-template-columns:1fr 285px;gap:27px}.course-hero h1{font-size:43px}.course-goal{font-size:23px}
 .course-lead{font-size:15px}.hero-offer{padding:22px}.hero-price strong{font-size:34px}
 .hero-facts dd{font-size:16px}.hero-facts>div{padding-inline:12px}
 .course-subnav .shell{gap:24px}.course-subnav a{font-size:12px}
 .intro-layout,.program-layout,.sample-layout{grid-template-columns:1fr;gap:28px}
 .intro-title>p,.program-intro>p,.sample-title p{max-width:610px}
 .program-total{margin-top:15px}.program-help{max-width:620px!important}
 .teacher-grid{grid-template-columns:1fr}.teacher-card{grid-template-columns:190px 1fr}.teacher-portrait{min-height:290px}.teacher-body{padding:26px}
 .teacher-body h3{font-size:25px}.teacher-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}
 .enrollment-layout{grid-template-columns:minmax(0,1fr) 310px;gap:20px}.purchase-panel{padding:22px}
 .group-option{padding:21px 19px}.group-option.selected{padding:20px 18px}
 .group-top{flex-wrap:wrap}.group-seats{width:100%;margin:0 0 0 27px;text-align:left}.group-bottom{flex-direction:column;align-items:flex-start;gap:8px}
 .group-time{font-size:19px}.package-option{font-size:12px}.purchase-total strong{font-size:28px}
 .final-panel{padding:30px}.final-panel h2{font-size:27px}.final-panel .btn{min-width:195px}
}
@media(max-width:650px){
 :root{--header:64px}html{scroll-padding-top:131px}
 .shell{width:calc(100% - 36px)}body{font-size:16px}
 .prototype-bar{font-size:11px;line-height:1.4}.prototype-bar .shell{gap:9px}.prototype-bar span{padding-left:9px}
 .prototype-bar .long-note{display:none}
 .header-inner{gap:12px}.brand img{width:142px;height:34px}
 .header-action{font-size:12px;min-height:38px;padding:8px 11px}.menu-toggle{width:38px;height:38px}
 .catalog-hero{padding:29px 0 19px}.catalog-hero-grid{grid-template-columns:1fr;gap:24px}
 .catalog-hero h1{font-size:40px;max-width:400px}.catalog-hero .eyebrow{font-size:11px;margin-bottom:13px}
 .catalog-hero p.lead{font-size:15px;margin-top:15px;max-width:430px}
 .route-board{display:none;padding:20px 22px;border-radius:16px}.route-board-title{font-size:12px}
 .route-board strong{font-size:24px;max-width:300px;margin-top:9px}.route-board-items{margin-top:18px;gap:6px}
 .route-board-items span{font-size:11px;padding:5px 9px}
 .catalog-area{padding-top:13px;padding-bottom:44px}
 .filter-panel{padding:15px;gap:14px 10px}
 .filter-chips{gap:4px}.chip{padding:7px 11px;min-height:38px;font-size:12px}
 .field-label{font-size:11px;margin-bottom:6px}.select{font-size:13px;padding:9px 10px;height:42px}
 .catalog-caption{margin:18px 0;display:block}.included-inline{margin-top:10px;max-width:none;justify-content:flex-start;font-size:11px;gap:5px 11px}
 .catalog-count{font-size:13px}.reset{font-size:12px;margin-left:9px}
 .course-grid{grid-template-columns:1fr;gap:16px}
 .course-card{padding:24px 23px 16px;border-radius:17px}.course-card-top{margin-bottom:15px}
 .course-card :is(h2,h3){font-size:29px;min-height:0;max-width:none}.course-desc{font-size:15px;min-height:0;margin-top:10px}
 .card-facts{margin:20px 0;gap:13px 16px}.card-facts dt{font-size:11px}.card-facts dd{font-size:13px}
 .card-price{padding-top:16px}.card-price strong{font-size:29px}.card-price .unit{font-size:13px}.card-price p{font-size:12px}
 .card-more{min-height:42px}.course-card .btn{min-height:46px}
 .catalog-helper{font-size:13px;display:block;margin-top:22px;padding-top:17px}.catalog-helper p+p{margin-top:10px}
 .section{padding-block:46px}h2{font-size:31px}
 .section-heading{display:block;margin-bottom:26px}.section-heading>p{margin-top:15px;font-size:14px}
 .eyebrow{font-size:11px}.process-grid{grid-template-columns:1fr;gap:26px}.process-step{padding-top:17px}
 .step-number{margin-bottom:12px}.process-step h3{font-size:24px}.process-step p{font-size:14px}
 .faq-layout{grid-template-columns:1fr;gap:24px}.faq-intro h2{margin:10px 0 13px}.faq-intro p{max-width:400px;font-size:14px}
 summary{font-size:15px;padding:19px 0;gap:15px}.faq-answer{font-size:14px;padding-right:9px}
 .footer-inner{flex-wrap:wrap;gap:22px}.footer-logo{width:134px}.footer-links{gap:17px;font-size:12px}
 .footer-copyright{font-size:11px}.footer-note{font-size:11px;margin-top:19px}
 .course-hero{padding:18px 0 27px}.breadcrumbs{font-size:11px;gap:7px;margin-bottom:23px}
 .hero-grid{grid-template-columns:1fr;gap:27px}.hero-tags{gap:6px;margin-bottom:15px}.hero-tags span{font-size:11px;padding:4px 10px}
 .course-hero h1{font-size:40px;line-height:1.12;letter-spacing:-.05em;margin-bottom:15px}
 .course-goal{font-size:24px;line-height:1.35;margin-bottom:15px}.course-lead{font-size:15px;line-height:1.7}
 .hero-program{margin-top:10px;font-size:13px}.hero-offer{padding:23px;border-radius:16px}
 .hero-price{margin-top:9px}.hero-price strong{font-size:36px}
 .hero-offer-line{margin:18px 0}.hero-offer-foot{font-size:11px;margin-top:11px}
 .hero-facts{grid-template-columns:1fr 1fr;gap:20px 0;margin-top:27px;padding-top:22px}
 .hero-facts>div{padding:0 12px!important}.hero-facts>div:nth-child(odd){border-left:0}
 .hero-facts dd{font-size:15px}.hero-facts dt{font-size:11px;margin-top:3px}
 .course-subnav .shell{gap:23px}.course-subnav a{font-size:12px;min-height:43px}
 .intro-layout,.program-layout,.sample-layout{gap:25px}
 .intro-title h2{margin:10px 0 15px}.intro-title>p{font-size:14px}
 .outcome-list li{gap:9px;padding:18px 0;grid-template-columns:26px 1fr}.outcome-list h3{font-size:22px}.outcome-list p{font-size:14px}
 .program-intro h2{margin:10px 0 16px}.program-intro>p{font-size:14px}
 .program-total strong{font-size:33px}.program-total span{font-size:13px}.program-help{font-size:12px!important}
 .module summary{padding:17px 83px 17px 30px}.module-no{width:20px;font-size:11px;top:20px}
 .module-name{font-size:14px;min-width:0}.module-count{font-size:11px;right:26px;top:20px}.module summary:after{top:18px}
 .module-body{font-size:13px;padding:0 14px 20px 30px}
 .sample-section{padding-top:33px}.sample-title h3{font-size:25px}.sample-title p{font-size:13px}
 .sample-sheet{padding:21px}.sample-question{font-size:16px}.sheet-label{font-size:10px;gap:10px}.sample-solution{font-size:14px}
 .teacher-grid{gap:18px}.teacher-card{grid-template-columns:115px 1fr;border-radius:16px}
 .teacher-portrait{min-height:342px;background-position:47% 20%}
 .teacher-body{padding:21px 16px}.teacher-body h3{font-size:20px}.teacher-body>.small{font-size:12px}
 .teacher-facts{display:block;margin-top:15px}.teacher-facts dt{font-size:11px}.teacher-facts dd{font-size:12px}
 .placeholder-label{font-size:10px;line-height:1.5}.teacher-footnote{font-size:11px}
 .teacher-portrait.russian span{font-size:39px}
 .enrollment-layout{grid-template-columns:minmax(0,1fr);gap:23px}.group-toolbar{flex-direction:column;gap:12px}
 .format-switch{width:100%;gap:4px}.format-switch button{flex:1;padding:8px 7px;font-size:13px;min-height:43px}
 .timezone{font-size:12px}.group-option{padding:21px}.group-option.selected{padding:20px}
 .group-name{font-size:15px}.group-top{margin-bottom:14px;gap:8px}.group-seats{font-size:11px;margin-left:auto;width:auto}
 .group-time{font-size:21px}.group-bottom{flex-direction:row;align-items:flex-end;gap:12px}
 .group-meta{font-size:12px}.group-unit-price{font-size:13px}.group-note{font-size:11px}
 .purchase-panel{position:static;padding:25px}.purchase-panel h3{font-size:25px}
 .package-option{font-size:14px;min-height:68px}.package-option span{font-size:11px}
 .purchase-total strong{font-size:33px}.purchase-terms{font-size:12px}.purchase-start{font-size:12px}
 .reviews-grid{grid-template-columns:1fr;gap:17px}.review-placeholder{padding:24px}
 .review-placeholder h3{font-size:24px}.review-placeholder p{font-size:14px}
 .course-final{padding-bottom:43px}.final-panel{display:block;padding:28px 25px;border-radius:18px}
 .final-panel h2{font-size:28px}.final-panel p{font-size:14px}.final-panel .btn{width:100%;margin-top:24px}
 .related-grid{grid-template-columns:1fr;gap:12px;margin-top:20px}.related-link strong{font-size:15px}
 body.course-is-open{padding-bottom:calc(77px + env(safe-area-inset-bottom))}
 .mobile-course-action{position:fixed;z-index:28;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--paper);border-top:1px solid #c8d2c0;padding:12px 18px max(12px,env(safe-area-inset-bottom))}
 .mobile-course-action strong{font-size:18px;font-weight:500;display:block;line-height:1.25}
 .mobile-course-action small{font-size:11px;color:var(--muted)}
 .mobile-course-action .btn{font-size:13px;min-height:43px;padding:10px 16px}
 .dialog-inner{padding:24px}.dialog-top h2{font-size:26px}.order-details dd{font-size:14px}
 .order-summary strong{font-size:27px}.dialog-intro{font-size:13px}
}
@media(max-width:370px){
 .shell{width:calc(100% - 30px)}.header-inner{gap:9px}.brand img{width:126px}.header-action{padding-inline:9px;font-size:11px}.menu-toggle{width:36px}
 .catalog-hero h1,.course-hero h1{font-size:36px}.catalog-hero .eyebrow{font-size:10px}.course-goal{font-size:22px}
 .chip{padding-inline:9px;font-size:11px}.course-card{padding:23px 20px 15px}.card-facts{gap:12px 10px}
 .module-count{display:none}.module summary{padding-right:28px}.teacher-card{grid-template-columns:1fr}.teacher-portrait{height:220px;min-height:0;background-position:center 25%;background-size:auto 320px;background-repeat:no-repeat}
 .teacher-body{padding:24px}.teacher-body h3{font-size:24px}
 .group-seats{width:100%;margin-left:25px;text-align:left}.group-time{font-size:19px}.group-bottom{display:block}.group-unit-price{display:block;margin-top:10px}
 .footer-inner{align-items:flex-start}.footer-links{gap:13px}
}
@media(max-width:1100px){
 .header-inner{grid-template-columns:161px minmax(0,1fr) 161px;gap:15px}.desktop-nav{gap:23px;font-size:13px}
 .home-hero-inner{gap:60px;grid-template-columns:1.15fr 1fr;padding-block:44px}.home-hero h1{font-size:49px}.home-hero-description{font-size:16px}
 .home-offer{padding:22px}.home-offer h2{font-size:29px}.home-offer-oge h2{font-size:25px}
 .home-learning-layout{gap:45px}.home-learning h2{font-size:32px}
 .home-teacher-grid,.home-review-grid{gap:18px}.home-teacher-photo{height:225px}.home-teacher-body{padding:22px}.home-teacher-body h3{font-size:23px}
 .home-review-grid .review-placeholder{padding:23px}.home-review-grid h3{font-size:23px}
}
@media(max-width:900px){
 .header-inner{display:flex;justify-content:space-between}.desktop-nav{display:none}.menu-toggle{display:flex}
 .home-hero-inner{gap:34px;grid-template-columns:1fr 1fr}.home-hero h1{font-size:42px}.home-strip{padding-inline:12px}
 .home-hero-description{font-size:15px}.home-extra-directions{gap:2px 17px;font-size:12px}
 .home-offer h2{font-size:27px}.home-offer-oge h2{font-size:25px}.home-offer-top>span+span{font-size:10px}
 .home-direction-tabs .chip{padding-inline:14px}.home-catalog-toolbar{gap:12px}.home-catalog-toolbar>.text-link{font-size:13px;white-space:nowrap}
 .home-course-grid .course-card{padding:25px 23px 17px}.home-course-grid .course-card :is(h2,h3){font-size:28px;min-height:66px}
 .home-course-grid .course-desc{min-height:44px}.home-course-grid .card-facts dd{font-size:13px}.home-course-grid .card-facts dt{font-size:11px}
 .home-learning-layout{grid-template-columns:1fr;gap:32px}.home-learning-intro{max-width:620px}.home-learning-sheet{max-width:520px}
 .home-teacher-grid{grid-template-columns:1fr}.home-teacher-card{display:grid;grid-template-columns:190px 1fr}.home-teacher-photo{height:100%;min-height:325px}
 .home-teacher-body{padding:27px}.home-teacher-body h3{font-size:25px}.home-teacher-body .teacher-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
 .home-review-grid{grid-template-columns:1fr}.home-review-grid .review-placeholder{padding:27px}.home-review-grid h3{font-size:25px}
}
@media(max-width:650px){
 .header-actions{gap:9px}.header-action{font-size:13px;min-height:38px;gap:8px;padding:8px 13px}
 .home-hero-inner{grid-template-columns:1fr;gap:27px;padding-block:30px 33px}.home-hero-copy>.eyebrow{font-size:11px;margin-bottom:19px}
 .home-hero h1{font-size:39px;gap:7px}.home-strip{box-shadow:4px 4px 0 var(--warm);padding:1px 12px 4px}
 .home-hero-description{font-size:15px;line-height:1.65;margin-top:24px;max-width:490px}.home-extra-directions{font-size:12px;gap:15px;margin-top:12px}
 .home-hero-options{grid-template-columns:1fr 1fr;gap:12px}.home-offer{padding:18px 16px;border-radius:15px;display:flex;flex-direction:column}
 .home-offer-top>span+span{display:none}.home-offer-top{font-size:13px}.home-offer h2,.home-offer-oge h2{font-size:24px;margin:12px 0 19px;line-height:1.25}
 .home-offer .btn{padding:10px 9px;font-size:12px;gap:4px;min-height:46px;margin-top:auto}.home-offer .arrow{font-size:18px}
 .home-hero-art .school-hero-orbits{width:280px;right:-130px;top:-30px}.home-hero-art .school-hero-book,.home-hero-art .school-hero-accents{display:none}
 .home-catalog-toolbar{display:block;margin-bottom:20px}.home-direction-tabs{width:100%;grid-template-columns:1fr 1fr;gap:4px;padding:4px}.home-direction-tabs .chip{padding:9px 7px;font-size:13px;min-height:40px}
 .home-catalog-toolbar>.text-link{margin-top:8px;font-size:13px}
 .home-course-grid.course-grid{grid-template-columns:1fr;gap:16px}.home-course-grid .course-card{padding:24px 23px 16px}
 .home-course-grid .course-card :is(h2,h3){font-size:29px;min-height:0}.home-course-grid .course-desc{min-height:0}.home-course-grid .card-facts{gap:13px 16px}
 .home-learning-layout{gap:32px}.home-learning h2{font-size:30px}.home-learning-intro{font-size:14px;margin-top:18px}
 .home-learning-sheet{padding:22px;margin-top:24px;transform:rotate(-1deg)}.home-sheet-top{font-size:10px;padding-bottom:14px}.home-sheet-row{font-size:12px;gap:10px;padding:12px 0}
 .home-learning-list li{grid-template-columns:25px 1fr;gap:10px;padding:20px 0}.home-learning-list h3{font-size:23px}.home-learning-list p{font-size:14px}
 .home-teacher-card{grid-template-columns:115px 1fr;border-radius:16px}.home-teacher-photo{min-height:350px;background-position:48% 20%}
 .home-teacher-body{padding:22px 17px}.home-teacher-body h3{font-size:21px}.home-teacher-role{font-size:12px}.home-teacher-body .teacher-facts{display:block}.home-teacher-body .teacher-facts dd{font-size:12px}
 .home-review-grid{gap:17px}.home-review-grid .review-placeholder{padding:25px}.home-review-grid h3{font-size:25px}
}
@media(max-width:390px){
 .home-hero h1{font-size:34px}.home-offer{padding:16px 12px}.home-offer h2,.home-offer-oge h2{font-size:21px}.home-offer .btn{font-size:11px;padding-inline:7px}
 .home-direction-tabs .chip{flex:1 0 40%;font-size:13px;padding:8px 10px}.home-extra-directions{gap:10px}
 .home-teacher-card{display:block}.home-teacher-photo{height:245px;min-height:0;background-position:center 23%}.home-teacher-body{padding:24px}.home-teacher-body h3{font-size:25px}
}
/* First screen: the banner fills the viewport below the closed header. */
:root{--top-chrome:73px}
.home-hero{display:flex;align-items:center;min-height:calc(100vh - var(--top-chrome));min-height:calc(100svh - var(--top-chrome));min-height:calc(100dvh - var(--top-chrome))}
.home-hero-inner{grid-template-columns:1.1fr 1fr;gap:85px;padding-block:46px;align-items:center;flex:none}
.home-hero h1{font-size:58px;text-transform:uppercase;line-height:1.1;font-weight:400;gap:9px;letter-spacing:-.055em}
.home-strip{color:var(--ink);padding:2px 12px 5px;box-shadow:6px 6px 0 var(--warm);transform:rotate(-1deg)}
.home-strip:nth-child(2){margin-left:15px;transform:rotate(.4deg)}.home-strip:nth-child(3){margin-left:4px;transform:rotate(-.4deg)}
.home-strip strong{font-weight:600;letter-spacing:-.065em}
.home-hero-copy>.eyebrow{margin-bottom:24px}
.home-hero-description{font-size:17px;line-height:1.65;margin-top:28px;max-width:545px}
.home-hero-note{display:flex;align-items:center;gap:10px;margin-top:23px;font-size:13px;color:#e6ecdc}
.home-hero-note:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--warm);flex:none}
.home-offer{padding:26px 28px;border-radius:20px}.home-offer-top{font-size:14px;color:var(--ink)}
.home-offer-top>span+span{font-size:11px;border:1px solid #d2d8c8;border-radius:30px;padding:3px 12px}
.home-offer h2{font-size:30px;margin:15px 0 23px;color:var(--ink)}.home-offer h2 strong{font-weight:600;color:var(--ink)}
.home-offer-oge h2{font-size:27px}.home-offer .btn{min-height:49px}.offer-button-short{display:none}
.home-hero-art{opacity:.25}
.home-hero-art .school-hero-orbits{width:430px;left:34%;right:auto;top:-125px;opacity:1}
.home-hero-art .school-hero-paper{width:210px;right:-50px;bottom:-148px;transform:rotate(-19deg)}
.home-hero-art .school-hero-book{width:245px;left:-75px;bottom:-119px;transform:rotate(13deg)}
.home-hero-art .school-hero-accents{width:170px;right:25px;left:auto;top:22px;opacity:1}
/* Catalogue rows keep description and purchase controls distinct. */
.course-grid.course-list{grid-template-columns:minmax(0,1fr);gap:22px}
.course-list .course-card-horizontal{display:grid;grid-template-columns:225px minmax(0,1fr) 244px;align-items:stretch;gap:28px;padding:23px;border-radius:20px}
.course-illustration{display:flex;align-items:center;justify-content:center;min-width:0;border-radius:13px;overflow:hidden;background:#dce9df}
.illustration-oge{background:#e5ebd8}.illustration-school{background:#e8e8d4}.illustration-olympiad{background:#f0dfcf}
.course-illustration img{width:100%;height:auto;max-height:280px;object-fit:contain}
.course-card-main{padding-block:3px;min-width:0}
.course-list .course-card-top{justify-content:flex-start;gap:14px;margin-bottom:16px}
.course-list .course-card :is(h2,h3){min-height:0;max-width:none;font-size:29px;line-height:1.15}
.course-list .course-desc{min-height:0;font-size:14px;margin-top:12px;max-width:410px;line-height:1.6}
.course-list .card-facts{margin:21px 0 0;gap:13px 22px}
.course-list .card-facts dt{font-size:11px}.course-list .card-facts dd{font-size:13px}
.course-card-purchase{align-self:stretch;border-left:1px solid var(--line);padding-left:25px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.course-list .card-price{border:0;padding:0;margin:0}.course-list .card-price strong{font-size:29px;white-space:nowrap}
.course-list .card-price .unit{display:block;margin-top:1px;font-size:13px}
.course-list .card-price .card-price-label{font-size:11px;margin:0 0 11px;color:var(--muted)}
.course-list .card-price p{font-size:12px;margin:9px 0 18px;line-height:1.7}
.course-list .card-more{font-size:12px;margin-top:4px;min-height:38px}
.course-list .btn{padding:12px 15px;font-size:14px}
@media(max-width:1100px){
 .home-hero-inner{gap:47px;grid-template-columns:1.08fr 1fr;padding-block:35px}.home-hero h1{font-size:47px}
 .home-hero-description{font-size:16px}.home-offer{padding:23px}.home-offer h2{font-size:27px}.home-offer-oge h2{font-size:25px}
 .course-list .course-card-horizontal{grid-template-columns:180px minmax(0,1fr) 219px;gap:22px;padding:21px}
 .course-card-purchase{padding-left:21px}.course-list .course-card :is(h2,h3){font-size:26px}.course-list .card-facts{gap:12px 14px}
}
@media(max-width:900px){
 .home-hero-inner{gap:32px;grid-template-columns:1fr 1fr}.home-hero h1{font-size:36px}.home-strip{padding-inline:9px}
 .home-strip:nth-child(2){margin-left:7px}.home-hero-copy>.eyebrow{font-size:11px}.home-hero-description{font-size:15px}.home-hero-note{font-size:12px}
 .home-offer{padding:21px}.home-offer h2{font-size:25px}.home-offer-oge h2{font-size:24px}
 .home-offer-top>span+span{font-size:10px;padding:3px 8px}
 .course-list .course-card-horizontal{grid-template-columns:155px minmax(0,1fr);gap:20px;padding:21px}
 .course-illustration{grid-row:1 / 3}.course-card-purchase{grid-column:2;border-left:0;border-top:1px solid var(--line);padding:18px 0 0;display:block}
 .course-list .card-facts{margin-top:16px}.course-list .card-price strong{font-size:28px}.course-list .card-price p{margin-bottom:14px}
 .course-list .card-price .card-price-label{display:none}.course-list .card-price .unit{display:inline;margin-left:6px}
 .course-list .card-price>div{display:inline-block}.course-list .card-price .btn{width:100%}
}
@media(max-width:650px){
 :root{--top-chrome:65px}
 .home-hero-inner{grid-template-columns:1fr;gap:25px;padding-block:25px}.home-hero h1{font-size:37px;gap:7px;line-height:1.08}
 .home-hero-copy>.eyebrow{margin-bottom:18px;font-size:11px}.home-strip{padding:1px 10px 4px;box-shadow:4px 4px 0 var(--warm)}
 .home-hero-description{margin-top:22px;font-size:15px;line-height:1.55;max-width:520px}.home-hero-note{margin-top:15px;font-size:12px}
 .home-hero-options{grid-template-columns:1fr 1fr;gap:12px}.home-offer{padding:18px 16px;border-radius:16px}
 .home-offer-top{font-size:13px}.home-offer-top>span+span{display:none}.home-offer h2,.home-offer-oge h2{font-size:24px;line-height:1.22;margin:12px 0 18px}
 .home-offer .btn{font-size:13px;padding:10px 11px;min-height:44px;gap:7px}.offer-button-full{display:none}.offer-button-short{display:inline}
 .home-hero-art .school-hero-orbits{left:auto;right:-100px;width:285px;top:-55px}.home-hero-art .school-hero-paper{width:150px;right:-69px;bottom:-110px}
 .home-hero-art .school-hero-book,.home-hero-art .school-hero-accents{display:none}
 .course-grid.course-list{gap:20px}.course-list .course-card-horizontal{grid-template-columns:minmax(0,1fr);gap:0;padding:0;overflow:hidden;border-radius:18px}
 .course-illustration{grid-row:auto;border-radius:0;height:170px}.course-illustration img{width:auto;height:100%;max-width:100%}
 .course-card-main{padding:24px 23px 21px}.course-list .course-card-top{margin-bottom:15px}.course-list .course-card :is(h2,h3){font-size:28px}
 .course-list .course-desc{font-size:14px;margin-top:11px}.course-list .card-facts{margin-top:20px;gap:13px 17px}
 .course-card-purchase{grid-column:auto;margin:0 23px;padding:19px 0 13px}
 .course-list .card-price strong{font-size:30px}.course-list .card-price p{font-size:12px;margin:7px 0 17px}.course-list .card-more{font-size:13px;min-height:42px}
 .course-list .btn{font-size:15px;min-height:47px}
}
@media(max-width:390px){
 .home-hero h1{font-size:31px}.home-hero-inner{padding-block:22px;gap:23px}.home-hero-description{font-size:14px}
 .home-offer{padding:16px 13px}.home-offer h2,.home-offer-oge h2{font-size:21px}.home-offer .btn{font-size:13px;padding-inline:10px}
}
@media(max-height:700px) and (min-width:651px){
 .home-hero-inner{padding-block:25px}.home-hero-copy>.eyebrow{margin-bottom:17px}.home-hero h1{font-size:42px;gap:7px}
 .home-hero-description{font-size:15px;margin-top:23px}.home-hero-note{margin-top:18px}
 .home-offer{padding:20px 23px}.home-offer h2{font-size:25px;margin:12px 0 18px}.home-offer-oge h2{font-size:24px}.home-hero-options{gap:15px}
}
@media(max-height:700px) and (max-width:650px){
 .home-hero-inner{gap:18px;padding-block:19px}.home-hero h1{font-size:30px;gap:6px}.home-hero-copy>.eyebrow{margin-bottom:15px}
 .home-hero-description{font-size:14px;margin-top:17px;line-height:1.5}.home-hero-note{font-size:11px;margin-top:13px}
 .home-offer{padding:15px 13px}.home-offer h2,.home-offer-oge h2{font-size:21px;margin:10px 0 15px}.home-offer .btn{min-height:43px}
}
@media(max-height:620px) and (max-width:650px){
 .home-hero-note{display:none}.home-hero-inner{padding-block:17px;gap:17px}.home-hero-copy>.eyebrow{font-size:10px;margin-bottom:13px}
 .home-offer h2,.home-offer-oge h2{font-size:19px}.home-offer{padding:13px 12px}.home-hero-description{font-size:13px}
}
@media(max-height:520px) and (min-width:651px){
 .home-hero-inner{padding-block:20px;gap:30px}.home-hero h1{font-size:30px;gap:5px}.home-hero-note{display:none}
 .home-hero-copy>.eyebrow{font-size:10px;margin-bottom:13px}.home-hero-description{font-size:13px;margin-top:17px}
 .home-hero-options{grid-template-columns:1fr 1fr;gap:10px}.home-offer{padding:16px 12px;display:flex;flex-direction:column}
 .home-offer h2,.home-offer-oge h2{font-size:20px;line-height:1.2;margin:11px 0 17px}.home-offer-top>span+span{display:none}
 .home-offer .btn{margin-top:auto;min-height:40px;padding:9px 10px;font-size:12px}.offer-button-full{display:none}.offer-button-short{display:inline}
}
/* R24: a larger headline and full-width, readable FAQ. */
.home-hero-inner{grid-template-columns:1.35fr 1fr;gap:60px;padding-block:48px}
.home-hero h1{font-size:78px;gap:14px;line-height:1.12}
.home-hero-copy{min-width:0}
.faq-layout{display:block}
.faq-heading{margin-bottom:32px}
.faq-items summary{font-size:21px;line-height:1.45;padding:28px 0;gap:32px}
.faq-items summary:after{font-size:28px}
.faq-items .faq-answer{font-size:19px;line-height:1.75;padding:0 64px 30px 0;max-width:1050px}
@media(max-width:1200px){
 .home-hero h1{font-size:68px}
}
@media(max-width:1100px){
 .home-hero-inner{grid-template-columns:1.3fr 1fr;gap:40px}
 .home-hero h1{font-size:60px}
}
@media(max-width:1000px){
 .home-hero h1{font-size:54px}
}
@media(max-width:900px){
 .home-hero-inner{grid-template-columns:1.2fr 1fr;gap:30px}
 .home-hero h1{font-size:46px;gap:12px}
}
@media(max-width:800px){
 .home-hero h1{font-size:40px}
}
@media(max-width:720px){
 .home-hero h1{font-size:36px}
}
@media(max-width:650px){
 .home-hero-inner{grid-template-columns:1fr;gap:46px;padding-block:36px}
 .home-hero h1{font-size:46px;gap:10px;line-height:1.12}
 .faq-heading{font-size:30px;margin-bottom:24px}
 .faq-items summary{font-size:18px;padding:24px 0;gap:18px}
 .faq-items summary:after{font-size:25px}
 .faq-items .faq-answer{font-size:17px;line-height:1.7;padding:0 16px 25px 0}
}
@media(max-width:450px){
 .home-hero h1{font-size:40px}
}
@media(max-width:370px){
 .home-hero h1{font-size:38px}
}
@media(max-width:350px){
 .home-hero h1{font-size:34px}
}
@media(max-height:700px) and (min-width:651px){
 .home-hero-inner{padding-block:28px}
}
@media(max-height:620px) and (max-width:650px){
 .home-hero-inner{gap:26px;padding-block:24px}
}
@media(max-height:520px) and (min-width:651px){
 .home-hero h1{font-size:40px;gap:8px}
 .home-hero-inner{padding-block:20px}
}
/* R24: typography only; original R22 layout and colours. */
#page-catalog .catalog-hero p.lead{font-size:18px}
#page-catalog .route-board-items span{font-size:14px}
#page-catalog .field-label{font-size:13px}
#page-catalog .select,#page-catalog .chip{font-size:15px}
#page-catalog .catalog-count{font-size:15px}
#page-catalog .course-list .course-desc{font-size:16px}
#page-catalog .course-list .card-facts dt{font-size:12px}
#page-catalog .course-list .card-facts dd{font-size:14px}
#page-catalog .course-list .category-badge,#page-catalog .course-list .class-label{font-size:13px}
#page-catalog .course-list .card-price p,#page-catalog .course-list .card-more{font-size:14px}
#page-catalog .course-list .card-price .unit{font-size:14px}
#page-catalog .course-list .btn{font-size:15px}
#page-catalog .process-step p,[data-course-view] .process-step p{font-size:16px}
[data-course-view] .course-lead{font-size:17px}
[data-course-view] .hero-program,[data-course-view] .hero-price-sub{font-size:15px}
[data-course-view] .hero-tags span,[data-course-view] .hero-offer-label,[data-course-view] .hero-offer-foot,[data-course-view] .hero-facts dt{font-size:13px}
[data-course-view] .hero-offer-line{font-size:14px}
[data-course-view] .course-subnav a{font-size:14px}
[data-course-view] .intro-title>p,[data-course-view] .outcome-list p,[data-course-view] .program-intro>p{font-size:16px}
[data-course-view] .program-help{font-size:14px!important}
[data-course-view] .module-name{font-size:17px}
[data-course-view] .module-body{font-size:15px}
[data-course-view] .sample-title p{font-size:15px}
[data-course-view] .sample-question{font-size:18px}
[data-course-view] .sample-sheet summary,[data-course-view] .sample-solution{font-size:16px}
[data-course-view] .teacher-body>.small,[data-course-view] .teacher-facts dd{font-size:14px}
[data-course-view] .teacher-facts dt{font-size:12px}
[data-course-view] .format-switch button,[data-course-view] .group-meta,[data-course-view] .group-card-link{font-size:14px}
[data-course-view] .group-seats,[data-course-view] .timezone,[data-course-view] .group-note{font-size:13px}
[data-course-view] .group-unit-price{font-size:15px}
[data-course-view] .purchase-group,[data-course-view] .package-label,[data-course-view] .purchase-includes{font-size:14px}
[data-course-view] .purchase-calculation,[data-course-view] .purchase-start{font-size:13px}
[data-course-view] .purchase-terms{font-size:12px}
[data-course-view] .review-placeholder p,[data-course-view] .final-panel p{font-size:15px}
[data-course-view] .review-fields,[data-course-view] .related-link small{font-size:13px}
@media(max-width:900px){
 [data-course-view] .course-lead{font-size:16px}
 [data-course-view] .course-subnav a{font-size:13px}
}
@media(max-width:650px){
 #page-catalog .catalog-hero p.lead{font-size:16px}
 #page-catalog .field-label{font-size:12px}
 #page-catalog .chip{font-size:13px}
 #page-catalog .select,#page-catalog .catalog-count{font-size:14px}
 #page-catalog .course-list .course-desc{font-size:15px}
 #page-catalog .course-list .card-price p,#page-catalog .course-list .card-more{font-size:13px}
 #page-catalog .process-step p,[data-course-view] .process-step p{font-size:15px}
 [data-course-view] .hero-tags span,[data-course-view] .hero-offer-foot,[data-course-view] .hero-facts dt{font-size:12px}
 [data-course-view] .hero-program{font-size:14px}
 [data-course-view] .intro-title>p,[data-course-view] .outcome-list p,[data-course-view] .program-intro>p{font-size:15px}
 [data-course-view] .program-help{font-size:13px!important}
 [data-course-view] .module-name{font-size:15px}
 [data-course-view] .module-body,[data-course-view] .sample-title p{font-size:14px}
 [data-course-view] .sample-question{font-size:17px}
 [data-course-view] .sample-sheet summary,[data-course-view] .sample-solution{font-size:15px}
 [data-course-view] .teacher-body>.small,[data-course-view] .teacher-facts dd{font-size:13px}
 [data-course-view] .format-switch button{font-size:13px}
 [data-course-view] .group-meta{font-size:13px}
 [data-course-view] .group-seats,[data-course-view] .group-note{font-size:12px}
 [data-course-view] .group-unit-price{font-size:14px}
 [data-course-view] .purchase-terms{font-size:12px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.prototype-bar,.site-header,.course-subnav,.mobile-course-action,.dialog{display:none!important}.shell{width:100%}.course-card,.teacher-card,.group-option,.purchase-panel{break-inside:avoid}.section{padding-block:30px}.purchase-panel{position:static}}

/* R25 audit: keep the R24 visual system, repair contrast and constrained views. */
.review-fields{color:var(--muted)}
.select{border-color:#7b8b78}
.package-option{border-color:#7b8b78}
.hero-program:focus-visible,.final-panel .btn:focus-visible{outline-color:var(--paper)}
.btn:disabled{opacity:.65;transform:none;cursor:default}
.desktop-nav .course-dropdown{max-height:calc(100vh - var(--header) - 16px);max-height:calc(100dvh - var(--header) - 16px);overflow-y:auto;overscroll-behavior:contain}
.course-subnav .shell{scroll-padding-inline:10px}
@media(max-width:370px){
 .module-count{display:block;position:static;text-align:left;margin-top:6px}
}

/* r26-refinements */
/* R26: standalone content-filled design exploration. */
:root{--muted:#526355;--line:#d3d9ce}
[hidden]{display:none!important}
a,button,input,select,summary{-webkit-tap-highlight-color:transparent}
button,input,select{font:inherit}
:focus-visible{outline:3px solid #a45430;outline-offset:4px}
.demo-banner{background:#e8eadf;color:#344b3f;border-bottom:1px solid #ccd5c7;font-size:12px;line-height:1.4}
.demo-banner .shell{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:40px}
.demo-banner .shell>span{display:flex;align-items:center;gap:18px}
.demo-banner strong{font-weight:650;white-space:nowrap}
.demo-banner button{border:0;background:transparent;color:var(--green);min-height:40px;padding:8px 0;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer}
.demo-footer{padding-block:18px 24px;color:var(--muted);font-size:12px;border-top:1px solid var(--line);line-height:1.7}
.home-hero{display:flex;flex-direction:column;justify-content:center}
.home-hero-inner{flex:1;align-content:center;min-height:0}
.hero-proof{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;border-top:1px solid #51766a;padding-block:22px 26px;z-index:1;color:var(--paper)}
.hero-proof>div{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.hero-proof strong{font-size:15px;font-weight:500}
.hero-proof span{font-size:12px;color:#c5d5c6}
.home-hero-description{max-width:520px;line-height:1.65}
.section-heading{gap:24px}
.section-demo-note{font-size:12px;color:var(--muted);line-height:1.6;align-self:end;flex-shrink:0;text-align:right}
.course-card{transition:border-color .2s,box-shadow .2s}
.course-card:hover{border-color:#a4b49d;box-shadow:0 6px 20px #173e2e08}
.course-card :is(h2,h3){text-wrap:balance}
.card-facts dd{color:var(--ink)}
.card-teacher{display:flex;align-items:center;gap:9px;max-width:100%;width:fit-content;color:var(--muted);font-size:13px;text-decoration:none;min-height:38px;margin-top:12px;margin-bottom:5px}
.card-teacher>span:last-child{margin-left:3px;color:var(--green)}
.card-teacher:hover{color:var(--green);text-decoration:underline;text-underline-offset:4px}
.teacher-dot{display:block;flex:none;width:29px;height:29px;border-radius:50%;background-color:#dfe6d8;background-position:center 17%;background-size:cover}
.card-price .price-line{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
.card-price .price-line .unit{white-space:nowrap;font-size:13px;color:var(--muted)}
.card-price p{line-height:1.6}
.course-list .course-card-horizontal{grid-template-columns:190px minmax(0,1fr) 242px;gap:26px}
.course-list .card-price strong{font-size:31px;white-space:nowrap}
.course-list .card-price .unit{font-size:13px!important}
.course-list .card-price p{font-size:13px!important;margin:12px 0 19px}
.course-list .card-facts{margin-top:20px;gap:14px 18px}
.course-list .course-illustration{min-height:210px}
.course-list .course-card-purchase{justify-content:center}
.home-course-grid .course-card{display:flex;flex-direction:column}
.home-course-grid .card-facts{margin-bottom:3px}
.home-course-grid .card-teacher{margin-bottom:20px}
.home-course-grid .card-price{margin-top:auto}
.home-course-grid .card-price .unit{font-size:14px}
.home-course-grid .card-price p{font-size:14px}
.catalog-caption{min-height:42px}
.catalog-caption [data-reset]{min-height:44px}
.home-direction-tabs button,.chip,.format-switch button{min-height:44px}
.home-teacher-photo,.teacher-portrait{position:relative}
.profile-badge{position:absolute;top:14px;left:14px;background:var(--paper);color:var(--ink);border-radius:100px;padding:6px 10px;font-size:10px;font-weight:500;box-shadow:0 1px 5px #142e1910}
.home-teacher-photo{background-position:center 16%;height:260px}
.home-teacher-body h3{font-size:24px;line-height:1.2;max-width:280px}
.teacher-quote{font-size:14px;line-height:1.6;margin-top:18px;color:var(--ink)}
.home-teacher-body .teacher-facts dd,.teacher-facts dd{color:var(--ink)}
.teacher-course-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}
.teacher-course-links a{font-size:11px;line-height:1.45;color:var(--green);text-decoration:none;background:#e6ece1;border:1px solid #d1dbca;border-radius:6px;padding:7px 9px;min-height:32px}
.teacher-course-links a:hover{background:#d9e4d3}
.teacher-grid-single{grid-template-columns:1fr}
.teacher-card-full{grid-template-columns:280px minmax(0,1fr)}
.teacher-card-full .teacher-portrait{min-height:355px;background-size:auto 480px;background-position:center 13%;background-repeat:no-repeat}
.teacher-card-full .teacher-body{padding:32px 36px}
.teacher-card-full .teacher-body h3{font-size:30px}
.teacher-card-full .teacher-quote{font-size:18px;max-width:590px}
.teacher-card-full .teacher-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.review-complete{display:flex;flex-direction:column}
.review-overline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}
.review-overline .quote{height:32px;font-size:54px;color:#6b8861}
.demo-label{font-size:10px;color:var(--muted);border:1px solid #c5d0bf;border-radius:100px;padding:4px 8px;line-height:1.6;white-space:nowrap}
.review-complete h3{font-size:23px;line-height:1.2;text-wrap:balance}
.home-review-grid .review-complete p,[data-course-view] .review-complete p{font-size:15px;line-height:1.75;color:#455b4a;margin-bottom:20px}
.review-complete .review-fields{display:flex;align-items:center;gap:11px;padding:16px 0 0;margin-top:auto;background:transparent;border-top:1px solid var(--line);border-radius:0;font-size:12px;line-height:1.5}
.review-fields>span:last-child{display:grid;gap:3px}
.review-fields strong{font-size:14px;font-weight:550;color:var(--ink)}
.review-avatar{display:flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:50%;background:#e4eadb;color:var(--green);font-size:17px;flex:none}
.review-course{margin-top:17px;font-size:13px;min-height:32px}
.package-label{display:block;margin-top:24px;margin-bottom:10px}
.quantity-control{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;gap:7px}
.quantity-control button{border:1px solid #a4b19b;background:var(--paper);border-radius:9px;font-size:24px;line-height:1;min-height:46px;color:var(--green);cursor:pointer}
.quantity-control button:hover{background:#e4ecdd}
.quantity-control button:disabled{opacity:.4;cursor:default}
.quantity-control input{appearance:textfield;-moz-appearance:textfield;min-width:0;width:100%;border:1px solid #92a28a;border-radius:9px;background:#fffefb;color:var(--ink);text-align:center;font-size:22px;font-weight:500;padding:5px 12px;min-height:46px}
.quantity-control input::-webkit-inner-spin-button,.quantity-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.quantity-control input[aria-invalid=true]{border-color:#9d402a;background:#fff7ef}
.package-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.package-option{min-height:48px;padding:8px;font-size:16px;border-radius:9px;font-weight:550}
.package-option span{display:inline;font-size:11px;font-weight:400;margin-left:4px}
.quantity-help,.quantity-error{font-size:12px;line-height:1.5;margin-top:10px}
.quantity-help{color:var(--muted)}
.quantity-error{color:#943d28;font-weight:500}
.purchase-panel{top:146px}
.purchase-total{padding-top:21px}
.purchase-terms{font-size:12px;line-height:1.65}
.dialog-close{min-width:44px;min-height:44px}
.design-dialog{width:min(650px,calc(100% - 32px))}
.design-list{padding-left:23px;margin:24px 0;display:grid;gap:14px;font-size:14px;line-height:1.7;color:var(--muted)}
.design-list strong{color:var(--ink)}
.demo-disclosure{font-size:12px;line-height:1.7;border-top:1px solid var(--line);padding-top:18px;margin-bottom:24px;color:var(--muted)}
@media(min-width:901px){.home-hero-inner{padding-block:50px}.home-hero h1{font-size:clamp(48px,4.5vw,64px)}.home-hero-description{font-size:18px}.home-teacher-body .teacher-facts{min-height:223px}}
@media(max-width:1100px){.course-list .course-card-horizontal{grid-template-columns:160px minmax(0,1fr) 218px;gap:20px}.course-list .card-price strong{font-size:28px}.hero-proof{gap:20px}.hero-proof>div{gap:4px;flex-direction:column}}
@media(max-width:900px){.course-list .course-card-horizontal{grid-template-columns:155px minmax(0,1fr)}.home-teacher-photo{height:100%;background-size:auto 410px}.home-teacher-body .teacher-facts{display:block}.home-teacher-card{grid-template-columns:230px 1fr}.teacher-card-full{grid-template-columns:220px minmax(0,1fr)}.teacher-card-full .teacher-body{padding:26px}.teacher-card-full .teacher-facts{grid-template-columns:1fr;gap:0}.teacher-card-full .teacher-portrait{background-size:auto 470px}.teacher-card-full .teacher-body h3{font-size:27px}}
@media(max-width:650px){.demo-banner .shell{gap:10px;align-items:center;min-height:42px}.demo-banner .shell>span{display:block}.demo-banner-note{display:block;font-size:10px;margin-top:2px}.demo-banner strong{font-size:10px}.demo-banner button{font-size:10px}.hero-proof{grid-template-columns:1fr;gap:10px;padding-block:18px 22px}.hero-proof>div{flex-direction:row;gap:9px;align-items:baseline}.hero-proof strong{font-size:13px}.hero-proof span{font-size:11px}.home-hero-inner{padding-block:36px;gap:32px}.home-hero h1{font-size:clamp(34px,9vw,46px)}.home-hero-description{font-size:15px}.section-heading{align-items:flex-start;gap:14px;flex-direction:column}.section-demo-note{text-align:left;align-self:start;font-size:11px}.section-demo-note br{display:none}.section-demo-note br:after{content:' '}.course-list .course-card-horizontal{grid-template-columns:minmax(0,1fr);gap:0}.course-list .course-illustration{min-height:0;height:155px}.course-list .course-illustration img{max-height:165px;width:auto}.course-list .card-teacher{margin-bottom:0}.course-list .card-price strong{font-size:30px}.home-course-grid .card-price .price-line{gap:7px}.home-teacher-card,.teacher-card-full{display:block}.home-teacher-photo{height:265px;min-height:0;background-size:auto 390px;background-position:center 15%}.home-teacher-body{padding:25px}.home-teacher-body h3{font-size:27px}.home-teacher-body .teacher-facts{display:block}.home-teacher-body .teacher-facts dd{font-size:14px}.home-teacher-role{font-size:13px}.teacher-card-full .teacher-portrait{height:265px;min-height:0;background-size:auto 390px;background-position:center 15%}.teacher-card-full .teacher-body{padding:25px}.teacher-card-full .teacher-quote{font-size:16px}.teacher-card-full .teacher-facts{display:block}.profile-badge{font-size:10px}.review-complete h3,.home-review-grid .review-complete h3{font-size:25px}.purchase-panel{position:static}.purchase-terms{font-size:12px!important}.package-option{min-height:44px}.mobile-course-action .btn{min-height:44px}.mobile-course-action{gap:8px}.mobile-course-action strong{font-size:18px}.mobile-course-action small{font-size:10px}.mobile-course-action .btn{padding-inline:12px;font-size:12px}.group-bottom{gap:12px;flex-wrap:wrap}.group-name{font-size:16px}.design-list{font-size:13px}}
@media(max-width:370px){.demo-banner-note{max-width:180px}.home-teacher-body h3{font-size:25px}.package-option span{display:block;margin-left:0;margin-top:2px}.package-option{min-height:52px}.group-top{gap:8px}.group-seats{font-size:11px!important}}
@media(prefers-reduced-motion:reduce){.course-card{transition:none}}
@media print{.demo-banner,.demo-footer{display:none}.hero-proof{color:var(--ink)}}

/* base */
/* Django integration: override legacy specificity only inside public pages. */
.r25-header .header-inner{height:72px;min-height:72px}
.r25-header .desktop-nav a{font-family:inherit;font-size:14px;font-weight:500}
.r25-header .desktop-nav .course-dropdown a{font-size:13px}
.demo-banner .shell{gap:16px;flex-wrap:wrap;padding-block:9px;min-height:40px;line-height:1.55}
.demo-banner span{font-size:12px;display:block}
.r27-teacher-photo{position:relative;display:flex;align-items:center;justify-content:center;background:var(--mint);overflow:hidden}
.r27-teacher-photo>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}
.r27-teacher-photo .profile-badge{z-index:1}
.teacher-achievements{list-style:none;margin:23px 0 0;padding:0;display:grid;gap:0}
.teacher-achievements li{padding:17px 0;border-top:1px solid var(--line);margin:0;display:grid;gap:5px;color:var(--ink)}
.teacher-achievements strong{font-size:25px;line-height:1.2;font-weight:550;letter-spacing:-.035em;color:var(--green)}
.teacher-achievements span{font-size:14px;line-height:1.65;color:var(--muted)}
.achievement-disclosure{font-size:11px;line-height:1.6;color:var(--muted);margin-top:13px}
.teacher-card-full .teacher-achievements{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:27px}
.teacher-card-full .teacher-portrait{min-height:370px}
.teacher-card-full .teacher-body{padding:34px}
.teacher-grid-single{grid-template-columns:1fr}
.teacher-card-full{grid-template-columns:280px minmax(0,1fr)}
.home-course-grid .card-price .unit{margin:0}
.home-course-grid .card-more{margin-top:16px}
.teacher-dot{object-fit:cover;object-position:center 20%;max-width:29px}
.home-teacher-body .teacher-facts{min-height:0}
.course-card-top{flex-wrap:wrap;gap:8px}
.filter-panel{grid-template-columns:minmax(0,2fr) minmax(150px,1fr) minmax(120px,.8fr)}
.r25-review .review-fields{margin-top:auto}
.quantity-control button{display:inline-flex;align-items:center;justify-content:center;padding:0}
.quantity-control input{font-size:20px;line-height:1.3}
.quantity-label{display:block}
.package-options{grid-template-columns:repeat(auto-fit,minmax(62px,1fr))}
.package-option span{display:block;margin:3px 0 0;font-size:11px}
.r27-demo-dialog::backdrop{background:#102b2266}
.r27-demo-dialog:not([open]){display:none}
.r27-demo-dialog .dialog-close{display:flex;align-items:center;justify-content:center}
@media(max-width:900px){.filter-panel{grid-template-columns:1fr 1fr}.teacher-card-full{grid-template-columns:220px minmax(0,1fr)}.teacher-card-full .teacher-achievements{grid-template-columns:1fr;gap:0}}
@media(max-width:650px){.r25-header .header-inner{height:64px;min-height:64px}.demo-banner .shell{gap:3px}.demo-banner span{font-size:10px}.teacher-card-full{display:block}.teacher-card-full .teacher-portrait{height:265px;min-height:0}.teacher-card-full .teacher-body{padding:25px}.teacher-achievements strong{font-size:26px}.teacher-card-full .teacher-achievements{display:grid;grid-template-columns:1fr;gap:0}.filter-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.package-option{min-height:52px}}

.home-teacher-photo,.teacher-portrait{position:relative}.home-teacher-body .teacher-facts{min-height:0}.teacher-card-full .teacher-achievements{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.teacher-card-full .teacher-achievements{grid-template-columns:1fr}}
/* r30-content-design */
@font-face{font-family:Manrope;src:url(../../mockups/user/v36/fonts/manrope-cyrillic-wght-normal.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+400-52F,U+2116}
@font-face{font-family:Manrope;src:url(../../mockups/user/v36/fonts/manrope-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0-FF,U+2000-206F,U+20AC,U+2190-21FF,U+2212,U+FEFF,U+FFFD}
/* R30: shared palette and embedded Onest from R29. */
.home-hero{min-height:min(800px,calc(100svh - 112px));padding:0;align-items:stretch}
.home-hero-inner{grid-template-columns:1.08fr 1fr;gap:100px;padding-block:64px;flex:1}
.home-hero h1{font-size:clamp(52px,5.5vw,76px);gap:12px;line-height:1.1}
.home-hero-description{max-width:465px;font-size:18px;line-height:1.7;margin-top:30px}
.home-hero-copy>.eyebrow{font-size:11px;color:#d0dfce;letter-spacing:.1em;margin-bottom:26px}
.r30-goal-sheet{position:relative;background:var(--paper);color:var(--ink);border-radius:4px 24px 24px 4px;padding:30px 34px 24px;transform:rotate(1.5deg);box-shadow:12px 12px 0 #8faa90;isolation:isolate}
.r30-goal-sheet:before{content:"";position:absolute;left:19px;top:0;bottom:0;border-left:1px solid #e5b69b;z-index:-1}
.r30-sheet-head{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:11px;line-height:1.5;margin-bottom:24px}
.r30-sheet-head>span:last-child{font-size:24px;color:var(--green)}
.r30-goal-sheet h2{font-size:36px;line-height:1.1;letter-spacing:-.04em}
.r30-sheet-intro{font-size:13px;color:var(--muted);margin-top:12px;margin-bottom:18px}
.r30-goal-sheet>a{display:grid;grid-template-columns:22px 1fr 18px;gap:13px;align-items:start;padding:19px 0;border-top:1px solid var(--line)}
.r30-goal-sheet>a:hover strong{text-decoration:underline;text-underline-offset:4px}
.r30-goal-no{font-size:11px;color:#68806d;margin-top:3px;font-variant-numeric:tabular-nums}
.r30-goal-sheet strong{display:block;font-size:17px;font-weight:500;line-height:1.4}
.r30-goal-sheet small{display:block;font-size:12px;color:var(--muted);line-height:1.6;margin-top:7px}
.r30-sheet-foot{padding-top:14px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);line-height:1.6}
.hero-proof{gap:25px;padding-block:23px;flex-shrink:0}
.hero-proof>div{display:block}.hero-proof span{display:block;margin-top:5px;line-height:1.5}
.hero-proof strong{font-size:15px}.hero-proof span{font-size:12px}
.home-hero-art .school-hero-book{left:42%;bottom:-110px;width:185px;opacity:.65}
.home-hero-art .school-hero-accents{top:24px;left:41%;width:180px;opacity:.3}
.r30-section-lead{font-size:14px;color:var(--muted);max-width:390px;line-height:1.7;letter-spacing:0}
.home-direction-tabs{display:flex;flex-wrap:wrap;width:auto;max-width:100%;gap:4px}
.home-direction-tabs .chip{padding-inline:16px}
.r30-card-caption{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-top:18px;margin-bottom:5px}
.r30-card-caption+.course-desc{margin-top:0;font-size:15px;line-height:1.6}
.home-course-grid .course-card{padding:26px 28px 22px}
.home-course-grid .course-card :is(h2,h3){font-size:28px}
.home-course-grid .card-facts{margin-top:22px;grid-template-columns:1fr 1fr}
.r30-practice-link{margin-top:22px}
.r30-role-note{display:flex;align-items:start;gap:17px;border-top:1px solid #b6c8ac;padding-top:22px;margin-top:30px;max-width:430px}
.r30-role-note>span{font-size:30px;line-height:1.3;color:var(--green)}
.r30-role-note p{font-size:13px;line-height:1.8;color:var(--muted)}
.r30-role-note strong{font-weight:500;color:var(--ink)}
.home-learning h2{font-size:39px;line-height:1.16}
.home-learning-list li{gap:15px;padding-block:23px}
.home-learning-list h3{font-size:22px}
.r30-practice{background:#f0ede3;border-bottom:1px solid var(--line)}
.r30-practice .section-heading{margin-bottom:25px}
.r30-example-tabs{display:flex;gap:4px;background:#e1e6d9;padding:4px;border-radius:9px;width:max-content;max-width:100%;margin-bottom:22px}
.r30-example-tabs button{border:0;border-radius:6px;font-size:13px;min-height:42px;padding:10px 18px}
.r30-example-tabs button[aria-selected=true]{color:var(--paper);background:var(--green)}
.r30-example-panel{display:grid;grid-template-columns:1fr 1fr;background:var(--paper);border:1px solid #cdd7c7;border-radius:18px;overflow:hidden;min-height:355px}
.r30-work-sheet{padding:30px 35px;display:flex;flex-direction:column;background-image:linear-gradient(#dbe1d33d 1px,transparent 1px);background-size:100% 32px;background-position:0 18px}
.r30-work-label{display:flex;justify-content:space-between;gap:14px;font-size:10px;line-height:1.6;text-transform:uppercase;letter-spacing:.045em;color:var(--muted);padding-bottom:20px}
.r30-task{font-size:20px;line-height:1.5;font-weight:500;letter-spacing:-.025em}
.r30-answer-label{font-size:12px;color:var(--muted);margin-top:26px}
.r30-student-answer{display:flex;flex-direction:column;gap:11px;margin-top:14px;font-size:33px;line-height:1.5;font-family:Georgia,'Times New Roman',serif;font-style:italic}
.r30-student-answer mark{color:#7c3f28;background:#f4d8bf;padding:0 6px;border-radius:4px}
.r30-sentence{font-family:Onest,Arial,sans-serif;font-size:21px;line-height:1.65;font-style:normal;letter-spacing:-.02em}
.r30-example-footnote{font-size:10px;color:var(--muted);padding-top:30px;margin-top:auto}
.r30-feedback{padding:30px 35px;background:#e4ebdc;border-left:1px solid #cdd7c7}
.r30-feedback-heading{display:flex;gap:10px;align-items:center;font-size:13px;font-weight:500;margin-bottom:18px;color:var(--green)}
.r30-comment-icon{display:flex;width:32px;height:32px;border-radius:50%;background:#cbdcc1;align-items:center;justify-content:center;font-size:24px}
.r30-feedback>p{font-size:16px;line-height:1.8}
.r30-feedback>p.r30-feedback-tip{font-size:12px;color:var(--muted);margin-top:17px;line-height:1.6}
.r30-solution{border-top:1px solid #b9c9ae;margin-top:22px}
.r30-solution summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:50px;font-size:13px;font-weight:500;color:var(--green);padding-block:12px}
.r30-solution summary::-webkit-details-marker{display:none}
.r30-solution summary:after{content:'+';font-size:23px;font-weight:400}
.r30-solution[open] summary:after{content:'−'}
.r30-solution>div{padding:5px 0 10px;font-size:14px;line-height:1.7}
.r30-solution>div p+p{margin-top:12px}
.r30-math-answer{font-family:Georgia,serif;font-size:27px;line-height:1.5;font-style:italic}
.r30-practice-note{font-size:12px;line-height:1.7;color:var(--muted);margin-top:18px;max-width:760px}
.r30-teacher-quote{font-size:17px;line-height:1.65;margin-top:23px;letter-spacing:-.015em}
.r30-teacher-focus{font-size:13px;line-height:1.7;color:var(--muted);margin-top:16px;margin-bottom:22px}
.home-teacher-card{display:flex;flex-direction:column}
.home-teacher-body{display:flex;flex-direction:column;flex:1}
.home-teacher-body>.text-link{margin-top:auto;font-size:13px}
.r30-course-fit{display:block}
.r30-fit-heading{max-width:710px;margin-bottom:29px}
.r30-fit-heading h2{margin-top:10px}
.r30-fit-heading>p:last-child{font-size:16px;line-height:1.8;color:var(--muted);margin-top:17px}
.r30-fit-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:25px}
.r30-fit-result{background:#e4ebdc;border:1px solid #c6d3bf;border-radius:16px;padding:30px}
.r30-card-label{display:block;color:var(--muted);font-size:11px;letter-spacing:.075em;text-transform:uppercase;margin-bottom:14px}
.r30-fit-result h3{font-size:27px;line-height:1.3}
.r30-fit-result ul{padding-left:20px;font-size:15px;line-height:1.8;margin:20px 0 0}
.r30-fit-result li+li{margin-top:12px}
.r30-fit-aside{display:flex;flex-direction:column;gap:18px}
.r30-fit-aside article{border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:25px 28px;flex:1}
.r30-fit-aside p{font-size:15px;line-height:1.75}
.course-subnav .shell{gap:23px}
.r30-contact{padding-top:20px}
.r30-contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:#e4ebdc;border-radius:20px;padding:45px}
.r30-contact h2{font-size:33px;margin-top:13px}
.r30-contact-inner>div>p:last-child{font-size:15px;line-height:1.8;color:var(--muted);margin-top:20px;max-width:390px}
.r30-contact form{display:grid;grid-template-columns:1fr;gap:10px;align-content:start}
.r30-contact label{font-size:13px;line-height:1.5}
.r30-contact input,.r30-contact textarea{width:100%;padding:12px 14px;border:1px solid #afbea5;border-radius:8px;background:var(--paper);font:inherit;font-size:15px;line-height:1.6;color:var(--ink);outline-offset:3px}
.r30-contact textarea{resize:vertical;min-height:112px}
.r30-contact input+label{margin-top:7px}
.r30-contact form .btn{justify-content:space-between;margin-top:6px}
.r30-form-note{font-size:11px;line-height:1.7;color:var(--muted)}
.home-reviews{background:var(--paper)}
@media(min-width:901px) and (max-width:1100px){.header-inner{grid-template-columns:165px minmax(0,1fr) 105px;gap:18px}.desktop-nav{font-size:13px;gap:17px}}
@media(min-width:1500px){.home-hero{min-height:760px}}
@media(max-width:1100px){.home-hero-inner{gap:55px}.r30-goal-sheet{padding:25px 28px}.r30-goal-sheet strong{font-size:15px}.home-hero h1{font-size:60px}.r30-section-lead br{display:none}.r30-contact-inner{gap:36px}.r30-work-sheet,.r30-feedback{padding:27px}.desktop-nav{gap:22px}}
@media(max-width:900px){.home-hero-inner{grid-template-columns:1fr 1fr;gap:35px;padding-block:48px}.home-hero h1{font-size:49px}.home-hero-description{font-size:16px}.r30-goal-sheet h2{font-size:29px}.home-catalog-toolbar{align-items:start;gap:16px}.home-direction-tabs{gap:2px}.home-direction-tabs .chip{padding:9px 11px;font-size:12px}.home-learning-layout{gap:35px}.home-learning h2{font-size:32px}.r30-example-panel{grid-template-columns:1fr 1fr}.r30-work-sheet,.r30-feedback{padding:24px}.r30-feedback>p{font-size:14px}.r30-contact-inner{padding:30px;gap:28px}.r30-contact h2{font-size:28px}.r30-fit-grid{grid-template-columns:1fr 1fr}.r30-fit-result{padding:25px}.r30-fit-result h3{font-size:23px}.r30-fit-aside article{padding:23px}.r30-teacher-quote{font-size:15px}}
@media(max-width:650px){
 .home-hero{min-height:0}.home-hero-inner{grid-template-columns:1fr;padding-block:39px 40px;gap:38px}.home-hero h1{font-size:clamp(43px,11vw,59px);gap:10px}.home-hero-copy>.eyebrow{font-size:10px;margin-bottom:21px}.home-hero-description{font-size:16px;margin-top:25px;max-width:370px}.r30-goal-sheet{padding:24px 26px 21px;transform:rotate(.7deg);box-shadow:6px 6px 0 #8faa90;margin-right:6px}.r30-goal-sheet h2{font-size:30px}.r30-sheet-head{margin-bottom:16px}.r30-goal-sheet>a{padding-block:15px;gap:10px}.r30-goal-sheet strong{font-size:16px}.r30-goal-sheet small{font-size:12px}.r30-sheet-foot{font-size:10px}.r30-sheet-intro{margin-bottom:16px}.hero-proof{grid-template-columns:1fr;gap:13px;padding-block:20px}.hero-proof>div{display:flex;gap:8px;flex-wrap:wrap;align-items:baseline}.hero-proof strong{font-size:12px}.hero-proof span{margin:0;font-size:11px}.home-catalog-toolbar{display:block}.home-direction-tabs{gap:3px}.home-direction-tabs .chip{font-size:13px;padding-inline:14px}.home-catalog-toolbar>.text-link{margin-top:12px}.r30-section-lead{font-size:14px}.home-course-grid .course-card{padding:24px}.home-course-grid .course-card :is(h2,h3){font-size:28px}.home-learning-layout{grid-template-columns:1fr;gap:32px}.home-learning h2{font-size:34px}.home-learning-list h3{font-size:22px}.r30-role-note{margin-top:23px}.r30-practice h2{font-size:31px}.r30-practice h2 br{display:none}.r30-example-panel{grid-template-columns:1fr;min-height:0}.r30-work-sheet{padding:23px 24px;min-height:290px}.r30-feedback{border-left:0;border-top:1px solid #cdd7c7;padding:24px}.r30-feedback>p{font-size:15px}.r30-task{font-size:20px}.r30-sentence{font-size:20px}.r30-work-label{font-size:9px;gap:8px}.r30-work-label span:last-child{white-space:nowrap}.r30-math-answer{font-size:25px}.r30-student-answer{font-size:31px}.r30-teacher-quote{font-size:17px}.r30-fit-grid{grid-template-columns:1fr;gap:18px}.r30-fit-result h3{font-size:26px}.r30-fit-heading h2{font-size:32px}.r30-fit-heading>p:last-child{font-size:15px}.r30-fit-aside{gap:15px}.r30-contact-inner{grid-template-columns:1fr;gap:27px;padding:27px 23px}.r30-contact h2{font-size:28px}.r30-contact-inner>div>p:last-child{font-size:14px}.r30-contact form input,.r30-contact textarea{font-size:16px}.demo-banner-note{max-width:250px}.r30-section-lead br{display:none}
}
@media(max-width:370px){.home-hero h1{font-size:40px}.r30-goal-sheet{padding:23px 22px}.r30-goal-sheet strong{font-size:14px}.r30-goal-sheet>a{grid-template-columns:18px 1fr 14px;gap:7px}.r30-sheet-foot{font-size:9px}.home-direction-tabs .chip{font-size:12px;padding-inline:10px}.r30-work-sheet,.r30-feedback{padding:21px}.r30-work-label{flex-wrap:wrap}.r30-sentence{font-size:18px}.r30-math-answer{font-size:22px}.home-course-grid .course-card{padding:22px}.r30-contact-inner{padding:23px 19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Content revision: mini-groups and the student result screen from P06.042. */
.home-hero h1{font-size:clamp(42px,4.3vw,62px);gap:14px}
.home-hero-inner{gap:70px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.home-hero-description{max-width:480px}
.r31-hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-top:28px}
.r31-hero-actions .btn{gap:30px;min-height:50px}
.r31-hero-demo{font-size:13px;line-height:1.6;color:#e6ecdc;text-decoration:underline;text-underline-offset:4px}
.r31-hero-demo span{margin-left:8px}
.r31-format .section-heading{margin-bottom:30px}
.r31-format-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.r31-format-grid article{border-top:1px solid #a4b6a4;padding-top:22px}
.r31-format-no{font-size:10px;font-weight:500;line-height:1.6;letter-spacing:.065em;color:var(--muted)}
.r31-format-grid h3{font-size:25px;line-height:1.3;margin:14px 0 12px;letter-spacing:-.035em}
.r31-format-grid p{font-size:14px;line-height:1.85;color:var(--muted);max-width:340px}
.r31-price-example{display:flex;align-items:center;gap:35px;background:#e4ebdc;border:1px solid #c6d3bf;border-radius:15px;margin-top:32px;padding:25px 28px}
.r31-price-example>div:first-child{flex:1}
.r31-price-example>div:first-child>p{font-size:14px;line-height:1.6;margin-top:6px;max-width:260px}
.r31-price-pair{display:flex;gap:30px;flex:1.2}
.r31-price-pair p{display:flex;flex-direction:column;gap:7px}
.r31-price-pair span{font-size:11px;line-height:1.6;color:var(--muted)}
.r31-price-pair strong{font-size:27px;font-weight:500;letter-spacing:-.035em;white-space:nowrap}
.r31-price-example .text-link{font-size:13px;flex-shrink:0}
.r31-demo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.r31-demo-toolbar .r30-example-tabs{margin-bottom:0}
.r31-demo-toolbar>p{font-size:12px;color:var(--muted);line-height:1.65;text-align:right}
.r30-example-panel{display:block;border:1px solid #a9b7ad;border-radius:18px;min-height:0;box-shadow:0 16px 35px #1732260a}
.r31-platform{--bg:#f1f0ea;--paper:#fbfaf6;--ink:#17221e;--muted:#52605a;--green:#2f6257;--deep:#214a41;--mint:#dfeade;--line:#cbd2cb;background:var(--bg);color:var(--ink);font-family:Manrope,Onest,Arial,sans-serif;font-size:14px;line-height:1.6;min-width:0}
.r31-app-header{display:flex;align-items:center;gap:26px;padding:18px 28px;min-height:76px;border-bottom:1px solid var(--line);background:var(--paper)}
.r31-app-brand{display:flex;align-items:center;gap:10px;font:500 23px/1.1 Onest,Arial,sans-serif;letter-spacing:-.045em;color:var(--deep)}
.r31-app-brand small{display:block;font-size:12px;letter-spacing:.02em}
.r31-brand-mark{width:33px;height:33px;display:grid;place-items:center;border:1.5px solid var(--green);border-radius:50%;font-size:12px;letter-spacing:-.1em}
.r31-header-section{border-left:1px solid var(--line);padding-left:25px;font-size:12px;line-height:1.6}
.r31-header-section strong{font-weight:600}
.r31-profile{display:flex;align-items:center;gap:9px;margin-left:auto;font-size:12px;line-height:1.5}
.r31-profile small{display:block;font-size:10px;color:var(--muted)}
.r31-avatar{display:grid;place-items:center;background:var(--mint);color:var(--deep);width:37px;height:37px;border-radius:50%;font-weight:600}
.r31-student-main{max-width:900px;margin:auto;padding:26px 34px 32px}
.r31-platform .r31-back{border:0;background:transparent;color:var(--deep);padding:8px 0;font:inherit;font-size:12px;min-height:40px;text-align:left;margin-bottom:9px;text-decoration:underline;text-underline-offset:3px}
.r31-result-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.r31-platform .r31-crumb{font-size:12px;color:var(--muted);margin:0 0 6px;line-height:1.65}
.r31-platform .r31-page-title{font-family:Onest,Arial,sans-serif;font-size:29px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0}
.r31-badge{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:7px;padding:4px 8px;font-size:11px;line-height:1.6;color:var(--muted);white-space:nowrap}
.r31-badge-ok{background:var(--mint);color:var(--deep);border-color:#aec2b0;margin-top:4px}
.r31-platform .rv-result-panel{padding:16px 22px;border:1px solid #adc0af;background:var(--mint);border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.r31-platform .rv-result-panel h4{font-family:Onest,Arial,sans-serif;font-size:20px;font-weight:500;line-height:1.4}
.r31-platform .rv-result-panel p{font-size:12px;margin:5px 0 0;color:var(--muted)}
.r31-platform .rv-total{font:500 36px/1.15 Onest,Arial,sans-serif;white-space:nowrap}
.r31-platform .rv-total small{font-size:21px;color:var(--muted)}
.r31-platform .rv-result-task{background:var(--paper);border:1px solid var(--line);border-radius:14px;margin-top:18px;padding:22px}
.r31-task-top{display:flex;justify-content:space-between;align-items:center;gap:16px}
.r31-task-top strong{font-size:13px;font-weight:600}
.r31-platform .rv-result-task>h4{font-family:Onest,Arial,sans-serif;font-size:23px;font-weight:500;line-height:1.4;margin:15px 0 10px;letter-spacing:-.025em}
.r31-platform .r31-condition{font-size:15px;line-height:1.8}
.r31-platform .rv-answer-label{font-size:12px;font-weight:600;color:var(--muted);margin:20px 0 7px}
.r31-platform .rv-value{background:#eff3e9;border-radius:9px;padding:14px 16px;line-height:1.65;font-size:24px;margin:0;gap:5px;overflow-wrap:anywhere}
.r31-platform .rv-value .r30-sentence{font-size:17px;line-height:1.8}
.r31-platform .rv-value mark{background:transparent;color:inherit;padding:0}
.r31-platform .rv-mark-breakdown{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}
.r31-platform .rv-mark-breakdown span{font-size:11px;padding:6px 9px;border:1px solid var(--line);border-radius:7px;line-height:1.6}
.r31-platform .rv-student-feedback{margin-top:18px;padding-top:15px;border-top:1px solid var(--line)}
.r31-platform .rv-student-feedback h5{font-family:Onest,Arial,sans-serif;font-size:17px;font-weight:500;line-height:1.5;margin-bottom:9px}
.r31-platform .rv-student-feedback p{font-size:14px;line-height:1.85}
.r31-platform .rv-solution{border-top:1px solid var(--line);margin-top:18px}
.r31-platform .rv-solution summary{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:13px;font-weight:600;color:var(--deep);min-height:50px;list-style:none;cursor:pointer;padding:12px 0}
.r31-platform .rv-solution summary::-webkit-details-marker{display:none}
.r31-platform .rv-solution summary:after{content:'+';font-size:23px;font-weight:400}
.r31-platform .rv-solution[open] summary:after{content:'−'}
.r31-platform .rv-solution>div{font-size:14px;line-height:1.8;padding:0 0 5px}
.r31-platform .rv-solution p+p{margin-top:12px}
.r31-platform .rv-solution .r30-sentence{font-size:18px}
.r31-platform .rv-solution .r30-math-answer{font-size:25px}
.r31-platform button:focus-visible,.r31-platform summary:focus-visible{outline:2px solid var(--deep);outline-offset:4px}
.r31-platform .r31-page-title:focus{outline:none}
.r31-work-list-item{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px;margin-top:22px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.r31-work-list-item h4{font-family:Onest,Arial,sans-serif;font-size:22px;font-weight:500;line-height:1.4;margin:12px 0 8px}
.r31-work-list-item p{font-size:12px;color:var(--muted)}
.r31-work-list-item>div:last-child{display:flex;align-items:center;gap:22px;flex-shrink:0}
.r31-work-list-item strong{font-size:22px;font-weight:500;white-space:nowrap}
.r31-platform .r31-app-btn{border:1px solid var(--green);border-radius:9px;padding:10px 14px;min-height:44px;background:var(--green);color:var(--paper);font:inherit;font-size:12px;display:flex;gap:16px;align-items:center}
[data-result-list]{min-height:400px}
@media(max-width:1100px){.home-hero h1{font-size:45px}.home-hero-inner{gap:45px}.r31-price-example{flex-wrap:wrap;gap:24px}.r31-price-example>div:first-child{flex-basis:210px}.r31-price-pair{flex:1.1}.r31-format-grid h3{font-size:23px}}
@media(max-width:900px){.home-hero h1{font-size:35px}.home-hero-inner{gap:30px}.r31-format-grid{gap:20px}.r31-format-grid h3{font-size:21px}.r31-price-pair{gap:24px}.r31-price-pair strong{font-size:25px}.r31-result-heading{flex-wrap:wrap}.r31-platform .r31-page-title{font-size:27px}.r31-app-header{padding:17px 22px}.r31-student-main{padding:23px 26px 28px}}
@media(max-width:650px){
 .home-hero-inner{grid-template-columns:minmax(0,1fr);gap:36px}.home-hero h1{font-size:clamp(29px,8.2vw,48px);gap:12px}.home-hero-description{max-width:450px}.r31-hero-actions{gap:17px;margin-top:23px}.r31-hero-demo{font-size:12px}.r31-hero-actions .btn{font-size:14px}
 .r31-format-grid{grid-template-columns:minmax(0,1fr);gap:24px}.r31-format-grid article{padding-top:18px}.r31-format-grid h3{font-size:24px;margin:10px 0}.r31-format-grid p{max-width:none;font-size:14px}.r31-price-example{padding:23px;gap:22px;align-items:start}.r31-price-example>div:first-child{flex-basis:100%}.r31-price-pair{flex-basis:100%;gap:25px}.r31-price-pair p{flex:1;min-width:0}.r31-price-pair strong{font-size:27px}.r31-price-example .text-link{font-size:13px}
 .r31-demo-toolbar{align-items:flex-start;flex-direction:column;gap:13px}.r31-demo-toolbar>p{text-align:left;font-size:12px}.r31-demo-toolbar>p br{display:none}.r30-example-panel{border-radius:13px}.r31-app-header{padding:16px;gap:14px;min-height:69px}.r31-app-brand{font-size:21px;gap:8px}.r31-header-section{display:none}.r31-profile{font-size:11px;gap:7px}.r31-profile small{font-size:9px}.r31-avatar{width:31px;height:31px}.r31-brand-mark{width:30px;height:30px}
 .r31-student-main{padding:18px 16px 22px}.r31-result-heading{gap:12px;margin-bottom:16px}.r31-platform .r31-page-title{font-size:25px}.r31-platform .r31-crumb{font-size:11px}.r31-badge{font-size:10px}.r31-platform .rv-result-panel{padding:15px;gap:12px}.r31-platform .rv-result-panel h4{font-size:18px}.r31-platform .rv-result-panel p{font-size:10px;max-width:170px;line-height:1.7}.r31-platform .rv-total{font-size:31px}.r31-platform .rv-total small{font-size:19px}.r31-platform .rv-result-task{padding:17px;margin-top:15px}.r31-platform .rv-result-task>h4{font-size:21px}.r31-platform .r31-condition{font-size:14px}.r31-platform .rv-value{padding:12px;font-size:24px}.r31-platform .rv-value .r30-sentence{font-size:16px}.r31-platform .rv-student-feedback h5{font-size:16px}.r31-platform .rv-student-feedback p{font-size:14px}.r31-platform .rv-solution .r30-math-answer{font-size:20px}.r31-platform .rv-solution .r30-sentence{font-size:16px}.r31-platform .rv-mark-breakdown{gap:6px}.r31-platform .rv-mark-breakdown span{font-size:10px;padding:5px 7px}.r31-work-list-item{align-items:flex-start;flex-direction:column;padding:18px;gap:18px}.r31-work-list-item>div:last-child{width:100%;justify-content:space-between;gap:12px}.r31-work-list-item h4{font-size:21px}.r31-platform .r31-app-btn{font-size:11px;gap:9px}
}
@media(max-width:370px){.r31-app-brand{font-size:19px}.r31-profile>span:last-child{display:none}.r31-student-main{padding:15px 12px 18px}.r31-platform .rv-result-task{padding:14px}.r31-price-example{padding:20px}.r31-price-pair{gap:18px}.r31-price-pair strong{font-size:25px}}

/* Homepage previews are a small selection for the active direction. */
.home-course-grid.course-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.home-course-grid .course-card{padding:24px 25px;min-width:0}
.home-course-grid .course-card :is(h2,h3){font-size:27px;line-height:1.2;min-height:65px;max-width:none}
.home-course-grid .course-card-top{gap:8px;margin-bottom:17px;flex-wrap:wrap}
.home-course-grid .category-badge{font-size:11px;padding:5px 9px}
.home-course-grid .class-label{font-size:11px}
.home-course-grid .course-desc{font-size:14px;line-height:1.65;margin-top:13px;min-height:70px;max-width:none}
.home-course-grid .card-facts{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12px;margin:22px 0}
.home-course-grid .card-facts dt{font-size:11px;margin-bottom:5px}
.home-course-grid .card-facts dd{font-size:13px;line-height:1.5}
.home-course-grid .card-price{padding-top:19px}
.home-course-grid .card-price .price-line{display:flex;gap:7px;align-items:baseline;flex-wrap:wrap}
.home-course-grid .card-price strong{font-size:29px}
.home-course-grid .card-price .unit{font-size:12px}
.home-course-grid .card-price p{font-size:11px;line-height:1.7;margin:8px 0 17px}
.home-course-grid .card-price .btn{min-height:45px;font-size:13px}
.r31-platform .rv-value.r32-rich-answer{display:block;font-family:Manrope,Onest,Arial,sans-serif;font-size:14px;font-style:normal;line-height:1.85;padding:17px 18px}
.r31-platform .r32-rich-answer p+p{margin-top:12px}
.r31-platform .r32-step-label{display:block;font-family:Manrope,Onest,Arial,sans-serif;font-size:11px;font-style:normal;font-weight:600;line-height:1.6;color:var(--muted);margin-bottom:5px}
.r31-platform .r32-math-line{display:block;font-family:Onest,Arial,sans-serif;font-size:20px;line-height:1.8;letter-spacing:0}
.r31-platform .r32-rich-answer strong{font-weight:600}
.r31-platform .r32-student-explanation{padding-top:14px;border-top:1px solid #cbd2cb}
.r31-platform .r32-formula{display:block;font-size:24px;line-height:1.7;padding:14px 0 8px;overflow-x:auto;max-width:100%}
.r31-platform .r32-formula math{font-family:'Cambria Math','STIX Two Math',serif;font-size:1em}
.r31-platform .r32-task-passage{display:block;margin-top:14px;padding:15px 18px;border-left:3px solid #b4c6b2;background:#f1f3ed;line-height:1.9}
.r31-platform .r32-criteria-note{font-size:10px;line-height:1.65;color:var(--muted);margin-top:9px}
.r31-platform .r32-solution-list{padding-left:20px;margin:12px 0;font-size:14px;line-height:1.8}
.r31-platform .r32-solution-list li+li{margin-top:7px}
.r31-platform .r32-author-text{padding:15px 18px;background:#eff3e9;border-radius:8px;line-height:1.9}
@media(max-width:1050px){.home-course-grid.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.home-course-grid .course-card :is(h2,h3){font-size:28px}.home-course-grid .course-desc{min-height:48px}.home-direction-tabs{flex-shrink:1}}
@media(max-width:650px){.home-course-grid.course-grid{grid-template-columns:minmax(0,1fr);gap:16px}.home-course-grid .course-card{padding:23px}.home-course-grid .course-card :is(h2,h3){font-size:28px;min-height:0}.home-course-grid .course-desc{min-height:0;font-size:14px;margin-top:12px}.home-course-grid .card-facts{margin-block:20px}.home-course-grid .card-price strong{font-size:29px}.home-direction-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.home-direction-tabs .chip{padding-inline:8px}.r31-platform .rv-value.r32-rich-answer{padding:14px;font-size:14px}.r31-platform .r32-math-line{font-size:18px}.r31-platform .r32-formula{font-size:21px}.r31-platform .r32-task-passage,.r31-platform .r32-author-text{padding:13px 14px}.r31-platform .r32-solution-list{padding-left:18px}}

/* r31-variants-design */
.r31-dir-variants{
  --r31-dir-cream:#fbf7ed;--r31-dir-apricot:#efb48d;--r31-dir-mint:#dbe6cf;
  --r31-dir-ink:#203e34;--r31-dir-deep:#214a41;
  width:100%;max-width:460px;min-width:0;margin-left:auto;align-self:center;
  font-family:Onest,Arial,sans-serif;color:var(--r31-dir-ink)
}
.r31-dir-variants *{box-sizing:border-box}
.r31-dir-variant{min-width:0}
.r31-dir-variant[hidden]{display:none!important}
.r31-dir-variants .r31-dir-title{font-family:Onest,Arial,sans-serif;font-size:29px;font-weight:500;line-height:1.18;letter-spacing:-.04em;margin:0 0 22px}
.r31-dir-cards .r31-dir-title{color:var(--r31-dir-cream)}
.r31-dir-variants a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;min-width:0;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.r31-dir-variants a:focus-visible{outline:3px solid var(--r31-dir-cream);outline-offset:5px}
.r31-dir-buttons a:focus-visible,.r31-dir-list a:focus-visible{outline-color:var(--r31-dir-deep);outline-offset:3px}
.r31-dir-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:none}
.r31-dir-icon svg{display:block;width:25px;height:25px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.r31-dir-arrow{display:grid;place-items:center;flex:none;width:31px;height:31px;font:400 23px/1 Onest,Arial,sans-serif;border:1px solid currentColor;border-radius:50%}
.r31-dir-tile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.r31-dir-tile{display:flex;flex-direction:column;justify-content:space-between;gap:22px;min-height:146px;padding:18px 20px;border:1px solid #ffffff40;border-radius:17px;box-shadow:0 5px 0 #12392c40}
.r31-dir-tile-ege{background:var(--r31-dir-cream)}
.r31-dir-tile-oge{background:var(--r31-dir-apricot)}
.r31-dir-tile-school{background:var(--r31-dir-mint)}
.r31-dir-tile-olympiad{background:#e9dfbd}
.r31-dir-tile-top{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%}
.r31-dir-tile-name{display:block;font-size:33px;font-weight:500;line-height:1.1;letter-spacing:-.035em}
.r31-dir-tile-school .r31-dir-tile-name,.r31-dir-tile-olympiad .r31-dir-tile-name{font-size:23px;line-height:1.14}
.r31-dir-buttons{background:var(--r31-dir-cream);border:1px solid #fff4;border-radius:21px;padding:25px 26px 28px;box-shadow:8px 9px 0 #88a88c}
.r31-dir-buttons .r31-dir-title{margin-bottom:20px;font-size:29px}
.r31-dir-button-stack{display:grid;gap:10px}
.r31-dir-button{display:grid;grid-template-columns:28px minmax(0,1fr) 29px;align-items:center;gap:14px;min-height:61px;padding:12px 15px;border:1px solid #b6c6b0;border-radius:11px;box-shadow:0 3px 0 #c1cfb8}
.r31-dir-button strong{font-size:19px;line-height:1.2;font-weight:500;letter-spacing:-.025em}
.r31-dir-button .r31-dir-arrow{width:28px;height:28px;font-size:21px}
.r31-dir-button-ege{background:var(--r31-dir-deep);color:var(--r31-dir-cream)!important;border-color:var(--r31-dir-deep)}
.r31-dir-button-oge{background:var(--r31-dir-apricot);border-color:#d69c77}
.r31-dir-button-school{background:#fffef9}
.r31-dir-button-olympiad{background:var(--r31-dir-mint)}
.r31-dir-button-school strong{font-size:17px}
.r31-dir-list{padding:25px 26px 26px;border:1px solid #fff5;border-radius:21px;background:var(--r31-dir-cream);box-shadow:8px 9px 0 #88a88c}
.r31-dir-list .r31-dir-title{font-size:31px;margin-bottom:20px}
.r31-dir-exam-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.r31-dir-exam{display:flex;flex-direction:column;justify-content:space-between;gap:28px;min-height:173px;padding:18px;border-radius:13px}
.r31-dir-exam-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.r31-dir-exam strong{font-size:46px;font-weight:500;line-height:1;letter-spacing:-.045em}
.r31-dir-exam-ege{background:var(--r31-dir-deep);color:var(--r31-dir-cream)!important}
.r31-dir-exam-oge{background:var(--r31-dir-apricot)}
.r31-dir-chip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.r31-dir-chip{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:65px;padding:12px;border:1px solid #b7c7b0;border-radius:12px;background:#e7eddf}
.r31-dir-chip strong{font-size:14px;line-height:1.25;font-weight:500;letter-spacing:-.015em}
.r31-dir-chip .r31-dir-arrow{width:23px;height:23px;font-size:17px}
@media(hover:hover){
  .r31-dir-tile:hover{transform:translateY(-3px);box-shadow:0 8px 0 #12392c40}
  .r31-dir-button:hover{transform:translateX(3px);box-shadow:-3px 3px 0 #c1cfb8}
  .r31-dir-exam:hover{transform:translateY(-3px);box-shadow:0 5px 0 #ced7c4}
  .r31-dir-chip:hover{background:#dbe5d2}
}
@media(max-width:900px){
  .r31-dir-variants{max-width:430px}
  .r31-dir-variants .r31-dir-title{font-size:25px;margin-bottom:18px}
  .r31-dir-tile-grid{gap:11px}
  .r31-dir-tile{min-height:136px;padding:15px;gap:20px;border-radius:14px}
  .r31-dir-tile-name{font-size:29px}
  .r31-dir-tile-school .r31-dir-tile-name,.r31-dir-tile-olympiad .r31-dir-tile-name{font-size:19px}
  .r31-dir-arrow{width:27px;height:27px;font-size:21px}
  .r31-dir-buttons,.r31-dir-list{padding:23px 20px 25px;box-shadow:6px 7px 0 #88a88c}
  .r31-dir-button{gap:10px;padding:12px;grid-template-columns:24px minmax(0,1fr) 26px}
  .r31-dir-button strong{font-size:18px}
  .r31-dir-button-school strong{font-size:15px}
  .r31-dir-button .r31-dir-arrow{width:26px;height:26px;font-size:19px}
  .r31-dir-exam{padding:15px;min-height:158px}
  .r31-dir-exam strong{font-size:39px}
  .r31-dir-chip{padding:10px;gap:6px;min-height:65px}
  .r31-dir-chip strong{font-size:12px}
  .r31-dir-chip .r31-dir-arrow{width:20px;height:20px;font-size:16px}
}
@media(max-width:650px){
  .r31-dir-variants{width:100%;max-width:460px;margin:0 auto}
  .r31-dir-variants .r31-dir-title{font-size:28px;margin-bottom:19px}
  .r31-dir-tile-grid{gap:12px}
  .r31-dir-tile{min-height:145px;padding:17px;border-radius:15px}
  .r31-dir-tile-name{font-size:32px}
  .r31-dir-tile-school .r31-dir-tile-name,.r31-dir-tile-olympiad .r31-dir-tile-name{font-size:21px}
  .r31-dir-buttons,.r31-dir-list{padding:23px 21px 25px;margin-right:5px;max-width:calc(100% - 5px);border-radius:18px}
  .r31-dir-button{gap:12px;min-height:62px;grid-template-columns:25px minmax(0,1fr) 27px}
  .r31-dir-button strong{font-size:19px}
  .r31-dir-button-school strong{font-size:16px}
  .r31-dir-exam{padding:16px;min-height:165px}
  .r31-dir-exam strong{font-size:41px}
  .r31-dir-chip{padding:11px;min-height:66px}
  .r31-dir-chip strong{font-size:13px}
}
@media(max-width:370px){
  .r31-dir-variants .r31-dir-title{font-size:25px}
  .r31-dir-tile{min-height:137px;padding:14px}
  .r31-dir-tile-school .r31-dir-tile-name,.r31-dir-tile-olympiad .r31-dir-tile-name{font-size:18px}
  .r31-dir-buttons,.r31-dir-list{padding:20px 15px 22px}
  .r31-dir-button{padding:11px;gap:9px}
  .r31-dir-button-school strong{font-size:15px}
  .r31-dir-exam{padding:13px;min-height:151px}
  .r31-dir-exam strong{font-size:37px}
  .r31-dir-chip-grid{gap:9px}
  .r31-dir-chip{padding:9px;gap:5px}
  .r31-dir-chip strong{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.r31-dir-variants a{transition:none}}

/* Compact homework previews; the host controls layout buttons and dialogs. */
.hp-practice{background:#f0ede3;border-bottom:1px solid var(--line);padding-top:64px;padding-bottom:64px}
.hp-practice .hp-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:22px}
.hp-practice .hp-section-heading h2{font:500 34px/1.18 Onest,Arial,sans-serif;letter-spacing:-.04em;max-width:660px;margin:0}
.hp-practice .hp-section-heading>p{max-width:360px;font-size:13px;line-height:1.7;color:var(--muted);margin:0}
.hp-practice .hp-layout-controls{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:17px}
.hp-layout-controls button{min-height:36px;border:1px solid #acbaad;border-radius:7px;padding:7px 12px;background:transparent;color:#344d41;font:400 12px/1.4 Onest,Arial,sans-serif;cursor:pointer}
.hp-layout-controls button[aria-pressed=true]{background:#2f6257;color:#fbfaf6;border-color:#2f6257}
.hp-practice .hp-subject-tabs{display:flex;gap:20px;margin-bottom:12px;align-items:center}
.hp-subject-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;color:#617166;padding:6px 0;min-height:36px;font:500 13px/1.4 Onest,Arial,sans-serif;cursor:pointer}
.hp-subject-tabs button[aria-selected=true]{border-bottom-color:#2f6257;color:#214a41}
.hp-practice [hidden]{display:none!important}
.hp-practice .hp-card{background:#fbfaf6;border:1px solid #b8c4b8;border-radius:14px;overflow:hidden;color:#17221e;font:400 14px/1.7 Onest,Arial,sans-serif}
.hp-practice .hp-app-header{display:flex;align-items:center;gap:20px;padding:10px 21px;border-bottom:1px solid #d1d8ce;background:#eef2e8;min-height:44px;font-size:11px;color:#536459}
.hp-app-brand{color:#214a41;font-size:14px;letter-spacing:-.04em;white-space:nowrap}
.hp-app-brand strong{font-weight:500}
.hp-app-avatar{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#d6e4d2;color:#214a41;margin-left:auto;font-size:10px}
.hp-practice .hp-card-body{padding:18px 24px 9px}
.hp-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}
.hp-practice .hp-context,.hp-dialog .hp-context{font-size:10px;line-height:1.6;color:#617166;margin:0 0 4px}
.hp-practice .hp-card-heading h3{font:500 21px/1.3 Onest,Arial,sans-serif;letter-spacing:-.025em;margin:0}
.hp-score{display:inline-flex;gap:5px;align-items:baseline;white-space:nowrap;font:500 25px/1.2 Onest,Arial,sans-serif;color:#214a41}
.hp-score>span{font-size:15px;font-weight:400;color:#617166}
.hp-practice .hp-task-summary{font-size:13px;line-height:1.65;margin:0 0 11px}
.hp-practice .hp-task-summary .r32-formula{display:inline-block;margin:0 0 0 18px;font-size:19px;vertical-align:middle}
.hp-practice .hp-task-summary math{font-size:20px}
.hp-practice .hp-label{font-size:10px;line-height:1.5;font-weight:500;color:#627165;margin:0 0 5px}
.hp-practice .hp-answer-preview{padding:10px 14px;border-radius:8px;background:#eff2e9;margin:0 0 13px;font-size:13px;line-height:1.65}
.hp-practice .hp-answer-preview p{margin:0}
.hp-practice .hp-answer-preview p+p{margin-top:4px}
.hp-practice .hp-answer-preview .hp-math{font-family:Georgia,'Times New Roman',serif;font-size:20px;font-style:italic;line-height:1.5}
.hp-practice .hp-comment h4,.hp-dialog .hp-comment h3{font:500 14px/1.5 Onest,Arial,sans-serif;color:#214a41;margin:0 0 7px}
.hp-practice .hp-comment>p,.hp-dialog .hp-comment>p{font-size:13px;line-height:1.7;margin:0}
.hp-practice .hp-summary-card .hp-comment{margin-bottom:12px}
.hp-practice .hp-disclosures{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.hp-practice .hp-disclosure{border-top:1px solid #c9d4c4;margin:0}
.hp-practice .hp-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;min-height:43px;list-style:none;font:500 12px/1.5 Onest,Arial,sans-serif;color:#214a41;cursor:pointer}
.hp-practice .hp-disclosure>summary::-webkit-details-marker{display:none}
.hp-practice .hp-disclosure>summary:after{content:'+';font-size:20px;font-weight:400;flex:none}
.hp-practice .hp-disclosure[open]>summary:after{content:'−'}
.hp-practice .hp-disclosure-body{font-size:13px;line-height:1.75;padding:2px 0 15px;overflow-wrap:anywhere}
.hp-practice .hp-disclosure-body h4{font-size:12px;font-weight:500;margin:14px 0 5px;color:#214a41}
.hp-practice .hp-disclosure-body h4:first-child{margin-top:0}
.hp-practice .hp-disclosure-body p,.hp-dialog .hp-full-section p{margin:0 0 9px}
.hp-practice .hp-original-task .r32-task-passage,.hp-dialog .hp-original-task .r32-task-passage{display:block;margin:9px 0 0;padding:10px 12px;background:#f0f3eb;border-radius:7px}
.hp-practice .hp-original-answer .r32-step-label,.hp-dialog .hp-original-answer .r32-step-label{display:block;font-size:11px;color:#617166;margin-bottom:4px}
.hp-practice .hp-original-answer .r32-math-line,.hp-practice .hp-original-solution .r32-math-line,.hp-dialog .r32-math-line{font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.65}
.hp-practice .hp-disclosure-body .r32-formula,.hp-dialog .r32-formula{display:block;font-size:21px;margin:12px 0;max-width:100%;overflow-x:auto;overflow-y:hidden;padding-block:2px}
.hp-practice .hp-original-solution .r32-solution-list,.hp-dialog .r32-solution-list{list-style:disc;padding-left:20px;margin:10px 0}
.hp-practice .hp-original-solution .r32-solution-list li,.hp-dialog .r32-solution-list li{padding:0;margin:6px 0}
.hp-practice .hp-criteria,.hp-dialog .hp-criteria{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:0;border-top:1px solid #d4ddce;font-size:11px}
.hp-practice .hp-criteria li,.hp-dialog .hp-criteria li{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:6px 0;border-bottom:1px solid #dce3d7;line-height:1.55;margin:0}
.hp-criteria strong{font-weight:500;white-space:nowrap}
.hp-practice .hp-split-card .hp-card-body{padding-bottom:0}
.hp-practice .hp-split-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:27px}
.hp-practice .hp-work-column,.hp-practice .hp-feedback-column{min-width:0}
.hp-practice .hp-work-column>h4{font:500 14px/1.5 Onest,Arial,sans-serif;margin:0 0 8px;color:#214a41}
.hp-practice .hp-feedback-column{padding-left:25px;border-left:1px solid #d2dccb}
.hp-practice .hp-feedback-column .hp-comment{margin-bottom:14px}
.hp-practice .hp-split-card .hp-task-summary .r32-formula{display:block;margin:9px 0}
.hp-practice .hp-teaser-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;margin:5px 0 15px}
.hp-practice .hp-teaser-grid .hp-answer-preview{margin-bottom:0}
.hp-practice .hp-teaser-grid .hp-comment{padding-left:24px;border-left:1px solid #d2dccb}
.hp-practice .hp-teaser-card .hp-card-body{padding-bottom:20px}
.hp-practice .hp-open-work,.hp-dialog .hp-open-work{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:#2f6257;color:#fbfaf6;border:1px solid #2f6257;border-radius:8px;min-height:40px;padding:10px 15px;font:500 12px/1.45 Onest,Arial,sans-serif;cursor:pointer}
.hp-practice button:focus-visible,.hp-practice summary:focus-visible,.hp-dialog button:focus-visible{outline:2px solid #214a41;outline-offset:4px}
.hp-dialog{box-sizing:border-box;width:min(760px,calc(100vw - 32px));max-width:none;max-height:90vh;max-height:90dvh;margin:auto;padding:0;border:1px solid #b6c4b4;border-radius:16px;background:#fbfaf6;color:#17221e;font:400 14px/1.75 Onest,Arial,sans-serif;overflow-y:auto;overscroll-behavior:contain}
.hp-dialog::backdrop{background:#172b2469;backdrop-filter:blur(2px)}
.hp-dialog .hp-dialog-top{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:22px;background:#fbfaf6;border-bottom:1px solid #d0d8ca;padding:18px 25px}
.hp-dialog .hp-dialog-top h2{font:500 24px/1.25 Onest,Arial,sans-serif;letter-spacing:-.025em;margin:0}
.hp-dialog .hp-dialog-close{display:grid;place-items:center;flex:none;width:38px;height:38px;border:1px solid #c9d3c3;border-radius:50%;font-size:25px;line-height:1;background:transparent;color:#214a41;cursor:pointer}
.hp-dialog .hp-dialog-content{padding:20px 27px}
.hp-dialog .hp-full-status{display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:12px;color:#536459;margin-bottom:20px;padding-bottom:17px;border-bottom:1px solid #d4ddce}
.hp-dialog .hp-full-section{margin:0 0 21px;overflow-wrap:anywhere}
.hp-dialog .hp-full-section h3{font:500 16px/1.5 Onest,Arial,sans-serif;margin:0 0 8px;color:#214a41}
.hp-dialog .hp-original-answer{padding:13px 16px;border-radius:8px;background:#eff2e9}
.hp-dialog .hp-criteria{font-size:12px}
.hp-dialog .hp-full-section.hp-comment{border-top:1px solid #d0d8ca;padding-top:17px}
.hp-dialog .hp-comment>p{font-size:14px}
.hp-dialog .hp-dialog-footer{padding:0 27px 23px}
@media(max-width:900px){
 .hp-practice .hp-section-heading{display:block;margin-bottom:18px}.hp-practice .hp-section-heading h2{max-width:620px;font-size:31px}.hp-practice .hp-section-heading>p{max-width:640px;margin-top:11px}
 .hp-practice .hp-card-body{padding:17px 20px 7px}.hp-practice .hp-split-grid{gap:19px}.hp-practice .hp-feedback-column{padding-left:18px}.hp-practice .hp-teaser-grid{gap:20px}.hp-practice .hp-teaser-grid .hp-comment{padding-left:18px}
}
@media(max-width:650px){
 .hp-practice{padding-top:42px;padding-bottom:42px}.hp-practice .hp-section-heading h2{font-size:27px;line-height:1.2}.hp-practice .hp-section-heading>p{font-size:12px;line-height:1.65;margin-top:9px}
 .hp-practice .hp-layout-controls{gap:5px;margin-bottom:12px}.hp-layout-controls button{font-size:10px;padding:6px 9px;min-height:35px}.hp-practice .hp-subject-tabs{gap:19px;margin-bottom:10px}.hp-subject-tabs button{font-size:12px;min-height:34px}
 .hp-practice .hp-app-header{padding:9px 14px;gap:12px;font-size:9px;min-height:39px}.hp-app-brand{font-size:13px}.hp-app-avatar{width:21px;height:21px}.hp-practice .hp-card{border-radius:12px}.hp-practice .hp-card-body{padding:14px 16px 5px}
 .hp-practice .hp-card-heading h3{font-size:18px}.hp-card-heading{gap:12px;margin-bottom:11px}.hp-score{font-size:23px}.hp-score>span{font-size:13px}.hp-practice .hp-context{font-size:9px}
 .hp-practice .hp-task-summary{font-size:12px;line-height:1.6}.hp-practice .hp-task-summary .r32-formula{margin:8px 0 0;display:block;font-size:19px}.hp-practice .hp-answer-preview{font-size:12px;padding:9px 11px;margin-bottom:11px}.hp-practice .hp-answer-preview .hp-math{font-size:18px}.hp-practice .hp-comment>p{font-size:12px;line-height:1.7}.hp-practice .hp-comment h4{font-size:13px;margin-bottom:6px}
 .hp-practice .hp-disclosures{grid-template-columns:1fr;gap:0}.hp-practice .hp-disclosure>summary{font-size:11px;min-height:40px;padding:9px 0}.hp-practice .hp-disclosure-body{font-size:12px}.hp-practice .hp-criteria{font-size:10px}
 .hp-practice .hp-split-grid{grid-template-columns:1fr;gap:11px}.hp-practice .hp-feedback-column{border-left:0;padding-left:0;border-top:1px solid #d2dccb;padding-top:12px}.hp-practice .hp-work-column>h4{font-size:13px}.hp-practice .hp-feedback-column .hp-comment{margin-bottom:11px}.hp-practice .hp-split-card .hp-task-summary .r32-formula{display:inline-block;margin:0 0 0 10px}
 .hp-practice .hp-teaser-grid{grid-template-columns:1fr;gap:13px;margin-bottom:15px}.hp-practice .hp-teaser-grid .hp-comment{padding-left:0;border-left:0}.hp-practice .hp-teaser-card .hp-card-body{padding-bottom:16px}.hp-practice .hp-open-work{font-size:11px;gap:16px;min-height:40px}
 .hp-dialog{width:calc(100vw - 20px);max-height:94vh;max-height:94dvh;border-radius:12px}.hp-dialog .hp-dialog-top{padding:14px 16px;gap:12px}.hp-dialog .hp-dialog-top h2{font-size:21px}.hp-dialog .hp-context{font-size:9px}.hp-dialog .hp-dialog-close{width:34px;height:34px;font-size:23px}.hp-dialog .hp-dialog-content{padding:17px}.hp-dialog .hp-full-section{font-size:13px}.hp-dialog .hp-comment>p{font-size:13px}.hp-dialog .hp-full-status{font-size:11px}.hp-dialog .hp-dialog-footer{padding:0 17px 19px}.hp-dialog .hp-criteria{font-size:11px}
}
@media(max-width:370px){.hp-practice .hp-app-header>span:nth-child(2){display:none}.hp-practice .hp-card-body{padding-inline:12px}.hp-practice .hp-layout-controls button{font-size:9px;padding-inline:7px}.hp-practice .hp-card-heading h3{font-size:17px}.hp-practice .hp-split-card .hp-task-summary .r32-formula{display:block;margin:8px 0 0}}

.home-hero{min-height:calc(100svh - var(--top-chrome,76px))}
.home-hero-inner{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:62px}
.r31-variant-tools{position:fixed;left:18px;bottom:18px;z-index:70;font-family:Onest,Arial,sans-serif;font-size:12px;color:#193a2d}
.r31-variant-tools>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;min-height:44px;padding:11px 17px;background:#fffcf5;border:1px solid #a4b6a4;border-radius:11px;box-shadow:0 4px 20px #15352b18;cursor:pointer;font-weight:500}
.r31-variant-tools>summary::-webkit-details-marker{display:none}
.r31-variant-tools>summary>span{font-size:19px;line-height:1}
.r31-variant-panel{position:absolute;left:0;bottom:56px;width:330px;max-width:calc(100vw - 36px);background:#fffcf5;border:1px solid #b8c6b5;border-radius:16px;box-shadow:0 12px 45px #173e2e26;padding:19px}
.r31-variant-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px;font-size:15px}
.r31-variant-heading strong{font-weight:500}
.r31-variant-heading button{width:32px;height:32px;border:0;background:#e4ebdc;border-radius:7px;font-size:23px;line-height:1}
.r31-variant-panel>label{display:block;font-size:11px;color:#52605a;margin-top:16px;margin-bottom:7px}
.r31-control-row{display:flex;gap:7px}
.r31-control-row select{width:0;flex:1;min-width:0;min-height:42px;font:inherit;font-size:12px;padding:9px 7px;border:1px solid #b4c2ae;border-radius:7px;background:#fffcf5;color:#193a2d}
.r31-control-row>button{width:40px;border:0;border-radius:7px;background:#145445;color:#fffcf5;font-size:21px}
.r31-control-row button:hover{background:#0d3c32}
.r31-variant-tools summary:focus-visible,.r31-variant-tools button:focus-visible,.r31-variant-tools select:focus-visible{outline:3px solid #bc754b;outline-offset:3px}
.teacher-achievements{margin-block:22px 18px}
.home-teacher-body .teacher-achievements strong{font-size:26px;line-height:1.35;letter-spacing:-.025em}
.home-teacher-body .teacher-achievements span{font-size:13px;line-height:1.75}
.home-teacher-body>.text-link{margin-top:auto;padding-top:8px}
.teacher-card-full .teacher-achievements{margin-top:22px;margin-bottom:16px}
.teacher-card-full .teacher-body>.text-link{font-size:13px}
.hp-practice .hp-task-summary,.hp-practice .hp-answer-preview,.hp-practice .hp-comment>p{font-size:14px}

/* The same catalogue contents in three narrower layouts. */
#catalog-courses{width:min(1040px,calc(100% - 64px))}
.r31-catalog-results{min-width:0}
#catalog-courses .filter-panel{display:grid;grid-template-columns:minmax(0,1fr) 170px 132px;gap:18px;padding:19px}
#catalog-courses .filter-chips{gap:5px;flex-wrap:wrap}
#catalog-courses .filter-chips .chip{font-size:11px;padding:8px 11px;white-space:normal;line-height:1.5}
#catalog-courses .catalog-caption{gap:15px;flex-wrap:wrap}
#catalog-courses .included-inline{flex:1;gap:8px 14px;font-size:12px}
#catalog-courses .course-list .course-card-horizontal{grid-template-columns:148px minmax(0,1fr) 212px;gap:22px;padding:21px;border-radius:18px}
#catalog-courses .course-list .course-illustration{grid-column:auto;grid-row:auto;min-height:190px;height:auto;align-self:stretch}
#catalog-courses .course-list .course-illustration img{width:100%;max-height:235px;height:auto}
#catalog-courses .course-list .course-card-main{min-width:0;padding:2px 0}
#catalog-courses .course-list .course-card :is(h2,h3){font-size:26px;line-height:1.2}
#catalog-courses .course-list .course-card-purchase{grid-column:auto;grid-row:auto;border-left:1px solid var(--line);border-top:0;padding:0 0 0 21px;margin:0;display:flex;flex-direction:column;justify-content:center}
#catalog-courses .course-list .card-facts{grid-template-columns:1fr 1fr;gap:13px 16px;margin-top:18px}
#catalog-courses .course-list .card-facts dd{font-size:12px;line-height:1.65}
#catalog-courses .course-list .card-facts dt{font-size:10px}
#catalog-courses .course-list .course-desc{font-size:13px;line-height:1.7}
#catalog-courses .course-list .r30-card-caption{margin-top:14px;font-size:9px}
#catalog-courses .course-list .card-teacher{font-size:12px;margin-top:18px;margin-bottom:0}
#catalog-courses .course-list .card-price strong{font-size:28px}
#catalog-courses .course-list .card-price .unit{font-size:11px!important;white-space:normal;margin-left:0}
#catalog-courses .course-list .card-price p{font-size:12px!important;line-height:1.7;margin:10px 0 16px}
#catalog-courses .course-list .btn{font-size:12px;padding:11px 13px;min-height:45px}
#catalog-courses .course-list .card-more{font-size:11px}

#catalog-courses[data-catalog-layout=footer]{width:min(990px,calc(100% - 64px))}
#catalog-courses[data-catalog-layout=footer] .course-card-horizontal{grid-template-columns:165px minmax(0,1fr);column-gap:25px;row-gap:20px;padding:23px}
#catalog-courses[data-catalog-layout=footer] .course-card-main{padding-block:0}
#catalog-courses[data-catalog-layout=footer] .course-card-purchase{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:18px 0 0;display:block}
#catalog-courses[data-catalog-layout=footer] .card-price{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(170px,1fr) minmax(155px,.9fr);gap:20px;align-items:center}
#catalog-courses[data-catalog-layout=footer] .card-price p{margin:0!important}
#catalog-courses[data-catalog-layout=footer] .card-price .price-line{display:block}
#catalog-courses[data-catalog-layout=footer] .card-price .unit{display:block;margin-top:3px}
#catalog-courses[data-catalog-layout=footer] .card-more{justify-content:flex-end;min-height:30px;margin-top:8px}
#catalog-courses[data-catalog-layout=footer] .card-facts{grid-template-columns:1fr 1fr;gap:12px 22px}

#catalog-courses[data-catalog-layout=sidebar]{width:min(1180px,calc(100% - 64px));display:grid;grid-template-columns:208px minmax(0,1fr);gap:26px;align-items:start}
#catalog-courses[data-catalog-layout=sidebar]>.filter-panel{display:grid;grid-template-columns:1fr;gap:22px;position:sticky;top:calc(var(--header) + 22px);padding:20px 15px}
#catalog-courses[data-catalog-layout=sidebar] .direction-filter{min-width:0}
#catalog-courses[data-catalog-layout=sidebar] .filter-chips{display:flex;flex-direction:column;gap:5px}
#catalog-courses[data-catalog-layout=sidebar] .filter-chips .chip{width:100%;text-align:left;padding-inline:12px;font-size:12px;flex:auto}
#catalog-courses[data-catalog-layout=sidebar] .catalog-caption{margin-top:0}
#catalog-courses[data-catalog-layout=sidebar] .course-card-horizontal{grid-template-columns:125px minmax(0,1fr);gap:18px;padding:21px}
#catalog-courses[data-catalog-layout=sidebar] .course-card-purchase{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:16px 0 0;display:block}
#catalog-courses[data-catalog-layout=sidebar] .card-price{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(150px,1fr) minmax(145px,.9fr);gap:15px;align-items:center}
#catalog-courses[data-catalog-layout=sidebar] .card-price p{margin:0!important}
#catalog-courses[data-catalog-layout=sidebar] .card-price .price-line{display:block}
#catalog-courses[data-catalog-layout=sidebar] .card-price .unit{display:block}
#catalog-courses[data-catalog-layout=sidebar] .card-more{justify-content:flex-end;min-height:30px;margin-top:8px}

@media(max-width:1100px){
 .home-hero-inner{gap:38px}
 #catalog-courses .filter-panel{grid-template-columns:minmax(0,1fr) 150px 112px;gap:13px}
 #catalog-courses .course-list .course-card-horizontal{grid-template-columns:125px minmax(0,1fr) 195px;gap:18px;padding:20px}
 #catalog-courses .course-list .course-card-purchase{padding-left:18px}
 #catalog-courses[data-catalog-layout=footer] .course-card-horizontal{grid-template-columns:145px minmax(0,1fr)}
 #catalog-courses[data-catalog-layout=footer] .course-card-purchase,#catalog-courses[data-catalog-layout=sidebar] .course-card-purchase{padding:17px 0 0}
 #catalog-courses[data-catalog-layout=sidebar]{grid-template-columns:190px minmax(0,1fr);gap:21px}
 #catalog-courses[data-catalog-layout=sidebar] .course-card-horizontal{grid-template-columns:105px minmax(0,1fr);gap:17px;padding:19px}
 #catalog-courses[data-catalog-layout=sidebar] .card-price{grid-template-columns:1fr 1fr;gap:13px}
 #catalog-courses[data-catalog-layout=sidebar] .card-price>a{grid-column:1/-1}
 #catalog-courses[data-catalog-layout=sidebar] .course-card :is(h2,h3){font-size:24px}
}
@media(max-width:900px){
 .home-hero-inner{gap:26px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 #catalog-courses .filter-panel{grid-template-columns:1fr 1fr;gap:16px}
 #catalog-courses .direction-filter{grid-column:1/-1}
 #catalog-courses .course-list .course-card-horizontal{grid-template-columns:128px minmax(0,1fr);gap:20px}
 #catalog-courses .course-list .course-card-purchase{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:17px 0 0;display:block}
 #catalog-courses .course-list .card-price{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center}
 #catalog-courses .course-list .card-price>a{grid-column:1/-1}
 #catalog-courses .course-list .card-price p{margin:0!important}
 #catalog-courses .course-list .card-more{justify-content:flex-end;min-height:30px;margin-top:8px}
 #catalog-courses[data-catalog-layout=sidebar]{display:block;width:min(1040px,calc(100% - 64px))}
 #catalog-courses[data-catalog-layout=sidebar]>.filter-panel{position:static;grid-template-columns:1fr 1fr;padding:19px;gap:16px}
 #catalog-courses[data-catalog-layout=sidebar] .filter-chips{flex-direction:row;flex-wrap:wrap;gap:5px}
 #catalog-courses[data-catalog-layout=sidebar] .filter-chips .chip{width:auto;flex:none;text-align:center;font-size:11px;padding:8px 11px}
 #catalog-courses[data-catalog-layout=sidebar] .catalog-caption{margin-top:20px}
 #catalog-courses[data-catalog-layout=sidebar] .course-card-horizontal{grid-template-columns:128px minmax(0,1fr);padding:20px;gap:20px}
}
@media(max-width:650px){
 .home-hero{min-height:0}.home-hero-inner{grid-template-columns:minmax(0,1fr);gap:32px}
 #catalog-courses,#catalog-courses[data-catalog-layout=footer],#catalog-courses[data-catalog-layout=sidebar]{width:calc(100% - 36px)}
 #catalog-courses .filter-panel,#catalog-courses[data-catalog-layout=sidebar]>.filter-panel{padding:15px;gap:14px 10px}
 #catalog-courses .filter-chips .chip{font-size:11px;min-height:40px}
 #catalog-courses .course-list .course-card-horizontal,#catalog-courses[data-catalog-layout=footer] .course-card-horizontal,#catalog-courses[data-catalog-layout=sidebar] .course-card-horizontal{display:grid;grid-template-columns:minmax(0,1fr);padding:0;gap:0;overflow:hidden}
 #catalog-courses .course-list .course-illustration{grid-column:auto;grid-row:auto;height:150px;min-height:0;border-radius:0}
 #catalog-courses .course-list .course-illustration img{height:150px;width:auto;max-width:100%;max-height:150px}
 #catalog-courses .course-list .course-card-main{padding:23px 21px}
 #catalog-courses .course-list .course-card :is(h2,h3){font-size:26px}
 #catalog-courses .course-list .course-card-purchase,#catalog-courses[data-catalog-layout=footer] .course-card-purchase,#catalog-courses[data-catalog-layout=sidebar] .course-card-purchase{margin:0 21px;padding:18px 0 15px;grid-column:1/-1}
 #catalog-courses .course-list .card-facts{gap:13px 15px}
 #catalog-courses .course-list .card-price,#catalog-courses[data-catalog-layout=footer] .card-price,#catalog-courses[data-catalog-layout=sidebar] .card-price{grid-template-columns:1fr;gap:12px}
 #catalog-courses .course-list .card-price .price-line{display:flex;gap:8px}
 #catalog-courses .course-list .card-price .unit{display:inline-block;margin:0}
 #catalog-courses .course-list .card-price p{font-size:12px!important}
 #catalog-courses .course-list .card-price>a{grid-column:auto;font-size:14px}
 #catalog-courses .course-list .card-more{justify-content:center;font-size:12px}
 .r31-variant-tools{left:12px;bottom:12px}.r31-variant-panel{max-width:calc(100vw - 24px);padding:16px}.r31-control-row select{font-size:16px}.r31-variant-tools>summary{font-size:11px;padding:9px 13px;min-height:40px}
 .hp-practice .hp-task-summary,.hp-practice .hp-answer-preview,.hp-practice .hp-comment>p{font-size:13px}
}
@media print{.r31-variant-tools{display:none!important}}

/* r32-design */
/* R32: reduce card height while preserving the full catalogue width. */
#catalog-courses[data-catalog-layout]{display:block;width:min(1180px,calc(100% - 64px));grid-template-columns:none;gap:0}
#catalog-courses[data-catalog-layout]>.filter-panel{display:grid;position:static;grid-template-columns:minmax(0,1fr) 180px 146px;gap:18px;padding:18px 20px;align-items:end}
#catalog-courses[data-catalog-layout] .filter-chips{display:flex;flex-direction:row;flex-wrap:wrap;gap:6px}
#catalog-courses[data-catalog-layout] .filter-chips .chip{width:auto;flex:none;text-align:center;font-size:14px;line-height:1.35;padding:9px 12px;min-height:40px}
#catalog-courses[data-catalog-layout] .catalog-caption{margin:15px 0;min-height:30px}
#catalog-courses[data-catalog-layout] .course-list{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
#catalog-courses[data-catalog-layout] .course-list .course-card-horizontal{
 display:grid;grid-template-columns:116px minmax(0,1fr) 230px;
 grid-template-areas:"image top purchase" "image title purchase" "image description purchase" "image facts purchase" "image teacher purchase";
 grid-template-rows:auto auto auto auto auto;align-items:start;gap:7px 20px;padding:18px 20px;border-radius:17px;overflow:hidden;
}
#catalog-courses[data-catalog-layout] .course-list .course-card-main{display:contents;padding:0}
#catalog-courses[data-catalog-layout] .course-list .course-illustration{grid-area:image;align-self:center;height:116px;min-height:0;border-radius:12px;width:116px}
#catalog-courses[data-catalog-layout] .course-list .course-illustration img{display:block;width:100%;height:100%;max-height:none;object-fit:contain}
#catalog-courses[data-catalog-layout] .course-list .course-card-top{grid-area:top;justify-content:flex-start;gap:8px 12px;margin:0;min-width:0;flex-wrap:wrap}
#catalog-courses[data-catalog-layout] .course-list .category-badge{font-size:12px;line-height:1.35;padding:5px 9px}
#catalog-courses[data-catalog-layout] .course-list .class-label{font-size:14px}
#catalog-courses[data-catalog-layout] .course-list .course-card :is(h2,h3){grid-area:title;font-size:25px;line-height:1.18;min-height:0;max-width:none;margin:0;text-wrap:pretty}
#catalog-courses[data-catalog-layout] .course-list .course-desc{grid-area:description;margin:0;font-size:14px;line-height:1.5;max-width:none}
#catalog-courses[data-catalog-layout] .course-list .card-facts{grid-area:facts;display:grid;grid-template-columns:1.1fr 1.03fr 1.16fr .88fr;gap:9px 14px;margin:6px 0 0;padding:0}
#catalog-courses[data-catalog-layout] .course-list .card-facts dt{font-size:12px;line-height:1.4;margin:0 0 3px;color:var(--muted)}
#catalog-courses[data-catalog-layout] .course-list .card-facts dd{font-size:14px;line-height:1.45;font-weight:400;margin:0}
#catalog-courses[data-catalog-layout] .course-list .card-teacher{grid-area:teacher;font-size:14px;line-height:1.4;min-height:32px;margin:2px 0 0;gap:7px}
#catalog-courses[data-catalog-layout] .course-list .teacher-dot{width:25px;height:25px;flex:0 0 25px}
#catalog-courses[data-catalog-layout] .course-list .course-card-purchase{grid-area:purchase;align-self:stretch;display:flex;flex-direction:column;justify-content:center;border-top:0;border-left:1px solid var(--line);padding:0 0 0 20px;margin:0;min-width:0}
#catalog-courses[data-catalog-layout] .course-list .card-price{display:block;border:0;padding:0;margin:0}
#catalog-courses[data-catalog-layout] .course-list .card-price .price-line{display:flex;align-items:baseline;gap:5px 7px;flex-wrap:wrap}
#catalog-courses[data-catalog-layout] .course-list .card-price strong{font-size:28px;line-height:1.2}
#catalog-courses[data-catalog-layout] .course-list .card-price .unit{display:inline;font-size:14px!important;line-height:1.4;margin:0;white-space:normal}
#catalog-courses[data-catalog-layout] .course-list .card-price p{font-size:14px!important;line-height:1.45;margin:7px 0 12px!important}
#catalog-courses[data-catalog-layout] .course-list .card-price>.btn{display:flex;grid-column:auto;font-size:14px;min-height:44px;padding:10px 12px}
#catalog-courses[data-catalog-layout] .course-list .card-more{justify-content:center;font-size:14px;line-height:1.4;min-height:32px;margin:5px 0 0;padding:4px 0}

/* Lower facts strip: information can be scanned across the full card width. */
#catalog-courses[data-catalog-layout=footer] .course-list .course-card-horizontal{
 grid-template-columns:116px minmax(0,1fr) 230px;
 grid-template-areas:"image top purchase" "image title purchase" "image description purchase" "image teacher purchase" "facts facts facts";
}
#catalog-courses[data-catalog-layout=footer] .course-list .card-facts{grid-template-columns:1fr 1fr 1.13fr .85fr;border-top:1px solid var(--line);padding-top:12px;margin:5px 0 0;gap:8px 22px}
#catalog-courses[data-catalog-layout=footer] .course-list .card-facts dd{line-height:1.4}

/* The former sidebar option is now a full-width card without an illustration. */
#catalog-courses[data-catalog-layout=sidebar] .course-list .course-card-horizontal{
 grid-template-columns:minmax(0,1fr) 250px;
 grid-template-areas:"top purchase" "title purchase" "description purchase" "facts purchase" "teacher purchase";
}
#catalog-courses[data-catalog-layout=sidebar] .course-list .course-illustration{display:none}
#catalog-courses[data-catalog-layout=sidebar] .course-list .card-facts{grid-template-columns:1.08fr 1fr 1.12fr .85fr;gap:8px 18px}

@media(max-width:1100px){
 #catalog-courses[data-catalog-layout]>.filter-panel{grid-template-columns:minmax(0,1fr) 165px 134px;gap:13px}
 #catalog-courses[data-catalog-layout] .course-list .course-card-horizontal{grid-template-columns:88px minmax(0,1fr) 220px;column-gap:17px;padding:18px}
 #catalog-courses[data-catalog-layout] .course-list .course-illustration{height:88px;width:88px}
 #catalog-courses[data-catalog-layout] .course-list .course-card-purchase{padding-left:17px}
 #catalog-courses[data-catalog-layout] .course-list .card-facts{grid-template-columns:1fr 1fr;gap:8px 16px}
 #catalog-courses[data-catalog-layout=footer] .course-list .card-facts{grid-template-columns:1fr 1fr 1fr 1fr}
 #catalog-courses[data-catalog-layout=sidebar] .course-list .course-card-horizontal{grid-template-columns:minmax(0,1fr) 230px}
 #catalog-courses[data-catalog-layout=sidebar] .course-list .card-facts{grid-template-columns:1fr 1fr 1fr 1fr}
}
@media(max-width:900px){
 #catalog-courses[data-catalog-layout]>.filter-panel{grid-template-columns:1fr 1fr}
 #catalog-courses[data-catalog-layout] .direction-filter{grid-column:1/-1}
 #catalog-courses[data-catalog-layout] .course-list .course-card-horizontal{grid-template-columns:minmax(0,1fr) 215px;grid-template-areas:"top purchase" "title purchase" "description purchase" "facts purchase" "teacher purchase";column-gap:18px}
 #catalog-courses[data-catalog-layout] .course-list .course-illustration{display:none}
 #catalog-courses[data-catalog-layout=footer] .course-list .course-card-horizontal{grid-template-areas:"top purchase" "title purchase" "description purchase" "teacher purchase" "facts facts"}
 #catalog-courses[data-catalog-layout=sidebar] .course-list .course-card-horizontal{grid-template-columns:minmax(0,1fr) 215px}
 #catalog-courses[data-catalog-layout=sidebar] .course-list .card-facts{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
 #catalog-courses[data-catalog-layout]{width:calc(100% - 36px)}
 #catalog-courses[data-catalog-layout]>.filter-panel{padding:14px;gap:13px 10px}
 #catalog-courses[data-catalog-layout] .filter-chips{gap:5px}
 #catalog-courses[data-catalog-layout] .filter-chips .chip{font-size:14px;padding:8px 10px}
 #catalog-courses[data-catalog-layout] .course-list .course-card-horizontal{grid-template-columns:minmax(0,1fr);grid-template-areas:"top" "title" "description" "facts" "teacher" "purchase";gap:8px;padding:18px}
 #catalog-courses[data-catalog-layout] .course-list .course-card :is(h2,h3){font-size:24px;line-height:1.2}
 #catalog-courses[data-catalog-layout] .course-list .card-facts{grid-template-columns:1fr 1fr;border:0;gap:10px 14px;margin:4px 0 0;padding:0}
 #catalog-courses[data-catalog-layout] .course-list .card-facts dd{font-size:14px;line-height:1.45}
 #catalog-courses[data-catalog-layout] .course-list .card-teacher{margin:0;min-height:32px}
 #catalog-courses[data-catalog-layout] .course-list .course-card-purchase{display:block;grid-area:purchase;border-left:0;border-top:1px solid var(--line);margin:2px 0 0;padding:12px 0 0}
 #catalog-courses[data-catalog-layout] .course-list .card-price{display:grid;grid-template-columns:1fr;gap:8px}
 #catalog-courses[data-catalog-layout] .course-list .card-price .price-line{display:flex;gap:7px;flex-wrap:wrap}
 #catalog-courses[data-catalog-layout] .course-list .card-price strong{font-size:27px}
 #catalog-courses[data-catalog-layout] .course-list .card-price p{margin:0!important;font-size:14px!important;line-height:1.45}
 #catalog-courses[data-catalog-layout] .course-list .card-price>.btn{grid-column:auto;min-height:44px;font-size:14px}
 #catalog-courses[data-catalog-layout] .course-list .card-more{margin-top:3px;min-height:36px;font-size:14px}
}

/* R32 — teacher cards remain readable inside a native horizontal track. */
.r32-teacher-carousel{position:relative;min-width:0}
.r32-teacher-carousel .r32-teacher-track{display:grid;grid-auto-flow:column;grid-auto-columns:min(780px,calc(100% - 64px));grid-template-columns:none;align-items:stretch;gap:22px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:0;scrollbar-width:thin;scrollbar-color:#829c88 transparent;padding:2px 1px 15px;margin:0;-webkit-overflow-scrolling:touch}
.r32-teacher-carousel[data-teacher-count="1"] .r32-teacher-track{grid-auto-columns:min(960px,100%);padding-bottom:2px}
.r32-teacher-carousel .r32-teacher-track::-webkit-scrollbar{height:6px}
.r32-teacher-carousel .r32-teacher-track::-webkit-scrollbar-thumb{background:#829c88;border-radius:10px}
.r32-teacher-carousel .r32-teacher-card{display:grid;grid-template-columns:220px minmax(0,1fr);gap:0;min-width:0;scroll-snap-align:start;scroll-snap-stop:normal;flex:none;overflow:hidden;border:1px solid var(--line);border-radius:19px;background:var(--paper)}
.r32-teacher-card :is(.home-teacher-photo,.teacher-portrait){height:100%;min-height:0;background-size:auto 420px;background-position:center 16%;background-repeat:no-repeat;align-self:stretch}
.r32-teacher-carousel .r32-teacher-card :is(.home-teacher-body,.teacher-body){display:flex;flex-direction:column;min-width:0;padding:26px 28px}
.r32-teacher-carousel .r32-teacher-card h3{font-size:27px;line-height:1.2;max-width:none;margin:0;letter-spacing:-.025em}
.r32-teacher-carousel .r32-teacher-card .home-teacher-role{font-size:14px;line-height:1.5;margin-top:8px}
.r32-teacher-carousel .r32-teacher-card .teacher-achievements{display:grid;grid-template-columns:1fr;gap:0;margin:20px 0 14px;min-width:0}
.r32-teacher-carousel .r32-teacher-card .teacher-achievements li{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px;align-items:start;padding:12px 0;margin:0;border-top:1px solid var(--line)}
.r32-teacher-carousel .r32-teacher-card .teacher-achievements strong{font-size:21px;line-height:1.25;letter-spacing:-.025em;font-weight:550}
.r32-teacher-carousel .r32-teacher-card .teacher-achievements span{font-size:14px;line-height:1.5;color:var(--muted)}
.r32-teacher-carousel .r32-teacher-card .text-link{align-self:flex-start;min-height:32px;display:inline-flex;gap:8px;align-items:center;margin-top:auto;padding-top:0;font-size:14px;line-height:1.45}
.r32-teacher-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:9px}
.r32-teacher-controls[hidden]{display:none}
.r32-teacher-position{font-size:14px;color:var(--muted);margin-right:8px;font-variant-numeric:tabular-nums}
.r32-teacher-arrow{display:grid;place-items:center;width:46px;height:46px;min-width:46px;border:1px solid var(--green);border-radius:50%;padding:0;background:var(--paper);color:var(--green);font:inherit;font-size:25px;line-height:1;cursor:pointer;transition:background .15s,color .15s,opacity .15s}
.r32-teacher-arrow:hover:not(:disabled){background:var(--green);color:var(--paper)}
.r32-teacher-arrow:disabled{opacity:.3;cursor:default}
.r32-teacher-arrow:focus-visible,.r32-teacher-track:focus-visible{outline:3px solid #bd8b43;outline-offset:3px}
@media(max-width:900px){
 .r32-teacher-carousel .r32-teacher-track{grid-auto-columns:calc(100% - 44px);gap:16px}
 .r32-teacher-carousel .r32-teacher-card{grid-template-columns:180px minmax(0,1fr)}
 .r32-teacher-carousel .r32-teacher-card :is(.home-teacher-body,.teacher-body){padding:24px}
 .r32-teacher-carousel .r32-teacher-card h3{font-size:25px}
 .r32-teacher-carousel .r32-teacher-card .teacher-achievements li{grid-template-columns:120px minmax(0,1fr);gap:10px}
 .r32-teacher-carousel .r32-teacher-card .teacher-achievements strong{font-size:20px}
}
@media(max-width:650px){
 .r32-teacher-carousel .r32-teacher-track{grid-auto-columns:calc(100% - 20px);gap:13px;padding-bottom:11px}
 .r32-teacher-carousel .r32-teacher-card{grid-template-columns:84px minmax(0,1fr);grid-template-rows:auto auto 1fr auto;column-gap:15px;row-gap:0;padding:18px;border-radius:16px;align-content:start}
 .r32-teacher-carousel .r32-teacher-card :is(.home-teacher-photo,.teacher-portrait){grid-column:1;grid-row:1 / 3;width:84px;height:110px;min-height:0;border-radius:10px;background-size:auto 158px;background-position:center 12%;align-self:start}
 .r32-teacher-carousel .r32-teacher-card :is(.home-teacher-body,.teacher-body){display:contents;padding:0}
 .r32-teacher-carousel .r32-teacher-card h3{grid-column:2;grid-row:1;font-size:22px;align-self:end;overflow-wrap:break-word}
 .r32-teacher-carousel .r32-teacher-card .home-teacher-role{grid-column:2;grid-row:2;font-size:13px;line-height:1.45;margin-top:7px;align-self:start}
 .r32-teacher-carousel .r32-teacher-card .teacher-achievements{grid-column:1 / -1;grid-row:3;align-self:start;margin:17px 0 12px}
 .r32-teacher-carousel .r32-teacher-card .teacher-achievements li{grid-template-columns:110px minmax(0,1fr);gap:10px;padding:11px 0}
 .r32-teacher-carousel .r32-teacher-card .teacher-achievements strong{font-size:18px;line-height:1.3}
 .r32-teacher-carousel .r32-teacher-card .teacher-achievements span{font-size:13px;line-height:1.5}
 .r32-teacher-carousel .r32-teacher-card .text-link{grid-column:1 / -1;grid-row:4;margin:0;align-self:end;justify-self:start;font-size:13px}
 .r32-teacher-controls{padding-top:5px}
}
@media(max-width:370px){
 .r32-teacher-carousel .r32-teacher-card{padding:14px;grid-template-columns:70px minmax(0,1fr);column-gap:12px}
 .r32-teacher-carousel .r32-teacher-card :is(.home-teacher-photo,.teacher-portrait){width:70px;height:100px;background-size:auto 143px}
 .r32-teacher-carousel .r32-teacher-card h3{font-size:20px}
 .r32-teacher-carousel .r32-teacher-card .teacher-achievements li{grid-template-columns:99px minmax(0,1fr);gap:9px}
 .r32-teacher-carousel .r32-teacher-card .teacher-achievements strong{font-size:17px}
}
@media(prefers-reduced-motion:reduce){.r32-teacher-arrow{transition:none}}
@media print{.r32-teacher-carousel .r32-teacher-track{display:block;overflow:visible}.r32-teacher-carousel .r32-teacher-card{margin-bottom:20px;break-inside:avoid}.r32-teacher-controls{display:none!important}}

.r31-format .section-heading{display:block;margin-bottom:26px}
.r31-format .section-heading h2{max-width:870px;margin-top:0}
.r31-format-grid article>h3{margin-top:0}
.r31-format-grid article>p{font-size:16px;line-height:1.7;margin-top:15px}
.home-learning-list h3{margin-bottom:10px}
.home-learning-intro{max-width:550px}
.hp-practice .hp-section-heading>p{font-size:15px;line-height:1.65}
.section-heading h2{margin-top:0}
.r30-fit-heading:has(>h2:only-child){margin-bottom:26px}
.catalog-hero-grid{grid-template-columns:1fr}
.catalog-hero-grid>div{max-width:850px}
.catalog-hero h1{font-size:clamp(34px,4vw,56px);max-width:820px;line-height:1.12}
.catalog-hero .lead{max-width:780px;margin-top:18px}
.home-hero h1{font-size:clamp(38px,3.65vw,54px);line-height:1.15;gap:11px;text-transform:none;letter-spacing:-.045em;max-width:100%}
.home-hero .home-strip{max-width:100%;white-space:normal;padding:3px 12px 6px;overflow-wrap:normal}
.home-hero-description{font-size:17px;line-height:1.75;max-width:540px}
.r31-variant-panel{width:352px;max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.r32-panel-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#e9eddf;border-radius:9px;margin-bottom:18px}
.r32-panel-tabs button{padding:10px;border:0;border-radius:6px;background:transparent;font:inherit;font-size:14px;color:var(--ink);cursor:pointer}
.r32-panel-tabs button[aria-selected=true]{background:#fffdf7;box-shadow:0 1px 5px #213c2520}
.r31-variant-panel [role=tabpanel]>label,.r32-copy-block-controls>label{display:block;font-size:12px;color:#506154;margin:17px 0 7px}
.r31-variant-panel [data-copy-all]{width:100%;font:inherit;font-size:13px;background:#fdfbf3;color:var(--ink);border:1px solid #aebeaa;border-radius:7px;min-height:42px;padding:9px}
.r32-copy-block-controls{margin-top:18px;padding-top:1px;border-top:1px solid var(--line)}
@media(max-width:900px){.home-hero h1{font-size:34px}.home-hero-description{font-size:16px}.r31-format-grid article>p{font-size:15px}}
@media(max-width:650px){.home-hero h1{font-size:clamp(31px,8vw,43px);gap:9px}.home-hero-description{font-size:16px}.hp-practice .hp-section-heading>p{font-size:14px}.r31-variant-panel select{font-size:16px!important}.r31-format-grid article>p{font-size:15px}.r31-variant-panel{width:352px;max-height:calc(100dvh - 94px)}}

/* r33-design */
/* R33: larger course illustrations, with compact cards and the existing catalogue width. */
#catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card-horizontal{grid-template-columns:188px minmax(0,1fr) 230px}
#catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-illustration{display:flex;width:188px;height:168px;min-height:0;align-self:center;border-radius:12px}
#catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-illustration img{width:100%;height:100%;max-height:none;object-fit:contain}

@media(max-width:1100px){
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card-horizontal{grid-template-columns:156px minmax(0,1fr) 220px;column-gap:17px}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-illustration{width:156px;height:139px}
}
@media(max-width:900px){
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card-horizontal{grid-template-columns:128px minmax(0,1fr) 210px;column-gap:16px}
 #catalog-courses[data-catalog-layout=row] .course-list .course-card-horizontal{grid-template-areas:"image top purchase" "image title purchase" "image description purchase" "image facts purchase" "image teacher purchase"}
 #catalog-courses[data-catalog-layout=footer] .course-list .course-card-horizontal{grid-template-areas:"image top purchase" "image title purchase" "image description purchase" "image teacher purchase" "facts facts facts"}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-illustration{width:128px;height:114px}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card-purchase{padding-left:16px}
}
@media(max-width:780px){
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card-horizontal{
  grid-template-columns:128px minmax(0,1fr);grid-template-rows:auto auto auto auto auto auto;
  grid-template-areas:"image top" "image title" "image description" "facts facts" "teacher teacher" "purchase purchase";
  gap:8px 18px;
 }
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-illustration{align-self:start}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .card-facts{grid-template-columns:1fr 1fr 1fr 1fr;gap:10px 14px;padding-top:12px;border-top:1px solid var(--line);margin-top:6px}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card-purchase{display:block;border-left:0;border-top:1px solid var(--line);padding:12px 0 0;margin:0}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .card-price{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(0,1fr) 178px;gap:14px;align-items:center}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .card-price p{margin:0!important}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .card-price>.btn{grid-column:auto;width:100%}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .card-more{justify-content:flex-end}
}
@media(max-width:650px){
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card-horizontal{
  grid-template-columns:100px minmax(0,1fr);grid-template-rows:auto auto auto auto auto auto;
  grid-template-areas:"image top" "image title" "description description" "facts facts" "teacher teacher" "purchase purchase";
  gap:9px 14px;
 }
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-illustration{width:100px;height:90px;align-self:start;border-radius:10px}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card-top{align-self:end;gap:5px 9px}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card :is(h2,h3){align-self:start}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .card-facts{grid-template-columns:1fr 1fr;border:0;padding:0;margin-top:4px;gap:10px 14px}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card-purchase{margin-top:2px;padding-top:12px}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .card-price{grid-template-columns:minmax(0,1fr);gap:8px}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .card-more{justify-content:center}
}
@media(max-width:370px){
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card-horizontal{grid-template-columns:84px minmax(0,1fr);column-gap:12px;padding:16px}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-illustration{width:84px;height:76px}
 #catalog-courses:is([data-catalog-layout=row],[data-catalog-layout=footer]) .course-list .course-card :is(h2,h3){font-size:22px}
}

.r32-teacher-carousel .r32-teacher-card .teacher-achievements{margin-bottom:0}
@media(max-width:650px){.r32-teacher-carousel .r32-teacher-card{grid-template-rows:auto auto 1fr}}

/* r34-design */
/* R34: public blocks and connected learning scenarios. */
[hidden]{display:none!important}
:root{--r34-sage:#e5ebdc;--r34-peach:#e6b497;--r34-dark:#174f43}
.r34-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#647364;margin-bottom:16px}
.r34-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.r34-copy h2{font-size:clamp(30px,3.1vw,44px);line-height:1.18;letter-spacing:-.04em;max-width:580px}
.r34-copy p{font-size:17px;line-height:1.75;color:var(--muted);max-width:520px;margin:22px 0 28px}
.r34-copy .text-link{margin-top:18px;display:inline-flex}
.r34-tag{display:inline-flex;align-items:center;padding:6px 11px;border-radius:6px;background:#e9eee3;font-size:12px;color:#335548}
.r34-facts{display:flex;gap:34px;flex-wrap:wrap;padding-block:24px;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}
.r34-facts strong{font-weight:500;color:var(--ink)}
.r34-window{background:var(--paper);border:1px solid #cbd5c7;border-radius:20px;overflow:hidden;box-shadow:0 20px 50px #153f3310;min-width:0}
.r34-window-bar{display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:1px solid var(--line);padding:16px 22px;font-size:12px;color:#5c6f60;background:#f7f7ef}
.r34-window-dots{display:flex;gap:5px}.r34-window-dots i{width:6px;height:6px;background:#b7c7ad;border-radius:50%}
.r34-window-body{padding:28px}.r34-window h3{font-size:23px;letter-spacing:-.02em;margin:10px 0 20px}
.r34-board{background:var(--r34-dark);color:#fff9e9;padding:30px;border-radius:10px;min-height:225px;display:flex;flex-direction:column;justify-content:center}
.r34-board small{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#c2d7b7;margin-bottom:22px}
.r34-equation{font:clamp(25px,2.3vw,36px)/1.6 Georgia,serif}.r34-equation em{color:#f0ba91;font-style:normal}
.r34-board-foot{display:flex;justify-content:space-between;margin-top:24px;color:#c4d7c7;font-size:12px}
.r34-trial-note{display:flex;gap:14px;align-items:center;margin-top:19px;font-size:13px;color:var(--muted);line-height:1.5}.r34-check{border:1px solid #bdd0b5;border-radius:50%;padding:4px 8px;color:var(--green)}
#home-trial{padding-top:86px;padding-bottom:86px}
#home-trainer{background:#e9edde;border-block:1px solid #d5ddcb;padding-block:80px}
.r34-topic-list{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:25px}.r34-topic-list span{background:#f9faef;border:1px solid #d2dbc8;border-radius:30px;padding:8px 13px;font-size:12px}
.r34-task-mini{padding:28px;border-radius:17px;background:var(--paper);border:1px solid #cdd6c3;transform:rotate(-1deg)}
.r34-task-mini>p{font-size:16px;line-height:1.7;margin:20px 0}.r34-task-mini .r34-mini-answer{display:flex;justify-content:space-between;gap:12px;padding:14px 17px;border:1px solid #d7ddcf;border-radius:8px;margin-top:20px}
.r34-note-card{margin:15px 0 0 32px;padding:21px 24px;border-radius:13px;background:#f0d9bd;color:#304639;transform:rotate(1deg);font-size:13px;line-height:1.65}.r34-note-card strong{display:block;margin-bottom:5px;font-size:14px}
#home-space{padding-block:80px}.r34-space-tabs{display:flex;gap:18px;border-bottom:1px solid var(--line);padding:0 20px}.r34-space-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:16px 0;color:#697a67;font-size:13px;cursor:pointer}.r34-space-tabs button[aria-selected=true]{color:var(--green);border-color:var(--green)}
.r34-lesson-line{display:flex;align-items:center;gap:15px;padding:17px 0;border-bottom:1px solid #e2e6db;line-height:1.55}.r34-lesson-line:last-child{border:0}.r34-lesson-line span:first-child{background:#edf0e5;color:var(--green);border-radius:7px;padding:9px 11px;font-size:13px}.r34-lesson-line div{flex:1}.r34-lesson-line strong{font-size:14px;font-weight:500}.r34-lesson-line small{display:block;font-size:12px;color:var(--muted)}
.r34-space-foot{display:flex;justify-content:space-between;gap:15px;padding:15px 22px;background:#f1f3e9;border-top:1px solid var(--line);font-size:12px}.r34-space-foot a{color:var(--green);text-decoration:underline;text-underline-offset:4px}
.r34-page{padding-block:46px 85px;min-height:65vh}.r34-page-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin:25px 0 35px}.r34-page h1{font-size:clamp(34px,4vw,54px);line-height:1.12;letter-spacing:-.045em}.r34-page-heading p{font-size:16px;line-height:1.7;max-width:620px;color:var(--muted);margin-top:18px}.r34-page .breadcrumbs{color:var(--muted)}
.r34-trial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.r34-course-option{border:1px solid var(--line);border-radius:16px;background:var(--paper);padding:26px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}.r34-course-option h2{font-size:25px;line-height:1.2;letter-spacing:-.03em;margin:18px 0 12px}.r34-course-option p{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 24px;flex:1}.r34-course-option .btn{margin-top:auto;font-size:13px;min-height:45px}.r34-course-option small{font-size:12px;color:var(--muted);margin-top:13px}
.r34-recordings{margin-top:44px;padding:30px 34px;background:#e9eddf;border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:30px}.r34-recordings h2{font-size:26px}.r34-recordings p{font-size:14px;line-height:1.7;color:var(--muted);max-width:600px;margin-top:12px}.r34-empty{display:block;color:#6d7767;font-size:13px}
.r34-practice-head{border-radius:13px;background:#e8eedf;padding:20px 26px;display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:30px;font-size:14px;line-height:1.6}.r34-practice-head a{white-space:nowrap;color:var(--green);text-decoration:underline;text-underline-offset:4px}
.r34-practice-topics{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:26px}.r34-practice-topics button{border:1px solid #cbd7bf;border-radius:30px;padding:10px 16px;background:transparent;cursor:pointer;color:var(--green);font:inherit;font-size:13px}.r34-practice-topics button[aria-pressed=true]{background:var(--green);color:#fff}
.r34-task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.r34-task-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;background:var(--paper);padding:25px}.r34-task-card h2{font-size:20px;margin:16px 0 14px}.r34-task-card p{font-size:15px;line-height:1.75;flex:1;margin-bottom:25px}.r34-task-card button{align-self:flex-start;border:0;background:none;padding:0;color:var(--green);font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:5px;cursor:pointer}.r34-task-card[data-locked=true]{background:#f0f0e8}.r34-task-card[data-locked=true] .r34-tag{background:#e1e3d8;color:#687564}
.r34-learning-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px}.r34-side{display:flex;flex-direction:column;gap:5px;align-self:start;position:sticky;top:100px}.r34-side button,.r34-side a{border:0;background:none;padding:14px 16px;text-align:left;border-radius:7px;font:inherit;font-size:14px;color:#63725f;cursor:pointer}.r34-side button[aria-selected=true]{background:#e4ebda;color:var(--green)}.r34-side hr{border:0;border-top:1px solid var(--line);width:100%;margin:17px 0}.r34-side small{padding:0 16px;font-size:11px;color:var(--muted)}
.r34-panel{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:30px;min-width:0}.r34-panel h2{font-size:27px;line-height:1.25;margin-bottom:16px}.r34-panel p{line-height:1.75;color:var(--muted);font-size:15px}.r34-panel+.r34-panel{margin-top:20px}.r34-lesson-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.r34-learning-body{min-width:0}.r34-work{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;padding:20px 0;border-bottom:1px solid var(--line)}.r34-work strong{font-size:16px;font-weight:500}.r34-work small{display:block;margin-top:7px;color:var(--muted);font-size:12px}.r34-work button{font:inherit;font-size:13px;border:0;background:none;color:var(--green);cursor:pointer;text-decoration:underline;text-underline-offset:4px}.r34-score{font-size:20px;color:var(--green)}
.r34-recommendation{background:#edf1e4}.r34-recommendation .r34-tag{background:#dce6ce}.r34-progress-note{padding:23px 26px;background:#f2e5d4;border-radius:10px;margin-top:23px}.r34-progress-note h3{font-size:17px;margin-bottom:12px}.r34-progress-note p{font-size:14px;margin:0}
.r34-contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.r34-contacts-grid dl{margin:20px 0;display:grid;gap:17px}.r34-contacts-grid dt{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:5px}.r34-contacts-grid dd{font-size:15px;margin:0;overflow-wrap:anywhere}.r34-contacts-grid details{margin-top:20px}.r34-contacts-grid summary{cursor:pointer;color:var(--green);font-size:14px}.r34-form{display:grid;gap:13px}.r34-form label{font-size:13px}.r34-form input,.r34-form textarea{width:100%;border:1px solid #bbcbb4;background:#fffef6;border-radius:8px;padding:12px 14px;font:inherit;font-size:16px}.r34-form p{margin:0;font-size:12px}.r34-form .btn{margin-top:7px}
.r34-dialog{max-width:600px;width:calc(100% - 32px);border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);padding:30px;max-height:90dvh;overflow:auto}.r34-dialog::backdrop{background:#09281d80}.r34-dialog-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.r34-dialog-top h2{font-size:27px;line-height:1.2}.r34-dialog-top button{border:0;background:none;font:inherit;font-size:26px;cursor:pointer;padding:0 5px}.r34-dialog p{font-size:15px;line-height:1.75}.r34-result{margin-top:20px;background:#e7efdc;padding:18px;border-radius:10px;line-height:1.7;font-size:14px}.r34-result[data-correct=false]{background:#f2e5d4}.r34-dialog .r34-form{margin-top:22px}.r34-dialog .text-link{margin-top:18px;cursor:pointer;background:none;border:0;padding:0;font:inherit;font-size:14px}
.r34-review-tools{position:fixed;bottom:15px;left:18px;z-index:90;font-size:12px}.r34-review-tools>summary{list-style:none;cursor:pointer;background:#fffdf5;border:1px solid #bdcbb5;border-radius:25px;padding:9px 16px;box-shadow:0 4px 15px #12332215}.r34-review-tools>div{position:absolute;bottom:46px;left:0;width:235px;background:#fffdf5;border:1px solid #bdcbb5;border-radius:12px;padding:18px;box-shadow:0 12px 30px #12332220}.r34-review-tools label{display:block;margin-bottom:10px;color:#63725f}.r34-review-tools select{width:100%;padding:10px 8px;border:1px solid #cbd4c2;border-radius:6px;font:inherit;font-size:14px;background:#fff}.r34-review-tools a{display:block;color:var(--green);margin-top:13px;text-decoration:underline;text-underline-offset:3px}
#r33-variant-tools{display:none!important}.r34-page :focus-visible,.r34-dialog :focus-visible{outline:3px solid #ac773f;outline-offset:4px}
@media(max-width:1050px){.r34-grid{gap:32px}.r34-copy p{font-size:16px}.r34-trial-grid,.r34-task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.r34-learning-grid{grid-template-columns:170px minmax(0,1fr);gap:24px}}
@media(max-width:720px){.r34-grid{grid-template-columns:1fr;gap:32px}.r34-copy h2{font-size:32px}.r34-copy p{margin-top:17px}.r34-window{border-radius:14px}.r34-window-body{padding:20px}.r34-board{padding:25px;min-height:205px}#home-trial,#home-trainer,#home-space{padding-block:50px}.r34-facts{gap:13px 25px;font-size:12px;padding-block:22px}.r34-note-card{margin-left:15px}.r34-page{padding-block:28px 65px}.r34-page-heading{display:block;margin-top:20px}.r34-page-heading>span{margin-top:20px}.r34-trial-grid,.r34-task-grid,.r34-contacts-grid{grid-template-columns:1fr}.r34-recordings,.r34-practice-head{display:block;padding:24px}.r34-recordings .r34-empty{margin-top:20px}.r34-practice-head a{display:inline-block;margin-top:12px}.r34-learning-grid{grid-template-columns:1fr;gap:20px}.r34-side{position:static;display:flex;flex-direction:row;flex-wrap:wrap;gap:5px}.r34-side button,.r34-side a{padding:11px 13px;font-size:13px}.r34-side hr,.r34-side small{display:none}.r34-panel{padding:22px}.r34-panel h2{font-size:24px}.r34-dialog{padding:23px}.r34-dialog-top h2{font-size:24px}.r34-space-foot{font-size:11px;padding:15px}.r34-review-tools{bottom:10px;left:10px}.r34-window-bar{padding:15px 19px}.r34-course-option{padding:24px}.r34-page-heading p{font-size:15px}.r34-work{gap:12px}}

@media(max-width:720px){#home-reviews .home-review-grid{grid-template-columns:1fr!important}}
/* k36-styles */
/* R36: a single layout for every public block; no inherited variant selectors. */
[hidden]{display:none!important}.k36-hero,.k36-catalog,.k36-carousel,.k36-enrollment{--k36-paper:#fffdf5;--k36-line:#d6dbcc;--k36-green:#185345;--k36-muted:#627266;min-width:0} .k36-hero *,.k36-catalog *,.k36-carousel *,.k36-enrollment *{box-sizing:border-box}
.k36-hero{position:relative;isolation:isolate;overflow:hidden;background:#155446;color:#fff9e8}.k36-hero-shell{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(36px,6vw,100px);width:calc(100% - 96px);max-width:1400px;margin:0 auto;padding:82px 0 88px;align-items:center}.k36-hero-copy{min-width:0}.k36-hero-eyebrow{font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin:0 0 28px;color:#e2e8d5}.k36-hero h1{display:flex;align-items:flex-start;flex-direction:column;gap:12px;font-size:clamp(36px,4vw,62px);font-weight:500;line-height:1.04;letter-spacing:-.05em;margin:0 0 34px;color:#16332a}.k36-paper-title{display:block;width:max-content;max-width:100%;padding:3px 12px 9px;background:#fffdf5;box-shadow:6px 6px 0 #e9a77f;transform:rotate(-1deg);white-space:nowrap;text-transform:uppercase}.k36-paper-title+span{margin-left:12px;transform:rotate(.4deg)}.k36-hero-description{font-size:18px;line-height:1.7;max-width:570px;margin:0;color:#eef1d9}.k36-hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:19px;margin-top:30px}.k36-hero-actions .btn{background:#e6a37d;color:#18382e;border:1px solid #e6a37d;border-radius:12px;min-height:54px;padding:15px 24px;font-size:16px;gap:26px}.k36-hero-secondary{font-size:14px;color:#fff9e8;text-decoration:underline;text-underline-offset:5px}.k36-directions{min-width:0}.k36-directions h2{font-size:29px;font-weight:500;letter-spacing:-.025em;line-height:1.2;color:#fff9e8;margin:0 0 26px}.k36-direction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.k36-direction{display:flex;flex-direction:column;justify-content:space-between;min-width:0;min-height:170px;border-radius:18px;padding:22px;color:#184d42;text-decoration:none;box-shadow:0 5px 0 #0f463d;background:#fbf7eb;transition:background .15s,transform .15s}.k36-direction:hover{transform:translateY(-3px)}.k36-direction:nth-child(2){background:#ecb68f}.k36-direction:nth-child(3){background:#dbe5c8}.k36-direction:nth-child(4){background:#e8dfb7}.k36-direction-top{display:flex;justify-content:space-between;align-items:center}.k36-direction-icon{width:26px;height:26px;display:block}.k36-direction-icon svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.k36-direction-arrow{display:grid;place-items:center;border:1px solid #2b5c4b;border-radius:50%;width:32px;height:32px;font-size:22px}.k36-direction-name{display:block;font-size:31px;font-weight:400;line-height:1.13;letter-spacing:-.03em;margin-top:24px}.k36-direction:nth-child(n+3) .k36-direction-name{font-size:23px}.k36-hero-art{position:absolute;z-index:0;inset:0;pointer-events:none;overflow:hidden}.k36-hero-art .school-hero-orbits{position:absolute;width:460px;height:290px;left:31%;top:-128px;opacity:.24}.k36-hero-art .school-hero-paper{position:absolute;width:205px;height:270px;right:-126px;bottom:-94px;opacity:.25;transform:rotate(-18deg)}.k36-hero-art .school-hero-book,.k36-hero-art .school-hero-accents,.k36-hero-art .school-hero-dots{display:none}
.k36-catalog{margin-top:0}.k36-filters{border:1px solid var(--k36-line);border-radius:18px;background:var(--k36-paper);padding:24px;margin-bottom:26px}.k36-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.k36-control{display:flex;flex-direction:column;gap:8px;min-width:0;color:#2a493b;font-size:13px}.k36-control input,.k36-control select{display:block;width:100%;min-width:0;height:48px;max-width:100%;border:1px solid #bbc8b5;border-radius:9px;background:#fffdf7;color:#1c3d30;padding:0 14px;font:inherit;font-size:15px}.k36-search-row .btn{height:48px;min-height:48px;padding:0 27px;border-radius:9px}.k36-filter-row{display:grid;grid-template-columns:minmax(0,1fr) 200px 170px;gap:24px;margin-top:23px;align-items:end}.k36-filter-direction{display:flex;flex-direction:column;gap:9px;min-width:0}.k36-filter-label{font-size:13px;color:#2a493b}.k36-filter-buttons{display:flex;gap:7px;flex-wrap:wrap}.k36-filter-button{min-height:43px;border:1px solid #c9d1bf;border-radius:8px;background:transparent;padding:10px 13px;color:#294d3d;font:inherit;font-size:14px;line-height:1.2;cursor:pointer}.k36-filter-button[aria-pressed=true]{background:#205542;color:#fff9eb;border-color:#205542}.k36-filter-button:hover{border-color:#35664a}.k36-filter-active{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:17px}.k36-filter-active:empty{display:none}.k36-filter-active button{background:#edf0e3;border:0;border-radius:24px;padding:7px 12px;color:#315341;font:inherit;font-size:12px;cursor:pointer}.k36-catalog .catalog-caption{display:flex;justify-content:space-between;align-items:center;margin:0 0 18px;padding:0;gap:16px;min-height:28px}.k36-result-count{font-size:15px;color:#5e7161}.k36-reset{border:0;background:none;padding:4px 0;color:#315f45;font:inherit;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.k36-course-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:17px;min-width:0}.k36-catalog .k36-course-card{display:grid;grid-template-columns:164px minmax(0,1fr) 216px;gap:24px;align-items:stretch;position:relative;margin:0;padding:22px;border:1px solid var(--k36-line);border-radius:18px;background:var(--k36-paper);min-width:0;min-height:0;box-shadow:none;overflow:visible}.k36-course-image{display:block;width:164px;height:170px;overflow:hidden;border-radius:10px;align-self:start}.k36-course-image img{display:block;width:100%;height:100%;object-fit:cover}.k36-course-main{min-width:0;display:flex;flex-direction:column}.k36-course-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:#617463;font-size:12px;line-height:1.4;margin-bottom:9px}.k36-course-meta span+span:before{content:'·';margin-right:8px}.k36-course-main h2{font-size:25px;font-weight:500;line-height:1.22;margin:0 0 8px;letter-spacing:-.025em;color:#1d3b2f}.k36-course-main h2 a{color:inherit;text-decoration:none}.k36-course-desc{font-size:14px;line-height:1.55;color:#627365;margin:0 0 16px;max-width:590px}.k36-course-facts{display:flex;flex-wrap:wrap;gap:8px 19px;margin:0 0 13px;color:#3e5b47;font-size:13px;line-height:1.4}.k36-course-facts span+span{border-left:1px solid #d4dccb;padding-left:18px}.k36-course-teacher{display:inline-flex;align-items:center;gap:9px;color:#254c37;font-size:13px;text-decoration:none;margin-top:auto;align-self:start}.k36-course-teacher .teacher-dot{width:28px;height:28px;flex:0 0 28px}.k36-course-buy{border-left:1px solid var(--k36-line);padding-left:23px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0}.k36-course-price{font-size:25px;font-weight:500;letter-spacing:-.03em;white-space:nowrap;color:#1d3b2f}.k36-course-unit{font-size:12px;color:#667464;line-height:1.5;margin:4px 0 19px}.k36-course-buy .btn{display:flex;justify-content:space-between;width:100%;font-size:13px;min-height:44px;padding:12px 14px;border-radius:9px;gap:10px}.k36-course-more{display:block;font-size:12px;color:#43624b;text-decoration:underline;text-underline-offset:3px;margin-top:13px}.k36-empty{border:1px dashed #b6c7ae;padding:32px;border-radius:16px}.k36-empty h2{font-size:23px;margin:0 0 12px}.k36-empty p{margin:0 0 20px;color:#637565;line-height:1.6}
.k36-carousel{position:relative}.k36-teacher-track{display:grid;grid-auto-flow:column;grid-auto-columns:min(650px,calc(100% - 45px));grid-template-columns:none;gap:24px;align-items:stretch;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#a5b7a1 transparent;padding:2px 2px 16px;min-width:0}.k36-carousel[data-teacher-count="1"] .k36-teacher-track{grid-auto-columns:min(750px,100%);padding-bottom:2px}.k36-teacher{display:grid;grid-template-columns:158px minmax(0,1fr);gap:25px;min-width:0;align-items:start;scroll-snap-align:start;border:1px solid var(--k36-line);border-radius:16px;background:var(--k36-paper);padding:23px}.k36-teacher-photo{width:158px;min-height:214px;height:100%;max-height:290px;border-radius:9px;background-size:cover;background-position:center 22%;background-repeat:no-repeat}.k36-teacher-copy{min-width:0;padding-top:2px}.k36-teacher h3{font-size:25px;font-weight:500;letter-spacing:-.025em;line-height:1.25;margin:0 0 17px;color:#213d30}.k36-teacher-facts{margin:0;padding-left:17px;color:#556c59;list-style:disc}.k36-teacher-facts li{padding-left:2px;font-size:15px;font-weight:400;line-height:1.65;margin:0 0 9px}.k36-teacher-facts li:last-child{margin:0}.k36-teacher-facts li::marker{color:#98ac91;font-size:10px}.k36-teacher-controls{display:flex;gap:9px;align-items:center;justify-content:flex-end;margin-top:17px}.k36-teacher-position{font-size:13px;color:#657664;margin-right:9px}.k36-teacher-arrow{width:42px;height:42px;border-radius:50%;border:1px solid #b9c7b2;background:transparent;color:#284f3b;font:inherit;font-size:22px;cursor:pointer}.k36-teacher-arrow:hover{background:#e8ecdf}.k36-teacher-arrow:disabled{opacity:.35;cursor:default}
.k36-enrollment{background:#e9eddf;padding:66px 0}.k36-enrollment-heading{margin-bottom:25px;display:flex;justify-content:space-between;align-items:baseline;gap:20px}.k36-enrollment-heading h2{font-size:34px;line-height:1.2;font-weight:500;letter-spacing:-.035em;margin:0;color:#1f3d2e}.k36-timezone{font-size:13px;color:#657760;white-space:nowrap}.k36-enrollment-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}.k36-group-list{display:grid;gap:15px;min-width:0}.k36-group{display:block;position:relative;border:1px solid #c9d4bf;border-radius:15px;background:#fcfcf5;padding:21px 23px;cursor:pointer;min-width:0;transition:border-color .15s,background .15s}.k36-group:hover{border-color:#6c8b65}.k36-group.selected{border-color:#20543f;box-shadow:inset 0 0 0 1px #20543f;background:#fffdf4}.k36-group:focus-within{outline:3px solid #a3bea0;outline-offset:3px}.k36-group-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:17px}.k36-group-choice{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:500;color:#233f2f}.k36-group-choice input{margin:0;accent-color:#20543f;width:18px;height:18px;flex-shrink:0}.k36-group-price{font-size:19px;font-weight:500;white-space:nowrap;color:#284632}.k36-group-price small{font-size:12px;font-weight:400;color:#6b7965}.k36-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;min-width:0;margin-bottom:16px}.k36-week-day{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-width:0;min-height:55px;border-radius:7px;background:#eff1e7;color:#8b9784}.k36-week-day span{font-size:11px;line-height:1.15}.k36-week-day small{font-size:13px;line-height:1.15;font-weight:400;white-space:nowrap}.k36-week-day.is-active{background:#225840;color:#fffdee}.k36-group-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}.k36-group-details{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;line-height:1.65;color:#5e745e}.k36-group-details span{white-space:nowrap}.k36-group-teacher{display:flex;align-items:center;gap:9px;min-width:0;font-size:13px;color:#344f38;line-height:1.4}.k36-group-teacher .teacher-dot{width:30px;height:30px;flex:0 0 30px}.k36-group-period{font-size:12px;line-height:1.6;color:#6b7b63;margin:16px 2px 0}.k36-purchase{background:#fffcf2;border:1px solid #cbd4bc;border-radius:17px;padding:26px;min-width:0}.k36-purchase h3{font-size:23px;font-weight:500;letter-spacing:-.02em;margin:0 0 10px;color:#1d3c2c}.k36-purchase-group{font-size:13px;line-height:1.55;color:#50694f;margin:0 0 4px}.k36-purchase-schedule{font-size:13px;line-height:1.55;color:#50694f;margin:0 0 23px}.k36-quantity-label{display:block;font-size:13px;margin:0 0 9px;color:#3f5c42}.k36-quantity{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:0;border:1px solid #c6d0b9;border-radius:9px;overflow:hidden;height:45px;background:#fffdf7;max-width:100%}.k36-quantity button{border:0;background:transparent;font:inherit;font-size:20px;color:#295537;cursor:pointer}.k36-quantity button:disabled{opacity:.3}.k36-quantity input{height:43px;width:100%;min-width:0;border:0;border-left:1px solid #d7decc;border-right:1px solid #d7decc;border-radius:0;background:transparent;text-align:center;font:inherit;color:#1e3c2b;appearance:textfield;-moz-appearance:textfield}.k36-quantity input::-webkit-inner-spin-button,.k36-quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.k36-quantity-help{font-size:11px;color:#748268;line-height:1.5;margin:8px 0 20px}.k36-quantity-error{font-size:12px;color:#9c4730;line-height:1.5}.k36-total{border-top:1px solid #d7ddc9;padding-top:19px;display:flex;align-items:baseline;justify-content:space-between;gap:12px}.k36-total span{font-size:13px;color:#526a50}.k36-total strong{font-size:29px;letter-spacing:-.04em;font-weight:500;color:#1c3f2b;white-space:nowrap}.k36-calculation{font-size:12px;color:#6b7c60;margin:6px 0 17px;text-align:right}.k36-purchase .btn{width:100%;justify-content:space-between;font-size:14px;padding:14px 17px;border-radius:9px;min-height:48px;gap:10px}.k36-includes{font-size:12px;color:#61765a;line-height:1.65;padding:0;margin:16px 0 0}.k36-program-price{border-top:1px solid #d7ddc9;margin-top:19px;padding-top:14px;color:#627658;font-size:12px;line-height:1.65}.k36-program-price summary{cursor:pointer}.k36-program-price p{margin:9px 0 0}.k36-purchase-start{font-size:12px;line-height:1.6;color:#61755a;margin:11px 0 0}.k36-practice-frame{display:block;width:100%;border:0;min-height:620px;margin-top:20px;background:transparent}.k36-course-example .k36-example-layout{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:44px;align-items:start}.k36-example-intro h2{font-size:34px;line-height:1.2;letter-spacing:-.03em;font-weight:500;margin:0 0 20px}.k36-example-intro p{color:#657765;line-height:1.7;max-width:360px}.k36-example-intro .text-link{margin-top:16px}.k36-course-example .hp-summary-card{max-width:800px;width:100%}.k36-course-example .hp-card-body{padding:24px}.k36-course-example .hp-card-heading h3{font-size:22px}.k36-course-example .hp-comment p{font-size:15px;line-height:1.65}.k36-course-example .hp-disclosure summary{padding:13px 0}
@media(min-width:1400px){.k36-hero-shell{padding-block:96px 104px}.k36-direction{min-height:184px}.k36-hero-description{font-size:20px}}
@media(max-width:1100px){.k36-hero-shell{gap:38px;padding-block:60px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);width:calc(100% - 64px)}.k36-hero h1{font-size:clamp(30px,4vw,44px)}.k36-hero-description{font-size:16px}.k36-direction{padding:18px;min-height:156px}.k36-direction-name{font-size:29px}.k36-direction:nth-child(n+3) .k36-direction-name{font-size:21px}.k36-directions h2{font-size:25px}.k36-filter-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:17px}.k36-filter-direction{grid-column:1/-1}.k36-catalog .k36-course-card{grid-template-columns:145px minmax(0,1fr) 190px;gap:20px;padding:20px}.k36-course-image{width:145px;height:160px}.k36-course-buy{padding-left:20px}.k36-course-main h2{font-size:23px}.k36-course-facts{gap:7px 12px}.k36-course-facts span+span{padding-left:12px}.k36-enrollment-layout{grid-template-columns:minmax(0,1fr) 306px;gap:20px}.k36-group{padding:18px}.k36-group-bottom{grid-template-columns:1fr;gap:9px}.k36-purchase{padding:22px}.k36-enrollment-heading h2{font-size:31px}.k36-course-example .k36-example-layout{gap:28px}}
@media(max-width:800px){.k36-hero-shell{grid-template-columns:minmax(0,1fr);gap:38px;padding-block:40px;width:calc(100% - 48px)}.k36-hero h1{font-size:clamp(32px,7vw,52px);margin-bottom:27px}.k36-hero-eyebrow{margin-bottom:24px}.k36-hero-description{max-width:570px;font-size:17px}.k36-hero-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:18px 25px;margin-top:24px}.k36-direction{min-height:150px}.k36-directions h2{font-size:25px;margin-bottom:20px}.k36-hero-art .school-hero-orbits{left:48%;top:-150px}.k36-filters{padding:20px}.k36-catalog .k36-course-card{grid-template-columns:135px minmax(0,1fr);gap:18px}.k36-course-image{width:135px;height:160px}.k36-course-buy{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 20px;align-items:center;border-left:0;border-top:1px solid var(--k36-line);padding:16px 0 0}.k36-course-price{grid-column:1;grid-row:1;font-size:23px}.k36-course-unit{grid-column:1;grid-row:2;margin:5px 0 0}.k36-course-buy .btn{grid-column:2;grid-row:1/3;min-width:178px}.k36-course-more{grid-column:1/-1;margin-top:14px}.k36-course-facts{font-size:12px;gap:5px 12px}.k36-course-facts span+span{border:0;padding:0}.k36-enrollment{padding:45px 0}.k36-enrollment-layout{grid-template-columns:1fr;gap:24px}.k36-group-bottom{grid-template-columns:minmax(0,1fr) auto;gap:16px}.k36-group{padding:21px}.k36-purchase{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:36px;padding:25px}.k36-purchase-selection{grid-column:1}.k36-purchase-payment{grid-column:2;grid-row:1}.k36-total{border:0;padding-top:0}.k36-program-price{grid-column:1/-1}.k36-quantity-help{margin-bottom:0}.k36-course-example .k36-example-layout{grid-template-columns:1fr}.k36-example-intro p{max-width:600px}.k36-teacher-track{grid-auto-columns:min(650px,calc(100% - 24px));gap:16px}}
@media(max-width:560px){.k36-hero-shell{width:calc(100% - 40px);padding-block:33px 36px;gap:35px}.k36-hero h1{font-size:clamp(27px,7.8vw,42px);gap:10px;letter-spacing:-.05em}.k36-paper-title{padding:3px 9px 7px;box-shadow:4px 4px 0 #e9a77f}.k36-paper-title+span{margin-left:7px}.k36-hero-eyebrow{font-size:10px;letter-spacing:.06em;margin-bottom:24px}.k36-hero-description{font-size:15px;line-height:1.75}.k36-hero-actions{gap:18px;align-items:flex-start;flex-direction:column}.k36-hero-actions .btn{font-size:14px;min-height:49px;padding:13px 19px}.k36-hero-secondary{font-size:13px}.k36-directions h2{font-size:23px;margin-bottom:18px}.k36-direction-grid{gap:11px}.k36-direction{padding:16px;min-height:142px;border-radius:13px}.k36-direction-name{font-size:31px;margin-top:18px}.k36-direction:nth-child(n+3) .k36-direction-name{font-size:19px}.k36-direction-arrow{width:27px;height:27px;font-size:19px}.k36-direction-icon{width:23px;height:23px}.k36-filters{padding:16px;border-radius:13px;margin-bottom:20px}.k36-search-row{gap:8px}.k36-control{font-size:12px;gap:7px}.k36-control input,.k36-control select{font-size:13px;height:45px;padding-inline:10px}.k36-search-row .btn{padding:0 15px;font-size:13px;height:45px;min-height:45px}.k36-filter-row{margin-top:19px;gap:16px 12px}.k36-filter-label{font-size:12px}.k36-filter-buttons{gap:7px}.k36-filter-button{font-size:12px;min-height:39px;padding:9px 10px}.k36-catalog .k36-course-card{padding:16px;grid-template-columns:92px minmax(0,1fr);column-gap:15px;row-gap:16px;border-radius:14px}.k36-course-image{width:92px;height:119px;border-radius:8px}.k36-course-meta{font-size:10px;gap:5px;margin-bottom:7px}.k36-course-meta span+span:before{margin-right:5px}.k36-course-main h2{font-size:21px;line-height:1.2;margin-bottom:10px;overflow-wrap:anywhere}.k36-course-desc{font-size:12px;line-height:1.55;margin-bottom:12px}.k36-course-facts{font-size:11px;display:block;margin-bottom:12px}.k36-course-facts span{display:block;margin-bottom:4px}.k36-course-teacher{font-size:11px;gap:7px}.k36-course-teacher .teacher-dot{width:24px;height:24px;flex-basis:24px}.k36-course-buy{column-gap:14px;padding-top:14px}.k36-course-price{font-size:22px}.k36-course-unit{font-size:11px}.k36-course-buy .btn{min-width:0;width:142px;padding:12px 10px;font-size:12px}.k36-course-more{font-size:11px}.k36-teacher-track{grid-auto-columns:calc(100% - 12px);gap:13px;padding-bottom:13px}.k36-teacher{grid-template-columns:99px minmax(0,1fr);gap:16px;padding:17px;border-radius:13px}.k36-teacher-photo{width:99px;min-height:153px;max-height:210px;height:180px;background-position:center 20%}.k36-teacher h3{font-size:21px;line-height:1.2;margin-bottom:13px}.k36-teacher-facts{padding-left:13px}.k36-teacher-facts li{font-size:13px;line-height:1.6;margin-bottom:8px;padding:0}.k36-teacher-controls{margin-top:12px}.k36-teacher-arrow{width:38px;height:38px;font-size:21px}.k36-enrollment{padding:37px 0}.k36-enrollment-heading{display:block;margin-bottom:20px}.k36-enrollment-heading h2{font-size:29px;margin-bottom:11px}.k36-timezone{font-size:12px}.k36-group{padding:16px;border-radius:13px}.k36-group-heading{gap:12px;margin-bottom:16px}.k36-group-choice{font-size:17px;gap:8px}.k36-group-price{font-size:17px;line-height:1.3;text-align:right}.k36-group-price small{display:block;font-size:10px}.k36-week{gap:4px;margin-bottom:14px}.k36-week-day{min-height:50px;border-radius:5px;gap:5px}.k36-week-day span{font-size:10px}.k36-week-day small{font-size:11px}.k36-group-bottom{grid-template-columns:1fr;gap:11px}.k36-group-details{font-size:12px;gap:2px 11px}.k36-group-teacher{font-size:12px}.k36-group-teacher .teacher-dot{width:27px;height:27px;flex-basis:27px}.k36-group-period{font-size:11px;margin-top:12px}.k36-purchase{display:block;padding:21px;border-radius:14px}.k36-purchase h3{font-size:22px}.k36-purchase-schedule{margin-bottom:20px}.k36-quantity-help{margin-bottom:21px}.k36-total{border-top:1px solid #d7ddc9;padding-top:19px}.k36-purchase .btn{min-height:46px}.k36-course-example .hp-card-body{padding:17px}.k36-example-intro h2{font-size:29px}.k36-course-example .hp-comment p{font-size:14px}.k36-course-example .hp-app-header{font-size:10px}}
@media(max-width:370px){.k36-hero-shell{width:calc(100% - 32px)}.k36-hero h1{font-size:26px}.k36-direction{padding:13px;min-height:133px}.k36-direction:nth-child(n+3) .k36-direction-name{font-size:17px}.k36-teacher{grid-template-columns:83px minmax(0,1fr);gap:12px;padding:14px}.k36-teacher-photo{width:83px;height:158px}.k36-teacher h3{font-size:19px}.k36-teacher-facts li{font-size:12px}.k36-catalog .k36-course-card{grid-template-columns:80px minmax(0,1fr);gap:12px;padding:14px}.k36-course-image{width:80px;height:112px}.k36-course-main h2{font-size:19px}.k36-course-buy .btn{width:129px}.k36-course-price{font-size:20px}.k36-group{padding:14px}.k36-week-day small{font-size:10px}.k36-week-day span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.k36-direction,.k36-group{transition:none}}

/* k37-styles */
/* R37: unified learning section and larger horizontal teacher cards. */
.k37-learning{position:relative;background:#edf0e5;padding-block:68px;color:#203e32}
.k37-learning *{box-sizing:border-box}
.k37-anchor{position:absolute;top:0;left:0;scroll-margin-top:90px}
.k37-learning-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:66px;align-items:center}
.k37-learning-copy{min-width:0}
.k37-learning-copy h2{font-size:clamp(30px,3vw,42px);line-height:1.18;letter-spacing:-.04em;font-weight:500;margin:0 0 24px;max-width:490px}
.k37-learning-copy>p{font-size:17px;line-height:1.8;color:#5a6e60;margin:0;max-width:465px}
.k37-learning-actions{display:flex;flex-direction:column;align-items:flex-start;gap:21px;margin-top:30px}
.k37-learning-actions .btn{min-height:50px;padding:14px 22px;gap:30px;font-size:15px;border-radius:10px}
.k37-learning-actions .text-link{margin:0;font-size:15px;line-height:1.5}
.k37-learning-copy .k37-access-note{font-size:13px;line-height:1.65;margin-top:24px;max-width:380px;color:#667862}
.k37-workspace{min-width:0;border:1px solid #cbd5c1;border-radius:17px;background:#fffdf6;overflow:hidden;box-shadow:0 10px 28px #254a3510}
.k37-workspace-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 25px;background:#e2e8d7;border-bottom:1px solid #cbd5c1;font-size:12px;color:#46634b}
.k37-workspace-body{padding:23px 25px 0}
.k37-lesson-heading>span{display:block;font-size:12px;color:#71816b;margin-bottom:8px}
.k37-lesson-heading h3{font-size:23px;line-height:1.3;font-weight:500;letter-spacing:-.02em;margin:0;color:#254332}
.k37-resources{display:flex;flex-wrap:wrap;gap:10px;margin:17px 0 20px}
.k37-resources button{display:inline-flex;align-items:center;gap:8px;min-height:37px;padding:8px 11px;border:1px solid #d8dece;border-radius:7px;background:#f8f9f0;color:#38593e;font:inherit;font-size:12px;line-height:1.2;cursor:pointer}
.k37-resources button:hover{background:#edf2e4;border-color:#829e77}
.k37-resources svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.k37-work-fragment{border:1px solid #d7dfcc;border-radius:11px;padding:17px 19px;background:#fffef9}
.k37-work-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}
.k37-work-heading h4{font-size:14px;font-weight:500;line-height:1.4;margin:0;color:#314d35}
.k37-work-heading>span{font-size:11px;white-space:nowrap;color:#59724b}
.k37-work-heading>span>span{margin-left:3px}
.k37-solution-line>span,.k37-teacher-comment>span{display:block;font-size:11px;color:#77836e;line-height:1.4}
.k37-solution-line p{font-size:19px;line-height:1.5;letter-spacing:-.02em;margin:5px 0 15px;color:#354534}
.k37-teacher-comment{border-left:2px solid #d49e74;padding-left:12px}
.k37-teacher-comment>span{color:#86634b}
.k37-teacher-comment p{font-size:13px;line-height:1.65;color:#51664e;margin:5px 0 0}
.k37-open-work{display:inline-flex;align-items:center;gap:12px;font-size:12px;line-height:1.5;color:#34633f;text-decoration:underline;text-underline-offset:4px;margin-top:15px}
.k37-open-work:hover{color:#122f1e}
.k37-practice-link{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:58px;padding:16px 0;font-size:13px;line-height:1.5;color:#315e3f;text-decoration:none}
.k37-practice-link:hover>span:first-child{text-decoration:underline;text-underline-offset:4px}
.k37-learning a:focus-visible,.k37-learning button:focus-visible{outline:3px solid #80a477;outline-offset:4px}
.k36-teacher-track{grid-auto-columns:min(820px,calc(100% - 54px));gap:26px}
.k36-carousel[data-teacher-count="1"] .k36-teacher-track{grid-auto-columns:min(950px,100%)}
.k36-teacher{grid-template-columns:220px minmax(0,1fr);gap:32px;padding:28px;border-radius:17px;align-items:center}
.k36-teacher-photo{width:220px;height:280px;min-height:280px;max-height:none;border-radius:10px}
.k36-teacher-copy{padding-top:0}
.k36-teacher h3{font-size:31px;line-height:1.25;margin-bottom:22px}
.k36-teacher-facts{padding-left:19px}
.k36-teacher-facts li{font-size:17px;line-height:1.7;margin-bottom:12px;padding-left:3px}
@media(max-width:1100px){
 .k37-learning-layout{gap:38px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
 .k37-learning-copy h2{font-size:35px}
 .k37-learning-copy>p{font-size:16px}
 .k37-workspace-bar{padding-inline:21px}.k37-workspace-body{padding:21px 21px 0}
 .k37-lesson-heading h3{font-size:21px}
 .k36-teacher-track{grid-auto-columns:min(800px,calc(100% - 36px))}
}
@media(max-width:800px){
 .k37-learning{padding-block:48px}
 .k37-learning-layout{grid-template-columns:minmax(0,1fr);gap:30px}
 .k37-learning-copy h2{max-width:650px;margin-bottom:17px;font-size:34px}
 .k37-learning-copy>p{max-width:650px}
 .k37-learning-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:20px 26px;margin-top:23px}
 .k37-learning-copy .k37-access-note{max-width:600px;margin-top:17px}
 .k37-workspace{width:100%;max-width:650px}
 .k36-teacher-track{grid-auto-columns:calc(100% - 22px);gap:18px}
 .k36-teacher{grid-template-columns:180px minmax(0,1fr);gap:25px;padding:24px;align-items:start}
 .k36-teacher-photo{width:180px;height:255px;min-height:255px}
 .k36-teacher h3{font-size:27px;margin-bottom:19px}
 .k36-teacher-facts li{font-size:16px;line-height:1.65;margin-bottom:11px}
}
@media(max-width:560px){
 .k37-learning{padding-block:38px}
 .k37-learning-layout{gap:25px}
 .k37-learning-copy h2{font-size:30px;line-height:1.2;margin-bottom:17px}
 .k37-learning-copy>p{font-size:15px;line-height:1.75}
 .k37-learning-copy .k37-access-note{font-size:12px;line-height:1.65;margin-top:20px}
 .k37-learning-actions{flex-direction:column;align-items:flex-start;gap:18px}
 .k37-learning-actions .btn{font-size:14px;min-height:47px;padding:13px 19px}
 .k37-learning-actions .text-link{font-size:14px}
 .k37-workspace{border-radius:13px}
 .k37-workspace-bar{padding:12px 17px;font-size:11px}
 .k37-workspace-body{padding:18px 17px 0}
 .k37-lesson-heading h3{font-size:21px}.k37-lesson-heading>span{font-size:11px}
 .k37-resources{gap:7px;margin:15px 0 17px}.k37-resources button{font-size:11px;padding:8px;gap:6px}
 .k37-work-fragment{padding:15px 13px;border-radius:9px}
 .k37-work-heading{gap:8px;margin-bottom:14px}.k37-work-heading h4{font-size:13px}.k37-work-heading>span{font-size:10px}
 .k37-solution-line p{font-size:17px;line-height:1.5;letter-spacing:-.035em}
 .k37-teacher-comment p{font-size:12px;line-height:1.65}
 .k37-practice-link{font-size:12px;min-height:54px}
 .k36-teacher-track{grid-auto-columns:100%;gap:16px}
 .k36-teacher{grid-template-columns:112px minmax(0,1fr);gap:18px;padding:18px;border-radius:14px}
 .k36-teacher-photo{width:112px;height:205px;min-height:205px}
 .k36-teacher h3{font-size:24px;line-height:1.2;margin-bottom:16px;overflow-wrap:anywhere}
 .k36-teacher-facts{padding-left:14px}.k36-teacher-facts li{font-size:14px;line-height:1.65;margin-bottom:10px;padding:0}
}
@media(max-width:370px){
 .k37-workspace-bar{padding-inline:14px}.k37-workspace-body{padding-inline:14px}.k37-work-fragment{padding-inline:11px}
 .k37-learning-copy h2{font-size:28px}.k37-solution-line p{font-size:15px}.k37-work-heading h4{font-size:12px}
 .k36-teacher{grid-template-columns:94px minmax(0,1fr);gap:14px;padding:15px}
 .k36-teacher-photo{width:94px;height:184px;min-height:184px}
 .k36-teacher h3{font-size:21px}.k36-teacher-facts li{font-size:13px;line-height:1.65}
}
/* The legacy section IDs remain usable as anchors, without their old section styles. */
#home-space.k37-anchor,#home-trainer.k37-anchor{display:block;width:0;height:0;min-height:0;padding:0;margin:0;border:0;background:none;overflow:hidden;pointer-events:none}

/* k39-styles */
/* R39: R38 option 02 integrated into the course catalogue. */
#catalog-grid>.k39-course-card{display:grid;grid-template-columns:280px minmax(0,1fr);gap:0;min-height:255px;min-width:0;padding:0;margin:0;overflow:hidden;border:1px solid #d5dcce;border-radius:17px;background:#fffdf6;box-shadow:none;align-items:stretch}
.k39-course-card *{box-sizing:border-box}
.k39-course-art{display:grid;place-items:center;min-width:0;min-height:255px;background:#e4ecdf;text-decoration:none;overflow:hidden}
.k39-course-art.russian{background:#ede2d1}.k39-course-art.school{background:#dfe9d8}.k39-course-art.olympiad{background:#ece5c6}
.k39-course-art img{display:block;width:100%;height:100%;max-height:285px;object-fit:contain}
.k39-course-content{min-width:0;padding:27px 30px}
.k39-course-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:9px;font-size:12px;line-height:1.4;color:#5e795e}
.k39-course-meta span+span:before{content:'·';margin-right:7px;color:#8c9b82}
.k39-course-content h2{font-size:31px;line-height:1.2;font-weight:500;letter-spacing:-.035em;margin:0 0 10px;overflow-wrap:break-word;color:#213d31}
.k39-course-content h2 a{text-decoration:none;color:inherit}.k39-course-content h2 a:hover{color:#457a53}
.k39-course-desc{font-size:14px;line-height:1.65;color:#677768;max-width:620px;margin:0 0 15px}
.k39-course-details{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.k39-course-facts{display:flex;align-items:center;flex-wrap:wrap;gap:7px 16px;font-size:12px;line-height:1.6;color:#5b7357}
.k39-course-facts span{display:inline-flex;align-items:center;gap:6px}
.k39-course-facts svg,.k39-course-teacher svg{width:16px;height:16px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.k39-course-teacher{display:inline-flex;align-items:center;gap:7px;font-size:12px;line-height:1.5;color:#5c7156;text-decoration:none}
.k39-course-teacher:hover{text-decoration:underline;text-underline-offset:4px}
.k39-course-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #d5dcce;margin-top:21px;padding-top:19px}
.k39-course-price{font-size:27px;line-height:1.2;font-weight:500;letter-spacing:-.04em;white-space:nowrap;margin:0;color:#213d31}
.k39-course-price>span{font-size:13px;font-weight:400;letter-spacing:0;margin-right:2px}
.k39-course-unit{font-size:11px;line-height:1.6;color:#677768;margin:5px 0 0}
.k39-course-action{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #a4b89c;border-radius:8px;min-height:44px;padding:11px 17px;line-height:1.3;font-size:13px;white-space:nowrap;background:transparent;color:#185345;text-decoration:none}
.k39-course-action:hover{background:#e8efdf;border-color:#507654}.k39-course-action span{font-size:18px}
.k39-course-card a:focus-visible{outline:3px solid #a3bd94;outline-offset:4px}
@media(max-width:1100px){#catalog-grid>.k39-course-card{grid-template-columns:235px minmax(0,1fr)}.k39-course-content{padding:24px}.k39-course-content h2{font-size:28px}.k39-course-details{align-items:flex-start;flex-direction:column;gap:12px}}
@media(max-width:800px){#catalog-grid>.k39-course-card{grid-template-columns:200px minmax(0,1fr)}.k39-course-content{padding:22px}.k39-course-content h2{font-size:26px}.k39-course-bottom{gap:16px;flex-wrap:wrap}.k39-course-action{min-width:150px}.k39-course-facts{font-size:11px}}
@media(max-width:560px){#catalog-grid>.k39-course-card{grid-template-columns:minmax(0,1fr);border-radius:13px}.k39-course-art{height:205px;min-height:0}.k39-course-art img{height:205px;width:100%;max-height:none}.k39-course-content{padding:21px}.k39-course-content h2{font-size:27px}.k39-course-meta{font-size:11px}.k39-course-desc{font-size:13px;line-height:1.7;margin-bottom:15px}.k39-course-details{gap:11px}.k39-course-teacher{font-size:11px}.k39-course-facts{gap:6px 13px}.k39-course-bottom{gap:15px;margin-top:19px;padding-top:18px}.k39-course-price{font-size:26px}.k39-course-action{font-size:12px;min-width:0;gap:14px;padding-inline:14px}.k39-course-unit{font-size:10px}}
@media(max-width:370px){.k39-course-content{padding:18px}.k39-course-content h2{font-size:25px}.k39-course-art,.k39-course-art img{height:190px}.k39-course-price{font-size:24px}.k39-course-action{gap:10px;padding-inline:12px}.k39-course-bottom{gap:12px}}

/* k40-styles */
.k40-features{position:relative;background:#edf0e5;padding:66px 0;color:#203e32}.k40-features *{box-sizing:border-box}#home-space.k40-anchor,#home-trainer.k40-anchor{position:absolute;top:0;left:0;display:block;width:0;height:0;min-height:0;padding:0;margin:0;border:0;background:none;overflow:hidden;pointer-events:none;scroll-margin-top:95px}.k40-features-heading{margin-bottom:31px;max-width:750px}.k40-features-heading h2{font-size:39px;font-weight:500;letter-spacing:-.035em;line-height:1.2;margin:0 0 15px}.k40-features-heading>p{font-size:16px;line-height:1.75;color:#62745f;margin:0;max-width:700px}.k40-feature-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:31px;align-items:start}.k40-tabs{display:grid;gap:11px}.k40-tab{display:grid;grid-template-columns:23px minmax(0,1fr) 18px;gap:12px;align-items:center;min-height:79px;padding:19px 18px;border:1px solid #ced8c3;border-radius:11px;background:#f8f9ef;text-align:left;font:inherit;font-size:15px;line-height:1.5;color:#486144;cursor:pointer}.k40-tab svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.k40-tab-arrow{font-size:20px;opacity:.55}.k40-tab[aria-selected=true]{background:#215942;color:#fffdf2;border-color:#215942}.k40-tab[aria-selected=true] .k40-tab-arrow{opacity:1}.k40-tab:hover{border-color:#79946c}.k40-feature-panels{min-width:0}.k40-feature-panel{border:1px solid #d1d9c7;border-radius:16px;background:#fffdf6;padding:28px;min-height:460px;display:flex;flex-direction:column}.k40-panel-copy h3{font-size:27px;line-height:1.25;letter-spacing:-.025em;font-weight:500;margin:0 0 13px;max-width:630px}.k40-panel-copy>p{font-size:15px;line-height:1.7;color:#65765f;margin:0 0 24px;max-width:660px}.k40-ui{background:#f8f9f1;border:1px solid #d9dfcf;border-radius:11px;overflow:hidden}.k40-ui-bar{display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:11px;color:#5d7555;background:#e9eedf;padding:11px 19px;border-bottom:1px solid #d9dfcf}.k40-ui-body{padding:18px 20px}.k40-lesson-row{display:grid;grid-template-columns:32px minmax(0,1fr) 15px;align-items:center;gap:12px;padding:11px 10px}.k40-lesson-row.is-current{background:#eef2e4;border-radius:7px}.k40-number{font-size:12px;color:#849176}.k40-lesson-row h4{font-size:15px;font-weight:500;line-height:1.4;margin:0 0 3px}.k40-lesson-row p{font-size:11px;color:#7a886f;line-height:1.5;margin:0}.k40-resource-row{display:flex;gap:11px;flex-wrap:wrap;margin-top:17px}.k40-resource-row button{font:inherit;font-size:11px;line-height:1.4;border:1px solid #cdd8bf;border-radius:6px;background:#fffdf5;padding:8px 11px;color:#496b42;cursor:pointer}.k40-resource-row button span{margin-left:5px}.k40-work-title{font-size:16px;font-weight:500;line-height:1.4;margin:0 0 13px}.k40-answer>span,.k40-feedback>span{font-size:11px;color:#7a886e}.k40-answer p{font-size:19px;line-height:1.5;margin:5px 0 15px}.k40-feedback{border-left:2px solid #d59e75;padding-left:12px}.k40-feedback>span{color:#916b4c}.k40-feedback p{font-size:13px;line-height:1.65;color:#576b4f;margin:5px 0 0;max-width:610px}.k40-panel-link{display:inline-flex;align-items:center;align-self:flex-start;gap:14px;font-size:13px;line-height:1.5;color:#2b5a3d;text-decoration:underline;text-underline-offset:5px;padding-top:22px;margin-top:auto}.k40-topics{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 17px}.k40-topics span{font-size:10px;border:1px solid #d4ddc7;border-radius:5px;padding:5px 9px;color:#6b7c5e}.k40-topics .is-current{background:#dfe9d5;border-color:#b9cbaa;color:#355b32}.k40-task-instruction{font-size:12px;color:#718066;margin:0 0 10px}.k40-equation{font-size:21px;line-height:1.5;margin:0 0 15px}.k40-check-result{display:flex;gap:20px;justify-content:space-between;font-size:12px;padding:10px 13px;border:1px solid #cad8bd;border-radius:7px;background:#eef4e6;color:#3c6637}.k40-practice-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:auto}.k40-practice-footer p{font-size:11px;line-height:1.6;max-width:300px;color:#76856b;margin:17px 0 0}.k40-practice-footer .k40-panel-link{flex-shrink:0}.k40-features a:focus-visible,.k40-features button:focus-visible,.k40-feature-panel:focus-visible{outline:3px solid #86a377;outline-offset:4px}
/* Shared text edges and predictable information rows on cards. */
.k39-course-content{display:flex;flex-direction:column;align-items:stretch;text-align:left}.k39-course-details{display:grid;grid-template-columns:minmax(0,1fr);justify-items:start;align-items:start;gap:11px;margin-bottom:20px}.k39-course-teacher{justify-self:start}.k39-course-bottom{margin-top:auto}.k39-course-desc{min-height:3.3em}.k39-course-content h2{min-height:1.2em}.k36-teacher{align-items:start}
#home-course-grid>.course-card{display:flex;flex-direction:column;text-align:left;align-items:stretch}#home-course-grid>.course-card>h3{min-height:2.4em;line-height:1.2}#home-course-grid>.course-card>.course-desc{min-height:4.8em;line-height:1.6}#home-course-grid>.course-card>.card-price{margin-top:auto;width:100%}
@media(max-width:1000px){.k40-feature-layout{grid-template-columns:245px minmax(0,1fr);gap:23px}.k40-tab{font-size:14px;padding:17px 15px;gap:10px}.k40-feature-panel{padding:23px;min-height:480px}.k40-panel-copy h3{font-size:25px}.k40-practice-footer{display:block}.k40-practice-footer p{max-width:none;margin-top:12px}.k39-course-content h2{min-height:2.4em}}
@media(max-width:800px){.k40-features{padding:48px 0}.k40-feature-layout{grid-template-columns:minmax(0,1fr);gap:20px}.k40-tabs{display:flex;gap:9px;overflow-x:auto;padding:2px 2px 7px;scrollbar-width:thin}.k40-tab{flex:0 0 215px;min-height:69px;grid-template-columns:21px minmax(0,1fr);font-size:13px}.k40-tab-arrow{display:none}.k40-feature-panel{min-height:450px}.k40-features-heading h2{font-size:34px}.k40-practice-footer{display:flex}.k40-practice-footer p{max-width:300px}.k39-course-content h2{min-height:0}}
@media(max-width:560px){.k40-features{padding:38px 0}.k40-features-heading{margin-bottom:23px}.k40-features-heading h2{font-size:30px}.k40-features-heading>p{font-size:14px;line-height:1.75}.k40-tab{flex-basis:195px;min-height:66px;padding:13px;gap:9px}.k40-feature-panel{padding:19px;min-height:0;border-radius:13px}.k40-panel-copy h3{font-size:24px}.k40-panel-copy>p{font-size:14px;margin-bottom:20px}.k40-ui-bar{font-size:10px;padding:10px 13px}.k40-ui-body{padding:15px 13px}.k40-lesson-row{padding:10px 5px;grid-template-columns:23px minmax(0,1fr) 13px;gap:7px}.k40-lesson-row h4{font-size:13px}.k40-lesson-row p{font-size:10px}.k40-answer p{font-size:17px}.k40-feedback p{font-size:12px}.k40-equation{font-size:17px}.k40-work-title{font-size:15px}.k40-resource-row{gap:7px}.k40-resource-row button{padding:8px;font-size:10px}.k40-practice-footer{display:block}.k40-practice-footer p{max-width:none;margin-top:13px}.k40-panel-link{font-size:12px;padding-top:20px}.k39-course-desc{min-height:0}#home-course-grid>.course-card>h3,#home-course-grid>.course-card>.course-desc{min-height:0}}

/* k42-styles */
/* R42 hero: the offer is read as three short, distinct points. */
.k36-hero-copy .k42-hero-list{max-width:620px;margin:0;color:#fff9eb;font-size:21px;line-height:1.55;font-weight:400}.k42-hero-list>.copy-text-list{margin:0;padding-left:1.1em;display:grid;gap:13px;list-style-type:disc}.k42-hero-list>.copy-text-list>li{padding-left:7px;margin:0;line-height:inherit}.k42-hero-list>.copy-text-list>li::marker{color:#e7ab82;font-size:.83em}.k42-hero-list+.k36-hero-actions{margin-top:32px}
.copy-list-host>.copy-text-list{margin:0;padding-left:1.3em;list-style-position:outside}.copy-list-host>ul.copy-text-list{list-style-type:disc}.copy-list-host>ol.copy-text-list{list-style-type:decimal}.copy-list-host>.copy-text-list>li{margin:0 0 .42em;line-height:inherit;font-size:inherit;color:inherit;font-weight:inherit}.copy-list-host>.copy-text-list>li:last-child{margin-bottom:0}

@media(max-width:800px){.k36-hero-copy .k42-hero-list{font-size:18px}.k42-hero-list>.copy-text-list{gap:11px}}@media(max-width:560px){.k36-hero-copy .k42-hero-list{font-size:16px;line-height:1.6}.k42-hero-list>.copy-text-list{gap:10px}.k42-hero-list+.k36-hero-actions{margin-top:25px}}
/* r44-styles */
/* Independently approved knowledge/skill outcomes and schedule guidance. */
.k44-outcomes-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;align-items:start}.k44-outcomes-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;list-style:none;margin:0;padding:0}.k44-outcomes-list>li{padding:23px 0;border-top:1px solid #ccd7c0}.k44-outcomes-list h3{font-size:21px;letter-spacing:-.025em;font-weight:500;line-height:1.35;margin:0 0 11px}.k44-outcomes-list p{font-size:15px;line-height:1.7;color:#687960;margin:0}.k44-outcomes-side{background:#e8eedf;border-radius:15px;padding:24px}.k44-outcomes-side h3{font-size:18px;font-weight:500;line-height:1.4;margin:0 0 11px}.k44-outcomes-side p{font-size:14px;line-height:1.7;color:#617358;margin:0}.k44-outcomes-side>div+div{margin-top:23px;padding-top:22px;border-top:1px solid #cdd9c1}.k44-outcomes-intro{max-width:780px;color:#65785d;font-size:16px;line-height:1.7;margin:14px 0 31px}.k44-schedule-note{font-size:13px;line-height:1.7;color:#647a58;max-width:680px;margin:22px 0 0}
/* Preserve the editor's desktop sizes, with proportional reductions on narrower screens. */
@media(max-width:1250px) and (min-width:801px){.r44-hero-title{font-size:clamp(48px,5.35vw,67px)!important}.k36-direction-name{font-size:clamp(19px,1.95vw,24px)!important}}
@media(max-width:1050px){.k44-outcomes-layout{grid-template-columns:minmax(0,1fr) 255px;gap:27px}.k44-outcomes-list{gap:0 22px}}
@media(max-width:800px){.r44-hero-title{font-size:clamp(33px,8.4vw,67px)!important}.r44-direction-heading{font-size:clamp(29px,5vw,40px)!important}.k36-hero-copy .k42-hero-list{font-size:clamp(17px,3.1vw,24px)!important;line-height:1.35!important}.k36-direction-name{font-size:clamp(18px,3.1vw,24px)!important}.k44-outcomes-layout{grid-template-columns:1fr}.k44-outcomes-side{display:grid;grid-template-columns:1fr 1fr;gap:23px}.k44-outcomes-side>div+div{margin:0;padding:0;border:0}}
@media(max-width:560px){.k44-outcomes-list{grid-template-columns:1fr}.k44-outcomes-list>li{padding:18px 0}.k44-outcomes-list h3{font-size:20px}.k44-outcomes-list p{font-size:14px}.k44-outcomes-side{grid-template-columns:1fr}.k44-outcomes-side>div+div{border-top:1px solid #cdd9c1;padding-top:20px}.k44-outcomes-intro{font-size:14px}}

/* r45-styles */

/* R45: approved content changes, no editor UI. */
.k40-tab{grid-template-columns:23px minmax(0,1fr)}
.k40-lesson-row{grid-template-columns:32px minmax(0,1fr)}
.k40-feature-panel{min-height:470px}
.r45-task-equation{font-size:23px;margin:2px 0 16px;line-height:1.6;color:#203e32}
.r45-task-equation math{font-size:1em}
.r45-chat-topics{margin:12px 0 20px;padding-left:19px;color:#576b4f;font-size:14px;line-height:1.75}
.r45-chat-topics li+li{margin-top:8px}
.r45-chat-note{font-size:12px;color:#6a7b64;line-height:1.6;margin:0}
button.r45-chat-link{border:0;border-radius:0;background:transparent;text-align:left;font-family:inherit;padding-inline:0;cursor:pointer}
.r45-trial-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:60px;align-items:center;padding:40px;border:1px solid #d1d9c7;border-radius:18px;background:#fffdf6}
.r45-trial-card .r34-copy h2{font-size:34px}
.r45-trial-details{padding-left:35px;border-left:1px solid #d1d9c7}
.r45-trial-details h3{font-size:24px;line-height:1.35;font-weight:500;letter-spacing:-.025em;margin:0 0 16px}
.r45-trial-details>p{font-size:15px;line-height:1.75;color:#62745f;margin:0 0 24px}
.r45-trial-details dl{margin:0;display:grid;gap:15px}
.r45-trial-details dl>div{display:grid;grid-template-columns:96px 1fr;gap:15px;font-size:13px;line-height:1.65}
.r45-trial-details dt{color:#71816c}.r45-trial-details dd{margin:0}
.r45-trial-heading{margin:36px 0 23px;max-width:770px}
.r45-trial-heading h2{font-size:29px;font-weight:500;line-height:1.25;letter-spacing:-.03em;margin:0 0 12px}
.r45-trial-heading p{font-size:15px;line-height:1.7;color:#62745f;margin:0}
.r34-course-option h3{font-size:23px;line-height:1.25;letter-spacing:-.025em;font-weight:500;margin:17px 0 12px}
.k36-filter-row{margin-top:0}
.k36-teacher-arrow{width:auto;min-width:77px;height:40px;padding:8px 15px;border-radius:8px;font-size:13px;line-height:1.4}
.k36-teacher-arrow:disabled{opacity:.45;cursor:default}
.courses-trigger{font-size:22px}
.k36-direction-top{justify-content:flex-start}
.k39-course-bottom .r45-start-price,.card-price>.r45-start-price{font-size:12px;font-weight:400;line-height:1.55;color:#566b4e;margin:7px 0 0}
.card-price>.r45-start-price{margin:8px 0 15px}
.k39-course-bottom{gap:18px;flex-wrap:wrap}
.k39-course-action{justify-content:center}
.k36-purchase .btn{justify-content:center}
@media(max-width:800px){.r45-trial-card{gap:30px;padding:28px}.r45-trial-details{padding-left:25px}.r45-trial-card .r34-copy h2{font-size:29px}.r45-trial-details h3{font-size:22px}.k40-tab{grid-template-columns:21px minmax(0,1fr)}}
@media(max-width:620px){.r45-trial-card{grid-template-columns:minmax(0,1fr);gap:26px;padding:23px}.r45-trial-details{border-left:0;border-top:1px solid #d1d9c7;padding:25px 0 0}.r45-trial-card .r34-copy h2{font-size:28px}.r45-trial-details>p{font-size:14px}.r45-trial-heading h2{font-size:26px}.r45-trial-details dl>div{grid-template-columns:84px 1fr}}
@media(max-width:560px){.k40-feature-panel{min-height:0}.k40-lesson-row{grid-template-columns:23px minmax(0,1fr)}.r45-chat-topics{font-size:13px}.r45-task-equation{font-size:21px}.k39-course-bottom .r45-start-price{font-size:11px}.k36-teacher-arrow{font-size:12px;min-width:70px;height:38px}}

/* r46-styles */

/* R46: readable course cards and restored course-menu chevrons. */
.courses-trigger{font-size:inherit}
#catalog-grid .k39-course-content h2{font-size:32px;line-height:1.22;font-weight:500;color:#193c30;margin-bottom:12px}
#catalog-grid .k39-course-meta{font-size:14px;color:#425e4c;margin-bottom:10px}
#catalog-grid .k39-course-desc{font-size:16px;line-height:1.65;color:#3f5549;max-width:660px;margin-bottom:17px}
#catalog-grid .k39-course-details{margin-bottom:20px;gap:0}
#catalog-grid .k39-course-facts{font-size:14px;line-height:1.55;color:#354f3e;gap:9px 20px}
#catalog-grid .k39-course-facts svg{width:18px;height:18px;stroke-width:1.6}
#catalog-grid .k39-course-bottom{align-items:center;padding-top:18px;gap:20px}
#catalog-grid .k39-course-price{font-size:34px;line-height:1.2;font-weight:500;letter-spacing:-.035em;color:#173e30}
#catalog-grid .k39-course-price>span{font-size:15px;color:#354f3e}
#catalog-grid .k39-course-unit{font-size:14px;line-height:1.6;color:#455b4c;margin-top:5px}
#catalog-grid .r45-start-price{font-size:15px;line-height:1.55;color:#2e4e3b;margin-top:8px}
#catalog-grid .k39-course-action{font-size:15px;line-height:1.4;min-height:48px;padding:12px 20px;border-color:#8fa78b;color:#194e3a}
#home-course-grid>.course-card>h3{font-size:29px;line-height:1.22;font-weight:500;color:#193c30}
#home-course-grid>.course-card>.course-desc{font-size:16px;line-height:1.65;color:#3f5549}
#home-course-grid .category-badge,#home-course-grid .class-label{font-size:13px}
#home-course-grid .class-label{color:#455b4c}
#home-course-grid .card-facts dt{font-size:13px;line-height:1.5;color:#455b4c}
#home-course-grid .card-facts dd{font-size:16px;line-height:1.5;color:#254630}
#home-course-grid .card-price strong{font-size:34px;font-weight:500;line-height:1.2;color:#173e30}
#home-course-grid .card-price .unit{font-size:14px;color:#455b4c}
#home-course-grid .card-price>.r45-start-price{font-size:15px;line-height:1.55;color:#2e4e3b;margin:9px 0 17px}
#home-course-grid .card-price .btn{font-size:15px;line-height:1.4;min-height:48px}
@media(max-width:800px){
 #catalog-grid .k39-course-content h2{font-size:29px}
 #catalog-grid .k39-course-price{font-size:32px}
 #catalog-grid .k39-course-bottom{align-items:flex-start;gap:17px}
 #catalog-grid .k39-course-facts{gap:8px 15px}
}
@media(max-width:560px){
 #catalog-grid .k39-course-content h2{font-size:28px}
 #catalog-grid .k39-course-meta{font-size:13px}
 #catalog-grid .k39-course-desc{font-size:15px}
 #catalog-grid .k39-course-price{font-size:32px}
 #catalog-grid .k39-course-unit{font-size:14px}
 #catalog-grid .r45-start-price{font-size:15px}
 #catalog-grid .k39-course-action{width:100%;min-height:48px}
 #home-course-grid>.course-card>h3{font-size:28px;min-height:0}
 #home-course-grid>.course-card>.course-desc{font-size:15px;min-height:0}
 #home-course-grid .card-price strong{font-size:32px}
}

/* r47-common-styles */

/* Course duration uses months; lesson counts remain only in payment terms. */
#home-course-grid .card-facts .r47-home-period{grid-column:1/-1}
#home-course-grid .card-facts .r47-home-period dt{margin-bottom:4px}

/* r48-styles */

/* R48: approved catalog, contact, teacher and first-screen refinements. */
#catalog-grid .k39-course-action{background:#215942;border-color:#215942;color:#fffdf2;min-width:196px;min-height:48px;padding:12px 21px}
#catalog-grid .k39-course-action:hover{background:#164a37;border-color:#164a37;color:#fffdf2}
#catalog-grid .k39-course-action:focus-visible{outline:3px solid #b8855b;outline-offset:4px}
#page-catalog .catalog-hero{padding:42px 0 26px}
#page-catalog .catalog-hero-grid{display:block}
#page-catalog .catalog-hero h1{font-size:40px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0;color:#203e32}
.r48-contact-inner{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:36px;padding:36px 42px}
.r48-contact-inner h2{margin:0;font-size:34px;font-weight:500;line-height:1.25}
.r30-contact-inner.r48-contact-inner>div>p:last-child{margin-top:13px;max-width:650px;font-size:16px;line-height:1.7}
.r48-contact-inner>.btn{min-width:182px}
.r48-question-dialog{width:min(530px,calc(100% - 32px))}
.r48-question-dialog .dialog-top{margin-bottom:14px}
.r48-question-dialog .dialog-top h2{font-size:29px;line-height:1.25}
.r48-question-intro{font-size:15px;line-height:1.65;color:#566b59;margin:0 0 23px}
.r48-question-form{display:grid;gap:10px}
.r48-question-form label{font-size:14px;line-height:1.5}
.r48-question-form input,.r48-question-form textarea{display:block;width:100%;min-width:0;border:1px solid #b9c8b0;border-radius:8px;background:#fffef8;padding:12px 14px;font:inherit;font-size:16px;line-height:1.6;color:#203e32}
.r48-question-form textarea{resize:vertical;min-height:122px;max-height:35dvh}
.r48-question-form input+label{margin-top:8px}
.r48-question-form .btn{margin-top:10px;width:100%}
.r48-question-form input:focus-visible,.r48-question-form textarea:focus-visible{outline:2px solid #6c9063;outline-offset:2px}
.r48-question-form [role=status]{margin:6px 0 0;font-size:14px;line-height:1.55;color:#7b4c30}
.k36-teacher-track{grid-auto-columns:min(900px,calc(100% - 54px))}
.k36-carousel[data-teacher-count="1"] .k36-teacher-track{grid-auto-columns:min(980px,100%)}
.k36-teacher{grid-template-columns:270px minmax(0,1fr);gap:32px;align-items:stretch}
.k36-teacher-photo{width:270px;height:340px;min-height:340px;max-height:none;background-position:center 22%}
.k36-teacher-copy{display:flex;flex-direction:column;align-items:flex-start}
.r48-teacher-link{display:inline-block;margin-top:auto;padding-top:24px;font-size:15px;line-height:1.5;color:#20563f;text-decoration:underline;text-underline-offset:4px}
.r48-teacher-link:hover{color:#3c754d}
.r48-teacher-link:focus-visible{outline:3px solid #86a377;outline-offset:4px}
.r48-profile-shell{padding-block:30px 70px}
.r48-profile{display:grid;grid-template-columns:320px minmax(0,1fr);gap:58px;align-items:center;padding:32px 0 45px}
.r48-profile .r48-profile-photo{width:320px;height:410px;min-height:410px;border-radius:16px}
.r48-profile h1{font-size:44px;line-height:1.18;font-weight:500;letter-spacing:-.04em;margin:0 0 17px;color:#203e32}
.r48-profile-subject{font-size:20px;line-height:1.5;color:#506851;margin:0 0 27px}
.r48-profile-facts{margin:0;padding-left:21px;font-size:17px;line-height:1.75;color:#354f3e}
.r48-profile-facts li+li{margin-top:12px}
.r48-profile-courses{border-top:1px solid #cad6c4;padding-top:36px}
.r48-profile-courses>h2{font-size:32px;line-height:1.25;font-weight:500;margin:0 0 25px;letter-spacing:-.025em}
.r48-profile-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.r48-profile-course{display:flex;flex-direction:column;align-items:flex-start;min-width:0;background:#fffdf6;border:1px solid #d1d9c7;border-radius:15px;padding:26px}
.r48-profile-course-meta{font-size:14px;color:#556f50;margin:0 0 12px}
.r48-profile-course h3{font-size:27px;line-height:1.25;font-weight:500;margin:0 0 12px}
.r48-profile-course h3 a{text-decoration:none;color:#203e32}
.r48-profile-course-period{font-size:15px;color:#4d6651;margin:0 0 23px}
.r48-profile-course .btn{margin-top:auto}
.r48-hero-frame{display:contents}
@media(min-width:901px){
 #home-banner{height:calc(100vh - var(--r48-header-h,var(--top-chrome,77px)));height:calc(100dvh - var(--r48-header-h,var(--top-chrome,77px)));min-height:0;padding:0}
 #home-banner .r48-hero-frame{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
 #home-banner .k36-hero-shell{flex:none;width:min(1400px,calc(100% - 96px));max-width:none;margin:0;padding:clamp(22px,4.3vh,64px) 0;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(30px,5vw,90px);transform:scale(var(--r48-hero-fit,1));transform-origin:center center}
 #home-banner .r44-hero-title{font-size:clamp(39px,4.35vw,80px)!important}
 #home-banner h1{margin-bottom:clamp(22px,3.4vh,34px)}
 #home-banner .k36-hero-eyebrow{margin-bottom:clamp(18px,3vh,28px)}
 #home-banner #home-format{font-size:clamp(18px,1.4vw,24px)!important;line-height:1.4!important}
 #home-banner .k42-hero-list>.copy-text-list{gap:clamp(9px,1.6vh,14px)}
 #home-banner .k36-hero-actions{margin-top:clamp(22px,3.6vh,34px)}
 #home-banner .r44-direction-heading{font-size:clamp(29px,2.2vw,40px)!important}
 #home-banner .k36-direction{min-height:clamp(145px,20vh,184px);padding:clamp(17px,1.5vw,24px)}
 #home-banner .k36-direction-name{font-size:clamp(18px,1.5vw,24px)!important}
}
@media(max-width:1000px){.k36-teacher{grid-template-columns:220px minmax(0,1fr);gap:26px}.k36-teacher-photo{width:220px;height:300px;min-height:300px}.r48-profile{grid-template-columns:270px minmax(0,1fr);gap:35px}.r48-profile .r48-profile-photo{width:270px;height:350px;min-height:350px}.r48-profile h1{font-size:36px}}
@media(max-width:900px){#home-banner .k36-hero-shell{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:40px}#home-banner .r44-hero-title{font-size:clamp(33px,8.4vw,67px)!important}}
@media(max-width:650px){.r48-contact-inner{grid-template-columns:1fr;gap:23px;padding:28px}.r48-contact-inner h2{font-size:29px}.r48-contact-inner>.btn{justify-self:start}.r48-profile{grid-template-columns:1fr;gap:26px;padding-block:25px 35px}.r48-profile .r48-profile-photo{width:min(310px,100%);height:350px;min-height:350px}.r48-profile h1{font-size:34px}.r48-profile-facts{font-size:16px}.r48-profile-subject{font-size:18px}.r48-profile-course-grid{grid-template-columns:1fr}.r48-profile-courses>h2{font-size:28px}}
@media(max-width:560px){.k36-teacher-track{grid-auto-columns:100%}.k36-teacher{grid-template-columns:128px minmax(0,1fr);gap:18px;padding:18px}.k36-teacher-photo{width:128px;height:240px;min-height:240px}.r48-teacher-link{font-size:13px;padding-top:18px}.r48-question-dialog .dialog-inner{padding:23px}.r48-question-dialog .dialog-top h2{font-size:26px}#page-catalog .catalog-hero{padding:30px 0 22px}#page-catalog .catalog-hero h1{font-size:32px}#catalog-grid .k39-course-action{min-width:0}}
@media(max-width:370px){.k36-teacher{grid-template-columns:112px minmax(0,1fr);gap:14px;padding:15px}.k36-teacher-photo{width:112px;height:222px;min-height:222px}}

/* r49-styles */

/* R49: teacher-led trial discovery and a compact catalog heading. */
#page-catalog .catalog-hero{padding:30px 0 30px}
#page-catalog .r49-catalog-breadcrumbs{display:flex;align-items:center;gap:11px;margin:0 0 20px;font-size:14px;line-height:1.5;color:#6b7a69}
#page-catalog .r49-catalog-breadcrumbs a{color:#536951;text-decoration:none}
#page-catalog .r49-catalog-breadcrumbs a:hover{text-decoration:underline;text-underline-offset:4px}
#page-catalog .catalog-hero h1{font-size:clamp(36px,3.4vw,52px);font-weight:500;line-height:1.12;letter-spacing:-.035em;color:#203e32;margin:0}
.k36-teacher-track{grid-auto-columns:min(920px,calc(100% - 54px))}
.k36-carousel[data-teacher-count="1"] .k36-teacher-track{grid-auto-columns:min(980px,100%)}
.k36-teacher{grid-template-columns:270px minmax(0,1fr);gap:32px;padding:28px;align-items:stretch}
.r49-teacher-media{display:flex;flex-direction:column;min-width:0;align-self:stretch}
.k36-teacher .k36-teacher-photo{width:100%;height:100%;min-height:350px;max-height:none;flex:1;border-radius:11px;background-position:center 22%}
.k36-teacher-copy{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;padding:0}
.r49-teacher-heading{margin:0 0 21px;min-width:0}
.k36-teacher .r49-teacher-heading h3{font-size:30px;line-height:1.2;font-weight:500;letter-spacing:-.03em;margin:0;color:#203e32}
.r49-teacher-subject{font-size:18px;line-height:1.4;font-weight:500;color:#20543e;margin:10px 0 0}
.r49-teacher-directions{display:block;font-size:14px;line-height:1.5;font-weight:400;color:#63745f;margin-top:5px}
.k36-teacher .k36-teacher-facts{padding-left:18px;margin:0;color:#405744}
.k36-teacher .k36-teacher-facts li{font-size:16px;line-height:1.6;font-weight:400;margin:0 0 10px;padding-left:2px}
.k36-teacher .k36-teacher-facts li:last-child{margin-bottom:0}
.r49-teacher-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:auto;padding-top:25px}
.r49-trial-action{display:flex;align-items:center;gap:17px;flex-wrap:wrap}
.r49-teacher-actions .r49-trial-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:186px;padding:12px 22px;border:1px solid #215942;border-radius:9px;background:#215942;color:#fffdf2;font-size:16px;line-height:1.4;text-decoration:none}
.r49-teacher-actions .r49-trial-button:hover{background:#163f2f;border-color:#163f2f}
.r49-trial-free{font-size:14px;line-height:1.4;color:#63745f}
.r49-teacher-actions .r48-teacher-link{margin:0;padding:0;font-size:14px;line-height:1.5;color:#315b43}
.r49-trial-button:focus-visible,.r49-trial-context a:focus-visible{outline:3px solid #aa7956;outline-offset:4px}
.r49-trial-context{display:flex;flex-wrap:wrap;align-items:center;gap:16px 30px;padding:22px 26px;margin:0 0 36px;border:1px solid #cbd7c2;border-radius:13px;background:#e9eddf}
.r49-trial-context[hidden],#page-trial [data-trial-course-id][hidden]{display:none!important}
.r49-trial-context>div{margin-right:auto}
.r49-trial-teacher{font-size:24px;line-height:1.25;color:#203e32;margin:0 0 6px;letter-spacing:-.02em}
.r49-trial-subject{font-size:15px;line-height:1.5;color:#51664f;margin:0}
.r49-trial-context a{font-size:14px;color:#315b43;text-underline-offset:4px}
#page-trial .r49-trial-card-teacher{font-size:14px;line-height:1.5;margin:0 0 14px;color:#315b43}
#page-trial.r49-trial-filtered .r49-trial-card-teacher{display:none}
@media(max-width:1000px){.k36-teacher{grid-template-columns:235px minmax(0,1fr);gap:26px;padding:24px}.k36-teacher .k36-teacher-photo{min-height:330px}.k36-teacher .r49-teacher-heading h3{font-size:28px}}
@media(max-width:800px){.k36-teacher-track{grid-auto-columns:100%;gap:18px}.k36-teacher{grid-template-columns:210px minmax(0,1fr);gap:24px;padding:22px}.r49-teacher-actions{padding-top:22px}.k36-teacher .r49-teacher-heading h3{font-size:27px}.r49-trial-action{gap:12px}.k36-teacher .k36-teacher-facts li{font-size:15px}}
@media(max-width:650px){
 .k36-teacher{grid-template-columns:128px minmax(0,1fr);gap:22px 20px;padding:22px}
 .k36-teacher-copy{display:contents}
 .r49-teacher-media{grid-row:1;grid-column:1}
 .k36-teacher .k36-teacher-photo{height:172px;min-height:172px;flex:none}
 .r49-teacher-heading{grid-row:1;grid-column:2;align-self:center;margin:0}
 .k36-teacher .r49-teacher-heading h3{font-size:26px;overflow-wrap:normal}
 .r49-teacher-subject{font-size:17px;margin-top:12px}
 .r49-teacher-directions{font-size:13px;line-height:1.5}
 .k36-teacher .k36-teacher-facts{grid-row:2;grid-column:1/-1}
 .k36-teacher .k36-teacher-facts li{font-size:15px;line-height:1.6}
 .r49-teacher-actions{grid-row:3;grid-column:1/-1;margin:0;padding:0;gap:15px}
 .r49-trial-action{gap:15px}.r49-teacher-actions .r48-teacher-link{font-size:14px}
 #page-catalog .catalog-hero{padding:24px 0}
 #page-catalog .catalog-hero h1{font-size:36px}
 #page-catalog .r49-catalog-breadcrumbs{font-size:13px;margin-bottom:17px}
 .r49-trial-context{padding:20px;gap:16px}.r49-trial-context>div{width:100%}
}
@media(max-width:400px){.k36-teacher{grid-template-columns:108px minmax(0,1fr);gap:20px 16px;padding:18px}.k36-teacher .k36-teacher-photo{height:155px;min-height:155px}.k36-teacher .r49-teacher-heading h3{font-size:23px}.r49-teacher-subject{font-size:16px}.r49-trial-action{gap:12px}.r49-teacher-actions .r49-trial-button{min-width:172px;padding-inline:18px;font-size:15px}.r49-trial-free{font-size:13px}#page-catalog .catalog-hero h1{font-size:32px}}

/* C: the subject is a restrained label above the name. */
.r49-subject-c .r49-teacher-subject{display:table;margin:0 0 13px;padding:7px 12px;border-radius:7px;background:#e5ead8;color:#31533d;font-size:15px;font-weight:400;line-height:1.4}
.r49-subject-c[data-subject="Русский язык"] .r49-teacher-subject{background:#f3e1d2;color:#6b4830}
.r49-subject-c .r49-teacher-directions{margin-top:10px}
@media(max-width:650px){.r49-subject-c .r49-teacher-subject{font-size:13px;line-height:1.4;padding:6px 9px;margin-bottom:10px}.r49-subject-c .r49-teacher-directions{margin-top:9px}}

/* r50-styles */

/* R50: approved teacher cards and catalog heading. */
#page-catalog .catalog-hero{padding:30px 0 40px}
#page-catalog .catalog-hero h1{font-size:clamp(48px,5.1vw,76px);line-height:1.13;text-align:center;font-weight:500;letter-spacing:-.035em;margin:27px 0 0}
.r49-subject-c .r49-teacher-heading{margin-bottom:24px}

/* Two paper accents hold the long sentence together without four identical strips. */
#home-banner #home-title.r50-hero-title{gap:10px;font-size:clamp(28px,3.3vw,58px);line-height:1.08;letter-spacing:-.045em;margin-bottom:30px;max-width:100%}
#home-banner .r50-title-paper{font-size:1em;font-weight:500;padding:3px 11px 8px;max-width:100%;white-space:normal;text-transform:none;line-height:1.14}
#home-banner .r50-title-bridge{display:block;color:#fff9ed;font-size:.81em;font-weight:400;letter-spacing:-.035em;line-height:1.18;margin:4px 0 4px 10px;transform:none}
#home-banner .r50-title-emphasis{margin-left:10px;background:#eeb18a;color:#163d31;box-shadow:5px 5px 0 #f7ebd7;font-weight:550;transform:rotate(.4deg)}

/* One shared navigation, four recognizable examples. */
.k40-features-heading{max-width:820px;margin-bottom:35px}
.k40-features-heading h2{margin-bottom:0}
.k40-feature-layout{grid-template-columns:285px minmax(0,1fr);gap:42px}
.k40-feature-panel{border:0;background:transparent;border-radius:0;padding:0;min-height:450px}
.k40-feature-panel[hidden]{display:none!important}
.k40-panel-copy h3{font-size:29px;line-height:1.25;margin-bottom:13px;max-width:690px}
.k40-panel-copy>p{font-size:16px;line-height:1.65;margin-bottom:25px;color:#50654f;max-width:720px}
.k40-panel-link{font-size:14px;padding-top:24px}
.r50-small-label{font-size:12px;line-height:1.5;margin:0 0 13px;color:#69785e}
.r50-feedback-scene{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:22px}
.r50-work-fragment{background:#fffef7;border:1px solid #d5dbca;border-radius:12px;padding:24px 26px;box-shadow:0 6px 0 #e0e4d6}
.r50-work-fragment h4,.r50-margin-note h4{font-size:17px;line-height:1.45;font-weight:500;margin:0 0 15px;color:#294335}
.r50-math{font-size:26px;line-height:1.5;margin:0 0 22px;color:#233e31}
.r50-student-step{border-top:1px solid #dee3d3;padding-top:13px}
.r50-student-step>span{font-size:12px;line-height:1.5;color:#758269}
.r50-student-step p{font-size:21px;line-height:1.75;margin:5px 0 0;color:#334c3d}
.r50-student-step mark{color:inherit;background:#f6d6bd;padding:1px 5px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.r50-margin-note{position:relative;padding:23px;background:#f4deca;border-radius:3px 13px 13px 13px;color:#5e4938}
.r50-note-sign{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#ae6945;color:#fffaf1;border-radius:50%;font-size:18px;font-weight:500;margin-bottom:12px}
.r50-margin-note h4{margin-bottom:9px;color:#583f2d}
.r50-margin-note p{font-size:14px;line-height:1.65;margin:0}
.r50-note-author{display:block;font-size:11px;line-height:1.5;margin-top:17px;color:#80634d}
.r50-lesson-scene{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(155px,1fr);gap:17px;align-items:stretch}
.r50-video-card{position:relative;background:#1c5041;color:#fffaf0;border-radius:13px;padding:22px 24px;overflow:hidden}
.r50-video-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:11px;line-height:1.5;color:#c9ddc7;margin-bottom:12px}
.r50-video-card h4{font-size:18px;line-height:1.4;margin:0;font-weight:500;color:#fffaf0;max-width:300px}
.r50-board{border-left:2px solid #63917a;margin:22px 0;padding-left:16px;letter-spacing:-.015em}
.r50-board p{font-size:24px;line-height:1.5;margin:5px 0;color:#fffaf0;white-space:nowrap}
.r50-board p+p{font-size:20px;color:#dce9d1}
.r50-board>span{display:block;margin-top:9px;font-size:16px;color:#f3c5a1}
.r50-play{display:inline-flex;align-items:center;gap:10px;border:0;padding:0;background:transparent;color:#fffaf0;font:inherit;font-size:14px;cursor:pointer}
.r50-play-icon{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;flex:none;background:#faf3df;color:#234c3b;border-radius:50%;font-size:12px;padding-left:2px}
.r50-play:hover .r50-play-icon{background:#efb98e}
.r50-lesson-files{display:flex;flex-direction:column;align-items:flex-start;min-width:0;background:#fffdf5;border:1px solid #d3dcc6;border-radius:13px;padding:21px}
.r50-file-sheet{position:relative;width:70px;height:86px;background:#fff;border:1px solid #d6decb;border-radius:4px;margin:6px 0 17px;padding:13px 10px;box-shadow:4px 4px 0 #e7ebde}
.r50-file-sheet>span{display:inline-block;font-size:10px;font-weight:500;line-height:1;background:#ede1d0;color:#735336;padding:4px 5px;margin-bottom:9px}
.r50-file-sheet i{display:block;border-top:2px solid #d2dbc5;margin:4px 0}.r50-file-sheet i:last-child{width:65%}
.r50-lesson-files h4{font-size:16px;line-height:1.4;margin:0 0 8px;font-weight:500;color:#314b3b}
.r50-lesson-files>p:not(.r50-small-label){font-size:13px;line-height:1.6;margin:0 0 17px;color:#6a7a60}
.r50-file-button{border:0;background:none;font:inherit;font-size:13px;line-height:1.6;color:#315b43;text-decoration:underline;text-underline-offset:4px;padding:0;margin-top:auto;text-align:left;cursor:pointer}
.r50-practice-scene{border:1px solid #ccd8bf;border-radius:13px;background:#fffef7;padding:23px 26px}
.r50-practice-path{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;font-size:12px;line-height:1.5;color:#657b58;padding-bottom:17px;border-bottom:1px solid #e0e5d5}
.r50-practice-task{display:grid;grid-template-columns:32px minmax(0,1fr);gap:13px;align-items:start;padding:23px 0 18px}
.r50-task-number{font-size:13px;line-height:1.4;color:#8a9a7d;padding-top:4px}
.r50-practice-task h4{font-size:17px;line-height:1.45;font-weight:500;margin:0 0 12px;color:#294936}
.r50-task-equation{font-size:clamp(20px,1.65vw,26px);line-height:1.45;margin:0;color:#213f2f;letter-spacing:-.02em}
.r50-answer-form{margin:0 0 0 45px}
.r50-answer-form>label{display:block;font-size:13px;color:#647b56;margin-bottom:8px}
.r50-answer-controls{display:flex;gap:12px;align-items:stretch;max-width:445px}
.r50-answer-controls input{width:0;flex:1;min-width:0;max-width:250px;border:1px solid #b8c8a9;border-radius:8px;font:inherit;font-size:16px;line-height:1.5;padding:11px 14px;background:#fffefb;color:#28442e}
.r50-answer-controls .btn{font-size:14px;min-height:46px;padding:11px 19px;border-radius:8px}
.r50-answer-controls input:focus-visible{outline:3px solid #86a377;outline-offset:3px}
.r50-answer-status{min-height:22px;margin:13px 0 0;font-size:13px;line-height:1.55;color:#6c7b60}
.r50-answer-status[data-state=correct]{color:#245732}.r50-answer-status[data-state=incorrect]{color:#8b4a28}
.r50-practice-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-top:auto;padding-top:23px}
.r50-practice-footer .k40-panel-link{padding:0;margin:0;flex-shrink:0}
.r50-practice-footer>p{font-size:12px;line-height:1.6;margin:0;color:#63775b;max-width:330px}
.r50-chat-scene{position:relative;border-radius:14px;background:#e0e7d7;padding:26px;overflow:hidden}
.r50-chat-bubble{max-width:85%;padding:17px 20px;border-radius:14px;background:#fffdf6;border:1px solid #ccd7bd}
.r50-chat-bubble>span{font-size:11px;line-height:1.4;color:#617655}
.r50-chat-bubble p{font-size:15px;line-height:1.65;color:#35513e;margin:7px 0 0}
.r50-chat-student{margin-left:auto;background:#c5d6b9;border-color:#bdcfaf;border-bottom-right-radius:3px;max-width:80%}
.r50-chat-reply{display:flex;align-items:flex-end;gap:11px;margin-top:17px}
.r50-chat-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 33px;width:33px;height:33px;border-radius:50%;background:#486c50;color:#fffdf1;font-size:13px}
.r50-chat-teacher{border-bottom-left-radius:3px;max-width:calc(100% - 44px)}
.r50-chat-caption{font-size:11px;line-height:1.5;color:#677b5b;margin:20px 0 0 44px}
@media(max-width:1150px){.k40-feature-layout{grid-template-columns:250px minmax(0,1fr);gap:30px}.r50-feedback-scene{gap:16px}.r50-work-fragment{padding:20px}.r50-margin-note{padding:19px}.r50-lesson-scene{grid-template-columns:minmax(0,1.5fr) minmax(140px,1fr);gap:13px}.r50-video-card{padding:20px}.r50-lesson-files{padding:18px}.r50-board p{font-size:21px}.r50-board p+p{font-size:18px}.r50-answer-form{margin-left:0}.r50-practice-footer{display:block}.r50-practice-footer>p{margin-top:13px;max-width:none}}
@media(max-width:1000px){.k40-feature-layout{grid-template-columns:230px minmax(0,1fr);gap:24px}.r50-feedback-scene{grid-template-columns:1fr}.r50-work-fragment{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.r50-work-fragment>.r50-small-label{grid-column:1/-1}.r50-work-fragment h4{grid-column:1;margin:0 0 12px}.r50-work-fragment .r50-math{grid-column:1;margin:0}.r50-student-step{grid-column:2;grid-row:2/4;border-top:0;border-left:1px solid #dde4d2;padding:0 0 0 18px;align-self:center}.r50-margin-note{display:grid;grid-template-columns:28px 1fr;column-gap:12px;align-items:start}.r50-note-sign{grid-row:1/4;margin:0}.r50-margin-note h4,.r50-margin-note p,.r50-note-author{grid-column:2}.r50-note-author{margin-top:9px}.r50-lesson-scene{grid-template-columns:1fr}.r50-lesson-files{display:grid;grid-template-columns:50px 1fr;gap:0 15px}.r50-lesson-files>.r50-small-label{display:none}.r50-file-sheet{grid-column:1;grid-row:1/4;width:44px;height:56px;padding:7px 6px;margin:0}.r50-file-sheet span{font-size:8px;padding:3px;margin-bottom:4px}.r50-file-sheet i{margin:3px 0;border-top-width:1px}.r50-file-sheet i:nth-last-child(-n+2){display:none}.r50-lesson-files h4,.r50-lesson-files>p,.r50-file-button{grid-column:2}.r50-lesson-files h4{margin-bottom:4px}.r50-lesson-files>p:not(.r50-small-label){margin-bottom:8px}.r50-board{margin-block:18px}.k40-panel-copy h3{font-size:27px}}
@media(max-width:900px){#home-banner #home-title.r50-hero-title{font-size:clamp(27px,5.6vw,52px);gap:10px}#home-banner .r50-title-bridge{margin-left:7px}.k40-feature-panel{min-height:0}}
@media(max-width:800px){.k40-feature-layout{grid-template-columns:minmax(0,1fr);gap:25px}.r50-feedback-scene{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.r50-work-fragment{display:block}.r50-work-fragment h4{margin-bottom:15px}.r50-work-fragment .r50-math{margin-bottom:20px}.r50-student-step{border:0;border-top:1px solid #dde4d2;padding:13px 0 0}.r50-margin-note{display:block;padding:22px}.r50-note-sign{margin-bottom:12px}.r50-note-author{margin-top:17px}.r50-lesson-scene{grid-template-columns:minmax(0,1.6fr) minmax(155px,1fr)}.r50-lesson-files{display:flex;padding:21px}.r50-lesson-files>.r50-small-label{display:block}.r50-file-sheet{width:70px;height:86px;padding:13px 10px;margin:6px 0 17px}.r50-file-sheet>span{font-size:10px;padding:4px 5px;margin-bottom:9px}.r50-file-sheet i{border-top-width:2px;margin:4px 0}.r50-file-sheet i:nth-last-child(-n+2){display:block}.r50-lesson-files h4{margin-bottom:8px}.r50-lesson-files>p:not(.r50-small-label){margin-bottom:17px}.k40-features-heading{margin-bottom:27px}}
@media(max-width:560px){
 #page-catalog .catalog-hero{padding:24px 0 31px}#page-catalog .catalog-hero h1{font-size:clamp(35px,8.6vw,48px);margin-top:25px}
 #home-banner #home-title.r50-hero-title{font-size:clamp(25px,7vw,38px);margin-bottom:28px;gap:9px}
 #home-banner .r50-title-paper{padding-inline:8px}#home-banner .r50-title-bridge{font-size:.82em;line-height:1.23}#home-banner .r50-title-emphasis{margin-left:7px}
 .k40-panel-copy h3{font-size:26px}.k40-panel-copy>p{font-size:15px;margin-bottom:22px}
 .r50-feedback-scene{grid-template-columns:1fr;gap:19px}.r50-work-fragment{padding:21px 23px}.r50-work-fragment .r50-math{margin-bottom:17px}.r50-margin-note{padding:19px 22px}.r50-note-sign{display:none}.r50-margin-note p{font-size:14px}.r50-note-author{margin-top:11px}
 .r50-lesson-scene{grid-template-columns:1fr}.r50-video-card{padding:23px}.r50-board p{font-size:24px}.r50-board p+p{font-size:21px}.r50-lesson-files{display:grid;grid-template-columns:55px minmax(0,1fr);gap:0 17px;padding:21px}.r50-lesson-files>.r50-small-label{display:none}.r50-file-sheet{grid-column:1;grid-row:1/4;width:50px;height:65px;padding:9px 7px;margin:0}.r50-file-sheet>span{font-size:9px;padding:3px;margin-bottom:5px}.r50-file-sheet i{margin:3px 0;border-top-width:1px}.r50-file-sheet i:last-child{display:none}.r50-lesson-files h4{margin-bottom:5px}.r50-lesson-files>p:not(.r50-small-label){margin-bottom:8px}
 .r50-practice-scene{padding:21px}.r50-practice-task{grid-template-columns:1fr;padding-block:21px;gap:0}.r50-task-number{display:none}.r50-task-equation{font-size:20px}.r50-answer-form{margin-left:0}.r50-answer-controls{gap:9px}.r50-answer-controls input{padding:10px 11px;font-size:16px}.r50-answer-controls .btn{font-size:13px;padding:10px 14px;min-width:0}.r50-answer-status{font-size:12px;min-height:38px}
 .r50-chat-scene{padding:21px 17px}.r50-chat-bubble{padding:14px 16px}.r50-chat-bubble p{font-size:14px}.r50-chat-student{max-width:90%}.r50-chat-avatar{flex-basis:27px;width:27px;height:27px;font-size:11px}.r50-chat-reply{gap:8px}.r50-chat-teacher{max-width:calc(100% - 35px)}.r50-chat-caption{margin-left:35px}
}

/* r51-styles */

/* R51: the title occupies the complete centered catalog container. */
#page-catalog .catalog-hero{display:block}
#page-catalog .catalog-hero>h1{display:block;box-sizing:border-box;width:100%;max-width:none;min-width:0;margin-inline:auto;text-align:center}

/* Restore the original cream paper strips, uppercase text and apricot shadows. */
#home-banner #home-title.r51-hero-title{display:flex;flex-direction:column;align-items:flex-start;gap:11px;width:100%;max-width:100%;margin:0 0 31px;font-size:clamp(27px,3.05vw,57px);font-weight:500;line-height:1.04;letter-spacing:-.045em}
#home-banner .r51-title-line{display:block;width:max-content;max-width:calc(100% - 12px);box-sizing:border-box;margin:0;padding:3px 12px 9px;background:#fffdf5;color:#16332a;font-size:1em;font-weight:500;line-height:1.08;text-transform:uppercase;white-space:normal;box-shadow:6px 6px 0 #e9a77f;transform:rotate(-1deg)}
#home-banner .r51-title-line:nth-child(even){margin-left:12px;transform:rotate(.4deg)}
#home-banner .r51-title-line:nth-child(3){margin-left:3px;transform:rotate(-.6deg)}

/* Pastel colors come from the existing palette of direction cards. */
.k36-teacher-photo.portrait-a{background-color:#d8e6c7}
.k36-teacher-photo.portrait-b{background-color:#edbea1}
.k36-teacher-photo.portrait-c{background-color:#e9dfb8}

/* Slightly larger section titles; course-card and dialog titles retain their sizes. */
#main-content .r51-section-title{font-size:42px;line-height:1.2}
#main-content .r51-section-title.r51-heading-features{font-size:43px}
#main-content .r51-section-title.r51-heading-medium{font-size:38px}
#main-content .r51-section-title.r51-heading-profile{font-size:36px}
#main-content .r51-section-title.r51-heading-trial{font-size:32px}
#main-content .r51-section-title.r51-heading-recordings{font-size:29px}
#home-banner .r44-direction-heading{font-size:clamp(31px,2.45vw,44px)!important}
@media(max-width:1000px){
 #main-content .r51-section-title{font-size:37px}
 #main-content .r51-section-title.r51-heading-medium{font-size:36px}
 #main-content .r51-section-title.r51-heading-profile{font-size:34px}
}
@media(max-width:900px){
 #home-banner #home-title.r51-hero-title{font-size:clamp(30px,5.3vw,52px);gap:11px}
}
@media(max-width:800px){
 #main-content .r51-section-title.r51-heading-features{font-size:37px}
}
@media(max-width:650px){
 #main-content .r51-section-title{font-size:34px}
 #main-content .r51-section-title.r51-heading-medium{font-size:32px}
 #main-content .r51-section-title.r51-heading-profile{font-size:31px}
 #main-content .r51-section-title.r51-heading-trial{font-size:29px}
}
@media(max-width:560px){
 #home-banner #home-title.r51-hero-title{font-size:clamp(22px,6vw,31px);gap:10px;margin-bottom:28px}
 #home-banner .r51-title-line{max-width:calc(100% - 8px);padding:3px 8px 7px;box-shadow:4px 4px 0 #e9a77f;line-height:1.12}
 #home-banner .r51-title-line:nth-child(even){margin-left:8px}
 #home-banner .r44-direction-heading{font-size:27px!important}
 #main-content .r51-section-title.r51-heading-features{font-size:33px}
}

/* r51-r36-course-detail-styles */

/* R51A — course detail only. R36 structure, gently harmonized with R51 colors and Onest. */
.r36-course-detail{
  --r36cd-ink:#183b31;
  --r36cd-muted:#607168;
  --r36cd-border:#d5ddd1;
  --r36cd-surface:#fffdf7;
  --r36cd-soft:#f1f3e9;
  --r36cd-green:#1b5546;
  --r36cd-green-dark:#17483d;
  --r36cd-apricot:#e9a77f;
  background:#f8f5ed;
  color:var(--r36cd-ink);
  font-family:Onest,system-ui,sans-serif;
}
.r36-course-detail *{box-sizing:border-box}
.r36-course-detail .r36cd-main{padding-top:30px;padding-bottom:0}
.r36-course-detail :where(h1,section)[tabindex="-1"]:focus{outline:none}
.r36-course-detail :where(.r36cd-main h1,.r36cd-main h2,.r36cd-main h3,.r36cd-main p,.r36cd-main dl,.r36cd-main dd){margin:0}
.r36-course-detail .r36cd-hero{overflow:hidden;background:var(--r36cd-surface);border:1px solid var(--r36cd-border);border-radius:30px;box-shadow:0 10px 30px rgba(22,51,42,.035)}
.r36-course-detail .r36cd-hero-top{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(300px,.9fr)}
.r36-course-detail .r36cd-hero-copy{padding:42px 36px 38px 44px;align-self:center}
.r36-course-detail .r36cd-eyebrow{display:flex;align-items:center;flex-wrap:wrap;gap:10px;color:var(--r36cd-green);font-size:13px;font-weight:650}
.r36-course-detail .r36cd-tag{padding:5px 11px;border-radius:7px;background:#e7eee4}
.r36-course-detail .r36cd-eyebrow-meta{color:var(--r36cd-muted);font-weight:500}
.r36-course-detail .r36cd-hero h1{margin-top:20px;font-size:clamp(40px,4.4vw,64px);font-weight:550;line-height:1.06;letter-spacing:-.045em;color:var(--r36cd-green-dark)}
.r36-course-detail .r36cd-hero-lead{max-width:520px;margin-top:19px!important;color:var(--r36cd-muted);font-size:16px;line-height:1.68}
.r36-course-detail .r36cd-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:28px}
.r36-course-detail .r36cd-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:50px;padding:13px 22px;border:1px solid var(--r36cd-green-dark);border-radius:11px;background:var(--r36cd-green-dark);color:#fffdf4;font:650 14px/1.5 Onest,system-ui,sans-serif;text-decoration:none;transition:transform .16s,background .16s}
.r36-course-detail .r36cd-button:hover{background:#123c33;transform:translateY(-1px)}
.r36-course-detail .r36cd-button svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.r36-course-detail .r36cd-text-link{display:inline-flex;align-items:center;min-height:44px;color:var(--r36cd-green-dark);font-size:14px;font-weight:650;text-decoration:underline;text-decoration-color:#bdcabb;text-underline-offset:5px}
.r36-course-detail .r36cd-text-link:hover{text-decoration-color:var(--r36cd-green-dark)}
.r36-course-detail .r36cd-hero-art{min-width:0;margin:14px 14px 14px 0;border-radius:21px;overflow:hidden;background:#e8ecde;display:grid;place-items:center}
.r36-course-detail .r36cd-hero-art img{display:block;width:100%;height:100%;min-height:330px;object-fit:cover}
.r36-course-detail .r36cd-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:23px 22px;border-top:1px solid var(--r36cd-border);background:#f2f4ea}
.r36-course-detail .r36cd-facts>div{padding:0 20px;border-left:1px solid #d5ddd1}
.r36-course-detail .r36cd-facts>div:first-child{border-left:0}
.r36-course-detail .r36cd-facts dt{margin-bottom:5px;color:var(--r36cd-muted);font-size:12px}
.r36-course-detail .r36cd-facts dd{color:var(--r36cd-green-dark);font-size:17px;font-weight:600;line-height:1.35}
.r36-course-detail .r36cd-section{margin-top:72px;scroll-margin-top:28px}
.r36-course-detail .r36cd-section-label{display:flex;align-items:center;gap:10px;margin:0 0 17px!important;color:var(--r36cd-muted);font-size:12px}
.r36-course-detail .r36cd-section-number{color:var(--r36cd-green-dark);font-weight:750;font-variant-numeric:tabular-nums}
.r36-course-detail .r36cd-section-label::after{content:"";width:44px;height:1px;background:#bfcbbf}
.r36-course-detail .r36cd-section h2{color:var(--r36cd-green-dark);font-size:clamp(31px,3vw,42px);font-weight:550;line-height:1.12;letter-spacing:-.035em}
.r36-course-detail .r36cd-program{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.8fr);gap:58px;align-items:start;padding-bottom:2px}
.r36-course-detail .r36cd-section-description{margin-top:18px!important;max-width:320px;color:var(--r36cd-muted);font-size:15px;line-height:1.7}
.r36-course-detail .r36cd-program-meta{display:inline-flex;gap:10px;align-items:center;margin-top:22px!important;color:var(--r36cd-green-dark);font-size:13px;font-weight:600}
.r36-course-detail .r36cd-program-meta svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.r36-course-detail .r36cd-modules{overflow:hidden;border:1px solid var(--r36cd-border);border-radius:22px;background:var(--r36cd-surface)}
.r36-course-detail .r36cd-module+.r36cd-module{border-top:1px solid var(--r36cd-border)}
.r36-course-detail .r36cd-module summary{display:grid;grid-template-columns:30px minmax(0,1fr) auto 34px;align-items:center;gap:16px;padding:21px 24px;cursor:pointer;list-style:none;transition:background .16s}
.r36-course-detail .r36cd-module summary::-webkit-details-marker{display:none}
.r36-course-detail .r36cd-module summary:hover{background:#f2f4ea}
.r36-course-detail .r36cd-module-number{color:var(--r36cd-muted);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}
.r36-course-detail .r36cd-module h3{color:#243c33;font-size:16px;font-weight:600;line-height:1.4;letter-spacing:-.015em}
.r36-course-detail .r36cd-module-count{color:var(--r36cd-muted);font-size:12px;white-space:nowrap}
.r36-course-detail .r36cd-module-toggle{display:grid;place-items:center;width:34px;height:34px;border:1px solid #d3ddd2;border-radius:50%;color:var(--r36cd-green-dark)}
.r36-course-detail .r36cd-module-toggle svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.r36-course-detail .r36cd-module[open]{background:#f4f6ed}
.r36-course-detail .r36cd-module[open] .r36cd-module-number{color:var(--r36cd-green-dark)}
.r36-course-detail .r36cd-module[open] .r36cd-module-toggle{background:var(--r36cd-green-dark);color:#fff;border-color:var(--r36cd-green-dark)}
.r36-course-detail .r36cd-module[open] .r36cd-module-vertical{display:none}
.r36-course-detail .r36cd-module-body{padding:0 72px 23px 70px}
.r36-course-detail .r36cd-module-topics{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.r36-course-detail .r36cd-module-topics li{padding:5px 10px;border:1px solid #dae3d6;border-radius:7px;color:#4e6356;background:rgba(255,253,247,.65);font-size:12px;line-height:1.5}

/* Keep the R51 weekday calendar selector, but visually calm it down to match R36. */
.r36-course-detail .r36cd-groups{background:transparent!important;padding:0 0 78px!important;margin-top:72px!important}
.r36-course-detail .r36cd-groups>.shell{padding-top:0}
.r36-course-detail .k36-enrollment-heading{align-items:flex-end!important;margin-bottom:24px!important}
.r36-course-detail .k36-enrollment-heading>div{min-width:0}
.r36-course-detail .k36-enrollment-heading h2{font-size:clamp(31px,3vw,42px)!important;font-weight:550!important;line-height:1.12!important;letter-spacing:-.035em!important;color:var(--r36cd-green-dark)!important}
.r36-course-detail .k36-timezone{font-size:12px!important;color:var(--r36cd-muted)!important;padding-bottom:4px}
.r36-course-detail .k36-enrollment-layout{grid-template-columns:minmax(0,1fr) 330px!important;gap:22px!important}
.r36-course-detail .k36-group-list{gap:13px!important}
.r36-course-detail .k36-group{border:1px solid var(--r36cd-border)!important;border-radius:19px!important;background:var(--r36cd-surface)!important;padding:20px 21px!important;box-shadow:0 8px 24px rgba(22,51,42,.025)!important}
.r36-course-detail .k36-group:hover{border-color:#91a794!important}
.r36-course-detail .k36-group.selected{border-color:var(--r36cd-green)!important;box-shadow:inset 0 0 0 1px var(--r36cd-green),0 8px 24px rgba(22,51,42,.035)!important;background:#fffef8!important}
.r36-course-detail .k36-group-choice{font-size:17px!important;font-weight:600!important;color:#274338!important}
.r36-course-detail .k36-group-choice input{accent-color:var(--r36cd-green)!important}
.r36-course-detail .k36-group-price{font-size:17px!important;font-weight:600!important;color:#29483b!important}
.r36-course-detail .k36-group-price small{font-size:11px!important;color:#758179!important}
.r36-course-detail .k36-week{gap:6px!important;margin-bottom:15px!important}
.r36-course-detail .k36-week-day{min-height:53px!important;border-radius:9px!important;background:#eff2e9!important;color:#879389!important;border:1px solid transparent}
.r36-course-detail .k36-week-day span{font-size:10px!important}
.r36-course-detail .k36-week-day small{font-size:12px!important}
.r36-course-detail .k36-week-day.is-active{background:var(--r36cd-green-dark)!important;color:#fffdf4!important;border-color:var(--r36cd-green-dark)!important}
.r36-course-detail .k36-group-details,.r36-course-detail .k36-group-teacher{font-size:12px!important;color:#5e7166!important}
.r36-course-detail .k36-group-period{font-size:11px!important;color:#728078!important;margin-top:13px!important}
.r36-course-detail .k36-purchase{background:var(--r36cd-surface)!important;border:1px solid var(--r36cd-border)!important;border-radius:20px!important;padding:24px!important;box-shadow:0 8px 24px rgba(22,51,42,.025)!important}
.r36-course-detail .k36-purchase h3{font-size:21px!important;font-weight:550!important;color:var(--r36cd-green-dark)!important}
.r36-course-detail .k36-purchase-group,.r36-course-detail .k36-purchase-schedule{color:var(--r36cd-muted)!important}
.r36-course-detail .k36-quantity{border-color:#cad5c8!important;background:#fffef9!important;border-radius:9px!important}
.r36-course-detail .k36-quantity input{border-color:#d8dfd3!important;color:var(--r36cd-green-dark)!important}
.r36-course-detail .k36-quantity button{color:var(--r36cd-green-dark)!important}
.r36-course-detail .k36-total{border-color:#d8dfd3!important}
.r36-course-detail .k36-total strong{font-size:27px!important;color:var(--r36cd-green-dark)!important;font-weight:600!important}
.r36-course-detail .k36-purchase .btn{background:var(--r36cd-green-dark)!important;color:#fffdf4!important;border-color:var(--r36cd-green-dark)!important;border-radius:10px!important}
.r36-course-detail .k36-program-price{border-color:#d8dfd3!important}
.r36-course-detail .mobile-course-action{font-family:Onest,system-ui,sans-serif}

@media(max-width:1050px){
  .r36-course-detail .r36cd-hero-copy{padding:34px 30px}
  .r36-course-detail .r36cd-program{gap:34px;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr)}
  .r36-course-detail .r36cd-module summary{gap:10px;padding:19px;grid-template-columns:24px minmax(0,1fr) auto 30px}
  .r36-course-detail .r36cd-module-toggle{width:30px;height:30px}
  .r36-course-detail .r36cd-module-body{padding:0 30px 22px 53px}
  .r36-course-detail .k36-enrollment-layout{grid-template-columns:minmax(0,1fr) 305px!important}
}
@media(max-width:800px){
  .r36-course-detail .r36cd-main{padding-top:20px}
  .r36-course-detail .r36cd-hero{border-radius:24px}
  .r36-course-detail .r36cd-hero-top{grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr)}
  .r36-course-detail .r36cd-hero-copy{padding:28px 24px}
  .r36-course-detail .r36cd-hero h1{font-size:clamp(36px,7vw,50px)}
  .r36-course-detail .r36cd-hero-art{margin:12px 12px 12px 0;border-radius:16px}
  .r36-course-detail .r36cd-hero-art img{min-height:270px}
  .r36-course-detail .r36cd-facts{padding-inline:10px}
  .r36-course-detail .r36cd-facts>div{padding-inline:14px}
  .r36-course-detail .r36cd-facts dd{font-size:15px}
  .r36-course-detail .r36cd-program{grid-template-columns:1fr;gap:23px}
  .r36-course-detail .r36cd-section{margin-top:50px}
  .r36-course-detail .r36cd-section-description{max-width:600px;margin-top:12px!important}
  .r36-course-detail .r36cd-program-meta{margin-top:14px!important}
  .r36-course-detail .r36cd-groups{margin-top:50px!important;padding-bottom:56px!important}
  .r36-course-detail .k36-enrollment-layout{grid-template-columns:1fr!important;gap:20px!important}
  .r36-course-detail .k36-purchase{max-width:none!important}
}
@media(max-width:600px){
  .r36-course-detail .r36cd-main{padding-top:14px}
  .r36-course-detail .r36cd-hero-top{grid-template-columns:1fr}
  .r36-course-detail .r36cd-hero-copy{padding:26px 22px 22px}
  .r36-course-detail .r36cd-hero h1{margin-top:17px;font-size:clamp(34px,10vw,46px)}
  .r36-course-detail .r36cd-hero-lead{font-size:15px;line-height:1.62}
  .r36-course-detail .r36cd-hero-actions{gap:10px 16px;margin-top:22px}
  .r36-course-detail .r36cd-hero-actions .r36cd-button{flex:1 0 auto}
  .r36-course-detail .r36cd-hero-actions .r36cd-text-link{flex:1 0 auto;justify-content:center}
  .r36-course-detail .r36cd-hero-art{margin:0 12px 12px;height:160px}
  .r36-course-detail .r36cd-hero-art img{min-height:0;height:100%;object-position:center 49%}
  .r36-course-detail .r36cd-facts{grid-template-columns:1fr 1fr;padding:18px 10px;row-gap:20px}
  .r36-course-detail .r36cd-facts>div:nth-child(3){border-left:0}
  .r36-course-detail .r36cd-facts dt{font-size:11px}
  .r36-course-detail .r36cd-facts dd{font-size:14px}
  .r36-course-detail .r36cd-section h2{font-size:31px}
  .r36-course-detail .r36cd-module summary{grid-template-columns:21px minmax(0,1fr) 30px;gap:10px;padding:17px 15px}
  .r36-course-detail .r36cd-module h3{font-size:15px}
  .r36-course-detail .r36cd-module-count{grid-column:2;grid-row:2;margin-top:-5px}
  .r36-course-detail .r36cd-module-toggle{grid-column:3;grid-row:1/span 2}
  .r36-course-detail .r36cd-module-body{padding:0 16px 20px 46px}
  .r36-course-detail .r36cd-module-topics{gap:6px}
  .r36-course-detail .r36cd-module-topics li{padding:4px 8px}
  .r36-course-detail .k36-enrollment-heading{display:block!important;margin-bottom:18px!important}
  .r36-course-detail .k36-timezone{display:block;margin-top:10px}
  .r36-course-detail .k36-group{padding:16px!important;border-radius:15px!important}
  .r36-course-detail .k36-week{gap:4px!important}
  .r36-course-detail .k36-week-day{min-height:49px!important;border-radius:7px!important}
  .r36-course-detail .k36-purchase{padding:20px!important;border-radius:16px!important}
}

/* r52-hero-design */

/* R52 — forest-green hero, unified cream cards and green study symbols. */
#home-banner.r52-hero {
  --r52-paper: #194F40;
  --r52-ink: #FFF7E8;
  position: relative;
  isolation: isolate;
  background:
    radial-gradient(ellipse 54% 74% at 88% 3%, rgba(234, 184, 143, .10), transparent 72%),
    radial-gradient(ellipse 56% 76% at 3% 94%, rgba(174, 207, 177, .09), transparent 74%),
    var(--r52-paper);
  color: var(--r52-ink);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: auto;
  /* The existing header measurement includes one extra pixel. */
  min-height: calc(100vh - var(--top-chrome, 73px) + 1px);
  min-height: calc(100dvh - var(--top-chrome, 73px) + 1px);
  max-height: none;
  overflow: visible;
  padding: 0;
  font-family: Onest, Arial, sans-serif;
  border-bottom: 1px solid #194F40;
}
#home-banner.r52-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle 330px at 94% 7%,
    transparent 240px, rgba(255, 247, 232, .13) 241px,
    transparent 243px, transparent 300px,
    rgba(255, 247, 232, .07) 301px, transparent 303px);
}
#home-banner.r52-hero *, #home-banner.r52-hero *::before, #home-banner.r52-hero *::after { box-sizing: border-box; }
#home-banner.r52-hero .r52-container { position: relative; z-index: 1; flex: 0 0 auto; width: min(1280px, calc(100% - 96px)); margin: 0 auto; padding: 55px 0 30px; }
#home-banner.r52-hero .r52-intro { display: block; text-align: center; }
#home-banner.r52-hero #home-title { display: block; width: auto; max-width: none; margin: 0; padding: 0; font-family: Onest, Arial, sans-serif; font-size: clamp(59px, 6.4vw, 92px); font-weight: 450; letter-spacing: -.065em; line-height: 1.035; color: #FFF7E8; text-transform: none; overflow-wrap: normal; transform: none; }
#home-banner.r52-hero #home-title em { position: relative; font-family: Georgia, 'Times New Roman', serif; font-size: 1.09em; font-weight: 400; font-style: italic; letter-spacing: -.065em; white-space: nowrap; color: #F3C3A1; }
#home-banner.r52-hero #home-title em::after { content: ''; position: absolute; height: 9px; left: 1%; right: -1%; bottom: -8px; border: 2px solid #DBA481; border-left-color: transparent; border-right-color: transparent; border-bottom-color: transparent; border-radius: 50%; transform: rotate(-2deg); }
#home-banner.r52-hero .r52-directions-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 20px; margin: 52px 0 17px; }
#home-banner.r52-hero .r52-directions-heading h2 { font-size: 16px; line-height: 1.4; font-weight: 500; letter-spacing: -.02em; margin: 0; color: #FFF7E8; }
#home-banner.r52-hero .r52-directions-heading > span { font-size: 12px; color: #CEDCC9; }
#home-banner.r52-hero .r52-directions { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
#home-banner.r52-hero .r52-direction { position: relative; display: flex; flex-direction: column; color: #244638; background: #F7F8F2; min-width: 0; min-height: 312px; padding: 24px; border: 1px solid transparent; border-radius: 6px 6px 38px 6px; text-decoration: none; overflow: hidden; transition: transform .25s ease, box-shadow .25s ease; -webkit-tap-highlight-color: transparent; }
#home-banner.r52-hero .r52-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 10px; font-weight: 500; line-height: 1.5; text-transform: uppercase; letter-spacing: .07em; color: #4D624C; }
#home-banner.r52-hero .r52-ege .r52-card-meta { color: #4D624C; }
#home-banner.r52-hero .r52-card-meta > span:last-child { font-size: 11px; letter-spacing: .02em; font-weight: 400; opacity: .7; }
#home-banner.r52-hero .r52-direction h3 { position: relative; z-index: 1; font-family: Onest, Arial, sans-serif; font-size: 42px; font-weight: 500; line-height: 1.05; letter-spacing: -.045em; margin: 15px 0 0; color: inherit; overflow-wrap: normal; }
#home-banner.r52-hero .r52-school h3 { font-size: 29px; line-height: 1.05; }
#home-banner.r52-hero .r52-olympiad h3 { font-size: 31px; line-height: 1.1; }
#home-banner.r52-hero .r52-card-art { position: absolute; width: 177px; height: 135px; right: 13px; top: 99px; transform-origin: 50% 70%; transition: transform .4s cubic-bezier(.2,.8,.2,1); }
#home-banner.r52-hero .r52-notebook { width: 165px; height: 126px; top: 114px; right: 13px; transform: rotate(-2deg); }
#home-banner.r52-hero .r52-trophy { width: 169px; height: 129px; top: 106px; right: 19px; }
#home-banner.r52-hero .r52-card-bottom { position: relative; display: flex; align-items: end; justify-content: space-between; gap: 8px; margin-top: auto; padding-top: 147px; }
#home-banner.r52-hero .r52-card-bottom p { font-size: 12px; line-height: 1.65; letter-spacing: -.014em; margin: 0; max-width: 215px; }
#home-banner.r52-hero .r52-card-arrow { flex: 0 0 35px; width: 35px; height: 35px; display: grid; place-items: center; font-family: Arial, sans-serif; font-size: 24px; font-weight: 400; line-height: 1; border: 1px solid #24463840; border-radius: 50%; transition: color .25s, background .25s, transform .25s; }
#home-banner.r52-hero .r52-ege .r52-card-arrow { border-color: #24463840; }
#home-banner.r52-hero .r52-school .r52-card-bottom { padding-top: 130px; }
#home-banner.r52-hero .r52-olympiad .r52-card-bottom { padding-top: 157px; }
#home-banner.r52-hero .r52-format { display: flex; align-items: center; flex-wrap: wrap; gap: 11px 24px; margin-top: 25px; font-size: 11px; line-height: 1.5; color: #CEDCC9; }
#home-banner.r52-hero .r52-format > span { display: flex; align-items: center; gap: 7px; }
#home-banner.r52-hero .r52-format i { width: 4px; height: 4px; border-radius: 50%; background: #B5CA9E; flex: 0 0 auto; }
#home-banner.r52-hero .r52-format > a { display: inline-flex; align-items: center; gap: 10px; margin-left: auto; color: #FFF7E8; font-size: 11px; text-underline-offset: 4px; }
#home-banner.r52-hero .r52-format > a:hover { text-decoration: underline; }
#home-banner.r52-hero .r52-format > a > span { font-size: 17px; }
.site-header { background: #f5f3ed; border-bottom-color: var(--line); }
.site-header .header-inner { width: min(1280px, calc(100% - 96px)); }
.site-header .header-action { border-radius: 6px; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  #home-banner.r52-hero .r52-direction:hover { transform: translateY(-6px); box-shadow: 0 15px 22px -17px #25463660; }
  #home-banner.r52-hero .r52-direction:hover .r52-graduation { transform: translateY(-5px) rotate(-3deg); }
  #home-banner.r52-hero .r52-direction:hover .r52-exam { transform: translateY(-5px) rotate(3deg); }
  #home-banner.r52-hero .r52-direction:hover .r52-notebook { transform: translateY(-5px) rotate(-5deg); }
  #home-banner.r52-hero .r52-direction:hover .r52-trophy { transform: translateY(-5px) rotate(-4deg); }
}
#home-banner.r52-hero .r52-direction:hover .r52-card-arrow { background: #244638; color: #FAF7E9; border-color: #244638; }
#home-banner.r52-hero .r52-ege:hover .r52-card-arrow { background: #244638; color: #FAF7E9; border-color: #244638; }
#home-banner.r52-hero a:focus-visible { outline: 3px solid #FFF7E8; outline-offset: 5px; }
@media (min-width: 1600px) {
  #home-banner.r52-hero .r52-container { padding-top: 66px; padding-bottom: 34px; }
  #home-banner.r52-hero .r52-directions-heading { margin-top: 62px; }
  #home-banner.r52-hero .r52-direction { min-height: 334px; }
  #home-banner.r52-hero .r52-card-art { top: 108px; }
  #home-banner.r52-hero .r52-notebook { top: 124px; }
}
@media (max-width: 1180px) {
  #home-banner.r52-hero .r52-container, .site-header .header-inner { width: calc(100% - 64px); }
  #home-banner.r52-hero #home-title { font-size: clamp(56px, 6.4vw, 76px); }
  #home-banner.r52-hero .r52-direction { padding: 20px 18px; min-height: 306px; }
  #home-banner.r52-hero .r52-directions { gap: 12px; }
  #home-banner.r52-hero .r52-card-meta { font-size: 9px; letter-spacing: .035em; }
  #home-banner.r52-hero .r52-card-bottom p { font-size: 11px; }
  #home-banner.r52-hero .r52-card-bottom { gap: 4px; }
  #home-banner.r52-hero .r52-card-arrow { width: 30px; height: 30px; flex-basis: 30px; font-size: 21px; }
  #home-banner.r52-hero .r52-school h3 { font-size: 26px; }
  #home-banner.r52-hero .r52-olympiad h3 { font-size: 27px; }
  #home-banner.r52-hero .r52-card-art { right: 4px; }
  #home-banner.r52-hero .r52-format { gap: 10px 20px; }
}
@media (max-width: 980px) {
  #home-banner.r52-hero #home-title { font-size: clamp(60px, 8.8vw, 82px); }
  #home-banner.r52-hero .r52-directions-heading { margin-top: 36px; }
  #home-banner.r52-hero .r52-directions { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
  #home-banner.r52-hero .r52-direction { min-height: 264px; padding: 22px; }
  #home-banner.r52-hero .r52-card-meta { font-size: 10px; }
  #home-banner.r52-hero .r52-direction h3 { font-size: 38px; }
  #home-banner.r52-hero .r52-school h3 { font-size: 27px; }
  #home-banner.r52-hero .r52-olympiad h3 { font-size: 30px; }
  #home-banner.r52-hero .r52-card-art { top: 75px; right: 12px; width: 160px; height: 122px; }
  #home-banner.r52-hero .r52-notebook { top: 97px; width: 135px; height: 103px; }
  #home-banner.r52-hero .r52-trophy { top: 79px; width: 149px; height: 114px; }
  #home-banner.r52-hero .r52-card-bottom, #home-banner.r52-hero .r52-school .r52-card-bottom, #home-banner.r52-hero .r52-olympiad .r52-card-bottom { padding-top: 100px; }
  #home-banner.r52-hero .r52-school .r52-card-bottom { padding-top: 84px; }
  #home-banner.r52-hero .r52-card-bottom p { font-size: 12px; }
  #home-banner.r52-hero .r52-card-arrow { width: 35px; height: 35px; flex-basis: 35px; font-size: 24px; }
  #home-banner.r52-hero .r52-format > a { margin-left: 0; }
}
@media (max-width: 600px) {
  #home-banner.r52-hero .r52-container, .site-header .header-inner { width: calc(100% - 40px); }
  #home-banner.r52-hero .r52-container { padding-top: 33px; padding-bottom: 24px; }
  #home-banner.r52-hero #home-title { font-size: clamp(39px, 9.35vw, 56px); line-height: 1.08; letter-spacing: -.06em; }
  #home-banner.r52-hero #home-title em { font-size: 1.095em; letter-spacing: -.066em; }
  #home-banner.r52-hero #home-title em::after { bottom: -6px; height: 6px; border-top-width: 1.5px; }
  #home-banner.r52-hero .r52-directions-heading { margin-top: 25px; margin-bottom: 14px; gap: 5px; }
  #home-banner.r52-hero .r52-directions-heading h2 { font-size: 14px; }
  #home-banner.r52-hero .r52-directions-heading > span { font-size: 10px; max-width: 125px; text-align: right; }
  #home-banner.r52-hero .r52-directions { gap: 10px; }
  #home-banner.r52-hero .r52-direction { padding: 15px 13px; min-height: 236px; border-radius: 5px 5px 25px 5px; }
  #home-banner.r52-hero .r52-card-meta { font-size: 9px; letter-spacing: .01em; gap: 3px; }
  #home-banner.r52-hero .r52-card-meta > span:last-child { font-size: 9px; }
  #home-banner.r52-hero .r52-olympiad .r52-card-meta > span:first-child { max-width: 96px; }
  #home-banner.r52-hero .r52-direction h3 { margin-top: 12px; font-size: 31px; }
  #home-banner.r52-hero .r52-school h3 { font-size: 21px; }
  #home-banner.r52-hero .r52-olympiad h3 { font-size: 21px; margin-top: 12px; }
  #home-banner.r52-hero .r52-card-art { top: 66px; right: 7px; width: 125px; height: 95px; }
  #home-banner.r52-hero .r52-notebook { top: 89px; right: 6px; width: 105px; height: 80px; }
  #home-banner.r52-hero .r52-trophy { top: 72px; right: 8px; width: 119px; height: 91px; }
  #home-banner.r52-hero .r52-card-bottom, #home-banner.r52-hero .r52-school .r52-card-bottom, #home-banner.r52-hero .r52-olympiad .r52-card-bottom { display: block; padding-top: 108px; }
  #home-banner.r52-hero .r52-school .r52-card-bottom { padding-top: 97px; }
  #home-banner.r52-hero .r52-olympiad .r52-card-bottom { padding-top: 110px; }
  #home-banner.r52-hero .r52-card-bottom p { font-size: 11px; line-height: 1.6; min-height: 36px; }
  #home-banner.r52-hero .r52-card-arrow { position: absolute; right: 0; bottom: 45px; width: 26px; height: 26px; font-size: 18px; }
  #home-banner.r52-hero .r52-format { margin-top: 22px; gap: 9px 16px; font-size: 10px; }
  #home-banner.r52-hero .r52-format > a { width: 100%; min-height: 36px; padding-top: 7px; border-top: 1px solid #FFFFFF35; margin-top: 5px; font-size: 11px; justify-content: space-between; }
}
@media (max-width: 359px) {
  #home-banner.r52-hero .r52-container, .site-header .header-inner { width: calc(100% - 32px); }
  #home-banner.r52-hero #home-title { font-size: 36px; }
  #home-banner.r52-hero .r52-direction { padding-inline: 11px; }
  #home-banner.r52-hero .r52-school h3, #home-banner.r52-hero .r52-olympiad h3 { font-size: 19px; }
  #home-banner.r52-hero .r52-card-bottom p { font-size: 11px; }
  #home-banner.r52-hero .r52-directions-heading > span { font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  #home-banner.r52-hero .r52-direction, #home-banner.r52-hero .r52-card-art, #home-banner.r52-hero .r52-card-arrow { transition: none; }
}

/* Desktop hero: cross-browser viewport fit without CSS zoom.
   The old zoom: .8 caused different layout/height calculations in browsers.
   We keep the same visual scale with real CSS sizes and let the intro row
   absorb spare viewport height, so the headline stays naturally centered
   above the cards while the green field always reaches the viewport bottom. */
@media screen and (min-width: 981px) {
  #home-banner.r52-hero {
    zoom: 1;
    justify-content: flex-start;
    min-height: calc(100vh - var(--top-chrome, 73px));
    min-height: calc(100svh - var(--top-chrome, 73px));
    min-height: calc(100dvh - var(--top-chrome, 73px));
    overflow: hidden;
  }

  #home-banner.r52-hero .r52-container {
    width: min(1024px, calc(100% - 64px));
    flex: 1 1 auto;
    min-height: 0;
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto auto auto;
    align-content: stretch;
    padding: clamp(28px, 5vh, 52px) 0 clamp(18px, 3vh, 26px);
  }

  #home-banner.r52-hero .r52-intro {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
    margin: 0;
  }

  #home-banner.r52-hero #home-title {
    font-size: clamp(50px, 5.12vw, 74px);
  }

  #home-banner.r52-hero .r52-directions-heading {
    margin: 0 0 14px;
  }

  #home-banner.r52-hero .r52-directions { gap: 11px; }
  #home-banner.r52-hero .r52-direction { min-height: 250px; padding: 19px; }
  #home-banner.r52-hero .r52-card-meta { font-size: 8px; }
  #home-banner.r52-hero .r52-card-meta > span:last-child { font-size: 9px; }
  #home-banner.r52-hero .r52-direction h3 { margin-top: 12px; font-size: 34px; }
  #home-banner.r52-hero .r52-school h3 { font-size: 23px; }
  #home-banner.r52-hero .r52-olympiad h3 { font-size: 25px; }

  #home-banner.r52-hero .r52-card-art {
    width: 142px;
    height: 108px;
    right: 10px;
    top: 79px;
  }
  #home-banner.r52-hero .r52-notebook {
    width: 132px;
    height: 101px;
    right: 10px;
    top: 91px;
  }
  #home-banner.r52-hero .r52-trophy {
    width: 135px;
    height: 103px;
    right: 15px;
    top: 85px;
  }

  #home-banner.r52-hero .r52-card-bottom { padding-top: 118px; }
  #home-banner.r52-hero .r52-school .r52-card-bottom { padding-top: 104px; }
  #home-banner.r52-hero .r52-olympiad .r52-card-bottom { padding-top: 126px; }
  #home-banner.r52-hero .r52-card-bottom p { font-size: 10px; }
  #home-banner.r52-hero .r52-card-arrow {
    width: 28px;
    height: 28px;
    flex-basis: 28px;
    font-size: 19px;
  }

  #home-banner.r52-hero .r52-format {
    gap: 9px 19px;
    margin-top: 20px;
    font-size: 9px;
  }
  #home-banner.r52-hero .r52-format > a { font-size: 9px; }
}

/* Compact desktop/laptop heights: reduce only the lower content instead of
   scaling the whole section. This keeps Chromium, Safari and Firefox aligned. */
@media screen and (min-width: 981px) and (max-height: 680px) {
  #home-banner.r52-hero .r52-container {
    padding-top: 18px;
    padding-bottom: 15px;
  }
  #home-banner.r52-hero #home-title { font-size: clamp(46px, 4.6vw, 56px); }
  #home-banner.r52-hero .r52-directions-heading { margin-bottom: 10px; }
  #home-banner.r52-hero .r52-direction { min-height: 214px; padding: 16px; }
  #home-banner.r52-hero .r52-direction h3 { font-size: 30px; margin-top: 9px; }
  #home-banner.r52-hero .r52-school h3,
  #home-banner.r52-hero .r52-olympiad h3 { font-size: 21px; }
  #home-banner.r52-hero .r52-card-art { width: 121px; height: 92px; top: 67px; right: 8px; }
  #home-banner.r52-hero .r52-notebook { width: 112px; height: 86px; top: 77px; right: 8px; }
  #home-banner.r52-hero .r52-trophy { width: 115px; height: 88px; top: 72px; right: 12px; }
  #home-banner.r52-hero .r52-card-bottom { padding-top: 96px; }
  #home-banner.r52-hero .r52-school .r52-card-bottom { padding-top: 84px; }
  #home-banner.r52-hero .r52-olympiad .r52-card-bottom { padding-top: 102px; }
  #home-banner.r52-hero .r52-card-bottom p { line-height: 1.5; }
  #home-banner.r52-hero .r52-format { margin-top: 13px; }
}


/* r36cd-program-no-plus */

/* Course program: remove +/- controls while keeping each row clickable. */
.r36-course-detail .r36cd-module summary::after{content:none!important;display:none!important}
.r36-course-detail .r36cd-module-toggle{display:none!important}
.r36-course-detail .r36cd-module summary{grid-template-columns:30px minmax(0,1fr) auto!important}
@media(max-width:1050px){
  .r36-course-detail .r36cd-module summary{grid-template-columns:24px minmax(0,1fr) auto!important}
}
@media(max-width:560px){
  .r36-course-detail .r36cd-module summary{grid-template-columns:21px minmax(0,1fr)!important}
  .r36-course-detail .r36cd-module-count{grid-column:2!important;grid-row:2!important}
}

/* r51a-neutral-teachers */

/* Neutral teacher portraits: warm paper instead of colored pastel fills. */
.k36-teacher-photo.portrait-a,
.k36-teacher-photo.portrait-b,
.k36-teacher-photo.portrait-c{
  background-color:#f2f0e8 !important;
  border:1px solid #d8ddd2;
  box-shadow:
    inset 0 -34px 46px rgba(31,61,49,.045),
    inset 0 1px 0 rgba(255,255,255,.88);
}

/* Keep profile portraits consistent with the cards, just a touch more framed. */
.r48-profile .k36-teacher-photo.portrait-a,
.r48-profile .k36-teacher-photo.portrait-b,
.r48-profile .k36-teacher-photo.portrait-c{
  background-color:#f2f0e8 !important;
  border-color:#d4d9cf;
  box-shadow:
    inset 0 -46px 64px rgba(31,61,49,.05),
    0 10px 28px rgba(31,61,49,.06);
}

/* Neutralize the small portrait avatars used in course and group cards too. */
.teacher-dot.portrait-a,
.teacher-dot.portrait-b,
.teacher-dot.portrait-c{
  background-color:#f2f0e8 !important;
  box-shadow:inset 0 0 0 1px rgba(31,61,49,.10);
}

/* Slightly soften the teacher card itself so the neutral photo reads as one system. */
.k36-teacher{
  background:#fffdf7;
  border-color:#d9ddd3;
}

/* r51a-featured-courses-catalog-style-fixed */

/* Homepage only: show two untouched catalogue cards, then a centered catalogue link. */
#home-courses .section-heading{margin-bottom:28px}
#home-courses .home-featured-course-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:17px;
  min-width:0;
}
#home-courses .home-all-courses-divider{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  margin-top:38px;
}
#home-courses .home-all-courses-divider::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:1px;
  background:#cfd8c9;
  transform:translateY(-50%);
}
#home-courses .home-all-courses-btn{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:11px 25px;
  border:1px solid #8fa78a;
  border-radius:999px;
  background:#f6f3e9;
  color:#185345;
  font-size:14px;
  line-height:1.3;
  font-weight:500;
  text-decoration:none;
  box-shadow:0 0 0 10px #f6f3e9;
  transition:background .15s,border-color .15s,transform .15s;
}
#home-courses .home-all-courses-btn:hover{
  background:#e8efdf;
  border-color:#507654;
  transform:translateY(-1px);
}
#home-courses .home-all-courses-btn:focus-visible{
  outline:3px solid #a3bd94;
  outline-offset:4px;
}
@media(max-width:560px){
  #home-courses .home-all-courses-divider{margin-top:30px}
  #home-courses .home-all-courses-btn{box-shadow:0 0 0 7px #f6f3e9}
}

/* r51a-unified-compact-course-cards */

/* Unified course-card system: homepage and catalogue use exactly the same card. */
#home-courses .home-featured-course-grid,#catalog-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;min-width:0}
.k39-course-card{display:grid!important;grid-template-columns:230px minmax(0,1fr)!important;gap:0!important;min-width:0!important;min-height:232px!important;margin:0!important;padding:0!important;overflow:hidden!important;align-items:stretch!important;border:1px solid #d5dcce!important;border-radius:15px!important;background:#fffdf6!important;box-shadow:none!important}
.k39-course-card .k39-course-art{display:grid!important;place-items:center!important;min-width:0!important;min-height:232px!important;height:auto!important;overflow:hidden!important}
.k39-course-card .k39-course-art img{display:block!important;width:100%!important;height:100%!important;max-height:250px!important;object-fit:contain!important}
.k39-course-card .k39-course-content{min-width:0!important;padding:21px 25px 19px!important;display:flex!important;flex-direction:column!important}
.k39-course-card .k39-course-meta{margin-bottom:7px!important;font-size:11px!important}
.k39-course-card .k39-course-content h2{font-size:27px!important;line-height:1.16!important;margin:0 0 7px!important}
.k39-course-card .k39-course-desc{max-width:none!important;font-size:13px!important;line-height:1.5!important;margin:0 0 11px!important}
.k39-course-card .k39-course-details{gap:10px!important}
.k39-course-card .k39-course-facts{gap:5px 14px!important;font-size:11px!important;line-height:1.45!important}
.k39-course-card .k39-course-facts svg{width:14px!important;height:14px!important}
.k39-course-card .k39-course-bottom{margin-top:auto!important;padding-top:14px!important;gap:18px!important}
.k39-course-card .k39-course-price{font-size:25px!important}
.k39-course-card .k39-course-price>span{font-size:12px!important}
.k39-course-card .k39-course-unit,.k39-course-card .r45-start-price{font-size:10px!important}
.k39-course-card .k39-course-action{min-height:40px!important;padding:9px 15px!important;font-size:12px!important;border-radius:8px!important}
#home-courses .k39-course-card,#catalog-grid>.k39-course-card{width:100%!important}
@media(max-width:900px){.k39-course-card{grid-template-columns:205px minmax(0,1fr)!important;min-height:226px!important}.k39-course-card .k39-course-art{min-height:226px!important}.k39-course-card .k39-course-content{padding:19px 21px 18px!important}.k39-course-card .k39-course-content h2{font-size:25px!important}.k39-course-card .k39-course-bottom{gap:14px!important}}
@media(max-width:640px){.k39-course-card{grid-template-columns:minmax(0,1fr)!important;min-height:0!important;border-radius:13px!important}.k39-course-card .k39-course-art{min-height:0!important;height:180px!important}.k39-course-card .k39-course-art img{height:180px!important;max-height:none!important}.k39-course-card .k39-course-content{padding:19px!important}.k39-course-card .k39-course-content h2{font-size:25px!important}.k39-course-card .k39-course-desc{font-size:13px!important}.k39-course-card .k39-course-bottom{margin-top:16px!important;padding-top:15px!important;flex-wrap:wrap!important}}

/* r51a-home-catalog-exact-size */

/* Identical card width on Home and Courses, including the narrow layout. */
#home-courses,
#catalog-courses {
  width: min(1040px, calc(100% - 64px)) !important;
  margin-inline: auto !important;
}
#home-courses .home-featured-course-grid,
#catalog-grid {
  width: 100% !important;
}
#home-courses .k39-course-card,
#catalog-grid > .k39-course-card {
  width: 100% !important;
  max-width: none !important;
}
@media (max-width: 650px) {
  #home-courses,
  #catalog-courses {
    width: calc(100% - 36px) !important;
  }
}

/* r55-teacher-showcase */

/* Compact teacher carousel with the same neutral backdrop on every portrait. */
#home-teachers .r55-teacher-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}
#home-teachers .r55-teacher-kicker{margin:0 0 9px;font-size:12px;line-height:1.3;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#647368}
#main-content #home-teachers .r55-teacher-header h2{margin:0;font-size:clamp(36px,4.1vw,52px);line-height:1.05;font-weight:600;letter-spacing:-.045em;color:#1e3d31}
#home-teachers .r55-teacher-controls{display:flex;align-items:center;gap:10px;padding-bottom:3px}
#home-teachers .r55-teacher-arrow{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:#e7ebe6;color:#2c4437;cursor:pointer;transition:background .18s,color .18s}
#home-teachers .r55-teacher-arrow:hover:not(:disabled){background:#dbe4db;color:#1b5542}
#home-teachers .r55-teacher-arrow:disabled{opacity:.38;cursor:default}
#home-teachers .r55-teacher-arrow svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#home-teachers .r55-teacher-arrow:focus-visible,#home-teachers .r55-teacher-viewport:focus-visible{outline:3px solid #92b097;outline-offset:3px}
#home-teachers .r55-teacher-viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;border-radius:24px;-webkit-overflow-scrolling:touch}
#home-teachers .r55-teacher-viewport::-webkit-scrollbar{display:none}
#home-teachers .r55-teacher-track{display:flex;gap:20px}
#home-teachers .r55-teacher-card{display:grid;grid-template-columns:50% minmax(0,1fr);flex:0 0 calc((100% - 20px - 42px)/2);min-width:0;min-height:390px;overflow:hidden;border:1px solid #e4e8e3;border-radius:24px;background:#f7f8f5;scroll-snap-align:start}
#home-teachers .r55-teacher-media{min-height:390px;overflow:hidden;background:#d8ded9}
#home-teachers .r55-teacher-photo{width:100%;height:100%;border:0;box-shadow:none;background-color:#d8ded9;background-repeat:no-repeat;background-size:cover;background-position:center 12%;filter:none}
#home-teachers .r55-teacher-photo.portrait-c{background-color:#d8ded9!important;background-image:url("assets/7766f414ea2cff2ad3c5.png")}
#home-teachers .r55-teacher-body{display:flex;flex-direction:column;min-width:0;padding:30px 28px 25px}
#home-teachers .r55-teacher-body h3{max-width:none;margin:0;font-size:clamp(24px,2.1vw,30px);line-height:1.08;font-weight:600;letter-spacing:-.04em;color:#1d3128}
#home-teachers .r55-teacher-body p{margin:13px 0 0;font-size:14px;line-height:1.5;font-weight:400;color:#66746a}
#home-teachers .r55-teacher-cta{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:min(100%,240px);min-height:44px;margin-top:auto;padding:10px 12px;border:1px solid #1d4b3a;border-radius:9px;background:#1d4b3a;color:#fff;font-size:12px;line-height:1.25;font-weight:600;text-align:center;text-decoration:none;white-space:normal;transition:background .18s,border-color .18s}
#home-teachers .r55-teacher-cta:hover{background:#143c2d;border-color:#143c2d;color:#fff}
#home-teachers .r55-teacher-cta:focus-visible{outline:3px solid #92b097;outline-offset:3px}
@media(max-width:1100px){#home-teachers .r55-teacher-card{flex-basis:82%;grid-template-columns:47% minmax(0,1fr)}}
@media(max-width:680px){
 #home-teachers .r55-teacher-header{align-items:center;gap:12px;margin-bottom:22px}
 #home-teachers .r55-teacher-kicker{display:none}
 #main-content #home-teachers .r55-teacher-header h2{font-size:clamp(29px,7.8vw,38px)}
 #home-teachers .r55-teacher-controls{gap:7px;padding:0}
 #home-teachers .r55-teacher-arrow{width:40px;height:40px;flex:none}
 #home-teachers .r55-teacher-viewport{border-radius:20px}
 #home-teachers .r55-teacher-track{gap:14px}
 #home-teachers .r55-teacher-card{flex-basis:89%;min-height:520px;grid-template-columns:1fr;grid-template-rows:300px minmax(0,1fr);border-radius:20px}
 #home-teachers .r55-teacher-media{min-height:0}
 #home-teachers .r55-teacher-body{padding:21px 22px 22px}
 #home-teachers .r55-teacher-body h3{font-size:26px}
 #home-teachers .r55-teacher-cta{margin-top:19px}
}
@media(max-width:380px){#main-content #home-teachers .r55-teacher-header h2{font-size:28px}#home-teachers .r55-teacher-body h3{font-size:24px}}
@media(prefers-reduced-motion:reduce){#home-teachers .r55-teacher-arrow,#home-teachers .r55-teacher-cta{transition:none}#home-teachers .r55-teacher-viewport{scroll-behavior:auto}}

/* r54-faq-disclosure */

/* Open FAQ section with compact, individually expandable question cards. */
#home-faq,#catalog-faq{width:100%;margin:0;padding:76px clamp(24px,5vw,96px) 84px;background:#fff}
.faq-layout .r54-faq-disclosure{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
#main-content .faq-layout .r54-faq-title{display:block;margin:0;padding:0 0 36px;text-align:center;font-size:clamp(30px,3vw,38px);line-height:1.2;font-weight:700;letter-spacing:-.035em;color:var(--ink)}
.faq-layout .r54-faq-disclosure>.faq-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px 16px;padding:0}
.faq-layout .r54-faq-disclosure>.faq-items>details{min-width:0;overflow:hidden;border:1px solid #edf0ea;border-radius:6px;background:#f4f6f3}
.faq-layout .r54-faq-disclosure>.faq-items>details[open]{background:#f7f9f6}
.faq-layout .r54-faq-disclosure>.faq-items>details>summary{display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:16px 20px;gap:16px;font-size:15px;line-height:1.42;font-weight:600;color:var(--ink);cursor:pointer}
.faq-layout .r54-faq-disclosure>.faq-items>details>summary::after{content:"";display:block;width:9px;height:9px;margin:-5px 3px 0 12px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;transform:rotate(45deg);flex:0 0 9px;color:var(--green);transition:transform .18s}
.faq-layout .r54-faq-disclosure>.faq-items>details[open]>summary::after{content:"";margin-top:5px;transform:rotate(225deg)}
.faq-layout .r54-faq-disclosure>.faq-items>details>.faq-answer{max-width:none;padding:0 20px 19px;font-size:14px;line-height:1.6;color:var(--muted)}
.faq-layout .r54-faq-disclosure>.faq-items>details>summary:focus-visible{outline:2px solid #8aaa92;outline-offset:-4px;border-radius:6px}
@media(max-width:650px){
 #home-faq,#catalog-faq{width:100%;padding:46px 18px 54px}
 #main-content .faq-layout .r54-faq-title{padding:0 0 26px;font-size:clamp(25px,5vw,30px)}
 .faq-layout .r54-faq-disclosure>.faq-items{grid-template-columns:1fr;gap:10px;padding:0}
 .faq-layout .r54-faq-disclosure>.faq-items>details>summary{min-height:66px;padding:15px 17px;font-size:14px}
 .faq-layout .r54-faq-disclosure>.faq-items>details>.faq-answer{padding:0 17px 17px}
}
@media(prefers-reduced-motion:reduce){.faq-layout .r54-faq-disclosure>.faq-items>details>summary::after{transition:none}}

/* r56-floating-question */

.r56-floating-question{position:fixed;z-index:40;right:28px;bottom:calc(24px + env(safe-area-inset-bottom));display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:13px 20px;border:1px solid #174333;border-radius:14px;background:#1d4b3a;color:#fff;font:600 15px/1.2 Onest,sans-serif;box-shadow:0 12px 30px rgba(21,57,41,.23);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(18px);transition:background .18s,transform .28s ease,opacity .28s ease,box-shadow .18s,visibility 0s linear .28s}
.r56-floating-question.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}
.r56-floating-question:hover{background:#143c2d;transform:translateY(-2px);box-shadow:0 15px 34px rgba(21,57,41,.27)}
.r56-floating-question:focus-visible{outline:3px solid #9ab99e;outline-offset:3px}
.r56-floating-question svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:650px){
 .r56-floating-question{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));min-height:48px;padding:11px 15px;border-radius:12px;font-size:13px}
 .r56-floating-question svg{width:18px;height:18px}
 body:has(section[data-view]:not([hidden]) .mobile-course-action) .r56-floating-question{bottom:calc(88px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){.r56-floating-question{transition:none}.r56-floating-question:hover{transform:none}}
@media print{.r56-floating-question{display:none}}

/* r58-unified-palette */

/* One cool, soft backdrop across public pages; white cards carry the content. */
body{background:#f3f6f2}
#page-home,#page-catalog{background:#f3f6f2}
#page-home > :is(#home-courses,#home-teachers,#home-reviews,#home-faq),
#page-catalog > :is(.catalog-hero,#catalog-courses,#catalog-faq){background:#f3f6f2}
#home-courses .k39-course-card,#catalog-courses .k39-course-card{background:#fff!important;border-color:#d6e0d7!important}
#home-courses .k39-course-art,#catalog-courses .k39-course-art{background:#e5eee7!important}
#catalog-courses .k36-filters{background:#fff;border-color:#d6e0d7}
#catalog-courses .k36-control select{background:#fff;border-color:#cbd8ce;color:#1c4535}
#catalog-courses .k36-filter-button{border-color:#d6e0d7;color:#244f3d}
#catalog-courses .k36-filter-button:hover{background:#f4f8f4;border-color:#9fbaa6}
#catalog-courses .k36-filter-button[aria-pressed=true]{background:#185345;border-color:#185345;color:#fff}
#catalog-courses .k36-filter-active button{background:#eaf1eb;color:#21513d}
#home-courses .home-all-courses-divider::before{background:#cbdacf}
#home-courses .home-all-courses-btn{background:#f3f6f2;border-color:#a9bead;color:#1b5140;box-shadow:0 0 0 7px #f3f6f2}
#home-courses .home-all-courses-btn:hover{background:#e7efe8;border-color:#6b9678}
#home-teachers .r55-teacher-card{background:#fff;border-color:#dce4dc}
#home-reviews{border-top:1px solid #d5e0d7;border-bottom:0}
#home-reviews .review-placeholder{background:#fff;border-color:#dce5dd;box-shadow:0 8px 24px rgba(30,61,49,.035)}
#home-reviews .review-avatar{background:#e6efe7;color:#215841}
#home-reviews .review-complete .review-fields{border-top-color:#e5ebe5}
#home-faq .faq-items>details,#catalog-faq .faq-items>details{background:#fff;border-color:#dce5dd}
#home-faq .faq-items>details[open],#catalog-faq .faq-items>details[open]{background:#f9fbf9}
.r36-course-detail{--r36cd-surface:#fff;--r36cd-soft:#e9f0e9;--r36cd-border:#d6e0d8;background:#f3f6f2}
.r36-course-detail .r36cd-hero-art{background:#e5eee7}

/* r52-hero-cleanup */

/* Главный экран: скрываем служебные номера, стрелки и нижние подписи,
   сохраняя занимаемое ими место, чтобы высота и геометрия hero не менялись. */
#home-banner.r52-hero .r52-card-meta > span:last-child,
#home-banner.r52-hero .r52-card-arrow,
#home-banner.r52-hero .r52-format {
  visibility: hidden !important;
  pointer-events: none !important;
}

/* r53-how-we-teach */

.r53-teach-section{padding-top:22px}
.r53-teach-surface{position:relative;overflow:hidden;padding:clamp(22px,3vw,42px);border:1px solid #d7ddd3;border-radius:34px;background:linear-gradient(180deg,#f3f7ef 0%,#ebf1ed 100%);box-shadow:0 26px 50px -42px rgba(20,61,49,.35)}
.r53-teach-surface::before,.r53-teach-surface::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.r53-teach-surface::before{width:340px;height:340px;right:-170px;top:-150px;background:radial-gradient(circle, rgba(25,79,64,.10) 0, rgba(25,79,64,.03) 48%, transparent 72%)}
.r53-teach-surface::after{width:300px;height:300px;left:-180px;bottom:-180px;background:radial-gradient(circle, rgba(243,195,161,.22) 0, rgba(243,195,161,.08) 44%, transparent 70%)}
.r53-teach-head{position:relative;z-index:1;max-width:760px;margin-bottom:26px}
.r53-teach-kicker{display:inline-flex;align-items:center;gap:9px;font-size:11px;line-height:1.4;letter-spacing:.12em;text-transform:uppercase;color:#4d624c;font-weight:650}
.r53-teach-kicker::before{content:"";width:30px;height:1px;background:#6f8779}
.r53-teach-head h2{margin:12px 0 10px}
.r53-teach-head p{margin:0;font-size:16px;line-height:1.7;color:#526355;max-width:640px}
.r53-teach-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(300px,420px) minmax(0,1fr);gap:24px;align-items:stretch}
.r53-teach-nav{display:flex;flex-direction:column;gap:12px}
.r53-teach-tab{appearance:none;border:1px solid #d2dbd1;background:rgba(255,255,255,.72);border-radius:24px;padding:18px 18px 18px 16px;display:flex;align-items:flex-start;gap:15px;text-align:left;color:#244638;cursor:pointer;box-shadow:0 16px 34px -30px rgba(36,70,56,.28);transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease,color .25s ease}
.r53-teach-tab:hover{transform:translateY(-2px);border-color:#c7d3c6;box-shadow:0 18px 35px -28px rgba(36,70,56,.32)}
.r53-teach-tab.is-active{background:#194F40;color:#fff7e8;border-color:#194F40;box-shadow:0 20px 45px -28px rgba(25,79,64,.55);transform:translateX(4px)}
.r53-teach-tab:focus-visible{outline:3px solid #a45430;outline-offset:3px}
.r53-teach-icon{flex:none;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#e5efe8;color:#194F40;transition:background .25s ease,color .25s ease,transform .25s ease}
.r53-teach-tab.is-active .r53-teach-icon{background:rgba(255,247,232,.14);color:#fff7e8;transform:rotate(-4deg)}
.r53-teach-icon svg{width:28px;height:28px;display:block;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.r53-teach-copy strong{display:block;font-size:20px;line-height:1.15;letter-spacing:-.03em;font-weight:600}
.r53-teach-copy span{display:block;margin-top:7px;font-size:14px;line-height:1.55;color:#58705f}
.r53-teach-tab.is-active .r53-teach-copy span{color:#dbe7d9}
.r53-teach-stage{position:relative;background:linear-gradient(180deg,#1e5345 0%,#15392f 100%);color:#fff7e8;border-radius:30px;padding:24px;min-height:458px;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 22px 42px -32px rgba(10,27,22,.55)}
.r53-teach-stage::before,.r53-teach-stage::after{content:"";position:absolute;border:1px solid rgba(255,247,232,.10);border-radius:50%;pointer-events:none}
.r53-teach-stage::before{width:280px;height:280px;right:-135px;top:-140px}
.r53-teach-stage::after{width:200px;height:200px;left:-100px;bottom:-106px}
.r53-teach-pane{position:relative;height:100%}
.r53-pane-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}
.r53-pane-copy{max-width:520px}
.r53-pane-tag{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;background:rgba(255,247,232,.11);font-size:11px;line-height:1;letter-spacing:.11em;text-transform:uppercase;color:#f2ddca}
.r53-pane-tag::before{content:"";width:6px;height:6px;border-radius:50%;background:#f3c3a1}
.r53-pane-copy h3{margin:13px 0 8px;font-size:31px;line-height:1.06;letter-spacing:-.04em;color:#fff7e8}
.r53-pane-copy p{margin:0;font-size:15px;line-height:1.7;color:#d9e4d8;max-width:520px}
.r53-pane-note{flex:none;align-self:flex-start;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.08);font-size:12px;line-height:1.55;color:#d7e3d6;max-width:180px}
.r53-demo-frame{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:302px;height:calc(100% - 108px);padding:18px;border-radius:24px;background:linear-gradient(180deg,#f8fbf6 0%,#edf3ee 100%);border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.r53-demo-shadow{position:absolute;left:30px;right:30px;bottom:16px;height:18px;border-radius:50%;background:radial-gradient(ellipse at center, rgba(25,79,64,.16), transparent 70%)}
.r53-browser,.r53-phone,.r53-workspace{position:relative;background:#ffffff;border:1px solid #d7e1d8;border-radius:22px;box-shadow:0 18px 36px -32px rgba(25,79,64,.45)}
.r53-browser-bar{display:flex;align-items:center;gap:7px;height:34px;padding:0 14px;border-bottom:1px solid #e3ebe4}
.r53-browser-bar span{width:8px;height:8px;border-radius:50%;background:#d5dfd6}
.r53-browser-bar span:first-child{background:#f1c1a3}
.r53-browser-bar span:nth-child(2){background:#c6d7c8}
.r53-browser-bar span:nth-child(3){background:#93b19a}
.r53-floating-badge{position:absolute;display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border-radius:999px;background:#194F40;color:#fff7e8;font-size:11px;line-height:1.1;box-shadow:0 15px 25px -18px rgba(25,79,64,.55)}
.r53-floating-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:#f3c3a1}

.r53-scene-groups .r53-browser{height:236px;overflow:hidden}
.r53-call-grid{display:grid;grid-template-columns:1.2fr repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,1fr);gap:12px;padding:14px;height:calc(100% - 34px)}
.r53-call-tile{position:relative;border-radius:18px;padding:14px;background:#eff5f0;border:1px solid #dbe7dc;overflow:hidden}
.r53-call-teacher{grid-row:1 / span 2;background:linear-gradient(180deg,#dce9df 0%,#edf4ef 100%)}
.r53-avatar{width:46px;height:46px;border-radius:14px;background:#648b76;margin-bottom:14px;position:relative}
.r53-avatar::before,.r53-avatar::after{content:"";position:absolute;left:50%;transform:translateX(-50%);background:#f8fbf6}
.r53-avatar::before{top:10px;width:14px;height:14px;border-radius:50%}
.r53-avatar::after{top:25px;width:26px;height:14px;border-radius:14px 14px 7px 7px}
.r53-call-line,.r53-call-line-short{display:block;height:8px;border-radius:99px;background:#c5d6c8}
.r53-call-line{width:74%;margin-bottom:8px}.r53-call-line-short{width:48%}
.r53-call-pulse{position:absolute;left:14px;bottom:14px;display:flex;align-items:flex-end;gap:4px;height:16px}
.r53-call-pulse span{width:4px;border-radius:999px;background:#194F40;animation:r53Bars 1.4s ease-in-out infinite}
.r53-call-pulse span:nth-child(2){animation-delay:.15s}.r53-call-pulse span:nth-child(3){animation-delay:.3s}.r53-call-pulse span:nth-child(4){animation-delay:.45s}
.r53-student-dot{position:absolute;right:12px;top:12px;width:10px;height:10px;border-radius:50%;background:#7db18c;box-shadow:0 0 0 4px rgba(125,177,140,.18);animation:r53Glow 2s ease-in-out infinite}
.r53-call-footer{margin-top:14px;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 14px;border-radius:16px;background:#194F40;color:#fff7e8;font-size:12px;line-height:1.5}
.r53-call-footer strong{font-weight:600}
.r53-scene-groups .r53-floating-badge{right:18px;top:56px}

.r53-scene-recording .r53-demo-frame{padding-top:28px}
.r53-recording-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);gap:16px;align-items:stretch}
.r53-recording-video{padding:0;overflow:hidden}
.r53-recording-screen{position:relative;height:230px;background:linear-gradient(135deg,#dfe9e2 0%,#edf5ef 45%,#d5e4d7 100%)}
.r53-recording-screen::before{content:"";position:absolute;inset:24px 24px 70px;border-radius:20px;background:linear-gradient(180deg,#355e51 0%,#21483e 100%)}
.r53-recording-screen::after{content:"";position:absolute;left:40px;right:40px;bottom:24px;height:28px;border-radius:14px;background:#ffffff}
.r53-play-badge{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;background:rgba(255,247,232,.9);display:grid;place-items:center;box-shadow:0 20px 35px -25px rgba(20,57,47,.5)}
.r53-play-badge::before{content:"";display:block;margin-left:5px;border-left:22px solid #194F40;border-top:14px solid transparent;border-bottom:14px solid transparent}
.r53-progress{position:absolute;left:54px;right:54px;bottom:35px;height:6px;border-radius:999px;background:#dce7dd;overflow:hidden}
.r53-progress::after{content:"";display:block;height:100%;border-radius:999px;background:#194F40;animation:r53Progress 5s linear infinite;width:46%}
.r53-recording-meta{position:absolute;left:24px;top:22px;padding:9px 12px;border-radius:999px;background:#ffffff;color:#194F40;font-size:11px;box-shadow:0 12px 25px -20px rgba(25,79,64,.5)}
.r53-notes-card{padding:16px;display:flex;flex-direction:column;gap:14px;background:#fffdfa}
.r53-notes-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.r53-notes-head strong{font-size:16px;line-height:1.2;color:#1d4236}
.r53-note-chip{padding:7px 10px;border-radius:999px;background:#eef4ef;color:#4d624c;font-size:11px}
.r53-note-block{padding:14px;border-radius:16px;background:#f1f6f1;border:1px solid #e3ebe4}
.r53-note-line{display:block;height:7px;border-radius:999px;background:#bfd1c2;margin-top:10px;animation:r53NotePulse 2.3s ease-in-out infinite}
.r53-note-line:first-child{margin-top:0;width:68%}.r53-note-line:nth-child(2){width:92%;animation-delay:.2s}.r53-note-line:nth-child(3){width:84%;animation-delay:.4s}.r53-note-line:nth-child(4){width:58%;animation-delay:.6s}
.r53-note-list{display:grid;gap:9px}
.r53-note-item{display:flex;align-items:center;gap:9px;font-size:13px;line-height:1.4;color:#345145}
.r53-note-item i{flex:none;width:18px;height:18px;border-radius:50%;background:#194F40;position:relative}
.r53-note-item i::before{content:"";position:absolute;left:5px;top:4px;width:8px;height:5px;border-left:2px solid #fff7e8;border-bottom:2px solid #fff7e8;transform:rotate(-45deg)}
.r53-scene-recording .r53-floating-badge{left:18px;top:24px}

.r53-scene-practice .r53-demo-frame{padding-top:26px}
.r53-practice-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(230px,.9fr);gap:16px;align-items:stretch}
.r53-sheet{padding:0;overflow:hidden}
.r53-sheet-body{padding:18px 18px 16px}
.r53-sheet-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}
.r53-sheet-title strong{font-size:16px;color:#1d4236}
.r53-score{padding:7px 10px;border-radius:999px;background:#edf5ef;color:#244638;font-size:11px}
.r53-task{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #eef2ee}
.r53-task:first-of-type{border-top:0;padding-top:0}
.r53-check{width:18px;height:18px;border-radius:50%;border:2px solid #bcd0c0;position:relative;background:#ffffff}
.r53-task:nth-child(2) .r53-check,.r53-task:nth-child(3) .r53-check{animation:r53CheckIn 4.5s ease-in-out infinite}
.r53-task:nth-child(3) .r53-check{animation-delay:.4s}.r53-task:nth-child(4) .r53-check{animation:r53CheckIn 4.5s ease-in-out infinite .8s}
.r53-check::before{content:"";position:absolute;left:4px;top:2px;width:6px;height:10px;border-right:2px solid #194F40;border-bottom:2px solid #194F40;transform:rotate(40deg) scale(.85);opacity:.9}
.r53-task-lines span{display:block;height:7px;border-radius:999px;background:#c8d8cb;margin-top:7px}
.r53-task-lines span:first-child{width:70%;margin-top:0}.r53-task-lines span:last-child{width:46%}
.r53-task small{font-size:12px;color:#6b7d6e}
.r53-feedback{padding:18px;background:#fffdfa;display:flex;flex-direction:column;gap:14px}
.r53-comment-card{padding:14px;border-radius:18px;background:#f1f6f1;border:1px solid #e1e9e2}
.r53-comment-card strong{display:block;font-size:15px;color:#1d4236;margin-bottom:8px}
.r53-comment-card p{margin:0;font-size:13px;line-height:1.6;color:#4e6150}
.r53-comment-tag{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border-radius:999px;background:#194F40;color:#fff7e8;font-size:11px;align-self:flex-start}
.r53-comment-tag::before{content:"";width:6px;height:6px;border-radius:50%;background:#f3c3a1}
.r53-scene-practice .r53-floating-badge{right:18px;top:24px}

.r53-scene-chat .r53-demo-frame{padding-top:26px}
.r53-chat-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(210px,.7fr);gap:18px;align-items:center;height:100%}
.r53-chat-board{padding:0;overflow:hidden}
.r53-chat-list{padding:18px;display:flex;flex-direction:column;gap:11px;background:#f8fbf7}
.r53-bubble{max-width:74%;padding:12px 14px;border-radius:18px;font-size:13px;line-height:1.55;box-shadow:0 10px 18px -16px rgba(25,79,64,.4)}
.r53-bubble.in{background:#ffffff;color:#355347;border:1px solid #e1e9e2;border-top-left-radius:8px}
.r53-bubble.out{margin-left:auto;background:#194F40;color:#fff7e8;border-top-right-radius:8px}
.r53-bubble.out:nth-child(4){animation:r53MessageLift 4.8s ease-in-out infinite}
.r53-typing{display:inline-flex;gap:5px;align-items:center;padding:11px 14px;border-radius:16px 16px 16px 8px;background:#ffffff;border:1px solid #e1e9e2;width:max-content}
.r53-typing span{width:6px;height:6px;border-radius:50%;background:#7f9988;animation:r53Typing .9s ease-in-out infinite}
.r53-typing span:nth-child(2){animation-delay:.15s}.r53-typing span:nth-child(3){animation-delay:.3s}
.r53-phone{width:min(236px,100%);margin-inline:auto;padding:10px;border-radius:28px;background:#163d31;border-color:#214a3f}
.r53-phone-screen{background:#f7fbf7;border-radius:20px;padding:16px;height:270px;display:flex;flex-direction:column;justify-content:space-between}
.r53-phone-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.r53-phone-user{display:flex;align-items:center;gap:10px}
.r53-phone-avatar{width:34px;height:34px;border-radius:12px;background:#648b76;position:relative}
.r53-phone-avatar::before,.r53-phone-avatar::after{content:"";position:absolute;left:50%;transform:translateX(-50%);background:#f7fbf7}
.r53-phone-avatar::before{top:7px;width:10px;height:10px;border-radius:50%}
.r53-phone-avatar::after{top:18px;width:18px;height:10px;border-radius:10px 10px 5px 5px}
.r53-phone-user strong{display:block;font-size:13px;color:#224338}
.r53-phone-user small{display:block;font-size:11px;color:#6e806f}
.r53-phone-pill{padding:7px 9px;border-radius:999px;background:#edf4ef;color:#224338;font-size:11px}
.r53-mini-bubbles{display:grid;gap:8px}
.r53-mini-bubbles span{display:block;height:10px;border-radius:999px;background:#c8d9cb}.r53-mini-bubbles span:first-child{width:76%}.r53-mini-bubbles span:nth-child(2){width:88%}.r53-mini-bubbles span:last-child{width:53%}
.r53-scene-chat .r53-floating-badge{left:18px;top:24px}

@keyframes r53Bars{0%,100%{height:5px;opacity:.5}50%{height:16px;opacity:1}}
@keyframes r53Glow{0%,100%{box-shadow:0 0 0 4px rgba(125,177,140,.18)}50%{box-shadow:0 0 0 8px rgba(125,177,140,.08)}}
@keyframes r53Progress{0%{width:16%}50%{width:61%}100%{width:84%}}
@keyframes r53NotePulse{0%,100%{transform:translateX(0);opacity:.9}50%{transform:translateX(4px);opacity:1}}
@keyframes r53CheckIn{0%,12%,100%{background:#fff;border-color:#bcd0c0}18%,80%{background:#edf5ef;border-color:#194F40}}
@keyframes r53Typing{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(-3px);opacity:1}}
@keyframes r53MessageLift{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

@media (max-width: 1100px){
 .r53-teach-layout{grid-template-columns:minmax(0,1fr);gap:18px}
 .r53-teach-stage{min-height:430px}
 .r53-recording-layout,.r53-practice-layout,.r53-chat-layout{grid-template-columns:minmax(0,1fr)}
 .r53-phone{width:min(250px,100%)}
}
@media (max-width: 720px){
 .r53-teach-surface{padding:22px 18px;border-radius:26px}
 .r53-teach-head{margin-bottom:18px}
 .r53-teach-head p{font-size:15px}
 .r53-teach-copy strong{font-size:18px}
 .r53-teach-copy span{font-size:13px}
 .r53-teach-tab{padding:15px 14px;border-radius:20px}
 .r53-teach-icon{width:46px;height:46px;border-radius:14px}
 .r53-teach-stage{padding:18px;border-radius:24px;min-height:0}
 .r53-pane-top{display:block;margin-bottom:14px}
 .r53-pane-copy h3{font-size:26px;margin-top:10px}
 .r53-pane-note{max-width:none;margin-top:12px}
 .r53-demo-frame{min-height:0;height:auto;padding:14px;border-radius:20px}
 .r53-call-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto}.r53-call-teacher{grid-column:1 / -1;grid-row:auto}
 .r53-call-footer{display:block}.r53-call-footer strong{display:block;margin-bottom:4px}
 .r53-scene-groups .r53-browser{height:auto}
 .r53-recording-screen{height:190px}
 .r53-browser,.r53-workspace,.r53-phone{border-radius:18px}
}
@media (prefers-reduced-motion: reduce){
 .r53-teach-tab,.r53-teach-icon{transition:none}
 .r53-call-pulse span,.r53-student-dot,.r53-progress::after,.r53-note-line,.r53-task .r53-check,.r53-typing span,.r53-bubble.out:nth-child(4){animation:none!important}
}

/* r53-how-we-teach-cleanup */

#home-how-we-teach.r53-teach-section{
  padding-top:clamp(48px,7vw,96px);
}
#home-how-we-teach .r53-teach-surface{
  padding:clamp(28px,4vw,52px);
}
#home-how-we-teach .r53-teach-head{
  max-width:none;
  margin:0 0 clamp(28px,4vw,44px);
  text-align:center;
}
#home-how-we-teach .r53-teach-head h2{
  margin:0;
  color:#194F40;
  font-family:Onest,Arial,sans-serif;
  font-size:clamp(44px,5.2vw,78px);
  font-weight:500;
  line-height:.98;
  letter-spacing:-.055em;
}
#home-how-we-teach .r53-teach-nav{
  gap:12px;
}
#home-how-we-teach .r53-teach-tab{
  min-height:96px;
  padding:18px 22px;
  align-items:center;
  justify-content:center;
  text-align:center;
  flex-direction:column;
  gap:10px;
}
#home-how-we-teach .r53-teach-tab.is-active{
  transform:none;
}
#home-how-we-teach .r53-teach-icon{
  width:44px;
  height:44px;
  border-radius:14px;
}
#home-how-we-teach .r53-teach-icon svg{
  width:24px;
  height:24px;
}
#home-how-we-teach .r53-teach-copy{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
}
#home-how-we-teach .r53-teach-copy strong{
  max-width:280px;
  margin:0 auto;
  font-size:18px;
  line-height:1.2;
  text-align:center;
}
#home-how-we-teach .r53-teach-stage{
  min-height:0;
  padding:18px;
}
#home-how-we-teach .r53-teach-pane{
  height:auto;
}
#home-how-we-teach .r53-demo-frame{
  height:auto;
  min-height:420px;
}
@media (max-width:1100px){
  #home-how-we-teach .r53-teach-nav{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  #home-how-we-teach .r53-teach-tab{
    min-height:118px;
  }
}
@media (max-width:720px){
  #home-how-we-teach.r53-teach-section{
    padding-top:42px;
  }
  #home-how-we-teach .r53-teach-surface{
    padding:24px 16px;
  }
  #home-how-we-teach .r53-teach-head h2{
    font-size:clamp(38px,11vw,58px);
  }
  #home-how-we-teach .r53-teach-nav{
    grid-template-columns:1fr;
  }
  #home-how-we-teach .r53-teach-tab{
    min-height:92px;
    padding:16px 18px;
  }
  #home-how-we-teach .r53-teach-copy strong{
    font-size:17px;
  }
  #home-how-we-teach .r53-teach-stage{
    padding:12px;
  }
  #home-how-we-teach .r53-demo-frame{
    min-height:340px;
  }
}

/* r53-how-we-teach-compact-fit */

/* Compact desktop fit: keep the whole interactive block within one viewport. */
#home-how-we-teach.r53-teach-section{
  padding-top:clamp(28px,4vh,46px);
  padding-bottom:clamp(28px,4vh,46px);
}
#home-how-we-teach .r53-teach-surface{
  min-height:0;
  padding:clamp(22px,3vh,34px) clamp(22px,2.6vw,34px);
  border-radius:26px;
  background:#eef3ee;
}
#home-how-we-teach .r53-teach-head{
  margin:0 0 clamp(18px,2.5vh,26px);
  text-align:left;
}
#home-how-we-teach .r53-teach-head h2{
  margin:0;
  color:#173f34;
  font-family:Onest,Arial,sans-serif;
  font-size:clamp(34px,3.3vw,54px);
  font-weight:520;
  line-height:1;
  letter-spacing:-.045em;
}
#home-how-we-teach .r53-teach-layout{
  grid-template-columns:minmax(250px,330px) minmax(0,1fr);
  gap:18px;
  align-items:stretch;
}
#home-how-we-teach .r53-teach-nav{
  gap:9px;
}
#home-how-we-teach .r53-teach-tab{
  min-height:0;
  height:auto;
  padding:13px 14px;
  border-radius:18px;
  flex-direction:row;
  justify-content:flex-start;
  align-items:center;
  text-align:left;
  gap:12px;
}
#home-how-we-teach .r53-teach-tab.is-active{
  transform:none;
}
#home-how-we-teach .r53-teach-icon{
  width:38px;
  height:38px;
  border-radius:12px;
}
#home-how-we-teach .r53-teach-icon svg{
  width:21px;
  height:21px;
}
#home-how-we-teach .r53-teach-copy{
  display:block;
  width:auto;
}
#home-how-we-teach .r53-teach-copy strong{
  max-width:none;
  margin:0;
  font-size:15px;
  line-height:1.22;
  text-align:left;
  letter-spacing:-.02em;
}
#home-how-we-teach .r53-teach-stage{
  min-height:0;
  padding:14px;
  border-radius:22px;
}
#home-how-we-teach .r53-teach-pane{
  height:auto;
}
#home-how-we-teach .r53-demo-frame{
  min-height:0;
  height:100%;
  padding:13px;
  border-radius:18px;
}
#home-how-we-teach .r53-browser,
#home-how-we-teach .r53-phone,
#home-how-we-teach .r53-workspace{
  border-radius:16px;
}

/* Scale the demo scenes down rather than scaling the whole page. */
#home-how-we-teach .r53-scene-groups .r53-browser{
  height:212px;
}
#home-how-we-teach .r53-call-grid{
  gap:9px;
  padding:11px;
}
#home-how-we-teach .r53-call-tile{
  padding:10px;
  border-radius:14px;
}
#home-how-we-teach .r53-call-footer{
  margin-top:10px;
  padding:9px 11px;
  border-radius:13px;
  font-size:11px;
}
#home-how-we-teach .r53-recording-screen{
  height:196px;
}
#home-how-we-teach .r53-recording-layout,
#home-how-we-teach .r53-practice-layout,
#home-how-we-teach .r53-chat-layout{
  gap:12px;
}
#home-how-we-teach .r53-notes-card,
#home-how-we-teach .r53-feedback{
  padding:13px;
  gap:10px;
}
#home-how-we-teach .r53-phone{
  width:min(205px,100%);
  padding:8px;
  border-radius:23px;
}
#home-how-we-teach .r53-phone-screen{
  height:226px;
  padding:13px;
  border-radius:17px;
}
#home-how-we-teach .r53-chat-list{
  padding:13px;
  gap:8px;
}
#home-how-we-teach .r53-bubble{
  padding:9px 11px;
  font-size:12px;
  line-height:1.45;
}

/* Laptop-height tuning so the complete section fits comfortably. */
@media (min-width:981px) and (max-height:820px){
  #home-how-we-teach.r53-teach-section{
    padding-top:22px;
    padding-bottom:22px;
  }
  #home-how-we-teach .r53-teach-surface{
    padding:20px 24px;
  }
  #home-how-we-teach .r53-teach-head{
    margin-bottom:16px;
  }
  #home-how-we-teach .r53-teach-head h2{
    font-size:clamp(30px,2.8vw,44px);
  }
  #home-how-we-teach .r53-teach-tab{
    padding:10px 12px;
    gap:10px;
  }
  #home-how-we-teach .r53-teach-icon{
    width:34px;
    height:34px;
  }
  #home-how-we-teach .r53-teach-copy strong{
    font-size:14px;
  }
  #home-how-we-teach .r53-teach-stage{
    padding:11px;
  }
  #home-how-we-teach .r53-demo-frame{
    padding:10px;
  }
  #home-how-we-teach .r53-scene-groups .r53-browser{
    height:184px;
  }
  #home-how-we-teach .r53-recording-screen{
    height:170px;
  }
  #home-how-we-teach .r53-phone-screen{
    height:196px;
  }
}

/* Tablet/mobile keeps the stacked layout but avoids excessive vertical bulk. */
@media (max-width:1100px){
  #home-how-we-teach .r53-teach-layout{
    grid-template-columns:1fr;
  }
  #home-how-we-teach .r53-teach-nav{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
  }
  #home-how-we-teach .r53-teach-tab{
    min-height:86px;
    padding:12px 10px;
    flex-direction:column;
    justify-content:center;
    text-align:center;
  }
  #home-how-we-teach .r53-teach-copy strong{
    text-align:center;
    font-size:14px;
  }
}
@media (max-width:760px){
  #home-how-we-teach.r53-teach-section{
    padding-top:28px;
    padding-bottom:28px;
  }
  #home-how-we-teach .r53-teach-surface{
    padding:20px 14px;
    border-radius:22px;
  }
  #home-how-we-teach .r53-teach-head{
    margin-bottom:18px;
    text-align:left;
  }
  #home-how-we-teach .r53-teach-head h2{
    font-size:clamp(34px,10vw,48px);
  }
  #home-how-we-teach .r53-teach-nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  #home-how-we-teach .r53-teach-tab{
    min-height:92px;
  }
  #home-how-we-teach .r53-recording-layout,
  #home-how-we-teach .r53-practice-layout,
  #home-how-we-teach .r53-chat-layout{
    grid-template-columns:1fr;
  }
}

/* r53-how-we-teach-top-tabs */

/* Put the four teaching-format controls above the animated preview. */
#home-how-we-teach .r53-teach-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
#home-how-we-teach .r53-teach-nav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
}
#home-how-we-teach .r53-teach-tab{
  min-height:64px;
  padding:9px 11px;
  border-radius:14px;
  flex-direction:row;
  justify-content:center;
  align-items:center;
  gap:8px;
  text-align:center;
}
#home-how-we-teach .r53-teach-icon{
  width:30px;
  height:30px;
  border-radius:9px;
}
#home-how-we-teach .r53-teach-icon svg{
  width:17px;
  height:17px;
}
#home-how-we-teach .r53-teach-copy{
  width:auto;
  display:block;
}
#home-how-we-teach .r53-teach-copy strong{
  max-width:185px;
  margin:0;
  font-size:13px;
  line-height:1.15;
  text-align:center;
  letter-spacing:-.018em;
}
#home-how-we-teach .r53-teach-stage{
  padding:10px;
  border-radius:20px;
}
#home-how-we-teach .r53-demo-frame{
  padding:10px;
  border-radius:16px;
}

/* Pull the whole composition tighter vertically. */
#home-how-we-teach .r53-teach-head{
  margin-bottom:14px;
}
#home-how-we-teach .r53-teach-surface{
  padding-top:20px;
  padding-bottom:20px;
}
#home-how-we-teach.r53-teach-section{
  padding-top:24px;
  padding-bottom:24px;
}

/* Compact the preview itself a little more on desktop/laptop. */
@media (min-width:761px){
  #home-how-we-teach .r53-scene-groups .r53-browser{
    height:176px;
  }
  #home-how-we-teach .r53-recording-screen{
    height:164px;
  }
  #home-how-we-teach .r53-phone-screen{
    height:184px;
  }
  #home-how-we-teach .r53-chat-list{
    padding:10px;
    gap:6px;
  }
  #home-how-we-teach .r53-bubble{
    padding:8px 10px;
    font-size:11px;
  }
}

/* On narrower screens keep the tabs compact, 2 per row. */
@media (max-width:760px){
  #home-how-we-teach .r53-teach-nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }
  #home-how-we-teach .r53-teach-tab{
    min-height:68px;
    padding:9px 8px;
  }
  #home-how-we-teach .r53-teach-copy strong{
    font-size:12.5px;
    max-width:150px;
  }
}

/* Small phones: one tab per row, but still very compact. */
@media (max-width:430px){
  #home-how-we-teach .r53-teach-nav{
    grid-template-columns:1fr;
  }
  #home-how-we-teach .r53-teach-tab{
    min-height:54px;
    justify-content:flex-start;
    text-align:left;
    padding:8px 10px;
  }
  #home-how-we-teach .r53-teach-copy strong{
    max-width:none;
    text-align:left;
  }
}

/* r53-r51b-mockup-style */

/* R51B-inspired "Как мы учим": same scale, spacing and palette as the supplied mockup. */
#home-how-we-teach.r53-teach-section{
  position:relative;
  margin:0;
  padding:66px 0;
  background:#edf0e5;
  color:#203e32;
}
#home-how-we-teach,
#home-how-we-teach *{
  box-sizing:border-box;
}
#home-how-we-teach .r53-teach-surface{
  position:relative;
  overflow:visible;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
#home-how-we-teach .r53-teach-surface::before,
#home-how-we-teach .r53-teach-surface::after{
  display:none;
}
#home-how-we-teach .r53-teach-head{
  max-width:820px;
  margin:0 0 35px;
  text-align:left;
}
#home-how-we-teach .r53-teach-head h2{
  margin:0;
  color:#203e32;
  font-family:Onest,Arial,sans-serif;
  font-size:39px;
  font-weight:500;
  line-height:1.2;
  letter-spacing:-.035em;
}
#home-how-we-teach .r53-teach-layout{
  display:grid;
  grid-template-columns:285px minmax(0,1fr);
  gap:42px;
  align-items:start;
}
#home-how-we-teach .r53-teach-nav{
  display:grid;
  grid-template-columns:1fr;
  gap:11px;
  overflow:visible;
  padding:0;
}
#home-how-we-teach .r53-teach-tab{
  appearance:none;
  display:grid;
  grid-template-columns:23px minmax(0,1fr);
  gap:12px;
  align-items:center;
  justify-content:initial;
  width:100%;
  min-height:79px;
  height:auto;
  padding:19px 18px;
  border:1px solid #ced8c3;
  border-radius:11px;
  background:#f8f9ef;
  box-shadow:none;
  color:#486144;
  font:inherit;
  font-size:15px;
  font-weight:400;
  line-height:1.5;
  text-align:left;
  cursor:pointer;
  transform:none;
  transition:border-color .2s ease,background .2s ease,color .2s ease;
}
#home-how-we-teach .r53-teach-tab:hover{
  transform:none;
  border-color:#79946c;
  box-shadow:none;
}
#home-how-we-teach .r53-teach-tab.is-active,
#home-how-we-teach .r53-teach-tab[aria-selected="true"]{
  background:#215942;
  border-color:#215942;
  color:#fffdf2;
  box-shadow:none;
  transform:none;
}
#home-how-we-teach .r53-teach-tab:focus-visible{
  outline:3px solid #86a377;
  outline-offset:4px;
}
#home-how-we-teach .r53-teach-icon{
  display:block;
  width:23px;
  height:23px;
  border-radius:0;
  background:transparent;
  color:inherit;
  transform:none;
}
#home-how-we-teach .r53-teach-tab.is-active .r53-teach-icon{
  background:transparent;
  color:inherit;
  transform:none;
}
#home-how-we-teach .r53-teach-icon svg{
  width:23px;
  height:23px;
  stroke:currentColor;
  stroke-width:1.5;
}
#home-how-we-teach .r53-teach-copy{
  display:block;
  width:auto;
}
#home-how-we-teach .r53-teach-copy strong{
  display:block;
  max-width:none;
  margin:0;
  color:inherit;
  font-size:15px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:0;
  text-align:left;
}

/* The right side keeps the supplied mockup's open, editorial panel feel. */
#home-how-we-teach .r53-teach-stage{
  position:relative;
  min-width:0;
  min-height:450px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#203e32;
  box-shadow:none;
  overflow:visible;
}
#home-how-we-teach .r53-teach-stage::before,
#home-how-we-teach .r53-teach-stage::after{
  display:none;
}
#home-how-we-teach .r53-teach-pane{
  min-height:450px;
  height:450px;
}
#home-how-we-teach .r53-teach-pane[hidden]{
  display:none!important;
}
#home-how-we-teach .r53-demo-frame{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:450px;
  height:450px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
#home-how-we-teach .r53-demo-shadow{
  display:none;
}

/* Keep the approved animated scenes, only tune their scale to the R51B block. */
#home-how-we-teach .r53-browser,
#home-how-we-teach .r53-workspace{
  border:1px solid #d5dbca;
  background:#fffef7;
  box-shadow:0 6px 0 #e0e4d6;
}
#home-how-we-teach .r53-scene-groups .r53-browser{
  height:300px;
}
#home-how-we-teach .r53-call-grid{
  gap:12px;
  padding:14px;
}
#home-how-we-teach .r53-call-tile{
  border-color:#d9dfcf;
  background:#f8f9f1;
}
#home-how-we-teach .r53-call-teacher{
  background:#e9eedf;
}
#home-how-we-teach .r53-call-footer{
  margin-top:18px;
  padding:13px 16px;
  border-radius:9px;
  background:#fffef7;
  border:1px solid #d5dbca;
  color:#50654f;
  box-shadow:none;
  font-size:12px;
}
#home-how-we-teach .r53-call-footer strong{
  color:#294335;
}

#home-how-we-teach .r53-recording-layout,
#home-how-we-teach .r53-practice-layout{
  grid-template-columns:minmax(0,1.15fr) minmax(230px,.85fr);
  gap:22px;
  align-items:center;
}
#home-how-we-teach .r53-recording-screen{
  height:300px;
  background:#f8f9f1;
}
#home-how-we-teach .r53-recording-screen::before{
  background:#215942;
}
#home-how-we-teach .r53-notes-card,
#home-how-we-teach .r53-feedback{
  padding:22px;
  background:#fffef7;
}
#home-how-we-teach .r53-note-block,
#home-how-we-teach .r53-comment-card{
  background:#f8f9f1;
  border-color:#d9dfcf;
}
#home-how-we-teach .r53-comment-tag{
  background:#215942;
}

#home-how-we-teach .r53-sheet-body{
  padding:22px;
}
#home-how-we-teach .r53-score{
  background:#e9eedf;
}
#home-how-we-teach .r53-chat-layout{
  grid-template-columns:minmax(0,1.15fr) minmax(210px,.65fr);
  gap:22px;
  align-items:center;
}
#home-how-we-teach .r53-chat-board{
  background:#fffef7;
}
#home-how-we-teach .r53-chat-list{
  min-height:330px;
  padding:18px;
  justify-content:center;
  background:transparent;
}
#home-how-we-teach .r53-bubble.in{
  background:#fffef7;
  border-color:#d9dfcf;
}
#home-how-we-teach .r53-bubble.out{
  background:#215942;
}
#home-how-we-teach .r53-phone{
  width:min(230px,100%);
  padding:9px;
  border-radius:25px;
  background:#215942;
  border-color:#215942;
  box-shadow:0 6px 0 #d5dbca;
}
#home-how-we-teach .r53-phone-screen{
  height:300px;
  background:#f8f9f1;
}
#home-how-we-teach .r53-phone-pill{
  background:#e9eedf;
}

/* Match the responsive behavior of the source block: left tabs become a horizontal strip. */
@media(max-width:1000px){
  #home-how-we-teach .r53-teach-layout{
    grid-template-columns:245px minmax(0,1fr);
    gap:23px;
  }
  #home-how-we-teach .r53-teach-tab{
    padding:17px 15px;
    gap:10px;
    font-size:14px;
  }
  #home-how-we-teach .r53-teach-copy strong{
    font-size:14px;
  }
}
@media(max-width:800px){
  #home-how-we-teach.r53-teach-section{
    padding:48px 0;
  }
  #home-how-we-teach .r53-teach-head{
    margin-bottom:31px;
  }
  #home-how-we-teach .r53-teach-head h2{
    font-size:34px;
  }
  #home-how-we-teach .r53-teach-layout{
    grid-template-columns:minmax(0,1fr);
    gap:20px;
  }
  #home-how-we-teach .r53-teach-nav{
    display:flex;
    gap:9px;
    overflow-x:auto;
    padding:2px 2px 7px;
    scrollbar-width:thin;
  }
  #home-how-we-teach .r53-teach-tab{
    flex:0 0 215px;
    width:215px;
    min-height:69px;
    grid-template-columns:21px minmax(0,1fr);
    padding:14px;
    font-size:13px;
  }
  #home-how-we-teach .r53-teach-icon,
  #home-how-we-teach .r53-teach-icon svg{
    width:21px;
    height:21px;
  }
  #home-how-we-teach .r53-teach-copy strong{
    font-size:13px;
  }
  #home-how-we-teach .r53-teach-stage,
  #home-how-we-teach .r53-teach-pane,
  #home-how-we-teach .r53-demo-frame{
    min-height:430px;
    height:auto;
  }
}
@media(max-width:560px){
  #home-how-we-teach.r53-teach-section{
    padding:38px 0;
  }
  #home-how-we-teach .r53-teach-head{
    margin-bottom:23px;
  }
  #home-how-we-teach .r53-teach-head h2{
    font-size:30px;
  }
  #home-how-we-teach .r53-teach-tab{
    flex-basis:195px;
    width:195px;
    min-height:66px;
    padding:13px;
    gap:9px;
  }
  #home-how-we-teach .r53-recording-layout,
  #home-how-we-teach .r53-practice-layout,
  #home-how-we-teach .r53-chat-layout{
    grid-template-columns:1fr;
  }
  #home-how-we-teach .r53-scene-groups .r53-browser{
    height:auto;
  }
  #home-how-we-teach .r53-recording-screen{
    height:210px;
  }
  #home-how-we-teach .r53-phone{
    width:min(235px,100%);
  }
  #home-how-we-teach .r53-phone-screen{
    height:230px;
  }
}

/* single-group-selection-border-fix */

/* Group cards: keep only one selected-state border.
   Removes the extra focus/outline ring that made the active card look double-framed. */
.group-option:focus,
.group-option:focus-visible,
.group-option input:focus,
.group-option input:focus-visible,
.group-option label:focus,
.group-option label:focus-visible,
.k36-group:focus,
.k36-group:focus-visible,
.k36-group input:focus,
.k36-group input:focus-visible,
.k36-group label:focus,
.k36-group label:focus-visible{
  outline:none !important;
  box-shadow:none !important;
}

/* If the selected card uses both border and inset shadow, keep the border only. */
.group-option[aria-checked="true"],
.group-option.is-selected,
.group-option:has(input:checked),
.k36-group[aria-checked="true"],
.k36-group.is-selected,
.k36-group:has(input:checked){
  box-shadow:none !important;
}

/* group-selection-clean-final */

/* Clean selected group state: one border only, no outer focus ring or inset duplicate. */
.k36-group.selected{
  border:1px solid #20543f !important;
  box-shadow:none !important;
  background:#fffdf4;
}

/* The label receives :focus-within when its radio is clicked.
   Remove that second external contour around the whole card. */
.k36-group:focus-within{
  outline:none !important;
  outline-offset:0 !important;
  box-shadow:none !important;
}

/* Keep keyboard focus visible on the radio itself instead of framing the whole card. */
.k36-group-choice input:focus-visible{
  outline:2px solid #79946c !important;
  outline-offset:2px !important;
  box-shadow:none !important;
}

/* kt-teaching-redesign */

/* All redesign rules are limited to the teaching section. */
.kt-teach{--kt-ink:#194f40;--kt-muted:#60736a;--kt-line:#d8e2da;--kt-mint:#e6efe8;--kt-peach:#f3c3a1;position:relative;background:#f3f6f2;color:var(--kt-ink);padding:78px 0 82px;font-family:Onest,Arial,sans-serif;font-size:17px;line-height:1.55;isolation:isolate}
.kt-teach,.kt-teach *,.kt-teach *::before,.kt-teach *::after{box-sizing:border-box}
.kt-teach .kt-inner{width:min(1180px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:360px minmax(0,1fr);gap:58px;align-items:center}
.kt-teach h2,.kt-teach h3,.kt-teach p,.kt-teach figure{margin:0}
.kt-teach .kt-kicker{display:flex;align-items:center;gap:8px;font-size:10px;line-height:1.5;font-weight:600;text-transform:uppercase;letter-spacing:.13em;color:var(--kt-muted);margin-bottom:15px}
.kt-teach .kt-kicker::before{content:"";width:6px;height:6px;flex:none;background:#89a98c;border-radius:50%}
.kt-teach .kt-heading>div{flex:1 1 auto;min-width:0}
.kt-teach h2{font-size:48px;line-height:1.07;letter-spacing:-.052em;font-weight:500;color:var(--kt-ink)}
.kt-teach .kt-intro{font-size:15px;line-height:1.65;color:var(--kt-muted);max-width:350px;margin-top:17px}
.kt-teach .kt-nav{display:grid;gap:5px;margin-top:30px;min-width:0}
.kt-teach .kt-tab{appearance:none;display:grid;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:13px;width:100%;padding:17px 15px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--kt-ink);text-align:left;transition:background .18s,border-color .18s;cursor:pointer;line-height:1.35;min-height:63px;font-family:inherit}
.kt-teach .kt-tab:hover{background:#ebf0eb}
.kt-teach .kt-tab[aria-selected="true"]{background:#fff;border-color:var(--kt-line);box-shadow:0 8px 22px #194f4005}
.kt-teach .kt-number{display:flex;align-items:center;justify-content:center;width:30px;height:30px;font-size:11px;font-weight:500;letter-spacing:.02em;color:#72877a;border:1px solid #d3ddd4;border-radius:50%}
.kt-teach .kt-tab[aria-selected="true"] .kt-number{background:var(--kt-ink);border-color:var(--kt-ink);color:#fff}
.kt-teach .kt-tab-title{display:block;font-size:16px;line-height:1.35;font-weight:500;letter-spacing:-.022em}
.kt-teach .kt-tab-desc{display:none;font-size:12px;line-height:1.55;color:var(--kt-muted);padding-top:8px}
.kt-teach .kt-tab[aria-selected="true"] .kt-tab-desc{display:block}
.kt-teach .kt-tab-arrow{width:16px;height:16px;stroke:currentColor;stroke-width:1.6;fill:none;opacity:.4;transition:transform .18s}
.kt-teach .kt-tab[aria-selected="true"] .kt-tab-arrow{opacity:1;transform:rotate(-35deg)}
.kt-teach .kt-tab:focus-visible{outline:3px solid #b37d59;outline-offset:4px}
.kt-teach .kt-stage{min-width:0;position:relative;background:#e4eee7;border:1px solid #d6e3d9;border-radius:8px 8px 38px 8px;padding:23px;box-shadow:none}
.kt-teach .kt-stage-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 3px 17px}
.kt-teach .kt-demo-label{font-size:11px;color:#53735f;letter-spacing:.005em;line-height:1.45}
.kt-teach .kt-count{font-size:10px;font-variant-numeric:tabular-nums;letter-spacing:.06em;color:#668271;white-space:nowrap}
.kt-teach .kt-count b{font-weight:600;color:var(--kt-ink)}
.kt-teach .kt-screen{position:relative;background:#fff;border:1px solid #c6d7cb;border-radius:11px;overflow:hidden;box-shadow:0 14px 28px -18px #153d3452;min-width:0}
.kt-teach .kt-window-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;height:42px;padding:0 14px;background:#fff;border-bottom:1px solid #e6ece7}
.kt-teach .kt-window-dots{display:flex;gap:5px;flex:none}
.kt-teach .kt-window-dots i{display:block;width:5px;height:5px;background:#d2ddd4;border-radius:50%}
.kt-teach .kt-window-title{font-size:10px;font-weight:500;letter-spacing:.01em;color:#5d7567;flex:1;min-width:0;text-align:center}
.kt-teach .kt-window-mark{font-size:10px;letter-spacing:-.025em;font-weight:600;color:var(--kt-ink);white-space:nowrap;flex:none}
.kt-teach .kt-pane{min-height:327px;padding:14px;background:#f9fbf8}
.kt-teach .kt-pane[hidden]{display:none!important}
.kt-teach .kt-live-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 2px 13px;font-size:10px;color:#587460}
.kt-teach .kt-live-top strong{font-weight:500}
.kt-teach .kt-live-badge{display:inline-flex;gap:5px;align-items:center;color:#194f40;font-size:9px;letter-spacing:.04em;white-space:nowrap;flex:none}
.kt-teach .kt-live-badge i{width:5px;height:5px;border-radius:50%;background:#5e956a}
.kt-teach .kt-call{display:grid;grid-template-columns:minmax(0,1fr) 142px;gap:10px;min-width:0}
.kt-teach .kt-board{position:relative;min-height:242px;padding:20px 22px;background:#fff;border:1px solid #dde6dd;border-radius:6px;overflow:hidden}
.kt-teach .kt-board::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(#dfe8df70 1px,transparent 1px),linear-gradient(90deg,#dfe8df70 1px,transparent 1px);background-size:22px 22px}
.kt-teach .kt-board>*{position:relative}
.kt-teach .kt-board-label{font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:#8a9b8b;font-weight:500}
.kt-teach .kt-equation{font-family:Georgia,'Times New Roman',serif;font-size:29px;letter-spacing:-.025em;color:#194f40;line-height:1.3;margin-top:18px;white-space:nowrap}
.kt-teach .kt-equation-small{font-size:19px;margin-top:7px;color:#517661}
.kt-teach .kt-answer{display:inline-flex;gap:16px;background:#e7f0e7;border:1px solid #d6e5d7;border-radius:5px;padding:5px 10px;color:#245a3d;font-size:12px;margin-top:12px;white-space:nowrap}
.kt-teach .kt-graph{position:absolute;right:14px;bottom:12px;width:117px;height:90px;opacity:.75}
.kt-teach .kt-board-note{font-family:Georgia,serif;font-style:italic;font-size:13px;line-height:1.4;color:#537962;margin-top:17px;max-width:190px;transform:rotate(-3deg)}
.kt-teach .kt-video-column{display:flex;flex-direction:column;gap:9px;min-width:0}
.kt-teach .kt-teacher-tile{height:173px;position:relative;overflow:hidden;border-radius:6px;background:#dae6da}
.kt-teach .kt-teacher-photo{position:absolute;inset:0;background-repeat:no-repeat;background-size:auto 292px;background-position:center 13%}
.kt-teach .kt-teacher-name{position:absolute;left:7px;right:7px;bottom:7px;padding:5px 7px;background:#194f40ef;color:#fff;border-radius:4px;font-size:9px;display:flex;justify-content:space-between;align-items:center;gap:4px}
.kt-teach .kt-audio{display:inline-flex;align-items:center;gap:2px;height:12px}
.kt-teach .kt-audio i{width:2px;height:5px;background:#e5f2d8;border-radius:2px}
.kt-teach .kt-audio i:nth-child(2){height:11px}.kt-teach .kt-audio i:nth-child(3){height:8px}
.kt-teach .kt-students{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.kt-teach .kt-student{height:60px;border:1px solid #dce5dc;background:#eaf1e6;border-radius:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:8px;color:#57715d}
.kt-teach .kt-student:nth-child(2){background:#f4e8db;border-color:#e9dfd1}.kt-teach .kt-student:nth-child(3){background:#e6ecef;border-color:#dce4e6}
.kt-teach .kt-student b{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#d7e5ce;color:#56724d;font-size:10px;font-weight:500}
.kt-teach .kt-student:nth-child(2) b{background:#ead6c3;color:#8d694c}.kt-teach .kt-student:nth-child(3) b{background:#d0dde2;color:#526e7b}
.kt-teach .kt-call-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px}
.kt-teach .kt-question{font-size:10px;line-height:1.4;display:flex;align-items:center;gap:6px;min-width:0;color:#517361}
.kt-teach .kt-question b{font-weight:500;color:#194f40}.kt-teach .kt-question-dot{width:20px;height:20px;background:#f3d5bd;color:#9a684b;display:flex;align-items:center;justify-content:center;border-radius:50%;flex:none;font-size:9px}
.kt-teach .kt-call-tools{display:flex;gap:5px;flex:none}
.kt-teach .kt-tool{width:24px;height:24px;background:#e7eee5;border-radius:5px;display:grid;place-items:center;color:#52735b}
.kt-teach .kt-tool svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.8;fill:none}
.kt-teach .kt-stage-bottom{display:flex;align-items:flex-start;gap:11px;padding:20px 3px 1px}
.kt-teach .kt-benefit-icon{display:grid;place-items:center;flex:none;width:29px;height:29px;background:#f3c3a1;border-radius:50%;color:#194f40}
.kt-teach .kt-benefit-icon svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.6}
.kt-teach .kt-benefit-title{font-size:14px;font-weight:500;letter-spacing:-.025em;line-height:1.4}
.kt-teach .kt-benefit-desc{font-size:11px;line-height:1.6;color:#607566;margin-top:4px;max-width:480px}
.kt-teach .kt-story{display:none}
.kt-teach .kt-recording{display:grid;grid-template-columns:minmax(0,1fr) 172px;gap:13px;padding:15px;min-height:327px}
.kt-teach .kt-video{position:relative;background:#194f40;border-radius:6px;color:#f9f8ef;min-height:292px;padding:18px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}
.kt-teach .kt-video-label{font-size:9px;color:#c6d8c6}.kt-teach .kt-video .kt-equation{color:#fff7e8;font-size:25px;margin-top:18px}
.kt-teach .kt-video .kt-equation-small{color:#cfe2c8;font-size:16px;margin-top:7px}
.kt-teach .kt-video-board{border-left:1px solid #8ba98c66;padding-left:12px;margin-bottom:auto}
.kt-teach .kt-video-play{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;border:1px solid #e9f2e966;display:grid;place-items:center;background:#3f6b5670}
.kt-teach .kt-video-play svg{width:14px;height:14px;fill:#fff7e8}
.kt-teach .kt-video-progress{font-size:8px;color:#d4e2d0;margin-top:26px}
.kt-teach .kt-progress-track{height:3px;background:#8dab8a55;margin:9px 0 6px;border-radius:3px;overflow:hidden}.kt-teach .kt-progress-track span{display:block;width:28%;height:100%;background:#f3c3a1}
.kt-teach .kt-video-time{display:flex;justify-content:space-between;font-size:8px}
.kt-teach .kt-notes{padding:16px 13px;border:1px solid #dde6dd;background:#fff;border-radius:6px;min-width:0}
.kt-teach .kt-notes-title{font-size:13px;letter-spacing:-.02em;font-weight:500;line-height:1.4}
.kt-teach .kt-small-label{font-size:9px;color:#829583;line-height:1.5;margin-top:4px}
.kt-teach .kt-notes-rule{border:0;border-top:1px solid #e4ebe2;margin:15px 0}
.kt-teach .kt-notes-item{font-size:10px;line-height:1.6;color:#5b735f;margin-top:14px}
.kt-teach .kt-notes-item b{display:block;font-size:10px;color:#194f40;font-weight:500;margin-bottom:3px}
.kt-teach .kt-notes-formula{font-family:Georgia,serif;font-size:15px;color:#365f43;line-height:1.5;margin-top:7px}
.kt-teach .kt-note-file{display:flex;align-items:center;gap:6px;margin-top:22px;font-size:9px;color:#466e50}.kt-teach .kt-note-file svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.5}
.kt-teach .kt-practice{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:13px;padding:17px;min-height:327px}
.kt-teach .kt-task-sheet{padding:17px;border:1px solid #dde6dd;border-radius:6px;background:#fff;min-width:0}
.kt-teach .kt-task-top{display:flex;justify-content:space-between;gap:8px;align-items:center;padding-bottom:14px;border-bottom:1px solid #e4ebe2;font-size:9px;color:#7b8e7e}
.kt-teach .kt-checked{background:#e5f0e3;border-radius:4px;padding:4px 6px;font-size:8px;color:#3d7645;white-space:nowrap}
.kt-teach .kt-task-sheet h4{font-size:13px;font-weight:500;line-height:1.5;letter-spacing:-.015em;margin:17px 0 0;color:#194f40}
.kt-teach .kt-task-equation{font-family:Georgia,serif;font-size:25px;line-height:1.4;margin-top:12px;color:#194f40;white-space:nowrap}
.kt-teach .kt-solution{padding:11px 12px;background:#f3f7ef;border:1px solid #e3ebe0;border-radius:5px;font-size:11px;line-height:1.75;color:#567559;margin-top:16px}
.kt-teach .kt-solution strong{display:block;color:#194f40;font-weight:500;font-size:12px}
.kt-teach .kt-feedback{padding:16px 13px;background:#eaf2e5;border:1px solid #dbe7d5;border-radius:6px;min-width:0}
.kt-teach .kt-feedback-author{display:flex;align-items:center;gap:7px;font-size:9px;line-height:1.4;color:#456c50}
.kt-teach .kt-avatar-small{width:25px;height:25px;display:flex;align-items:center;justify-content:center;background:#194f40;color:#f9f8ef;border-radius:50%;font-size:10px;flex:none}
.kt-teach .kt-feedback-title{font-size:13px;font-weight:500;line-height:1.4;color:#194f40;margin-top:20px;letter-spacing:-.02em}
.kt-teach .kt-feedback p{font-size:10px;line-height:1.7;color:#58755c;margin-top:10px}
.kt-teach .kt-feedback-highlight{background:#dbe8ce;border-radius:4px;padding:9px 10px;font-size:10px;line-height:1.6;color:#426944;margin-top:18px}
.kt-teach .kt-chat{min-height:327px;padding:15px 22px;background:#f3f7f0}
.kt-teach .kt-chat-head{display:flex;align-items:center;gap:9px;border-bottom:1px solid #dfe8dc;padding-bottom:12px;margin-bottom:16px}
.kt-teach .kt-chat-head strong{font-size:12px;font-weight:500}.kt-teach .kt-chat-head p{font-size:8px;line-height:1.5;color:#7b8d7b;margin-top:2px}
.kt-teach .kt-message{max-width:83%;font-size:10px;line-height:1.65;padding:11px 13px;border:1px solid #dbe5d8;background:#fff;border-radius:2px 10px 10px 10px;margin-top:9px;color:#42604a}
.kt-teach .kt-message small{font-size:8px;color:#8d9c8c;margin-left:8px;white-space:nowrap}.kt-teach .kt-message-author{display:block;font-size:8px;font-weight:600;letter-spacing:.005em;margin-bottom:4px}
.kt-teach .kt-message-answer{margin-left:auto;color:#f5f8ed;background:#194f40;border-color:#194f40;border-radius:10px 2px 10px 10px}
.kt-teach .kt-message-answer .kt-message-author{color:#c0d8b5}.kt-teach .kt-message-answer small{color:#b0c9ab}
.kt-teach .kt-message-formula{display:block;font-family:Georgia,serif;font-size:16px;color:#e0efce;margin:5px 0}
.kt-teach .kt-chat-input{border:1px solid #dce5d8;padding:9px 12px;border-radius:5px;background:#fff;color:#9aa79a;display:flex;justify-content:space-between;font-size:9px;margin-top:14px}

/* 02: a compact white spread with a forest-green demonstration panel. */
.kt-teach.kt-forest .kt-inner{background:#fff;border:1px solid #d8e2d9;border-radius:8px 8px 40px 8px;padding:35px;gap:32px;grid-template-columns:320px minmax(0,1fr);align-items:stretch}
.kt-teach.kt-forest .kt-copy{padding:13px 4px 8px}
.kt-teach.kt-forest h2{font-size:44px}
.kt-teach.kt-forest .kt-intro{font-size:14px;max-width:290px}
.kt-teach.kt-forest .kt-nav{margin-top:27px;gap:0}
.kt-teach.kt-forest .kt-tab{border:0;border-bottom:1px solid #e6ece5;border-radius:0;padding:16px 0;box-shadow:none;background:transparent;min-height:68px;grid-template-columns:27px minmax(0,1fr) 16px;gap:11px}
.kt-teach.kt-forest .kt-tab:hover{background:#f6f8f4}
.kt-teach.kt-forest .kt-tab[aria-selected="true"]{background:transparent}
.kt-teach.kt-forest .kt-number{border:0;background:#edf2e9;width:26px;height:26px;font-size:10px}
.kt-teach.kt-forest .kt-tab[aria-selected="true"] .kt-number{background:#f3c3a1;color:#194f40}
.kt-teach.kt-forest .kt-tab-title{font-size:15px}.kt-teach.kt-forest .kt-tab-desc{font-size:11px;line-height:1.6}
.kt-teach.kt-forest .kt-stage{background:#194f40;border:0;border-radius:6px 6px 30px 6px;padding:24px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;min-height:490px}
.kt-teach.kt-forest .kt-stage::before{content:"";position:absolute;width:330px;height:330px;border:1px solid #aac2a623;border-radius:50%;right:-190px;top:-120px;pointer-events:none}
.kt-teach.kt-forest .kt-stage>*{position:relative}
.kt-teach.kt-forest .kt-stage-heading{padding-bottom:21px}.kt-teach.kt-forest .kt-demo-label{color:#dae8d0}
.kt-teach.kt-forest .kt-count{color:#92b39a}.kt-teach.kt-forest .kt-count b{color:#f3c3a1}
.kt-teach.kt-forest .kt-screen{border-color:#c8d7c3;border-radius:8px;box-shadow:0 18px 30px -20px #051d1599}
.kt-teach.kt-forest .kt-benefit-title{color:#f9f7ed;font-size:13px}.kt-teach.kt-forest .kt-benefit-desc{color:#bed1bb;font-size:10px}
.kt-teach.kt-forest .kt-stage-bottom{padding-top:23px}
.kt-teach.kt-forest .kt-board{padding:18px 16px}
.kt-teach.kt-forest .kt-equation{font-size:25px}.kt-teach.kt-forest .kt-equation-small{font-size:17px}
.kt-teach.kt-forest .kt-call{grid-template-columns:minmax(0,1fr) 119px}.kt-teach.kt-forest .kt-graph{width:98px;height:79px;right:8px;bottom:13px}
.kt-teach.kt-forest .kt-recording{grid-template-columns:minmax(0,1fr) 145px}.kt-teach.kt-forest .kt-video{padding:14px}.kt-teach.kt-forest .kt-video .kt-equation{font-size:22px}
.kt-teach.kt-forest .kt-practice{grid-template-columns:minmax(0,1fr) 148px;padding:14px;gap:10px}.kt-teach.kt-forest .kt-task-sheet{padding:13px}.kt-teach.kt-forest .kt-task-equation{font-size:22px}

/* 03: a four-step route, followed by one generously sized example. */
.kt-teach.kt-path .kt-inner{display:block}
.kt-teach.kt-path .kt-copy{display:contents}
.kt-teach.kt-path .kt-heading{display:flex;justify-content:space-between;align-items:end;gap:32px}
.kt-teach.kt-path .kt-kicker{margin-bottom:11px}.kt-teach.kt-path .kt-intro{max-width:340px;margin:0 0 4px}
.kt-teach.kt-path h2{font-size:44px}
.kt-teach.kt-path .kt-nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:31px}
.kt-teach.kt-path .kt-tab{border:0;border-bottom:1px solid #cedbcf;border-radius:0;padding:17px 0 19px;min-height:73px;grid-template-columns:27px minmax(0,1fr);gap:11px;box-shadow:none;background:transparent;align-items:start;position:relative}
.kt-teach.kt-path .kt-tab:hover{background:#eaf0e8}.kt-teach.kt-path .kt-tab[aria-selected="true"]{border-bottom-color:#194f40;background:transparent}
.kt-teach.kt-path .kt-tab[aria-selected="true"]{border-bottom-width:2px}
.kt-teach.kt-path .kt-tab-title{font-size:15px;line-height:1.4;padding-top:2px}.kt-teach.kt-path .kt-number{width:26px;height:26px;font-size:10px}
.kt-teach.kt-path .kt-tab-desc,.kt-teach.kt-path .kt-tab[aria-selected="true"] .kt-tab-desc,.kt-teach.kt-path .kt-tab-arrow{display:none}
.kt-teach.kt-path .kt-stage{background:transparent;border:0;border-radius:0;padding:30px 0 0;display:grid;grid-template-columns:340px minmax(0,1fr);gap:60px;align-items:center}
.kt-teach.kt-path .kt-stage-heading,.kt-teach.kt-path .kt-stage-bottom{display:none}
.kt-teach.kt-path .kt-story{display:block;min-width:0;padding-right:8px}
.kt-teach.kt-path .kt-story-label{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:#829781;margin-bottom:19px;display:flex;gap:13px;align-items:center}
.kt-teach.kt-path .kt-story-label::after{content:"";height:1px;width:43px;background:#b9cbb7}
.kt-teach.kt-path .kt-story h3{font-size:33px;font-weight:500;line-height:1.18;letter-spacing:-.046em;color:#194f40}
.kt-teach.kt-path .kt-story p{font-size:14px;color:#647766;line-height:1.75;margin-top:19px}
.kt-teach.kt-path .kt-story-note{display:flex;gap:8px;align-items:center;margin-top:26px;font-size:10px;color:#58765c}
.kt-teach.kt-path .kt-story-note svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;flex:none}
.kt-teach.kt-path .kt-screen{border:1px solid #bccfbe;border-radius:8px;box-shadow:12px 12px 0 #e0ebde,0 12px 32px -24px #194f4055;margin-right:12px;margin-bottom:12px}
.kt-teach.kt-path .kt-pane{min-height:338px}.kt-teach.kt-path .kt-board{min-height:253px}.kt-teach.kt-path .kt-teacher-tile{height:184px}

@media(max-width:1100px){
 .kt-teach .kt-inner{grid-template-columns:300px minmax(0,1fr);gap:30px;width:calc(100% - 64px)}
 .kt-teach h2{font-size:42px}.kt-teach .kt-tab-title{font-size:14px}.kt-teach .kt-tab{padding:15px 11px;gap:10px}
 .kt-teach .kt-stage{padding:18px}.kt-teach .kt-call{grid-template-columns:minmax(0,1fr) 114px}.kt-teach .kt-board{padding:18px 15px}
 .kt-teach .kt-equation{font-size:24px}.kt-teach .kt-equation-small{font-size:17px}.kt-teach .kt-graph{width:90px;height:75px}
 .kt-teach .kt-recording{grid-template-columns:minmax(0,1fr) 140px;gap:10px}.kt-teach .kt-video{padding:13px}.kt-teach .kt-video .kt-equation{font-size:21px}
 .kt-teach .kt-practice{grid-template-columns:minmax(0,1fr) 146px;padding:12px;gap:10px}.kt-teach .kt-task-sheet{padding:13px}.kt-teach .kt-task-equation{font-size:22px}
 .kt-teach.kt-forest .kt-inner{padding:26px;grid-template-columns:274px minmax(0,1fr);gap:22px}.kt-teach.kt-forest .kt-stage{padding:17px}.kt-teach.kt-forest .kt-call{grid-template-columns:minmax(0,1fr) 102px}
 .kt-teach.kt-forest .kt-equation{font-size:22px}.kt-teach.kt-forest .kt-equation-small{font-size:15px}.kt-teach.kt-forest .kt-graph{width:83px;height:73px}
 .kt-teach.kt-forest .kt-recording{grid-template-columns:minmax(0,1fr) 125px;gap:8px;padding:12px}.kt-teach.kt-forest .kt-notes{padding:13px 10px}
 .kt-teach.kt-forest .kt-practice{grid-template-columns:minmax(0,1fr) 127px;gap:8px;padding:12px}.kt-teach.kt-forest .kt-feedback{padding:13px 10px}.kt-teach.kt-forest .kt-task-sheet{padding:11px}.kt-teach.kt-forest .kt-task-equation{font-size:20px}
 .kt-teach.kt-path .kt-stage{grid-template-columns:285px minmax(0,1fr);gap:34px}.kt-teach.kt-path .kt-story h3{font-size:29px}.kt-teach.kt-path .kt-nav{gap:14px}.kt-teach.kt-path .kt-tab-title{font-size:14px}
}
@media(max-width:900px){
 .kt-teach{padding:54px 0 60px}.kt-teach .kt-inner{display:block;width:calc(100% - 48px)}
 .kt-teach .kt-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.kt-teach h2{font-size:42px}.kt-teach .kt-intro{max-width:310px;margin:0 0 2px;font-size:14px}
 .kt-teach .kt-nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:27px 0 23px}.kt-teach .kt-tab{display:flex;flex-direction:column;align-items:start;padding:13px;min-height:103px;gap:10px;border-color:#d8e2d7;border-radius:7px}.kt-teach .kt-tab-title{font-size:13px}.kt-teach .kt-tab-desc,.kt-teach .kt-tab[aria-selected="true"] .kt-tab-desc,.kt-teach .kt-tab-arrow{display:none}
 .kt-teach .kt-stage{padding:22px}.kt-teach .kt-call{grid-template-columns:minmax(0,1fr) 142px}.kt-teach .kt-equation{font-size:29px}.kt-teach .kt-equation-small{font-size:19px}.kt-teach .kt-graph{width:117px;height:90px}
 .kt-teach .kt-recording{grid-template-columns:minmax(0,1fr) 192px;gap:14px;padding:15px}.kt-teach .kt-video{padding:21px}.kt-teach .kt-video .kt-equation{font-size:28px}
 .kt-teach .kt-practice{grid-template-columns:minmax(0,1fr) 200px;gap:15px;padding:15px}.kt-teach .kt-task-sheet{padding:20px}.kt-teach .kt-task-equation{font-size:28px}
 .kt-teach.kt-forest .kt-inner{display:block;padding:25px}.kt-teach.kt-forest .kt-copy{padding:0}.kt-teach.kt-forest .kt-heading{display:flex}.kt-teach.kt-forest h2{font-size:40px}.kt-teach.kt-forest .kt-intro{max-width:270px;margin:0;font-size:13px}
 .kt-teach.kt-forest .kt-nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:25px 0 22px}.kt-teach.kt-forest .kt-tab{display:flex;flex-direction:column;min-height:94px;padding:12px 0;align-items:start;gap:9px}.kt-teach.kt-forest .kt-tab-title{font-size:12px}
 .kt-teach.kt-forest .kt-stage{min-height:0;padding:25px}.kt-teach.kt-forest .kt-call{grid-template-columns:minmax(0,1fr) 142px}.kt-teach.kt-forest .kt-equation{font-size:29px}.kt-teach.kt-forest .kt-equation-small{font-size:19px}.kt-teach.kt-forest .kt-graph{width:117px;height:90px}
 .kt-teach.kt-forest .kt-recording{grid-template-columns:minmax(0,1fr) 177px;gap:13px;padding:15px}.kt-teach.kt-forest .kt-video{padding:20px}.kt-teach.kt-forest .kt-video .kt-equation{font-size:26px}
 .kt-teach.kt-forest .kt-practice{grid-template-columns:minmax(0,1fr) 190px;gap:13px;padding:15px}.kt-teach.kt-forest .kt-task-sheet{padding:18px}.kt-teach.kt-forest .kt-task-equation{font-size:25px}.kt-teach.kt-forest .kt-feedback{padding:17px 13px}
 .kt-teach.kt-path .kt-heading{gap:20px}.kt-teach.kt-path .kt-intro{max-width:285px}.kt-teach.kt-path .kt-nav{gap:13px;margin-bottom:0}.kt-teach.kt-path .kt-tab{display:grid;grid-template-columns:25px minmax(0,1fr);min-height:80px;gap:9px;align-items:start;padding:15px 0}.kt-teach.kt-path .kt-tab-title{font-size:13px}
 .kt-teach.kt-path .kt-stage{grid-template-columns:240px minmax(0,1fr);gap:22px;padding-top:27px}.kt-teach.kt-path .kt-story h3{font-size:27px}.kt-teach.kt-path .kt-story p{font-size:12px}
 .kt-teach.kt-path .kt-call{grid-template-columns:minmax(0,1fr) 100px}.kt-teach.kt-path .kt-equation{font-size:23px}.kt-teach.kt-path .kt-equation-small{font-size:16px}.kt-teach.kt-path .kt-board{padding:16px 13px}.kt-teach.kt-path .kt-graph{width:85px;height:74px}.kt-teach.kt-path .kt-recording{grid-template-columns:minmax(0,1fr) 128px;padding:12px;gap:8px}.kt-teach.kt-path .kt-video{padding:12px}.kt-teach.kt-path .kt-video .kt-equation{font-size:20px}.kt-teach.kt-path .kt-notes{padding:12px 10px}
 .kt-teach.kt-path .kt-practice{grid-template-columns:minmax(0,1fr) 133px;padding:12px;gap:8px}.kt-teach.kt-path .kt-task-sheet{padding:12px}.kt-teach.kt-path .kt-task-equation{font-size:20px}.kt-teach.kt-path .kt-feedback{padding:13px 10px}
}
@media(max-width:640px){
 .kt-teach{padding:43px 0 47px}.kt-teach .kt-inner{width:calc(100% - 36px)}.kt-teach .kt-heading,.kt-teach.kt-forest .kt-heading,.kt-teach.kt-path .kt-heading{display:block}
 .kt-teach .kt-kicker{font-size:9px;margin-bottom:12px}.kt-teach h2,.kt-teach.kt-forest h2,.kt-teach.kt-path h2{font-size:37px}.kt-teach .kt-intro,.kt-teach.kt-forest .kt-intro,.kt-teach.kt-path .kt-intro{font-size:13px;line-height:1.65;margin-top:13px;max-width:330px}
 .kt-teach .kt-nav,.kt-teach.kt-forest .kt-nav,.kt-teach.kt-path .kt-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:23px;margin-bottom:20px}
 .kt-teach .kt-tab{display:grid;grid-template-columns:24px minmax(0,1fr);min-height:67px;gap:9px;padding:10px;align-items:center}.kt-teach .kt-number{height:24px;width:24px;font-size:9px}.kt-teach .kt-tab-title{font-size:12px;line-height:1.4}
 .kt-teach .kt-stage{padding:14px;border-radius:6px 6px 26px 6px}.kt-teach .kt-stage-heading{padding-bottom:12px}.kt-teach .kt-demo-label{font-size:9px}.kt-teach .kt-count{font-size:8px}
 .kt-teach .kt-window-bar{height:35px;padding:0 9px;gap:6px}.kt-teach .kt-window-title{font-size:8px}.kt-teach .kt-window-mark{font-size:8px}.kt-teach .kt-window-dots{gap:3px}.kt-teach .kt-window-dots i{width:4px;height:4px}
 .kt-teach .kt-pane{padding:9px;min-height:292px}.kt-teach .kt-live-top{font-size:8px;gap:4px;padding-bottom:10px}.kt-teach .kt-live-badge{font-size:7px}
 .kt-teach .kt-call,.kt-teach.kt-forest .kt-call,.kt-teach.kt-path .kt-call{grid-template-columns:minmax(0,1fr) 77px;gap:7px}
 .kt-teach .kt-board,.kt-teach.kt-forest .kt-board,.kt-teach.kt-path .kt-board{padding:14px 9px;min-height:216px}.kt-teach .kt-board-label{font-size:7px}
 .kt-teach .kt-equation,.kt-teach.kt-forest .kt-equation,.kt-teach.kt-path .kt-equation{font-size:19px;margin-top:15px}.kt-teach .kt-equation-small,.kt-teach.kt-forest .kt-equation-small,.kt-teach.kt-path .kt-equation-small{font-size:13px;margin-top:9px}
 .kt-teach .kt-answer{font-size:9px;padding:4px 7px;gap:10px;margin-top:13px}.kt-teach .kt-board-note{font-size:11px;max-width:124px;margin-top:15px}
 .kt-teach .kt-graph,.kt-teach.kt-forest .kt-graph,.kt-teach.kt-path .kt-graph{width:72px;height:61px;right:6px;bottom:6px}
 .kt-teach .kt-teacher-tile,.kt-teach.kt-path .kt-teacher-tile{height:147px}.kt-teach .kt-teacher-photo{background-size:auto 245px;background-position:center 13%}.kt-teach .kt-teacher-name{font-size:7px;left:4px;right:4px;bottom:4px;padding:5px 4px}.kt-teach .kt-audio{gap:1px}.kt-teach .kt-audio i{width:1.5px}
 .kt-teach .kt-students{grid-template-columns:repeat(2,1fr);gap:4px}.kt-teach .kt-student{height:60px;font-size:7px}.kt-teach .kt-student:last-child{display:none}.kt-teach .kt-student b{width:19px;height:19px;font-size:8px}
 .kt-teach .kt-question{font-size:8px;gap:5px;line-height:1.45}.kt-teach .kt-question-dot{height:18px;width:18px;font-size:8px}.kt-teach .kt-call-tools{gap:3px}.kt-teach .kt-tool{width:20px;height:20px}.kt-teach .kt-tool svg{width:10px;height:10px}
 .kt-teach .kt-stage-bottom,.kt-teach.kt-forest .kt-stage-bottom{padding-top:16px;gap:9px}.kt-teach .kt-benefit-icon{height:25px;width:25px}.kt-teach .kt-benefit-title,.kt-teach.kt-forest .kt-benefit-title{font-size:12px;line-height:1.5}.kt-teach .kt-benefit-desc,.kt-teach.kt-forest .kt-benefit-desc{font-size:10px;line-height:1.6}
 .kt-teach .kt-recording,.kt-teach.kt-forest .kt-recording,.kt-teach.kt-path .kt-recording{grid-template-columns:minmax(0,1fr);padding:10px;gap:10px}
 .kt-teach .kt-video,.kt-teach.kt-forest .kt-video,.kt-teach.kt-path .kt-video{min-height:224px;padding:17px}.kt-teach .kt-video .kt-equation,.kt-teach.kt-forest .kt-video .kt-equation,.kt-teach.kt-path .kt-video .kt-equation{font-size:27px}
 .kt-teach .kt-notes,.kt-teach.kt-forest .kt-notes,.kt-teach.kt-path .kt-notes{padding:14px;display:block}.kt-teach .kt-notes-rule{display:none}.kt-teach .kt-notes-item{margin-top:13px;font-size:10px}.kt-teach .kt-note-file{margin-top:16px}.kt-teach .kt-notes-formula{font-size:14px}
 .kt-teach .kt-practice,.kt-teach.kt-forest .kt-practice,.kt-teach.kt-path .kt-practice{grid-template-columns:minmax(0,1fr);gap:10px;padding:10px}.kt-teach .kt-task-sheet,.kt-teach.kt-forest .kt-task-sheet,.kt-teach.kt-path .kt-task-sheet{padding:16px}.kt-teach .kt-task-equation,.kt-teach.kt-forest .kt-task-equation,.kt-teach.kt-path .kt-task-equation{font-size:24px}
 .kt-teach .kt-feedback,.kt-teach.kt-forest .kt-feedback,.kt-teach.kt-path .kt-feedback{padding:14px}.kt-teach .kt-feedback-title{margin-top:12px}.kt-teach .kt-feedback p{font-size:11px}.kt-teach .kt-feedback-highlight{margin-top:12px}
 .kt-teach .kt-chat{padding:13px;min-height:318px}.kt-teach .kt-message{max-width:94%;font-size:10px;line-height:1.7;padding:10px 11px}.kt-teach .kt-message-formula{font-size:15px}
 .kt-teach.kt-forest .kt-inner{padding:17px;width:calc(100% - 28px);border-radius:6px 6px 28px 6px}.kt-teach.kt-forest .kt-copy{padding:8px 2px 0}.kt-teach.kt-forest .kt-nav{gap:6px 12px;margin-bottom:18px}.kt-teach.kt-forest .kt-tab{display:grid;grid-template-columns:24px minmax(0,1fr);min-height:61px;gap:8px;padding:11px 0;align-items:center}.kt-teach.kt-forest .kt-tab-title{font-size:11px}.kt-teach.kt-forest .kt-stage{padding:13px;border-radius:5px 5px 22px 5px}.kt-teach.kt-forest .kt-stage-heading{padding-bottom:14px}
 .kt-teach.kt-path .kt-nav{gap:6px 18px;margin-bottom:0}.kt-teach.kt-path .kt-tab{display:grid;grid-template-columns:24px minmax(0,1fr);gap:9px;min-height:65px;align-items:center;padding:13px 0}.kt-teach.kt-path .kt-tab-title{font-size:12px;padding-top:0}
 .kt-teach.kt-path .kt-stage{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding-top:27px}.kt-teach.kt-path .kt-story{padding-right:0}.kt-teach.kt-path .kt-story-label{font-size:9px;margin-bottom:12px}.kt-teach.kt-path .kt-story h3{font-size:29px;max-width:325px}.kt-teach.kt-path .kt-story p{font-size:12px;margin-top:12px;max-width:340px}.kt-teach.kt-path .kt-story-note{margin-top:14px;font-size:9px}.kt-teach.kt-path .kt-screen{margin-right:9px;margin-bottom:9px;box-shadow:9px 9px 0 #e0ebde}.kt-teach.kt-path .kt-pane{min-height:292px}
}
@media(max-width:360px){
 .kt-teach .kt-inner{width:calc(100% - 28px)}.kt-teach .kt-stage{padding:10px}.kt-teach .kt-call,.kt-teach.kt-forest .kt-call,.kt-teach.kt-path .kt-call{grid-template-columns:minmax(0,1fr) 66px;gap:5px}
 .kt-teach .kt-equation,.kt-teach.kt-forest .kt-equation,.kt-teach.kt-path .kt-equation{font-size:17px}.kt-teach .kt-equation-small,.kt-teach.kt-forest .kt-equation-small,.kt-teach.kt-path .kt-equation-small{font-size:12px}.kt-teach .kt-board,.kt-teach.kt-forest .kt-board,.kt-teach.kt-path .kt-board{padding:14px 7px}
 .kt-teach .kt-call-tools .kt-tool:last-child{display:none}.kt-teach .kt-window-mark{display:none}.kt-teach.kt-forest .kt-inner{padding:13px}.kt-teach.kt-forest .kt-stage{padding:10px}
}
@media(prefers-reduced-motion:reduce){.kt-teach .kt-tab,.kt-teach .kt-tab-arrow{transition:none}}

.kt-teach.kt-forest{--kt-screen-height:400px;--kt-panel-height:calc(var(--kt-screen-height) - 44px);--kt-peach:#b7d0ac;padding:40px 0 42px;background:transparent}
.kt-teach.kt-forest .kt-stage{height:var(--kt-screen-height);min-height:0;padding:0;background:transparent;border:0;display:block;border-radius:6px 6px 30px 6px;overflow:visible}
.kt-teach.kt-forest .kt-stage::before{display:none}
.kt-teach.kt-forest .kt-screen{width:100%;height:var(--kt-screen-height);margin:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #194f40;border-radius:inherit;background:#f9fbf8;box-shadow:0 12px 28px -24px #194f4055}
.kt-teach.kt-forest .kt-window-bar{height:42px;min-height:42px;flex:none;background:#194f40;border-bottom:1px solid #356b55;padding:0 16px}
.kt-teach.kt-forest .kt-window-dots i{background:#92b49b}
.kt-teach.kt-forest .kt-window-title{color:#e9f2e3;font-size:11px}
.kt-teach.kt-forest .kt-window-mark{color:#fff7e8;font-size:10px}
.kt-teach.kt-forest .kt-pane{width:100%;height:var(--kt-panel-height);min-height:0;flex:1 1 auto;overflow:auto;scrollbar-width:thin}
.kt-teach.kt-forest .kt-groups{display:flex;flex-direction:column}
.kt-teach.kt-forest .kt-live-top,.kt-teach.kt-forest .kt-call-bottom{flex:none}
.kt-teach.kt-forest .kt-call{flex:1;min-height:0}
.kt-teach.kt-forest .kt-board{height:100%;min-height:0}
.kt-teach.kt-forest .kt-video-column{height:100%;min-height:0;display:flex;flex-direction:column}
.kt-teach.kt-forest .kt-teacher-tile{height:auto;min-height:0;flex:1}
.kt-teach.kt-forest .kt-teacher-photo{background-size:auto 115%;background-position:center 10%}
.kt-teach.kt-forest .kt-students{height:70px;flex:none}
.kt-teach.kt-forest .kt-student{height:70px}
.kt-teach.kt-forest .kt-graph{width:120px;height:96px;right:14px;bottom:20px}
.kt-teach.kt-forest .kt-recording,.kt-teach.kt-forest .kt-practice{grid-template-rows:minmax(0,1fr)}
.kt-teach.kt-forest .kt-video{min-height:0}
.kt-teach.kt-forest .kt-chat{display:flex;flex-direction:column}
.kt-teach.kt-forest .kt-chat-head,.kt-teach.kt-forest .kt-message{flex:none}
.kt-teach.kt-forest .kt-chat-input{flex:none;margin-top:auto}
@media(max-width:900px){
 .kt-teach.kt-forest{--kt-screen-height:380px}
}
@media(max-width:640px){
 .kt-teach.kt-forest{--kt-screen-height:420px}
 .kt-teach.kt-forest .kt-window-bar{padding:0 10px}
 .kt-teach.kt-forest .kt-window-title{font-size:8px}
 .kt-teach.kt-forest .kt-window-mark{font-size:8px}
 .kt-teach.kt-forest .kt-call{display:flex;flex-direction:column;gap:9px}
 .kt-teach.kt-forest .kt-board{height:auto;flex:1;min-height:0;padding:16px 14px}
 .kt-teach.kt-forest .kt-board-note{max-width:160px;font-size:10px;margin-top:12px}
 .kt-teach.kt-forest .kt-equation{font-size:22px}
 .kt-teach.kt-forest .kt-equation-small{font-size:15px}
 .kt-teach.kt-forest .kt-answer{font-size:10px}
 .kt-teach.kt-forest .kt-video-column{height:64px;min-height:64px;flex:none;display:grid;grid-template-columns:1fr 1fr;gap:9px}
 .kt-teach.kt-forest .kt-teacher-tile{height:64px}
 .kt-teach.kt-forest .kt-teacher-photo{background-size:auto 188px;background-position:center 13%}
 .kt-teach.kt-forest .kt-students,.kt-teach.kt-forest .kt-student{height:64px}
 .kt-teach.kt-forest .kt-recording{grid-template-rows:165px minmax(0,1fr)}
 .kt-teach.kt-forest .kt-practice{grid-template-rows:minmax(0,1.1fr) minmax(0,1fr)}
 .kt-teach.kt-forest .kt-video{min-height:0}
 .kt-teach.kt-forest .kt-chat-input{margin-top:auto}
}

.kt-teach.kt-forest .kt-section-heading{width:100%;margin:0 0 24px;text-align:center}
.kt-teach.kt-forest .kt-section-heading h2{font-size:42px;line-height:1.12;letter-spacing:-.045em;color:var(--ink,#172a22)}
.kt-teach.kt-forest .kt-section-heading h2::after{content:"";display:block;width:136px;height:1px;background:#527b61;margin:14px auto 0}
.kt-teach.kt-forest .kt-inner{width:100%;margin:0;padding:0;gap:38px;grid-template-columns:280px minmax(0,1fr);align-items:center;background:transparent;border:0;border-radius:0;box-shadow:none}
.kt-teach.kt-forest .kt-copy{display:flex;flex-direction:column;justify-content:center;gap:0;padding:0}
.kt-teach.kt-forest .kt-nav{margin:0;gap:10px;grid-template-columns:minmax(0,1fr)}
.kt-teach.kt-forest .kt-tab{display:grid;grid-template-columns:minmax(0,1fr) 16px;gap:12px;align-items:center;height:64px;min-height:64px;padding:14px 18px;border:1px solid #cbd8ce;border-radius:7px 7px 17px 7px;background:#fff;color:#244f3d;box-shadow:none;transition:background .18s,border-color .18s}
.kt-teach.kt-forest .kt-tab:hover{background:#fff;border-color:#9ab4a2}
.kt-teach.kt-forest .kt-tab[aria-selected="true"]{background:#fff;border-color:#5b8467;color:#1e4935;box-shadow:inset 3px 0 0 #5b8467}
.kt-teach.kt-forest .kt-tab:focus-visible{outline-color:#7ca183}
.kt-teach.kt-forest .kt-tab-title{font-size:15px;line-height:1.4;font-weight:500}
.kt-teach.kt-forest .kt-tab-arrow{transform:none;opacity:.5}
.kt-teach.kt-forest .kt-tab[aria-selected="true"] .kt-tab-arrow{transform:none;opacity:1}
.kt-teach.kt-forest .kt-question-dot{background:#dce9d4;color:#4b7151}
.kt-teach.kt-forest .kt-student:nth-child(2){background:#edf3e8;border-color:#dce7d5}
.kt-teach.kt-forest .kt-student:nth-child(2) b{background:#d5e3ca;color:#54744c}
.kt-teach.kt-forest .kt-graph circle{fill:#91b987}
.kt-teach.kt-forest .kt-progress-track span{background:#b4d29f}
.kt-teach.kt-forest .kt-chat{padding:12px 18px}
.kt-teach.kt-forest .kt-chat-head{padding-bottom:8px;margin-bottom:10px}
.kt-teach.kt-forest .kt-message{padding:8px 11px;margin-top:7px;line-height:1.5}
.kt-teach.kt-forest .kt-message-formula{font-size:15px;margin:4px 0}
@media(max-width:900px){
 .kt-teach.kt-forest{padding:32px 0}
 .kt-teach.kt-forest .kt-section-heading{margin-bottom:22px}
 .kt-teach.kt-forest .kt-section-heading h2{font-size:36px}
 .kt-teach.kt-forest .kt-copy{display:block;padding:0}
 .kt-teach.kt-forest .kt-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px}
 .kt-teach.kt-forest .kt-tab{height:60px;min-height:60px;padding:12px 16px}
 .kt-teach.kt-forest .kt-tab-title{font-size:14px}
}
@media(max-width:640px){
.kt-teach.kt-forest{--kt-screen-height:clamp(280px,calc(100svh - 400px),420px);padding:28px 0 30px}
 .kt-teach.kt-forest .kt-section-heading{width:100%;margin-bottom:20px}
 .kt-teach.kt-forest .kt-section-heading h2{font-size:28px;line-height:1.12;max-width:330px;margin:auto}
 .kt-teach.kt-forest .kt-section-heading h2::after{width:100px;margin-top:12px}
 .kt-teach.kt-forest .kt-inner{padding:0}
 .kt-teach.kt-forest .kt-copy{padding:0}
 .kt-teach.kt-forest .kt-nav{gap:8px;margin:0 0 16px}
 .kt-teach.kt-forest .kt-tab{height:58px;min-height:58px;padding:10px;grid-template-columns:minmax(0,1fr) 12px;gap:5px;border-radius:6px 6px 13px 6px}
 .kt-teach.kt-forest .kt-tab-title{font-size:12px;line-height:1.4}
 .kt-teach.kt-forest .kt-tab-arrow{width:12px;height:12px}
 .kt-teach.kt-forest .kt-graph{width:100px;height:80px;bottom:14px}
 .kt-teach.kt-forest .kt-video{padding:12px}
 .kt-teach.kt-forest .kt-video .kt-equation{font-size:22px;margin-top:9px}
 .kt-teach.kt-forest .kt-video .kt-equation-small{font-size:16px;margin-top:5px}
 .kt-teach.kt-forest .kt-video-progress{margin-top:12px}
 .kt-teach.kt-forest .kt-video-play{width:32px;height:32px;top:58%}
 .kt-teach.kt-forest .kt-notes{padding:10px}
 .kt-teach.kt-forest .kt-notes-item{font-size:9px;margin-top:9px}
 .kt-teach.kt-forest .kt-notes-item b{font-size:9px}
 .kt-teach.kt-forest .kt-notes-formula{font-size:13px;margin-top:4px}
 .kt-teach.kt-forest .kt-note-file{margin-top:10px;font-size:8px}
 .kt-teach.kt-forest .kt-task-sheet,.kt-teach.kt-forest .kt-feedback{padding:10px}
 .kt-teach.kt-forest .kt-task-top{font-size:8px;padding-bottom:6px}
 .kt-teach.kt-forest .kt-task-sheet h4{font-size:10px;margin-top:8px}
 .kt-teach.kt-forest .kt-task-equation{font-size:20px;margin-top:6px}
 .kt-teach.kt-forest .kt-solution{padding:6px;font-size:9px;line-height:1.5;margin-top:8px}
 .kt-teach.kt-forest .kt-solution strong{font-size:10px}
 .kt-teach.kt-forest .kt-practice .kt-small-label{display:none}
 .kt-teach.kt-forest .kt-feedback-author{font-size:8px}
 .kt-teach.kt-forest .kt-feedback-title{font-size:12px;margin-top:8px}
 .kt-teach.kt-forest .kt-feedback p{font-size:10px;line-height:1.5;margin-top:6px}
 .kt-teach.kt-forest .kt-feedback-highlight{font-size:9px;line-height:1.45;padding:6px;margin-top:6px}
 .kt-teach.kt-forest .kt-chat{padding:12px}
 .kt-teach.kt-forest .kt-chat-head{padding-bottom:10px;margin-bottom:10px}
 .kt-teach.kt-forest .kt-message{font-size:9px;line-height:1.55;padding:8px 10px;margin-top:7px}
 .kt-teach.kt-forest .kt-message-formula{font-size:14px}
 .kt-teach.kt-forest .kt-chat-input{padding:8px 10px;font-size:8px}
}
@media(min-width:901px) and (max-height:800px){
 .kt-teach.kt-forest{--kt-screen-height:clamp(300px,calc(100svh - 288px),380px);padding:32px 0 30px}
 .kt-teach.kt-forest .kt-section-heading{margin-bottom:20px}
 .kt-teach.kt-forest .kt-section-heading h2{font-size:40px}
 .kt-teach.kt-forest .kt-inner{padding:0}
 .kt-teach.kt-forest .kt-board-note{display:none}
 .kt-teach.kt-forest .kt-chat-input{display:none}
 .kt-teach.kt-forest .kt-chat-head{padding-bottom:6px;margin-bottom:7px}
 .kt-teach.kt-forest .kt-message{padding:7px 10px;font-size:9px;line-height:1.4;margin-top:6px}
 .kt-teach.kt-forest .kt-message-formula{font-size:14px}
}
@media(max-width:640px) and (max-height:800px){
 .kt-teach.kt-forest .kt-board-note{display:none}
 .kt-teach.kt-forest .kt-chat-input{display:none}
 .kt-teach.kt-forest .kt-chat-head{padding-bottom:7px;margin-bottom:6px}
 .kt-teach.kt-forest .kt-message{padding:7px 9px;margin-top:6px}
 .kt-teach.kt-forest .kt-board{padding:12px}
 .kt-teach.kt-forest .kt-equation{font-size:20px;margin-top:10px}
 .kt-teach.kt-forest .kt-equation-small{font-size:14px;margin-top:7px}
 .kt-teach.kt-forest .kt-answer{font-size:9px;padding:4px 8px;margin-top:8px}
 .kt-teach.kt-forest .kt-graph{width:82px;height:65px}
 .kt-teach.kt-forest .kt-recording{grid-template-rows:118px minmax(0,1fr)}
 .kt-teach.kt-forest .kt-video{padding:10px}
 .kt-teach.kt-forest .kt-video .kt-equation{font-size:20px;margin-top:7px}
 .kt-teach.kt-forest .kt-video .kt-equation-small{display:none}
 .kt-teach.kt-forest .kt-video-progress{margin-top:7px}
 .kt-teach.kt-forest .kt-notes{padding:8px}
 .kt-teach.kt-forest .kt-notes-title{font-size:11px}
 .kt-teach.kt-forest .kt-notes .kt-small-label,.kt-teach.kt-forest .kt-note-file{display:none}
 .kt-teach.kt-forest .kt-notes-item{margin-top:8px}
 .kt-teach.kt-forest .kt-task-sheet,.kt-teach.kt-forest .kt-feedback{padding:8px}
 .kt-teach.kt-forest .kt-task-sheet h4{display:none}
 .kt-teach.kt-forest .kt-task-equation{margin-top:4px}
 .kt-teach.kt-forest .kt-solution{font-size:8px;line-height:1.4;padding:5px;margin-top:6px}
 .kt-teach.kt-forest .kt-feedback .kt-avatar-small{width:20px;height:20px}
 .kt-teach.kt-forest .kt-feedback-title{font-size:11px;margin-top:6px}
 .kt-teach.kt-forest .kt-feedback p{font-size:8px;line-height:1.4;margin-top:5px}
 .kt-teach.kt-forest .kt-feedback-highlight{font-size:8px;line-height:1.4;padding:5px;margin-top:5px}
}
@media(min-width:901px){
 .kt-teach.kt-forest .kt-inner{align-items:stretch}
 .kt-teach.kt-forest .kt-copy{min-height:0}
 .kt-teach.kt-forest .kt-nav{flex:1;min-height:0;grid-template-rows:repeat(4,minmax(0,1fr))}
 .kt-teach.kt-forest .kt-tab{height:auto;min-height:0}
}

/* kt-home-section-dividers */

#page-home{--home-separator:#d5e0d7;overflow-x:clip}
#page-home #home-banner.r52-hero{border-bottom-color:var(--home-separator)}
#page-home #home-courses .home-all-courses-divider::before{left:50%;right:auto;width:100vw;height:1px;background:var(--home-separator);transform:translate(-50%,-50%)}
#page-home > #home-teachers{position:relative}
#page-home > #home-teachers::before{content:"";position:absolute;left:50%;top:0;width:100vw;height:1px;background:var(--home-separator);transform:translateX(-50%);pointer-events:none}
#page-home > :is(#home-reviews,#home-faq){border-top:1px solid var(--home-separator)}
body:has(#page-home:not([hidden])) .site-footer{border-top-color:#d5e0d7}

/* kt-home-unified-headings */

#main-content #page-home :is(#home-courses .section-heading h2,#home-how-title,#home-teachers .r55-teacher-header h2,#home-reviews .section-heading h2){margin:0;max-width:none;font-family:Onest,Arial,sans-serif;font-size:48px;font-weight:600;line-height:1.2;letter-spacing:-.045em;color:var(--ink,#172a22);text-align:center}
#main-content #page-home :is(#home-courses .section-heading h2,#home-how-title,#home-teachers .r55-teacher-header h2,#home-reviews .section-heading h2)::after{content:none;display:none}
#main-content #page-home #home-teachers .r55-teacher-kicker{display:none}
#main-content #page-home #home-teachers .r55-teacher-header{position:relative;display:block}
#main-content #page-home #home-teachers .r55-teacher-controls{position:absolute;right:0;top:50%;transform:translateY(-50%)}
@media(max-width:1000px){
 #main-content #page-home :is(#home-courses .section-heading h2,#home-how-title,#home-teachers .r55-teacher-header h2,#home-reviews .section-heading h2){font-size:42px}
}
@media(max-width:650px){
 #main-content #page-home :is(#home-courses .section-heading h2,#home-how-title,#home-teachers .r55-teacher-header h2,#home-reviews .section-heading h2){font-size:36px}
 #main-content #page-home #home-teachers .r55-teacher-header{display:flex;flex-direction:column;align-items:stretch}
 #main-content #page-home #home-teachers .r55-teacher-controls{position:static;transform:none;align-self:flex-end}
}

/* kt-forest-screen-refinement */

.kt-teach.kt-forest{--kt-screen-height:440px;--kt-panel-height:calc(var(--kt-screen-height) - 2px)}
.kt-teach.kt-forest .kt-window-bar{display:none}
.kt-teach.kt-forest .kt-inner{grid-template-columns:260px minmax(0,1fr);gap:28px}
.kt-teach.kt-forest .kt-screen{border:1px solid #527b61;box-shadow:none}
.kt-teach.kt-forest .kt-pane-outgoing{position:absolute;inset:0;z-index:1;pointer-events:none}
.kt-teach.kt-forest .kt-pane-incoming{position:relative;z-index:2}
.kt-teach.kt-forest .kt-tab{transition:background 1.1s ease-in-out,border-color 1.1s ease-in-out,color 1.1s ease-in-out,box-shadow 1.1s ease-in-out}
.kt-teach.kt-forest .kt-tab-arrow{transition:opacity 1.1s ease-in-out}
@media(prefers-reduced-motion:reduce){
 .kt-teach.kt-forest .kt-tab,.kt-teach.kt-forest .kt-tab-arrow{transition:none}
}
@media(max-width:900px){
 .kt-teach.kt-forest{--kt-screen-height:420px}
}
@media(max-width:640px){
 .kt-teach.kt-forest{--kt-screen-height:clamp(300px,calc(100svh - 360px),460px)}
}
@media(min-width:901px) and (max-height:800px){
 .kt-teach.kt-forest{--kt-screen-height:clamp(300px,calc(100svh - 248px),420px)}
}

/* kt-home-heading-spacing */

#page-home{--home-heading-gap:84px;--home-section-bottom-gap:72px;--home-catalog-line-half:25px}
#main-content #page-home > :is(#home-courses,#home-teachers,#home-reviews,#home-faq){padding-top:var(--home-heading-gap)}
#main-content #page-home > #home-teachers{padding-top:calc(var(--home-heading-gap) + 1px)}
#main-content #page-home > #home-courses{padding-bottom:0}
#main-content #page-home #home-courses .home-all-courses-divider{height:50px;min-height:50px}
#main-content #page-home > #home-how-we-teach{padding-top:calc(var(--home-heading-gap) - var(--home-catalog-line-half));padding-bottom:var(--home-section-bottom-gap)}
@media(max-width:900px){
 #page-home{--home-heading-gap:68px;--home-section-bottom-gap:56px}
}
@media(max-width:650px){
 #page-home{--home-heading-gap:54px;--home-section-bottom-gap:46px}
}

/* kt-forest-viewport-layout */

#main-content #page-home #home-how-we-teach{--kt-viewport-height:100svh;--kt-site-header-height:73px;--kt-viewport-top-inset:16px;--kt-viewport-bottom-inset:86px}
@supports(height:100dvh){#main-content #page-home #home-how-we-teach{--kt-viewport-height:100dvh}}
#main-content #page-home #home-how-we-teach .kt-shell{height:calc(var(--kt-viewport-height) - var(--kt-site-header-height) - var(--kt-viewport-top-inset) - var(--kt-viewport-bottom-inset));min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);row-gap:20px}
#main-content #page-home #home-how-we-teach .kt-section-heading{margin:0}
#main-content #page-home #home-how-we-teach .kt-inner{height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr);align-items:stretch}
#main-content #page-home #home-how-we-teach .kt-copy{height:100%;min-height:0;display:flex;flex-direction:column;padding:0}
#main-content #page-home #home-how-we-teach .kt-nav{height:100%;min-height:0;flex:1;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(4,minmax(0,1fr));gap:10px;margin:0}
#main-content #page-home #home-how-we-teach .kt-tab{height:auto;min-height:0}
#main-content #page-home #home-how-we-teach .kt-stage,#main-content #page-home #home-how-we-teach .kt-screen{height:100%;min-height:0}
#main-content #page-home #home-how-we-teach .kt-pane{height:100%;min-height:0}
@media(min-width:901px){
 #main-content #page-home #home-how-we-teach .kt-teacher-photo{background-size:auto 100%}
}
@media(max-width:900px){
 #main-content #page-home #home-how-we-teach .kt-shell{row-gap:16px}
 #main-content #page-home #home-how-we-teach .kt-inner{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:16px}
 #main-content #page-home #home-how-we-teach .kt-copy{height:auto;display:block}
 #main-content #page-home #home-how-we-teach .kt-nav{height:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,60px);gap:10px;flex:none}
 #main-content #page-home #home-how-we-teach .kt-tab{height:60px;min-height:0;padding:12px 16px}
}
@media(max-width:640px){
 #main-content #page-home #home-how-we-teach .kt-nav{grid-template-rows:repeat(2,58px);gap:8px}
 #main-content #page-home #home-how-we-teach .kt-tab{height:58px;padding:10px}
}
@media(max-height:600px){
 #main-content #page-home #home-how-we-teach{--kt-viewport-top-inset:8px}
 #main-content #page-home #home-how-we-teach .kt-shell{row-gap:12px}
 #main-content #page-home #home-how-we-teach .kt-tab{padding-block:8px}
}
@media(max-width:900px) and (max-height:650px){
 #main-content #page-home #home-how-we-teach .kt-nav{grid-template-rows:repeat(2,46px)}
 #main-content #page-home #home-how-we-teach .kt-tab{height:46px}
 #main-content #page-home #home-how-we-teach .kt-inner{gap:12px}
}

/* kt-course-card-readability */

#main-content .k39-course-card{min-height:316px!important}
#main-content .k39-course-card .k39-course-art{min-height:0!important}
#main-content .k39-course-card .k39-course-content{display:grid!important;grid-template-columns:minmax(0,1fr) 214px;column-gap:26px;row-gap:0;padding:28px!important}
#main-content .k39-course-card .kt-course-info{min-width:0;min-height:258px}
#main-content .k39-course-card .k39-course-meta{gap:8px;margin:0 0 10px!important;font-size:14px!important;line-height:1.4;color:#4e6c58;font-weight:500}
#main-content .k39-course-card .k39-course-content h2{max-width:none!important;min-height:0!important;margin:0 0 12px!important;font-size:32px!important;font-weight:600;line-height:1.16!important;letter-spacing:-.035em;text-wrap:pretty}
#main-content .k39-course-card .k39-course-desc{max-width:460px!important;min-height:0!important;margin:0 0 25px!important;font-size:16px!important;line-height:1.5!important;color:#4d6256;text-wrap:pretty}
#main-content .k39-course-card .k39-course-details{display:block!important;margin:0!important;padding:0;min-width:0}
#main-content .k39-course-card .k39-course-facts{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start!important;gap:16px!important;padding-top:18px;border-top:1px solid #e0e8e1;font-size:16px!important;line-height:1.4!important;min-width:0}
#main-content .k39-course-card .kt-course-fact{min-width:0}
#main-content .k39-course-card .kt-course-fact-label{display:flex;align-items:center;gap:7px;margin-bottom:8px;color:#607367;font-size:14px;line-height:1.4}
#main-content .k39-course-card .k39-course-facts svg{width:18px!important;height:18px!important;flex:none;stroke-width:1.6}
#main-content .k39-course-card .kt-course-fact-value{margin:0;color:#234b38;font-size:16px;line-height:1.4}
#main-content .k39-course-card .kt-course-fact-value strong{display:block;font-size:16px;font-weight:500}
#main-content .k39-course-card .k39-course-bottom{display:flex!important;flex-direction:column;flex-wrap:nowrap!important;align-items:stretch!important;justify-content:space-between;min-width:0;margin:0!important;padding:28px 0 0 24px!important;border-top:0;border-left:1px solid #e0e8e1;gap:24px!important}
#main-content .k39-course-card .k39-course-price{margin:0;font-size:36px!important;line-height:1.1;font-weight:600;letter-spacing:-.035em;color:#193e2f}
#main-content .k39-course-card .k39-course-price>span{font-size:16px!important;font-weight:400;color:#4d6256;margin-right:3px}
#main-content .k39-course-card .k39-course-unit{margin:7px 0 0;font-size:15px!important;line-height:1.4;color:#4d6256}
#main-content .k39-course-card .k39-course-action{width:100%;min-width:0!important;min-height:50px!important;display:flex;justify-content:center;align-items:center;flex:none;padding:12px!important;font-size:16px!important;font-weight:500;line-height:1.3;white-space:normal;text-align:center;border-radius:8px!important;background:#215942;border-color:#215942;color:#fff}
#main-content .k39-course-card .k39-course-action:hover{background:#164a37;border-color:#164a37;color:#fff}
#main-content .k39-course-card .k39-course-action:focus-visible{outline:3px solid #9ab99e;outline-offset:4px}
@media(max-width:1000px){
 #main-content .k39-course-card .k39-course-content{display:block!important;padding:24px!important}
 #main-content .k39-course-card .kt-course-info{min-height:0}
 #main-content .k39-course-card .k39-course-content h2{font-size:30px!important}
 #main-content .k39-course-card .k39-course-desc{max-width:none!important;margin-bottom:23px!important}
 #main-content .k39-course-card .k39-course-bottom{display:grid!important;grid-template-columns:minmax(0,1fr) 200px;align-items:end!important;gap:20px!important;margin-top:22px!important;padding:20px 0 0!important;border-left:0;border-top:1px solid #e0e8e1}
 #main-content .k39-course-card .k39-course-price{font-size:34px!important}
 #main-content .k39-course-card .k39-course-facts{gap:12px!important}
}
@media(max-width:760px){
 #main-content .k39-course-card{grid-template-columns:minmax(0,1fr)!important;min-height:0!important}
 #main-content .k39-course-card .k39-course-art{height:180px!important;min-height:0!important}
 #main-content .k39-course-card .k39-course-art img{height:180px!important;max-height:180px!important}
}
@media(max-width:560px){
 #main-content .k39-course-card .k39-course-art,#main-content .k39-course-card .k39-course-art img{height:160px!important;max-height:160px!important}
 #main-content .k39-course-card .k39-course-content{padding:22px 20px!important}
 #main-content .k39-course-card .k39-course-content h2{font-size:28px!important}
 #main-content .k39-course-card .k39-course-desc{margin-bottom:22px!important}
 #main-content .k39-course-card .k39-course-facts{grid-template-columns:minmax(0,1fr);gap:14px!important}
 #main-content .k39-course-card .kt-course-fact{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;align-items:baseline}
 #main-content .k39-course-card .kt-course-fact-label{margin:0}
 #main-content .k39-course-card .k39-course-bottom{grid-template-columns:minmax(0,1fr);gap:20px!important}
 #main-content .k39-course-card .k39-course-price{font-size:32px!important}
}
@media(max-width:370px){
 #main-content .k39-course-card .k39-course-content{padding:20px 17px!important}
 #main-content .k39-course-card .k39-course-content h2{font-size:26px!important}
 #main-content .k39-course-card .k39-course-price{font-size:30px!important}
}
