.marketing{--m-blue:#245bd5;--m-soft:#f2f6fc}.marketing h1,.marketing h2{font-weight:550}.marketing p{line-height:1.8}.marketing em{font-family:var(--serif);font-weight:400;color:var(--m-blue)}.marketing .eyebrow{font-size:10px;letter-spacing:1.6px}.m-hero{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:55px;padding-top:75px;padding-bottom:92px}.m-hero h1{font-size:clamp(44px,4.6vw,64px);line-height:1.08;letter-spacing:-2.6px;margin:22px 0}.m-lead{font-size:17px;max-width:590px}.m-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:28px}.m-actions .button{gap:18px}.m-reassurance{font-size:11px;margin:14px 0 0}.m-scene-preview{position:relative;background:#fff;border:1px solid #dce5f1;border-radius:15px;box-shadow:0 25px 70px #1b508b14;margin-bottom:30px}.m-scene-preview:before{content:'';position:absolute;inset:-32px -24px;background:var(--m-soft);border-radius:50% 40% 45% 35%;z-index:-1}.m-preview-bar{display:flex;align-items:center;gap:9px;padding:18px 21px;font-size:8px;letter-spacing:1.3px;color:#60748c}.m-scene-preview>a>img{width:100%;aspect-ratio:1672/941;object-fit:cover}.m-preview-caption{padding:25px 26px 65px}.m-preview-caption h2{font-size:25px;line-height:1.3;margin:10px 0}.m-preview-caption p{font-size:12px;margin-bottom:0}.m-word-chip{position:absolute;bottom:-31px;left:25px;display:flex;align-items:center;gap:17px;min-width:210px;border:1px solid #dce5f1;border-radius:12px;background:white;padding:12px 23px;box-shadow:0 8px 24px #17489410}.m-word-chip strong{font-size:38px;font-weight:500;color:var(--m-blue)}.m-word-chip>span{font-size:14px;color:var(--ink)}.m-word-chip small{display:block;color:var(--muted);font-size:11px}.m-word-chip .m-chip-arrow{margin-left:auto;color:var(--m-blue)}.m-language-band{border-block:1px solid var(--line)}.m-language-band>.wrap{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:23px}.m-language-band p{margin:0;font-size:12px}.m-language-band a{display:flex;gap:15px;align-items:center;font-size:13px}.m-language-band a>span:first-child{font-size:23px;color:var(--m-blue)}.m-language-band a>span:last-child{color:var(--m-blue)}.m-section{padding-block:86px}.m-section-intro{max-width:625px}.m-section h2,.m-demo-copy h2,.m-faq-section h2{font-size:43px;line-height:1.12;margin:18px 0 24px}.m-section-intro>p{font-size:16px;max-width:580px}.m-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:42px}.m-steps article{border-top:1px solid #bfcfe5;padding-top:21px}.m-step{font-size:10px;letter-spacing:1.5px;color:var(--m-blue)}.m-steps h3{font-size:23px;margin:22px 0 15px}.m-steps p{font-size:14px;margin:0}.m-demo-section{background:var(--m-soft);border-block:1px solid #e4ebf5}.m-demo-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-block:75px}.m-demo-copy p{font-size:15px;max-width:440px}.m-demo-copy .text-link{display:inline-block;margin-top:13px}.m-demo{min-width:0}.m-demo-scene{display:flex;align-items:center;gap:14px;margin:0 10px 14px}.m-demo-scene img{width:105px;height:60px;object-fit:cover;border-radius:7px}.m-demo-scene span{max-width:190px;font-size:11px;color:var(--muted)}.m-demo-card{background:#fff;border:1px solid #d6e1ee;box-shadow:0 12px 40px #183f7410;border-radius:14px;overflow:hidden}.m-card-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line)}.m-card-tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:white;font-size:11px;padding:17px 5px;min-height:48px;color:var(--muted)}.m-card-tabs button[aria-selected=true]{background:#f5f8ff;color:var(--m-blue);border-bottom-color:var(--m-blue)}.m-card-face{min-height:335px;padding:30px 32px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.m-card-face .eyebrow{font-size:9px;margin-bottom:25px}.m-demo-term{font-size:83px;font-weight:500;line-height:1.3}.m-demo-reading{font-size:46px;font-weight:500}.m-demo-meaning{font-size:39px;font-weight:500}.m-demo-comment{text-align:left;max-width:340px}.m-demo-comment>p{font-size:18px;line-height:1.7;color:var(--ink);margin:17px 0}.m-demo-comment>p.m-comment-translation{font-size:13px;color:var(--muted);margin-bottom:0}.m-avatar{width:40px;height:40px;object-fit:cover;border-radius:50%}.m-demo-hint{font-size:11px;text-align:center;margin:14px 0 0}.m-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:32px}.m-section-heading h2{margin-bottom:0}.m-section-heading>p{font-size:13px;flex-shrink:0;margin-bottom:0}.marketing .tile-copy h3{font-size:22px;line-height:1.35}.m-scene-note{font-size:11px;margin:20px 0 0;text-align:center}.m-faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding-block:50px 85px}.m-faq details{border-bottom:1px solid var(--line);padding:20px 0}.m-faq details:first-child{border-top:1px solid var(--line)}.m-faq summary{font-size:15px;font-weight:550;cursor:pointer;line-height:1.6;list-style:none;position:relative;padding-right:26px}.m-faq summary::-webkit-details-marker{display:none}.m-faq summary:after{content:'+';position:absolute;right:0;top:0;color:var(--m-blue);font-size:20px}.m-faq details[open] summary:after{content:'−'}.m-faq p{font-size:13px;margin:14px 0 0}.m-faq p a{color:var(--m-blue);text-decoration:underline;text-underline-offset:3px}.m-final{text-align:center;background:#f0f5fd;border-top:1px solid #e0e9f6;padding-block:70px}.m-final h2{font-size:55px;margin:20px 0}.m-final p{font-size:16px}.m-final .button{margin:8px 0 18px}.m-final small{display:block;font-size:11px;color:var(--muted)}.m-pricing-intro{text-align:center;padding-block:72px 48px}.m-pricing-intro h1{font-size:52px;line-height:1.16;margin:24px 0}.m-pricing-intro .m-lead{margin:0 auto;max-width:720px}.m-free-plan{padding:35px 40px;background:var(--m-soft);border:1px solid #d5e3f6;border-radius:14px;display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:center}.m-free-plan h2{font-size:31px;margin:15px 0}.m-free-plan p{font-size:14px;margin-bottom:0}.m-free-plan .m-free-price{font-size:43px;line-height:1.3;color:var(--ink);margin-bottom:17px}.m-free-price span{font-size:12px;color:var(--muted)}.m-free-plan>div:last-child{text-align:center}.m-free-plan small{font-size:11px;color:var(--muted);display:block;margin-top:9px}.m-paid-heading{text-align:center;margin:65px auto 30px}.m-paid-heading h2{font-size:34px;margin-bottom:13px}.m-paid-heading p{font-size:14px}.m-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.m-plan{border:1px solid #dce5ef;border-radius:13px;padding:30px 25px;display:flex;flex-direction:column}.m-plan h3{font-size:27px;margin:14px 0 23px}.m-plan-price{display:flex;align-items:baseline;gap:8px;color:var(--ink);margin:0}.m-plan-price strong{font-size:44px;letter-spacing:-1.7px;font-weight:550;line-height:1.3}.m-plan-price span{font-size:12px}.m-plan .m-annual{font-size:12px;margin:10px 0 22px}.m-plan ul{list-style:none;padding:22px 0 0;margin:0 0 24px;border-top:1px solid var(--line);font-size:13px;flex:1}.m-plan li{position:relative;padding-left:23px;margin-bottom:14px;color:var(--muted)}.m-plan li:before{content:'✓';position:absolute;left:0;color:var(--m-blue)}.m-plan .button{font-size:12px;gap:8px}.m-plan .m-plan-footnote{font-size:11px;text-align:center;margin:12px 0 0}.m-price-note{max-width:800px;margin:24px auto 0;text-align:center;font-size:11px}.m-availability{border-left:3px solid #a9c2ee;padding:18px 22px;margin:35px auto 22px;max-width:850px;background:#f8faff;font-size:14px}.m-availability p{font-size:13px;margin:7px 0 12px}.m-availability .text-link{font-size:12px}
@media(max-width:1100px){.m-hero{gap:35px}.m-hero h1{font-size:51px}.m-demo-layout{gap:40px}.m-plan{padding:25px 20px}.m-free-plan{gap:30px}.m-faq-section{gap:45px}.m-section-heading>p{flex-shrink:1}.m-section h2,.m-demo-copy h2,.m-faq-section h2{font-size:37px}}
@media(max-width:800px){.m-hero{grid-template-columns:1fr;padding-block:45px 60px;gap:50px}.m-hero-copy{max-width:590px}.m-hero h1{font-size:60px}.m-scene-preview{max-width:610px;margin:0 auto 25px;width:100%}.m-scene-preview:before{inset:-20px -10px}.m-language-band>.wrap{flex-wrap:wrap;gap:18px}.m-language-band p{width:100%}.m-language-band a{gap:8px;font-size:12px}.m-language-band a>span:first-child{font-size:19px}.m-section{padding-block:58px}.m-steps{gap:23px}.m-steps h3{font-size:20px}.m-steps p{font-size:13px}.m-demo-layout{grid-template-columns:1fr;gap:35px;padding-block:55px}.m-demo-copy p{max-width:600px}.m-demo{max-width:530px;width:100%;margin:auto}.m-section-heading{align-items:flex-start;flex-direction:column;gap:20px}.m-section-heading br{display:none}.marketing .scene-grid{grid-template-columns:1fr}.marketing .deck-tile{display:grid;grid-template-columns:1fr 1fr}.marketing .tile-image{height:100%}.marketing .tile-image img{height:100%;object-fit:cover}.marketing .tile-copy h3{font-size:20px;min-height:0}.m-faq-section{grid-template-columns:1fr;gap:10px;padding-block:20px 55px}.m-final h2{font-size:46px}.m-pricing-intro{padding-top:45px}.m-pricing-intro h1{font-size:43px}.m-free-plan{padding:27px;grid-template-columns:1fr;gap:24px}.m-free-plan>div:last-child{text-align:left}.m-plan-grid{grid-template-columns:1fr}.m-plan{padding:30px}.m-plan ul{margin-bottom:15px}.m-plan .button{max-width:400px}.m-plan .m-plan-footnote{text-align:left}.m-paid-heading h2{font-size:31px}}
@media(max-width:480px){.m-hero h1{font-size:50px;letter-spacing:-2px}.m-lead{font-size:15px}.m-hero{gap:42px}.m-actions{gap:16px}.m-actions .button{font-size:13px}.m-preview-caption{padding:21px 20px 65px}.m-preview-caption h2{font-size:23px}.m-preview-bar{font-size:7px;letter-spacing:.6px;padding:15px}.m-reassurance{font-size:10px}.m-language-band>.wrap{gap:15px 8px}.m-language-band a{font-size:10px;gap:5px}.m-language-band a>span:first-child{font-size:17px}.m-steps{grid-template-columns:1fr;gap:25px;margin-top:30px}.m-steps h3{font-size:24px;margin:14px 0}.m-steps p{font-size:14px}.m-section h2,.m-demo-copy h2,.m-faq-section h2{font-size:34px}.m-section-intro>p{font-size:15px}.m-card-tabs button{font-size:10px}.m-card-face{padding:24px;min-height:365px}.m-demo-comment>p{font-size:17px}.marketing .deck-tile{display:block}.marketing .tile-image{height:auto}.marketing .tile-copy h3{font-size:23px}.m-final h2{font-size:44px}.m-final p{font-size:14px}.m-final small{font-size:10px}.m-pricing-intro h1{font-size:36px}.m-pricing-intro .m-lead{font-size:14px}.m-pricing-intro .m-lead br{display:none}.m-free-plan{padding:23px}.m-free-plan h2{font-size:29px}.m-price-note{font-size:11px}.m-faq summary{font-size:14px}}

.m-plan .stripe-web-only .button{margin-bottom:10px}.m-plan .stripe-web-only{margin-bottom:8px}

/* Published curriculum totals on the homepage. */
.m-curriculum-section{background:var(--m-soft);border-block:1px solid #e4ebf5}
.m-curriculum-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}
.m-curriculum-card{background:#fff;border:1px solid #dce5ef;border-radius:14px;padding:28px}
.m-curriculum-card header{display:flex;align-items:center;gap:14px;margin-bottom:26px}
.m-curriculum-script{font-size:22px;color:var(--m-blue)}
.m-curriculum-card h3{font-size:24px;margin:0}
.m-curriculum-card dl{margin:0}
.m-curriculum-card dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:15px 0;border-top:1px solid var(--line)}
.m-curriculum-card dt{font-size:13px;color:var(--muted)}
.m-curriculum-card dd{margin:0;font-size:28px;font-weight:550;font-variant-numeric:tabular-nums;letter-spacing:-.7px;color:var(--m-blue)}
.m-curriculum-card dl>div:last-child{padding-bottom:0}
@media(max-width:1000px){.m-curriculum-grid{gap:16px}.m-curriculum-card{padding:22px}.m-curriculum-card header{display:block}.m-curriculum-card h3{margin-top:10px}.m-curriculum-card dd{font-size:25px}}
@media(max-width:700px){.m-curriculum-grid{grid-template-columns:1fr}.m-curriculum-card header{display:flex}.m-curriculum-card h3{margin:0}.m-curriculum-card dd{font-size:29px}}

.m-section-heading h2 br{display:initial}

/* Apple-provided artwork, with its original proportions and clear space. */
.m-app-store-badge{display:inline-flex;flex-shrink:0;border-radius:7px}
.m-app-store-badge img{display:block;width:auto;height:48px}
.m-app-store-badge:focus-visible{outline:3px solid var(--m-blue);outline-offset:5px}
