.membership-main{padding:0 5%}.membership-main [hidden],.membership-dialog [hidden]{display:none!important}.membership-hero{position:relative;isolation:isolate;padding:70px 0 64px;overflow:hidden}.membership-landscape{position:absolute;inset:0 -1px 0 22%;z-index:-1;background:linear-gradient(90deg,var(--modus-c-111310,#111310) 0%,var(--modus-c-11131090,#11131090) 50%,var(--modus-c-11131045,#11131045)),linear-gradient(0deg,var(--modus-c-111310,#111310),transparent 55%),url('images/mountain-lake.webp') center 46%/cover;opacity:.8;mask-image:linear-gradient(90deg,transparent,var(--modus-c-000,#000) 30%)}.membership-hero h1{font-size:clamp(55px,6.1vw,82px);line-height:1.05;letter-spacing:-.055em;margin:12px 0 19px;font-weight:600}.membership-hero .membership-plus-mark{color:var(--modus-c-d7f48c,#d7f48c)}.membership-hero .membership-hero-subtitle{max-width:720px;font:500 clamp(30px,3.65vw,49px)/1.18 Manrope,sans-serif;letter-spacing:-.04em;margin:0 0 24px;color:var(--modus-c-eef5e4,#eef5e4)}.membership-hero .membership-hero-subtitle em{color:var(--modus-c-d7f48c,#d7f48c);font-weight:500}.membership-hero>p:last-child{color:var(--modus-c-b9c8ab,#b9c8ab);line-height:1.9;font-size:15px}.launch-notice{display:flex;gap:14px;align-items:flex-start;padding:19px 23px;background:var(--modus-c-202b1a,#202b1a);border:1px solid var(--modus-b-465e34,#465e34);border-radius:9px;margin-bottom:48px}.status-dot{width:7px;height:7px;background:var(--modus-c-d7f48c,#d7f48c);border-radius:50%;flex-shrink:0;margin-top:6px}.launch-notice strong{font-size:12px;color:var(--modus-c-d4e6c0,#d4e6c0);font-weight:500}.launch-notice p{font-size:12px;color:var(--modus-c-adbf9c,#adbf9c);line-height:1.8;margin:5px 0 0}.pricing-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.pricing-heading .eyebrow{margin-bottom:15px;font-size:9px}.pricing-heading h2{margin:0;font-size:35px}.billing-switch{display:flex;gap:5px;align-items:stretch;background:var(--modus-c-1a2315,#1a2315);border:1px solid var(--modus-b-52673f,#52673f);padding:5px;border-radius:9px}.billing-switch button{border:0;border-radius:5px;color:var(--modus-c-bdcdae,#bdcdae);background:transparent;padding:12px 16px;font:12px 'DM Sans',sans-serif;cursor:pointer}.billing-switch button[aria-pressed=true]{background:var(--modus-c-d7f48c,#d7f48c);color:var(--modus-c-1a2a0e,#1a2a0e)}.billing-switch span{font-size:9px;display:inline-block;margin-left:9px;background:var(--modus-c-35482a,#35482a);color:var(--modus-c-d7f48c,#d7f48c);padding:4px 7px;border-radius:4px}.billing-switch button[aria-pressed=true] span{background:var(--modus-c-bdde79,#bdde79);color:var(--modus-c-243415,#243415)}.billing-explanation{min-height:20px;font-size:11px;color:var(--modus-c-9eaf8e,#9eaf8e);text-align:right;margin:16px 0 36px}.pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}.price-card{min-width:0;position:relative;background:var(--modus-c-1b2417,#1b2417);border:1px solid var(--modus-b-465b35,#465b35);border-radius:13px;padding:30px 25px;display:flex;flex-direction:column}.price-card{transition:background .22s ease,border-color .22s ease,box-shadow .22s ease}.price-card.is-selected{background:linear-gradient(155deg,var(--modus-c-2d3e20,#2d3e20),var(--modus-c-1b2715,#1b2715));border-color:var(--modus-b-b6d77e,#b6d77e);box-shadow:0 0 0 1px rgba(184,216,106,.12)}.plan-ribbon{position:absolute;top:-15px;left:17px;color:var(--modus-c-c8d9b2,#c8d9b2);background:var(--modus-c-27371d,#27371d);border:1px solid var(--modus-b-6b874c,#6b874c);border-radius:5px;padding:7px 10px;font-size:9px;font-weight:600;letter-spacing:.35px;max-width:calc(100% - 34px);line-height:1.3}.price-card.is-selected .plan-ribbon{background:var(--modus-c-d7f48c,#d7f48c);border-color:var(--modus-c-d7f48c,#d7f48c);color:var(--modus-c-1b2a0f,#1b2a0f)}.card-kicker{font-size:8px;letter-spacing:1.4px;color:var(--modus-c-b0c499,#b0c499);margin-bottom:21px}.price-card h3{font:500 27px Manrope,sans-serif;letter-spacing:-.9px;margin:0 0 13px;color:var(--modus-c-eef5e4,#eef5e4)}.accent{color:var(--modus-c-d7f48c,#d7f48c)}.card-description{min-height:49px;margin:0 0 22px;color:var(--modus-c-b5c5a5,#b5c5a5);font-size:12px;line-height:1.9}.price{display:flex;align-items:baseline;gap:10px;color:var(--modus-c-e9f2dc,#e9f2dc);min-height:66px;white-space:nowrap}.price>strong{font:500 46px/1.2 Manrope,sans-serif;letter-spacing:-2px}.price>span{font-size:11px;color:var(--modus-c-afc69a,#afc69a)}.cost-note{font-size:10px;line-height:1.9;color:var(--modus-c-b2c59f,#b2c59f);min-height:38px;margin:7px 0 23px}.plan-action{display:inline-flex;align-items:center;justify-content:center;text-align:center;border:1px solid var(--modus-b-d7f48c,#d7f48c);border-radius:7px;background:var(--modus-c-d7f48c,#d7f48c);color:var(--modus-c-1b2b0f,#1b2b0f);font:600 12px 'DM Sans',sans-serif;padding:10px 17px;cursor:pointer;min-height:40px;line-height:1.5;transition:background .15s;width:100%}.plan-action:hover{background:var(--modus-c-e5ffad,#e5ffad)}.plan-action.secondary{background:var(--modus-c-27371d,#27371d);color:var(--modus-c-d7f48c,#d7f48c);border-color:var(--modus-b-6b874c,#6b874c)}.plan-action.secondary:hover{background:var(--modus-c-334829,#334829)}.feature-label{color:var(--modus-c-d5e6c0,#d5e6c0);font-size:10px;border-top:1px solid var(--modus-b-455c32,#455c32);padding-top:22px;margin:25px 0 12px}.price-card ul{list-style:none;padding:0;margin:0;font-size:12px;color:var(--modus-c-bbd0a7,#bbd0a7);line-height:1.8}.price-card li{position:relative;padding:9px 0 9px 20px}.price-card li:before{content:'✓';position:absolute;left:0;color:var(--modus-c-d7f48c,#d7f48c);font-size:11px}.plan-state{font-size:10px;color:var(--modus-c-a6bc91,#a6bc91);border-top:1px solid var(--modus-b-3f562e,#3f562e);padding-top:18px;margin:22px 0 0}.price-footnote{max-width:820px;font-size:10px;line-height:1.9;color:var(--modus-c-9bab8c,#9bab8c);margin:23px 0 0}.membership-details{padding:65px 0;display:grid;grid-template-columns:1fr 1fr;gap:70px;border-bottom:1px solid var(--modus-b-35452a,#35452a)}.membership-details>div>p:not(.eyebrow){max-width:435px;line-height:1.9;font-size:13px;color:var(--modus-c-aebf9e,#aebf9e)}.membership-details a{font-size:12px;line-height:1.8;color:var(--modus-c-d7f48c,#d7f48c)}.membership-details h2,.billing-panel h2{font-size:32px}.membership-details h2 em,.billing-panel h2 em{font-size:32px}.membership-principles article{display:flex;gap:20px;padding:18px 0;border-bottom:1px solid var(--modus-b-36482a,#36482a)}.membership-principles article:last-child{border:0}.membership-principles article>span{font-size:10px;color:var(--modus-c-9dc773,#9dc773);padding-top:4px}.membership-principles h3{font-size:14px;font-weight:500;margin:0 0 9px;color:var(--modus-c-d8e6c9,#d8e6c9)}.membership-principles p{font-size:12px;line-height:1.8;color:var(--modus-c-a8bc96,#a8bc96);margin:0}.billing-panel{padding:48px 0;display:grid;grid-template-columns:1fr 1fr;gap:70px;border-bottom:1px solid var(--modus-b-35452a,#35452a)}.billing-panel>div>p:not(.eyebrow){font-size:12px;color:var(--modus-c-b1c59e,#b1c59e);line-height:1.9;max-width:450px}.billing-management{padding:28px;background:var(--modus-c-1c2815,#1c2815);border:1px solid var(--modus-b-4d6638,#4d6638);border-radius:10px;align-self:center}.billing-management p{font-size:13px;margin:0 0 11px;color:var(--modus-c-d4e7bc,#d4e7bc)}.billing-management>span{font-size:11px;color:var(--modus-c-a8bf93,#a8bf93);line-height:1.8;display:block}.billing-management .plan-action{margin-bottom:15px}.membership-faq{padding:50px 0 65px;max-width:850px;margin:auto}.membership-faq>.eyebrow{font-size:9px;margin-bottom:16px}.membership-faq h2{font-size:30px;margin-bottom:26px}.membership-faq details{border-top:1px solid var(--modus-b-435934,#435934);padding:0 0 3px}.membership-faq details:last-child{border-bottom:1px solid var(--modus-b-435934,#435934)}.membership-faq summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;font-size:13px;color:var(--modus-c-d4e4c4,#d4e4c4);padding:21px 0;list-style:none;line-height:1.6}.membership-faq summary::-webkit-details-marker{display:none}.membership-faq summary span{color:var(--modus-c-d7f48c,#d7f48c)}.membership-faq details p{color:var(--modus-c-adc397,#adc397);font-size:12px;line-height:1.95;margin:0 0 21px;max-width:750px}.membership-dialog{background:var(--modus-c-1c2816,#1c2816);color:var(--modus-c-e5f0d7,#e5f0d7);border:1px solid var(--modus-b-88a75c,#88a75c);border-radius:13px;max-width:480px;width:calc(100% - 36px);padding:35px;font:13px/1.8 'DM Sans',sans-serif;max-height:calc(100dvh - 40px);overflow:auto}.membership-dialog::backdrop{background:var(--modus-c-050a04c9,#050a04c9);backdrop-filter:blur(5px)}.membership-dialog h2{font-size:31px;margin-bottom:18px}.membership-dialog .eyebrow{font-size:9px;margin-bottom:17px}.membership-dialog .chosen-price{font-size:27px;color:var(--modus-c-d7f48c,#d7f48c);font-weight:500;line-height:1.3;margin:0 0 14px}.membership-dialog p{color:var(--modus-c-b7cba4,#b7cba4)}.dialog-close{position:absolute;top:11px;right:13px;border:0;background:transparent;color:var(--modus-c-d6e8c2,#d6e8c2);font:27px Arial;cursor:pointer;padding:2px 7px}.checkout-unavailable{border-top:1px solid var(--modus-b-486234,#486234);padding-top:21px;margin-top:23px}.checkout-unavailable strong{font-size:14px;font-weight:500}.checkout-unavailable p{font-size:12px}.chosen-renewal{font-size:10px;line-height:1.9;margin:18px 0 0}#chosenTerms{font-size:11px;color:var(--modus-c-d7f48c,#d7f48c)}button:focus-visible,summary:focus-visible{outline:2px solid var(--modus-b-d7f48c,#d7f48c);outline-offset:4px}@media(max-width:1050px){.pricing-grid{gap:14px}.price-card{padding:28px 19px}.price-card h3{font-size:23px}.price>strong{font-size:38px}.membership-details,.billing-panel{gap:35px}}@media(min-width:761px) and (max-width:1199px){.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 18px}.price-card{padding:28px 23px}}
@media(max-width:760px){.membership-main{padding:0 20px}.membership-hero{padding:45px 0 35px}.membership-hero h1{font-size:49px}.membership-hero>p:last-child{font-size:13px}.membership-landscape{inset:0 -20px 0 12%}.launch-notice{margin-bottom:35px;padding:17px}.pricing-heading{flex-direction:column;align-items:flex-start;gap:22px}.pricing-heading h2{font-size:31px}.billing-switch{width:100%}.billing-switch button{flex:1;padding:11px 8px;font-size:11px}.billing-switch span{font-size:8px;margin-left:5px}.billing-explanation{text-align:left;font-size:10px;margin:13px 0 29px}.pricing-grid{grid-template-columns:1fr;gap:30px}.price-card{padding:27px 23px}.price-card h3{font-size:29px}.card-description{min-height:0;margin-bottom:21px}.price>strong{font-size:48px}.price>span{font-size:12px}.cost-note{min-height:0;margin-bottom:23px}.membership-details,.billing-panel{grid-template-columns:1fr;gap:24px;padding:40px 0}.membership-details h2,.membership-details h2 em,.billing-panel h2,.billing-panel h2 em{font-size:29px}.billing-management{padding:22px}.membership-faq{padding:38px 0}.membership-faq summary{font-size:12px}.membership-dialog{padding:30px 24px}.membership-main .price-footnote{font-size:10px}}
@media(prefers-reduced-motion:reduce){.plan-action{transition:none}}

@media(max-width:760px){.plan-action{min-height:44px}}

/* Planned paid memberships remain explorable but clearly not yet available. */
.price-card[data-plan] .plan-coming-badge{position:absolute;top:18px;right:18px;display:inline-flex;align-items:center;justify-content:center;padding:5px 8px;border:1px solid var(--modus-b-6b874c,#6b874c);border-radius:5px;background:var(--modus-c-27371d,#27371d);color:var(--modus-c-d7f48c,#d7f48c);font:700 9px/1.1 'DM Sans',sans-serif;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}
.price-card[data-plan] .card-kicker{padding-right:87px}
@media(max-width:700px){.price-card[data-plan] .plan-coming-badge{top:17px;right:16px}}
html[data-theme=readable] .price-card[data-plan] .plan-coming-badge{background:#e7efd9;color:#304c24;border-color:#879e74}
html[data-theme=contrast] .price-card[data-plan] .plan-coming-badge{background:#fff;color:#000;border-color:#000}

/* Student discount preview – school choice is informational, not verification. */
.student-eligibility-note{font-size:10px;line-height:1.75;color:var(--modus-c-c0d5af,#c0d5af);margin:18px 0 0}
.student-verification{margin-top:54px;padding:31px 0 46px;border-top:1px solid var(--modus-b-455c32,#455c32);border-bottom:1px solid var(--modus-b-455c32,#455c32);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:45px;align-items:start}
.student-verification-intro h2{font-size:clamp(24px,3vw,34px);line-height:1.24;letter-spacing:-.035em;margin:12px 0 17px}
.student-verification-intro>p:not(.eyebrow){font-size:13px;line-height:1.85;color:var(--modus-c-b5c5a5,#b5c5a5);max-width:490px}
.student-verification-panel{padding:25px;border-radius:11px;border:1px solid var(--modus-b-465b35,#465b35);background:var(--modus-c-1b2417,#1b2417)}
.student-verification-panel label{display:block;font-size:12px;font-weight:600;margin:0 0 10px}
.student-verification-panel select{width:100%;border:1px solid var(--modus-b-6b874c,#6b874c);border-radius:7px;background:var(--modus-c-27371d,#27371d);color:var(--modus-c-eef5e4,#eef5e4);font:13px 'DM Sans',sans-serif;padding:12px;min-height:44px}
.student-verification-panel select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
#studentSchoolInfo{font-size:11px;line-height:1.8;color:var(--modus-c-b2c59f,#b2c59f);min-height:38px}
.verification-roadmap{display:grid;gap:10px;margin:22px 0;padding:17px 0;border-top:1px solid var(--modus-b-455c32,#455c32);border-bottom:1px solid var(--modus-b-455c32,#455c32)}
.verification-roadmap span{font-size:11px;line-height:1.6;color:var(--modus-c-d4e6c0,#d4e6c0)}
.student-verification-panel .verification-safety{font-size:11px;line-height:1.8;color:var(--modus-c-b2c59f,#b2c59f);margin-bottom:0}
@media(max-width:760px){.student-verification{grid-template-columns:1fr;gap:15px;margin-top:35px;padding:29px 0}.student-verification-panel{padding:20px}}

/* Student verification belongs to the Elev preview dialog, not the pricing page. */
.membership-dialog:has(#studentVerification:not([hidden])){max-width:590px}
.membership-dialog .student-verification{display:block;margin:22px 0 0;padding:21px 0 0;border-top:1px solid var(--modus-b-455c32,#455c32);border-bottom:0}
.membership-dialog .student-verification-intro h2{font-size:21px;margin:7px 0 10px}
.membership-dialog .student-verification-intro>p:not(.eyebrow){font-size:12px;line-height:1.65;margin:0 0 11px}
.membership-dialog .student-verification-panel{padding:15px 17px;margin-top:15px}
.membership-dialog .verification-roadmap{gap:5px;margin:12px 0;padding:12px 0}
.membership-dialog .student-verification-panel .verification-safety{font-size:10px;line-height:1.7}
.membership-dialog #studentSchoolInfo{min-height:0;margin:9px 0}
@media(max-width:760px){.membership-dialog .student-verification{margin:17px 0 0;padding:17px 0 0}.membership-dialog .student-verification-panel{padding:13px}.membership-dialog .student-verification-intro h2{font-size:20px}}

/* Keep the action and the card's selected styling in sync. */
.price-card.is-selected .plan-action.secondary{background:var(--modus-c-d7f48c,#d7f48c);border-color:var(--modus-c-d7f48c,#d7f48c);color:var(--modus-c-1b2b0f,#1b2b0f)}
.price-card.is-selected .plan-action.secondary:hover{background:var(--modus-c-e5ffad,#e5ffad)}
.price-card:not(.is-selected) .plan-action:not(.secondary){background:var(--modus-c-27371d,#27371d);border-color:var(--modus-b-6b874c,#6b874c);color:var(--modus-c-d7f48c,#d7f48c)}
.price-card:not(.is-selected) .plan-action:not(.secondary):hover{background:var(--modus-c-334829,#334829)}
@media(prefers-reduced-motion:reduce){.price-card{transition:none}}

/* Optional reassurance for teachers and parents – never part of checkout. */
.student-info-trigger{align-self:flex-start;display:inline-flex;align-items:center;gap:7px;margin:-9px 0 20px;padding:7px 0;border:0;background:transparent;color:var(--modus-c-d7f48c,#d7f48c);font:500 11px/1.5 'DM Sans',sans-serif;text-align:left;text-decoration:underline;text-decoration-color:var(--modus-b-6b874c,#6b874c);text-underline-offset:4px;cursor:pointer}
.student-info-trigger:hover{text-decoration-color:currentColor}
.student-info-trigger span{font-size:17px;line-height:1}
.student-info-trigger:focus-visible{outline:2px solid var(--modus-c-d7f48c,#d7f48c);outline-offset:4px;border-radius:3px}
.student-info-dialog{max-width:640px}
.student-info-dialog h2{font-size:clamp(25px,4vw,33px);line-height:1.3;margin:0 0 15px}
.student-info-dialog .student-info-lead{color:var(--modus-c-d8e6c9,#d8e6c9);font-size:14px;line-height:1.8}
.student-info-sections{display:grid;gap:0;margin-top:22px}
.student-info-sections section{padding:16px 0;border-top:1px solid var(--modus-b-455c32,#455c32)}
.student-info-sections h3{font-size:15px;font-weight:600;color:var(--modus-c-eef5e4,#eef5e4);margin:0 0 8px}
.student-info-sections p{font-size:12px;line-height:1.85;margin:0 0 8px}
.student-info-sections p:last-child{margin-bottom:0}
.student-info-dialog .student-info-footer{font-size:11px;line-height:1.75;padding:14px;border:1px solid var(--modus-b-465b35,#465b35);border-radius:7px;background:var(--modus-c-27371d,#27371d);margin:7px 0 0}
@media(max-width:760px){.student-info-dialog{padding:26px 20px}.student-info-sections section{padding:14px 0}}


/* Readability pass: MODUS+ is used at normal desktop viewing distance.
   Avoid microtype for information, prices, benefits, FAQs and dialogs. */
.membership-main{font-size:15px}
.membership-hero>p:last-child{font-size:16px;line-height:1.85}
.launch-notice{padding:21px 24px}
.launch-notice strong{font-size:15px;font-weight:600}
.launch-notice p{font-size:14px;line-height:1.7}
.pricing-heading .eyebrow,.membership-faq>.eyebrow{font-size:11px}
.billing-switch button{font-size:14px;min-height:44px}
.billing-switch span{font-size:11px}
.billing-explanation{font-size:13px;line-height:1.6}
.price-card{padding:33px 24px}
.price-card .card-kicker{font-size:11px;line-height:1.5;letter-spacing:.9px;margin-bottom:19px}
.price-card h3{font-size:clamp(26px,2.25vw,31px);line-height:1.25}
.price-card .card-description{font-size:15px;line-height:1.75;min-height:78px}
.price-card .price>strong{font-size:clamp(43px,3.5vw,52px)}
.price-card .price>span{font-size:14px}
.price-card .cost-note{font-size:13px;line-height:1.65;min-height:43px}
.price-card .plan-action{font-size:14px;min-height:46px}
.price-card .feature-label{font-size:13px;line-height:1.6}
.price-card ul{font-size:14px;line-height:1.65}
.price-card li{padding:10px 0 10px 20px}
.price-card .student-eligibility-note{font-size:13px;line-height:1.7}
.price-card .plan-state{font-size:12px;line-height:1.65}
.price-card .plan-ribbon{font-size:10px;line-height:1.35;padding:8px 11px}
.price-card[data-plan] .plan-coming-badge{font-size:10px;padding:5px 7px}
.price-footnote,.membership-main .price-footnote{font-size:12px;line-height:1.75}
.membership-details>div>p:not(.eyebrow){font-size:15px;line-height:1.8}
.membership-details a{font-size:14px}
.membership-principles article>span{font-size:12px}
.membership-principles h3{font-size:16px}
.membership-principles p{font-size:14px;line-height:1.75}
.billing-panel>div>p:not(.eyebrow){font-size:15px;line-height:1.75}
.billing-management p{font-size:15px}
.billing-management>span{font-size:13px;line-height:1.7}
.membership-faq summary{font-size:16px;line-height:1.55;min-height:62px;align-items:center}
.membership-faq details p{font-size:15px;line-height:1.8}
.membership-dialog{font-size:15px;line-height:1.75}
.membership-dialog .eyebrow{font-size:11px}
.membership-dialog p{font-size:15px;line-height:1.75}
.membership-dialog .chosen-price{font-size:30px}
.membership-dialog .chosen-renewal,#chosenTerms{font-size:13px}
.membership-dialog .checkout-unavailable strong{font-size:16px}
.membership-dialog .checkout-unavailable p{font-size:14px}
.student-info-trigger{font-size:13px}
.student-info-dialog .student-info-lead{font-size:16px;line-height:1.75}
.student-info-sections h3{font-size:18px}
.student-info-sections p{font-size:15px;line-height:1.8}
.student-info-dialog .student-info-footer{font-size:14px;line-height:1.7}
.membership-dialog .student-verification-intro>p:not(.eyebrow){font-size:14px;line-height:1.7}
.student-verification-panel label{font-size:14px}
.student-verification-panel select{font-size:15px}
.membership-dialog #studentSchoolInfo{font-size:13px;line-height:1.65}
.membership-dialog .verification-roadmap span{font-size:13px;line-height:1.65}
.membership-dialog .student-verification-panel .verification-safety{font-size:13px;line-height:1.7}
/* Four readable cards need enough width; switch to two before text becomes cramped. */
@media(min-width:761px) and (max-width:1399px){
 .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 18px}
 .price-card{padding:31px 26px}
 .price-card .card-description{min-height:0}
 .price-card .cost-note{min-height:0}
}
@media(max-width:760px){
 .membership-hero>p:last-child{font-size:15px}
 .price-card{padding:30px 23px}
 .price-card .card-description{min-height:0}
 .price-card .cost-note{min-height:0}
 .price-card .plan-ribbon{font-size:10px}
 .billing-switch button{font-size:13px}
 .billing-switch span{font-size:10px}
 .billing-explanation{font-size:13px}
 .membership-faq summary{font-size:15px}
 .student-info-dialog .student-info-lead{font-size:15px}
}


/* Align pricing cards as one comparison table, not four unrelated vertical stacks.
   Shared subgrid rows keep headings, prices, actions and feature lists level,
   including the optional parent/teacher link in the Elev plan. */
@media(min-width:761px){
 .pricing-grid{row-gap:0}
 .pricing-grid>.price-card{
   display:grid;
   grid-template-columns:minmax(0,1fr);
   grid-template-rows:subgrid;
   grid-row:span 12;
   align-content:stretch;
 }
 .pricing-grid>.price-card .card-kicker{grid-row:1;min-height:0;margin:0;padding:0 0 12px}
 .pricing-grid>.price-card h3{grid-row:2;margin:0;padding:0 0 13px}
 .pricing-grid>.price-card .card-description{grid-row:3;min-height:0;margin:0;padding:0 0 13px}
 .pricing-grid>.price-card .student-info-trigger{grid-row:4;align-self:start;margin:0;padding:0 0 13px}
 .pricing-grid>.price-card .price{grid-row:5;min-height:0;align-self:start;padding:0 0 7px}
 .pricing-grid>.price-card .cost-note{grid-row:6;min-height:0;margin:0;padding:0 0 16px}
 .pricing-grid>.price-card .dvale-card-note{grid-row:7;align-self:start;margin:0;padding:0 0 15px}
 .pricing-grid>.price-card .plan-action{grid-row:8;align-self:start;min-height:46px}
 .pricing-grid>.price-card .feature-label{grid-row:9;margin:22px 0 0;padding:19px 0 12px}
 .pricing-grid>.price-card ul{grid-row:10;margin:0}
 .pricing-grid>.price-card .student-eligibility-note{grid-row:11;align-self:start;margin:17px 0 0}
 .pricing-grid>.price-card .plan-state{grid-row:12;align-self:end;margin:17px 0 0}
}
@media(min-width:761px) and (max-width:1399px){
 .pricing-grid{row-gap:26px}
}

/* Visible dormancy terms at the decision point, separate from fine print. */
.price-card .dvale-card-note{font-size:12px;line-height:1.55;color:var(--modus-c-bbd0a7,#bbd0a7)}
.price-card .dvale-card-note strong{font-weight:700;color:var(--modus-c-d7f48c,#d7f48c)}
.price-card .dvale-card-note span{color:var(--modus-c-afc69a,#afc69a)}
.dvale-purchase-info{margin:20px 0 23px;padding:20px 21px;border-radius:10px;border:1px solid var(--modus-b-6b874c,#6b874c);background:var(--modus-c-27371d,#27371d)}
.membership-dialog .dvale-purchase-label{font:700 11px/1.5 'DM Sans',sans-serif;letter-spacing:.075em;color:var(--modus-c-d7f48c,#d7f48c);margin:0 0 9px}
.dvale-purchase-info h3{font:600 19px/1.4 Manrope,sans-serif;letter-spacing:-.025em;margin:0 0 13px;color:var(--modus-c-eef5e4,#eef5e4)}
.membership-dialog .dvale-purchase-info p:not(.dvale-purchase-label){font-size:14px;line-height:1.75;margin:9px 0;color:var(--modus-c-d8e6c9,#d8e6c9)}
.dvale-purchase-info strong{color:var(--modus-c-eef5e4,#eef5e4);font-weight:650}
.membership-dialog .dvale-purchase-info .dvale-purchase-status{border-top:1px solid var(--modus-b-6b874c,#6b874c);padding-top:12px;margin-top:16px;font-size:12px;color:var(--modus-c-b9c8ab,#b9c8ab)}
@media(max-width:760px){.price-card .dvale-card-note{font-size:12px}.dvale-purchase-info{padding:17px 16px}}


/* Quiet first-impression reassurance, without competing with the hero headline. */
.membership-hero>p:not(.eyebrow){color:var(--modus-c-b9c8ab,#b9c8ab);line-height:1.9;font-size:15px}
.hero-dvale-notice{display:flex;gap:13px;align-items:center;max-width:735px;margin-top:30px;padding:14px 17px;border:1px solid var(--modus-b-465e34,#465e34);border-radius:9px;background:var(--modus-c-202b1a,#202b1a);box-shadow:0 7px 25px rgba(0,0,0,.13)}
.hero-dvale-symbol{flex-shrink:0;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--modus-c-27371d,#27371d);border:1px solid var(--modus-b-6b874c,#6b874c);color:var(--modus-c-d7f48c,#d7f48c);font-size:20px;line-height:1}
.hero-dvale-notice>div{flex:1;min-width:0}
.hero-dvale-notice .hero-dvale-heading{margin:0 0 4px;font-size:13px;line-height:1.4;font-weight:700;color:var(--modus-c-eef5e4,#eef5e4)}
.hero-dvale-heading span{color:var(--modus-c-b2c59f,#b2c59f);font-weight:500}
.hero-dvale-notice .hero-dvale-copy{margin:0;font-size:14px;line-height:1.65;color:var(--modus-c-d4e6c0,#d4e6c0)}
.hero-dvale-link{font-size:12px;line-height:1.5;flex-shrink:0;white-space:nowrap;color:var(--modus-c-d7f48c,#d7f48c);text-decoration:underline;text-underline-offset:4px}
.hero-dvale-link:focus-visible{outline:2px solid var(--modus-c-d7f48c,#d7f48c);outline-offset:4px}
@media(max-width:700px){.hero-dvale-notice{align-items:flex-start;flex-wrap:wrap;gap:10px;margin-top:25px}.hero-dvale-notice>div{flex-basis:calc(100% - 44px)}.hero-dvale-link{margin-left:44px}}

/* Future MODUS app: deliberately understated announcement beneath member billing. */
.modus-app-announcement{display:grid;grid-template-columns:minmax(150px,210px) minmax(0,1fr);align-items:center;gap:clamp(24px,5vw,68px);padding:54px clamp(20px,4vw,54px);margin:38px 0 0;border:1px solid var(--modus-b-35452a,#35452a);border-radius:18px;background:linear-gradient(120deg,rgba(30,46,24,.45),rgba(17,19,16,.4) 70%);overflow:hidden}
.modus-app-art{display:flex;flex-direction:column;align-items:center;gap:13px}
.modus-app-art img{display:block;width:clamp(136px,15vw,176px);height:auto;aspect-ratio:1;border-radius:30px;box-shadow:0 14px 38px #0004}
.modus-app-art span{font:700 9px/1.3 Manrope,sans-serif;letter-spacing:.12em;color:var(--modus-c-9dc773,#9dc773);text-align:center}
.modus-app-copy{min-width:0}
.modus-app-copy .eyebrow{margin:0 0 17px;color:var(--modus-c-d7f48c,#d7f48c)}
.modus-app-copy h2{margin:0 0 19px;font:500 clamp(26px,3vw,38px)/1.25 Manrope,sans-serif;letter-spacing:-.045em;color:var(--modus-c-eef5e4,#eef5e4)}
.modus-app-copy h2 em{font-family:Georgia,serif;font-weight:400;color:var(--modus-c-d7f48c,#d7f48c);letter-spacing:-.025em}
.modus-app-copy>p:not(.eyebrow){max-width:660px;font-size:15px;line-height:1.8;color:var(--modus-c-b1c59e,#b1c59e)}
.modus-app-copy .modus-app-status{display:flex;align-items:center;gap:10px;margin-top:18px;font-weight:700;color:var(--modus-c-d7f48c,#d7f48c)!important}
.modus-app-status span{width:7px;height:7px;border-radius:50%;background:#d7f48c;flex:none}
.modus-app-copy .modus-app-note{margin:9px 0 0;font-size:12px!important;color:var(--modus-c-a8bc96,#a8bc96)!important}
@media(max-width:760px){.modus-app-announcement{grid-template-columns:1fr;gap:21px;padding:29px 23px;margin:24px 0 0}.modus-app-art img{width:144px}.modus-app-art span{font-size:9px}.modus-app-copy h2{font-size:29px}.modus-app-copy>p:not(.eyebrow){font-size:14px}}

/* Student card: badge stays in the same upper-right position as the other
   plans, while its two-line subtitle starts safely below the badge. */
.price-card[data-plan="elev"]{
  padding-top:65px;
}
.price-card[data-plan="elev"] .plan-coming-badge{
  position:absolute;
  top:18px;
  right:18px;
  margin:0;
}
.price-card[data-plan="elev"] .card-kicker{
  padding-right:0;
}
@media(max-width:700px){
  .price-card[data-plan="elev"]{padding-top:61px}
  .price-card[data-plan="elev"] .plan-coming-badge{top:17px;right:16px}
}

/* Subtle roadmap note below the MODUS+ hero heading. */
.membership-hero .membership-timeline{margin:-6px 0 24px;color:var(--accent);font-size:11px;font-weight:700;line-height:1.6;letter-spacing:.15em}
.membership-hero .membership-timeline span{margin:0 .45em;opacity:.65}
html[data-theme="readable"] .membership-hero .membership-timeline{color:#245b34}
@media(max-width:650px){.membership-hero .membership-timeline{font-size:10px;letter-spacing:.11em}}
