.plans-section{margin:40px 0 24px;min-width:0}
.plans-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.plan-card{display:flex;flex-direction:column;position:relative;min-width:0;overflow:hidden;padding:30px;border-radius:30px}
.plan-plus{background:radial-gradient(ellipse at 100% 0%,#819bcd26,transparent 65%),var(--glass);border-color:#829abf70}
.plan-card-heading h4{display:flex;align-items:center;gap:12px;font-family:Manrope,sans-serif;font-size:38px;font-weight:500;letter-spacing:-1.7px;margin:14px 0 8px}
.plan-card-heading p{font-size:14px;color:var(--muted);margin:0}
.plan-card-heading .eyebrow{font-size:12px;letter-spacing:1.4px;min-height:28px;align-items:center}
.plan-plus-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;font-size:25px;letter-spacing:0}
.plan-art{margin:16px 0 10px;color:var(--ink)}
.plan-art svg{width:100%;height:auto;display:block;max-height:120px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.plan-orbit{opacity:.3;stroke-dasharray:3 7}
.plan-price{display:flex;flex-wrap:wrap;gap:9px;align-items:baseline;line-height:1.1;margin:8px 0 12px}
.plan-price strong{font-family:Manrope,sans-serif;font-size:clamp(37px,4.5vw,53px);font-weight:500;letter-spacing:-2.8px}
.plan-price strong>span{font-size:.55em;letter-spacing:-1px}
.plan-price>span{font-size:14px;color:var(--muted)}
.plan-frequency{font-size:12px;line-height:1.6;color:var(--muted);margin:0;min-height:40px}
.plan-features{list-style:none;padding:20px 0 22px;margin:10px 0 0;border-top:1px solid var(--line);font-size:13px;line-height:1.65;display:grid;gap:12px}
.plan-features li{position:relative;padding-left:20px}
.plan-features li::before{content:'+';position:absolute;left:0;color:var(--ink);font-weight:600}
.plan-cta{margin-top:auto;display:flex;justify-content:space-between;gap:12px;white-space:normal;min-height:52px}
.plan-card:has([data-selected=true]){outline:2px solid var(--focus-ring);outline-offset:3px}
.plus-example{font-size:14px;line-height:1.8;color:var(--muted);text-align:center;margin:28px auto;max-width:650px}
.plus-example strong{font-weight:500;color:var(--ink)}
.plan-details{border-top:1px solid var(--line);padding:15px 0;min-width:0}
.plan-details>summary{display:flex;justify-content:space-between;gap:18px;align-items:center;cursor:pointer;list-style:none;min-height:44px;font-size:13px}
.plan-details>summary::-webkit-details-marker{display:none}
.plan-details>summary>span{font-size:23px}
.plan-details[open]>summary>span{transform:rotate(45deg)}
.plan-details>p{font-size:13px;line-height:1.8;color:var(--muted);max-width:680px}
.plan-alternative-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:16px 0}
.plan-alternative-grid article{min-width:0}
.plan-alternative-grid h4{font-size:20px;font-weight:500;margin:0 0 10px;letter-spacing:-.5px}
.plan-alternative-grid p{font-size:13px;line-height:1.7;color:var(--muted)}
.plan-alternative-grid .plan-alternative-price{font-size:21px;color:var(--ink);margin:0}
.plan-alternative-price>span{font-size:12px;color:var(--muted)}
.plan-alternative-grid .text-link{min-height:44px;display:inline-flex;align-items:center;gap:12px}
.plans-note,.plan-selection{font-size:12px;line-height:1.8;color:var(--muted);max-width:760px;overflow-wrap:anywhere}
.plan-selection:empty{display:none}
.plan-mobile-features{display:none}
.plan-plus{border-color:#91a9c1a6;background:radial-gradient(ellipse at 85% 0%,#b5cadc33,transparent 60%),var(--glass);box-shadow:inset 0 1px 0 #ffffffb3,inset 0 0 30px #c5dae51a,0 9px 35px -20px #668ba866}
.plan-plus::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,transparent 30%,#ffffff24 47%,#ffffff40 50%,transparent 68%);transform:translateX(-140%);opacity:0}
.plan-plus::after{content:'';position:absolute;top:0;left:17%;right:17%;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,#e0eefb,transparent)}
.plan-plus .plan-plus-mark{box-shadow:0 0 18px #b5cee833,inset 0 1px 0 #fff6}
.plan-plus .plan-cta{box-shadow:0 5px 20px -10px #6b8ba777}
.plus-roadmap{padding:24px;border-radius:24px;max-width:730px;margin:24px 0}
.plus-roadmap h3{font-size:23px;letter-spacing:-.7px;font-weight:500;margin:14px 0}
.plus-roadmap p{font-size:14px;line-height:1.8;color:var(--muted)}
@media(prefers-color-scheme:dark){.plan-plus{border-color:#9ebad578;background:radial-gradient(ellipse at 85% 0%,#a9c9e522,transparent 65%),var(--glass);box-shadow:inset 0 1px 0 #d8edff38,inset 0 0 32px #a1bfd311,0 10px 34px -22px #93bad552}.plan-plus::before{background:linear-gradient(115deg,transparent 30%,#d8ecff0d 47%,#d8ecff24 50%,transparent 68%)}}
@media(prefers-reduced-motion:no-preference){.plan-plus::before{animation:plus-gleam 1.8s .6s ease-in-out both}@keyframes plus-gleam{0%{transform:translateX(-140%);opacity:0}20%,65%{opacity:1}100%{transform:translateX(140%);opacity:0}}}
@media(max-width:760px){.plans-grid{grid-template-columns:minmax(0,1fr);gap:20px}.plan-card{padding:25px;border-radius:26px}.plan-card-heading .eyebrow{min-height:0}.plan-card-heading h4{font-size:35px}.plan-price strong{font-size:50px}.plan-art{max-width:340px;width:100%;align-self:center}.plan-frequency{min-height:0}.plan-alternative-grid{grid-template-columns:minmax(0,1fr);gap:26px}.plus-example{text-align:left;font-size:13px}.plans-section{margin-top:28px}}
@media(max-width:360px){.plan-card{padding:20px}.plan-price strong{font-size:44px}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.plan-card{transition:translate .35s,border-color .35s}.plan-card:hover{translate:0 -4px}.plan-reply{transition:transform .45s}.plan-plus:hover .plan-reply{transform:translateY(-5px)}}
@media(prefers-reduced-motion:no-preference){.plan-orbit{animation:plan-route 18s linear infinite}@keyframes plan-route{to{stroke-dashoffset:-100}}}
@media(forced-colors:active){.plan-card,.plan-details{border:1px solid CanvasText}.plan-card:has([data-selected=true]){outline-color:Highlight}}

/* Keep comparison rows aligned and expose the same benefits in both plans. */
.plan-card-heading h3{font-family:Manrope,sans-serif;font-size:38px;font-weight:500;letter-spacing:-1.7px;margin:14px 0 8px}
.plan-features{gap:0}
.plan-features li{display:flex;align-items:center;gap:10px;padding:9px 0;min-height:47px}
.plan-features li::before{content:none}
.plan-feature-icon{width:20px;height:20px;flex:none;color:var(--ink)}
.plan-unavailable{color:var(--muted)}
.plan-unavailable .plan-feature-icon{opacity:.65}
.plan-extra{background:linear-gradient(90deg,#7998bc16,transparent);border-radius:8px}
.plan-features li:nth-child(5){border-top:1px solid var(--line);margin-top:8px;padding-top:17px;min-height:55px}
.plan-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.plans-frame{min-width:0;max-width:100%;isolation:isolate}
.plans-mobile-nav{display:none}
.plans-followup{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 22px;margin:20px 0 30px}
.plans-followup p{font-size:13px;color:var(--muted);max-width:450px;margin:0}
.plans-followup .text-link{font-size:13px;min-height:44px;display:inline-flex;align-items:center;gap:12px}
.plan-other-heading{border-top:1px solid var(--line);padding-top:24px}
.plan-other-heading p{margin:10px 0 0;font-size:16px}
.plan-alternative-teasers{padding-top:18px;gap:14px}
.plan-alternative-teasers article{padding:22px;border-radius:22px}
.plan-alternative-teasers h4{margin-top:14px}
.plan-alternative-teasers .text-link{font-size:12px}
.plans-page{padding-top:35px;padding-bottom:50px}
.plans-page-hero{padding:15px 0 45px;max-width:800px}
.plans-page-hero>.text-link{display:inline-flex;min-height:44px;align-items:center;margin-bottom:30px}
.plans-page-hero>.eyebrow{display:block}
.plans-page-hero h1{font-size:clamp(36px,6vw,65px);line-height:1.12;letter-spacing:-2px;margin:20px 0}
.plans-page-hero>p,.plans-page-intro{font-size:16px;line-height:1.8;max-width:660px;color:var(--muted)}
.plan-page-index{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}
.plan-page-index a{border:1px solid var(--line);padding:10px 15px;min-height:44px;border-radius:25px;font-size:12px;display:inline-flex;align-items:center}
.plans-page-section{padding:35px 0;scroll-margin-top:25px}
.plans-page-section h2{font-size:clamp(28px,4vw,42px);line-height:1.2;letter-spacing:-1.2px;margin:16px 0 25px;font-weight:500}
.support-examples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0}
.support-examples article{padding:24px;border-radius:24px;min-width:0}
.support-examples h3{font-size:21px;font-weight:500;letter-spacing:-.5px;margin:16px 0}
.support-examples p,.support-practical p,.plan-alternative-detail p,.plans-closing p{font-size:14px;line-height:1.8;color:var(--muted)}
.support-practical{max-width:730px;border-left:2px solid var(--line);padding-left:22px}
.support-practical h3{font-size:20px;font-weight:500}
.plan-alternative-detail{padding:28px;border-radius:26px;scroll-margin-top:30px}
.plan-alternative-detail h3{font-size:25px;font-weight:500;letter-spacing:-.8px}
.plan-alternative-detail .button{white-space:normal;gap:12px;min-height:52px}
.plans-closing{padding:30px;border-radius:26px;max-width:750px;margin:30px 0}
.plans-closing h2{margin-top:0}
.plans-closing .button{min-height:52px}
@media(max-width:760px){
 .plans-frame{margin:0 -4px}
 .plans-grid#plans-track{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,88%);gap:14px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:4px;padding:5px 4px 12px;max-width:100%;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
 #plans-track>.plan-card{scroll-snap-align:start;scroll-snap-stop:always}
 .plans-mobile-nav{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:0 0 12px}
 .plans-mobile-nav button{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:30px;padding:10px 17px;min-height:44px;font:inherit;font-size:13px;cursor:pointer}
 .plans-mobile-nav button[aria-pressed=true]{background:var(--ink);color:var(--glass);color:Canvas}
 .plans-mobile-nav>span{font-size:12px;color:var(--muted);margin-left:auto}
 .plans-followup{margin-bottom:22px}
 .plan-features li{font-size:12px;min-height:51px}
 .plan-features li:nth-child(5){min-height:59px}
 .plan-alternative-teasers{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .plan-alternative-teasers article{padding:17px 14px}
 .plan-alternative-teasers .eyebrow{font-size:12px;letter-spacing:1px}
 .plan-alternative-teasers h4{font-size:18px;line-height:1.3}
 .plan-alternative-teasers .plan-alternative-price{font-size:22px}
 .plan-alternative-teasers .plan-alternative-price>span{display:block}
 .plans-page-grid{grid-template-columns:minmax(0,1fr)}
 .plans-page-hero{padding-bottom:15px}
 .plans-page-hero>p,.plans-page-intro{font-size:14px}
 .support-examples{grid-template-columns:minmax(0,1fr)}
 .plans-page-section{padding:25px 0}
 .plans-closing{padding:24px}
}
@media(prefers-reduced-motion:no-preference){
 .plan-extra .plan-feature-icon path{stroke-dasharray:20;stroke-dashoffset:20;animation:plan-check-in .6s .2s ease forwards}
 @keyframes plan-check-in{to{stroke-dashoffset:0}}
}
/* The home comparison is a compact horizontal rail, with details on the plan page. */
@media(max-width:760px){
 .plans-section>.plans-frame{width:calc(100% + 40px);max-width:none;margin-inline:-20px}
 .plans-grid#plans-track{display:flex;gap:12px;padding:5px 20px 12px;scroll-padding-inline:20px;box-sizing:border-box;min-width:0;width:100%;max-width:100%;contain:inline-size}
 #plans-track>.plan-card{flex:0 0 calc(100vw - 56px);width:calc(100vw - 56px);max-width:440px;min-width:0;padding:20px;gap:0;align-self:stretch}
 #plans-track .plan-art,#plans-track .plan-card-heading>.eyebrow,#plans-track .plan-frequency,#plans-track .plan-features{display:none}
 #plans-track .plan-card-heading h4{margin:0 0 5px;font-size:30px;letter-spacing:-1px;line-height:1.15}
 #plans-track .plan-card-heading p{font-size:13px;line-height:1.5;min-height:20px}
 #plans-track .plan-price{margin:18px 0 12px}
 #plans-track .plan-price strong{font-size:44px;letter-spacing:-2px}
 #plans-track .plan-mobile-features{display:grid;list-style:none;gap:0;padding:9px 0 12px;margin:0;border-top:1px solid var(--line);font-size:13px;line-height:1.5}
 .plan-mobile-features li{display:flex;align-items:center;gap:10px;min-height:42px;padding:7px 0}
 #plans-track .plan-mobile-features li:nth-child(n+3){color:var(--muted)}
 #plans-track .plan-plus .plan-mobile-features li:nth-child(n+3){color:var(--ink)}
 #plans-track .plan-cta{margin-top:auto;min-height:52px;font-size:13px;padding-block:10px}
 .plans-mobile-nav>span{flex-basis:100%;margin:3px 0 0}
}
/* Plus uses a moving reflection on its surface, not an emphasized selection border. */
.plan-card:has([data-selected=true]){outline:none}
.plan-plus{border-color:var(--line);box-shadow:inset 0 1px 0 #ffffff73,0 16px 40px -28px #172f4a30;background:radial-gradient(ellipse at 0% 0%,#ffffff70,transparent 63%),var(--glass)}
.plan-plus::after{display:none}
.plan-plus::before{background:linear-gradient(115deg,transparent 35%,#ffffff14 46%,#ffffff75 50%,#ffffff14 54%,transparent 65%);opacity:0;transform:translateX(-130%)}
.plan-extra{background:none}
@media(prefers-color-scheme:dark){.plan-plus{border-color:var(--line);box-shadow:inset 0 1px 0 #ffffff15,0 16px 40px -28px #0009;background:radial-gradient(ellipse at 0% 0%,#cadbef0d,transparent 63%),var(--glass)}.plan-plus::before{background:linear-gradient(115deg,transparent 35%,#d8ecff05 46%,#d8ecff35 50%,#d8ecff05 54%,transparent 65%)}}
@media(prefers-reduced-motion:no-preference){.plan-plus::before{animation:plus-surface-light 11s ease-in-out infinite}@keyframes plus-surface-light{0%,65%{transform:translateX(-130%);opacity:0}70%,82%{opacity:.55}88%,100%{transform:translateX(130%);opacity:0}}}
@media(max-width:760px){#plans-track>.plan-card{flex-basis:calc(100vw - 82px);width:calc(100vw - 82px)}}

/* Shared coordinates keep sessions and connecting motion aligned in both plans. */
.plan-card-heading p{min-height:42px}.plan-diagram{width:100%;height:124px;margin:12px 0 14px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;flex:none}.plan-diagram svg{width:100%;height:104px;max-height:none;flex:none;overflow:visible}.plan-diagram-caption{font-size:12px;line-height:20px;color:var(--muted);text-align:center}.lesson-rail{opacity:.2}.lesson-flow{stroke-dasharray:8 32;opacity:.65}.lesson-session rect{fill:var(--glass)}.lesson-support-link{stroke-dasharray:2 4;opacity:.4}.lesson-support{color:var(--ink)}.lesson-reply{fill:currentColor;stroke:none}@media(prefers-reduced-motion:no-preference){.lesson-flow{animation:lesson-flow 5s linear infinite}.lesson-reply circle{animation:lesson-reply 3s ease-in-out infinite}.lesson-reply circle:nth-child(2){animation-delay:.2s}.lesson-reply circle:nth-child(3){animation-delay:.4s}@keyframes lesson-flow{to{stroke-dashoffset:-40}}@keyframes lesson-reply{0%,60%,100%{opacity:.35}30%{opacity:1}}}@media(max-width:760px){#plans-track .plan-diagram{display:flex;height:88px;margin:8px 0 4px}#plans-track .plan-diagram svg{height:68px}#plans-track .plan-card-heading p{min-height:39px}#plans-track .plan-diagram-caption{font-size:12px}.plan-diagram svg{max-width:304px}}

/* Botones de los planes (portada y /suscripciones). Alturas unificadas:
   principal 52 px; secundario en contorno 44 px (mínimo táctil). Con 4 clases, «Pagar con tarjeta»
   es el principal y WhatsApp queda debajo en contorno; con otra cantidad el pago se oculta y WhatsApp
   vuelve a ser principal. Separación de 12 px entre los dos. */
.plan-card .plan-cta,#plans-track .plan-cta,.detail-alternatives .plan-checkout{min-height:52px;padding-block:10px;font-size:13px;width:100%;align-self:stretch}
.plan-checkout{display:flex;justify-content:center;align-items:center;margin-bottom:12px;text-align:center}
.plan-checkout[hidden],.plan-checkout-note[hidden],.plan-checkout-terms[hidden]{display:none}
.plan-checkout-terms{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 12px}
.plan-checkout-note{font-size:13px;line-height:1.6;color:var(--muted);margin:12px 0 0}
.plan-card .plan-checkout-terms:not([hidden]){margin-top:auto;padding-top:14px}
.plan-card .plan-checkout-terms:not([hidden])~.plan-cta{margin-top:0}
.plan-card .plan-checkout:not([hidden])+.plan-whatsapp,#plans-track .plan-checkout:not([hidden])+.plan-whatsapp{min-height:44px;padding:6px 16px;font-size:12px;justify-content:center;gap:10px;background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px currentColor}
.plan-card .plan-checkout:not([hidden])+.plan-whatsapp:hover{background:#26364b0f;box-shadow:inset 0 0 0 1.5px currentColor}
.plan-card .plan-checkout:not([hidden])+.plan-whatsapp .whatsapp-icon{width:20px;height:20px}
@media (prefers-color-scheme:dark){.plan-card .plan-checkout:not([hidden])+.plan-whatsapp,#plans-track .plan-checkout:not([hidden])+.plan-whatsapp{color:#dbe7f7;background:transparent}.plan-card .plan-checkout:not([hidden])+.plan-whatsapp:hover{background:#dbe7f714}}
/* Misma anchura de tarjeta y de botones en la portada y en /suscripciones (móvil). */
@media(max-width:760px){.plans-frame #plans-track>article.plan-card{padding-inline:20px}}
