@font-face{font-family:Baloo;src:url('../fonts/Baloo2-VariableFont_wght.ttf') format('truetype');font-weight:400 800;font-display:swap}
:root{--teal:#00a0bd;--teal-dark:#00466d;--gold:#ffdd00;--coral:#f78478;--cream:#fff6cf;--sky:#e2ffff;--ink:#00466d;--muted:#000;--white:#fff;--shadow:0 0 10px rgba(0,70,109,.25);--radius:28px;--container:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Baloo,Arial,sans-serif;background:#fff;font-size:18px;line-height:1.5}img{max-width:100%;display:block}a{color:inherit}.grade-page{overflow:hidden}.container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}.narrow{max-width:920px}.center{text-align:center}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(42px,5.2vw,72px);line-height:.98;letter-spacing:-.035em;margin-bottom:24px}h2{font-size:clamp(34px,4vw,56px);line-height:1.06;letter-spacing:-.025em;margin-bottom:22px}h3{font-size:24px;line-height:1.15}p{color:var(--muted)}.section{padding:clamp(78px,9vw,132px) 0}.section-teal{background:var(--teal);color:#fff}.section-teal p{color:#e9fdff}.section-cream{background:var(--cream)}.section-sky{background:var(--sky)}.section-white{background:#fff}.section-gold{background:var(--gold)}.section-label,.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:14px;color:#078b9c;margin-bottom:14px}.section-label-light{color:#dffbff}.eyebrow{color:#fff}.eyebrow-dark{color:var(--ink)}.section-intro{max-width:720px;margin:0 auto 46px;font-size:21px}.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - var(--container))/2));background:#fff;position:relative;z-index:20}.brand img{width:132px}.header-cta{background:var(--gold);text-decoration:none;font-weight:800;padding:10px 22px;border-radius:999px}.hero{position:relative;padding:76px 0 102px}.hero:after{content:"";position:absolute;left:-2%;right:-2%;bottom:-1px;height:48px;background:var(--cream);clip-path:ellipse(54% 42% at 50% 100%)}.hero-grid,.split,.offer-grid,.final-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,92px);align-items:center}.hero-lead{font-size:22px;max-width:620px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:12px 30px;border-radius:999px;text-decoration:none;text-transform:uppercase;letter-spacing:.035em;font-size:16px;font-weight:800;box-shadow:0 7px 0 rgba(0,0,0,.12);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.button:hover{transform:translateY(-3px);box-shadow:0 10px 0 rgba(0,0,0,.12);filter:saturate(1.08)}.button-gold{background:var(--gold);color:var(--ink)}.button-teal{background:var(--teal);color:#fff}.button-coral{background:var(--coral);color:#fff}.media-placeholder{position:relative;display:grid;place-items:center;min-height:360px;border:3px dashed rgba(255,255,255,.72);border-radius:var(--radius);background:linear-gradient(145deg,rgba(255,255,255,.27),rgba(255,255,255,.08));color:inherit;text-align:center;font-weight:800;box-shadow:var(--shadow);isolation:isolate}.media-placeholder:before,.media-placeholder:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.25);z-index:-1}.media-placeholder:before{width:130px;height:130px;left:8%;top:12%}.media-placeholder:after{width:80px;height:80px;right:10%;bottom:12%}.media-placeholder small{font-weight:500;opacity:.8}.section-cream .media-placeholder,.section-white .media-placeholder{border-color:rgba(0,164,183,.45);background:linear-gradient(145deg,#e8fafc,#fff);color:var(--teal-dark)}.media-placeholder--hero{min-height:490px}.media-placeholder--photo{min-height:480px}.media-placeholder--characters{min-height:220px;max-width:700px;margin:0 auto 30px}.media-placeholder--product{min-height:420px}.media-placeholder--parent-app{min-height:500px}.media-placeholder--mascot{min-height:430px}.media-placeholder--giveaway{min-height:400px;border-color:rgba(23,61,75,.3);color:var(--ink)}.media-placeholder--school{min-height:520px}.split-photo{grid-template-columns:1.06fr .94fr}.check-list{padding:0;list-style:none;display:grid;gap:12px}.check-list li{position:relative;padding-left:34px}.check-list li:before{content:"✓";position:absolute;left:0;top:0;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--teal);color:#fff;font-weight:800}.benefit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:42px}.benefit-card{background:#fff;border-radius:22px;padding:30px;text-align:left;box-shadow:0 12px 30px rgba(23,61,75,.08)}.benefit-card .number{display:grid;place-items:center;width:42px;height:42px;margin-bottom:18px;border-radius:50%;background:var(--gold);font-weight:800}.benefit-card h3{margin-bottom:10px}.benefit-card p{margin-bottom:0}.characters-band{padding:62px 0}.partner-logos{display:flex;align-items:center;gap:34px;margin-top:34px}.partner-logos img{max-height:38px;max-width:150px}.quote-card{background:var(--teal-dark);color:#fff;border-radius:var(--radius);padding:56px;box-shadow:var(--shadow);transform:rotate(2deg)}.quote-card strong{display:block;color:var(--gold);font-size:clamp(46px,6vw,76px);line-height:.95;margin-bottom:20px}.quote-card span{font-size:24px;line-height:1.25}.offer-band{background:var(--teal-dark);color:#fff;scroll-margin-top:20px}.offer-marquee{display:flex;width:max-content;background:var(--gold);color:var(--ink);font-weight:800;line-height:44px;white-space:nowrap;animation:marquee 24s linear infinite}.offer-marquee div{min-width:max-content}.offer-grid{padding-top:90px;padding-bottom:90px}.offer-band p{color:#d9f6fa}.price{display:flex;gap:13px;align-items:baseline;flex-wrap:wrap;margin:18px 0}.price strong{font-size:64px;line-height:1;color:var(--gold)}.price-old{text-decoration:line-through;opacity:.64}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:48px 0 40px}.product-card{background:#fff;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.phone-placeholder{height:310px;max-width:170px;margin:0 auto 26px;border:9px solid var(--ink);border-radius:30px;background:linear-gradient(160deg,#d9f7fa,#fff0c7);display:grid;place-items:center;color:var(--teal-dark);font-weight:800;box-shadow:0 16px 25px rgba(23,61,75,.15)}.product-card p{margin-bottom:0}.store-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.store-links img{height:48px;width:auto}.mindy-section,.giveaway{padding:clamp(76px,9vw,120px) 0}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}.review-card{margin:0;background:#fff;padding:30px;border-radius:22px;text-align:left;box-shadow:var(--shadow)}.review-card p{font-size:18px}.review-card cite{font-style:normal;font-weight:800}.stars{color:#f5ad00;letter-spacing:.08em}.final-cta{padding-top:80px}.final-grid{align-items:end}.final-logo{width:180px;margin-bottom:34px}.final-cta .copy{padding-bottom:80px}.site-footer{background:#06232f;color:#fff;padding:58px 0 44px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr auto;gap:48px;align-items:start}.footer-logo{width:150px;filter:brightness(0) invert(1)}.site-footer p{color:#b7d1d8}.site-footer nav{display:grid;gap:10px}.site-footer nav a{text-decoration:none}.reveal{opacity:0;transform:translateY(38px);transition:opacity .7s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.reveal[data-reveal="left"]{transform:translateX(-48px)}.reveal[data-reveal="right"]{transform:translateX(48px)}.reveal.is-visible{opacity:1;transform:translate(0,0)}.stagger-group .reveal:nth-child(2){transition-delay:.1s}.stagger-group .reveal:nth-child(3){transition-delay:.2s}.stagger-group .reveal:nth-child(4){transition-delay:.3s}.float-layer.is-visible{transform:translateY(var(--parallax-y,0))}.float-layer{transition:opacity .7s ease,transform .25s linear}
.reveal-opacity{opacity:0;transition:opacity .75s ease}.reveal-opacity.is-visible{opacity:1}
@keyframes marquee{to{transform:translateX(-50%)}}
@media(max-width:760px){body{font-size:16px}.container{width:min(calc(100% - 30px),var(--container))}.site-header{height:62px;padding:0 15px}.brand img{width:112px}.header-cta{font-size:13px;padding:8px 14px}.hero{padding:52px 0 82px}.hero-grid,.split,.offer-grid,.final-grid{grid-template-columns:1fr;gap:38px}.hero-copy{text-align:center}.hero-lead{font-size:18px}.media-placeholder--hero{min-height:340px}.split-photo .media-placeholder{order:0}.split-photo .copy{order:1}.section{padding:72px 0}.benefit-grid,.product-grid,.review-grid{grid-template-columns:1fr}.benefit-card{padding:24px}.characters-band{padding:52px 0}.media-placeholder--characters{min-height:180px}.quote-card{padding:36px;transform:rotate(1deg)}.offer-grid{padding-top:62px;padding-bottom:70px}.price strong{font-size:52px}.product-grid{gap:18px}.phone-placeholder{height:280px}.parent-app .copy{text-align:center}.store-links{justify-content:center}.mindy-section .copy{text-align:center}.giveaway .copy{text-align:center}.final-cta{padding-top:64px}.final-cta .copy{text-align:center;padding-bottom:0}.final-logo{margin-inline:auto}.footer-grid{grid-template-columns:1fr;text-align:center;gap:26px}.footer-logo{margin-inline:auto}.section-intro{font-size:18px}.media-placeholder--photo,.media-placeholder--parent-app,.media-placeholder--mascot,.media-placeholder--school{min-height:340px}.button{width:100%;max-width:360px}.partner-logos{justify-content:center}.evidence .copy{text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.offer-marquee{animation:none}.reveal,.reveal[data-reveal]{opacity:1;transform:none;transition:none}.reveal-opacity{opacity:1;transition:none}.float-layer.is-visible{transform:none}.button{transition:none}}

/* Shared MindED language recovered from promo-verano */
.promo-header{padding:14px 0;background:#e4e4e4;position:relative;z-index:20}.promo-header-inner{display:flex;align-items:center;justify-content:center}.promo-header-logo{width:190px;height:auto}
.hero.hero-background{position:relative;min-height:720px;padding:0;display:flex;align-items:center;isolation:isolate;overflow:hidden}.hero.hero-background:after{z-index:4}.hero-image-placeholder{position:absolute;inset:0;z-index:-3;display:grid;place-items:center;background:linear-gradient(135deg,#68c8d2 0%,#24a6b8 45%,#0d7794 100%);color:rgba(255,255,255,.68);font-weight:800;letter-spacing:.06em}.hero-image-placeholder:before,.hero-image-placeholder:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.1)}.hero-image-placeholder:before{width:32vw;height:32vw;left:56%;top:12%}.hero-image-placeholder:after{width:20vw;height:20vw;right:3%;bottom:-5%}.hero-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,48,70,.86),rgba(0,69,87,.56) 48%,rgba(0,63,78,.1) 78%)}.hero-grid-overlay{grid-template-columns:minmax(0,650px) 1fr;padding-top:90px;padding-bottom:120px}
.button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:300px;max-width:100%;height:56px;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:#fff;text-decoration:none;cursor:pointer;box-shadow:none;filter:drop-shadow(0 5px 0 rgba(0,51,67,.22));transition:transform .2s ease,filter .2s ease;-webkit-tap-highlight-color:transparent}.button:before{content:"";position:absolute;inset:0;background:url("../img/public/promo-verano/Group-480.svg") center/100% 100% no-repeat;z-index:0}.button span{position:relative;z-index:1;color:#fff;font-size:clamp(18px,2vw,22px);font-weight:600;text-transform:uppercase;letter-spacing:-.01em;text-shadow:0 2px 1px rgba(0,0,0,.25)}.button:hover{transform:translateY(-3px);box-shadow:none;filter:drop-shadow(0 8px 0 rgba(0,51,67,.22)) brightness(1.05)}
.button.button-blue:before{background-image:url("../img/public/promo-verano-sorteo/Group-4801.svg")}
.final-cta.hero-background{position:relative;min-height:760px;padding:0;display:flex;align-items:center;isolation:isolate;overflow:hidden}.hero-image-placeholder--school{background:linear-gradient(135deg,#37b8c9,#006e8b)}.hero-overlay--final{background:linear-gradient(90deg,rgba(0,43,61,.9),rgba(0,69,87,.48),rgba(0,63,78,.06))}.final-grid-overlay{width:100%;grid-template-columns:minmax(0,610px) 1fr;padding-top:100px;padding-bottom:100px}.final-cta .copy{padding-bottom:0}
.pl-footer{background:#000;color:#fff;text-align:center}.pl-footer .intFooter{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:20px 0}.pl-footer ul{margin:0;padding:0;list-style:none}.pl-footer .intFooter ul li{display:inline-block;margin:10px;vertical-align:middle;font-size:1em}.pl-footer .intFooter a{color:#fff}.pl-footer .social li{margin:0}.pl-footer .social li .iconNameSocial{display:none}.pl-footer .social li a{display:block;width:40px;height:40px;border-radius:50%;background:#fff}.pl-footer .iconSocial{display:block;width:100%;height:100%;background:#000;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:auto 75%;mask-size:auto 75%}.pl-footer li.instagram a{background:linear-gradient(to right,#833ab4,#fd1d1d,#fcb045)}.pl-footer li.instagram .iconSocial{-webkit-mask-image:url("../img/logo-instagram.svg");mask-image:url("../img/logo-instagram.svg");background:#fff}.pl-footer li.tiktok .iconSocial{background:transparent url("../img/logo-tiktok.svg") 50% 50%/auto 80% no-repeat}.pl-footer li.youtube a{background:#d22222}.pl-footer li.youtube .iconSocial{-webkit-mask-image:url("../img/logo-youtube.svg");mask-image:url("../img/logo-youtube.svg");-webkit-mask-size:auto 65%;mask-size:auto 65%;background:#fff}.pl-footer li.twitter a{background:#222}.pl-footer li.twitter .iconSocial{-webkit-mask-image:url("../img/logo-x.svg");mask-image:url("../img/logo-x.svg");-webkit-mask-size:auto 50%;mask-size:auto 50%;background:#fff}.pl-footer .logCog,.pl-footer .logSantillana{display:inline-block;width:100px;height:50px;margin:0 10px;vertical-align:middle;background:url("../img/santillana.png") 50% 50%/contain no-repeat}.pl-footer .logSantillana{width:130px}.pl-footer .logCog{height:40px;background-image:url("../img/cognifit.svg")}.pl-footer .foot1,.pl-footer .foot2{margin:0}.pl-footer .foot2{margin-top:15px;font-size:.9em;color:#fff}
@media(max-width:760px){.promo-header{padding:12px 0}.promo-header-logo{width:150px}.hero.hero-background{min-height:700px;padding:0;align-items:flex-end}.hero-grid-overlay{grid-template-columns:1fr;padding-top:260px;padding-bottom:100px}.hero-overlay{background:linear-gradient(180deg,rgba(0,65,81,.03),rgba(0,55,72,.22) 34%,rgba(0,45,62,.9) 68%,rgba(0,45,62,.97))}.hero-image-placeholder{place-items:start center;padding-top:105px}.final-cta.hero-background{min-height:700px;padding:0;align-items:flex-end}.final-grid-overlay{grid-template-columns:1fr;padding-top:300px;padding-bottom:72px}.hero-overlay--final{background:linear-gradient(180deg,rgba(0,55,71,.02),rgba(0,45,61,.2) 36%,rgba(0,38,53,.95) 70%)}.pl-footer .intFooter ul li{display:block;margin:8px}}

/* Palette: only values already used by promo-verano */
html,body{background:#d8e6ec}.grade-page{background:var(--teal)}.promo-header{background:rgba(255,255,255,.9)}.section-label,.eyebrow{color:var(--teal-dark)}.section-label-light,.section-teal .eyebrow{color:var(--white)}.section-teal{background:var(--teal)}.section-cream{background:var(--cream)}.section-sky{background:var(--sky)}.section-white{background:var(--white)}.section-gold{background:var(--gold)}.section-teal p{color:var(--white)}.hero-image-placeholder,.hero-image-placeholder--school{background:var(--teal)}.hero-overlay,.hero-overlay--final{background:rgba(0,70,109,.82)}.media-placeholder{background:rgba(255,255,255,.2)}.section-cream .media-placeholder,.section-white .media-placeholder{background:var(--sky);color:var(--teal-dark)}.benefit-card,.product-card,.review-card{background:var(--white)}.quote-card,.offer-band{background:var(--teal-dark)}.offer-band p{color:var(--white)}.phone-placeholder{background:linear-gradient(180deg,var(--sky),var(--cream));border-color:var(--teal-dark);color:var(--teal-dark)}.stars{color:var(--gold)}
@media(max-width:760px){.hero-overlay,.hero-overlay--final{background:linear-gradient(180deg,rgba(0,70,109,.08),rgba(0,70,109,.28) 36%,rgba(0,70,109,.94) 70%)}}

/* 1y2 · first section recovered from promo-verano */
.grade-s1 {
  background: var(--cream);
  overflow: hidden;
}

.grade-page .promo-header {
  background: rgba(255, 255, 255, .9);
}

.grade-course-selector {
  position: relative;
  z-index: 19;
  padding: 14px 0 0;
  margin-bottom: -1px;
  background: rgba(255, 255, 255, .9);
}

.grade-course-options {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 9px;
  width: min(calc(100% - 40px), 760px);
  margin: 0 auto;
}

.grade-course-option {
  display: inline-flex;
  flex: 1 1 0;
  min-width: 0;
  min-height: 58px;
  padding: 9px 16px 8px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 10px 10px 0 0;
  background: #dcdcdc;
  color: #536975;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

.grade-course-option strong {
  font-size: 26px;
  font-weight: 800;
  line-height: 1;
}

a.grade-course-option:hover {
  background: #e8e8e8;
  color: var(--teal-dark);
}

a.grade-course-option:focus-visible {
  outline: 0;
  box-shadow: inset 0 0 0 3px var(--teal-dark);
}

.grade-course-option.is-active {
  background: linear-gradient(180deg, #a8f0ed 0%, #70e1dc 48%, #48d4cd 100%);
  color: #000;
  cursor: default;
}

.grade-course-option small {
  margin-top: 6px;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.grade-promo-intro {
  position: relative;
  background: #48d4cd;
  padding: 34px 0 26px;
  text-align: center;
}

.grade-promo-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.grade-promo-intro h1 {
  max-width: 640px;
  margin: 0 auto 14px;
  color: #000;
  font-size: clamp(28px, 5vw, 54px);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: 0;
}

.grade-promo-intro p {
  max-width: 690px;
  margin: 0 auto 16px;
  color: #000;
  font-size: clamp(18px, 2vw, 24px);
  line-height: 1.18;
}

.grade-cta-clouds {
  z-index: 1;
  isolation: isolate;
  width: min(100%, 410px);
  height: 70px;
  filter: drop-shadow(0 6px 0 rgba(0, 70, 109, .22));
}

.grade-cta-clouds span {
  font-size: clamp(20px, 2.4vw, 30px);
  font-weight: 800;
}

.grade-cloud {
  position: absolute;
  z-index: -1;
  pointer-events: none;
}

.grade-cloud-left {
  left: -76px;
  bottom: -6px;
  width: 132px;
}

.grade-cloud-right {
  right: -62px;
  bottom: 0;
  width: 118px;
}

.grade-offer-strip {
  overflow: hidden;
  background: var(--teal-dark);
  color: var(--gold);
}

.grade-offer-track {
  display: flex;
  align-items: center;
  width: max-content;
  min-width: 100%;
  animation: grade-offer-marquee 11s linear infinite;
}

.grade-offer-track span {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: 10px;
  min-width: max-content;
  padding: 7px 10px 7px 14px;
}

.grade-offer-track img {
  flex: 0 0 auto;
  width: 38px;
}

.grade-offer-track b {
  font-size: clamp(16px, 4.2vw, 24px);
  line-height: 1;
  white-space: nowrap;
}

.grade-photo-hero {
  position: relative;
  min-height: clamp(360px, 75vw, 620px);
  overflow: hidden;
}

.grade-photo-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background: var(--teal) url("../img/public/1y2-primaria/hero1.png") center / cover no-repeat;
  color: rgba(255, 255, 255, .85);
  font-size: 20px;
  font-weight: 800;
  text-align: center;
}

.grade-photo-placeholder-2 {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background: var(--teal) url("../img/public/3y4-primaria/hero1.png") center / cover no-repeat;
  color: rgba(255, 255, 255, .85);
  font-size: 20px;
  font-weight: 800;
  text-align: center;
}

.grade-photo-placeholder-3 {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background: var(--teal) url("../img/public/5y6-primaria/hero1.png") center / cover no-repeat;
  color: rgba(255, 255, 255, .85);
  font-size: 20px;
  font-weight: 800;
  text-align: center;
}

.grade-photo-placeholder span {
  padding: 12px 18px;
  border: 2px dashed rgba(255, 255, 255, .65);
  border-radius: 16px;
  background: rgba(0, 70, 109, .35);
}

.grade-photo-label {
  position: absolute;
  z-index: 2;
  left: 0;
  top: clamp(28px, 7vw, 70px);
  width: min(44vw, 380px);
  min-width: 250px;
  padding: 24px 30px;
  border-radius: 0 18px 18px 0;
  background: var(--teal-dark);
  color: #64ffff;
  box-shadow: 0 8px 24px rgba(0, 70, 109, .18);
}

.grade-photo-label span,
.grade-photo-label strong {
  display: block;
  font-size: clamp(22px, 3vw, 34px);
  line-height: 1.1;
}

.grade-photo-label strong {
  font-weight: 600;
}

.grade-neuro {
  position: relative;
  padding: 48px 0 56px;
}

.grade-neuro-inner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 390px);
  align-items: center;
  gap: 18px 34px;
}

.grade-neuro-copy h2 {
  margin: 0;
  color: #000;
  font-size: clamp(34px, 4.4vw, 62px);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: 0;
}

.grade-neuro-copy h2 strong {
  font-weight: 800;
}

.grade-neuro-copy p {
  max-width: 540px;
  margin: 34px 0 0;
  color: #000;
  font-size: clamp(23px, 2.5vw, 34px);
  line-height: 1.18;
}

.grade-neuro-media {
  position: relative;
  min-height: 380px;
}

.grade-phone {
  position: absolute;
  height: auto;
  filter: drop-shadow(0 14px 16px rgba(0, 0, 0, .28));
}

.grade-phone-back {
  left: 0;
  bottom: 12px;
  width: 52%;
}

.grade-phone-front {
  right: 0;
  bottom: 0;
  width: 66%;
}

.grade-neuro-action {
  position: relative;
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  margin-top: 10px;
}

.grade-neuro-action p {
  margin: 0;
  color: #000;
  font-size: clamp(17px, 2vw, 24px);
}

.grade-proof-list {
  position: relative;
  display: grid;
  gap: 10px;
  width: min(100%, 760px);
  margin: 2px auto 0;
  padding: 0;
  list-style: none;
}

.grade-proof-list li {
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: 10px 22px;
  border-radius: 13px;
  background: var(--white);
  color: #000;
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 800;
  box-shadow: 0 4px 12px rgba(0, 70, 109, .08);
}

.grade-rocket {
  position: absolute;
  z-index: 10;
  right: calc(50% - 330px);
  bottom: -18px;
  width: 250px;
  pointer-events: none;
}

@keyframes grade-offer-marquee {
  to {
    transform: translateX(-50%);
  }
}

@media (min-width: 900px) {
  .grade-offer-track {
    justify-content: center;
    width: 100%;
    animation: none;
  }

  .grade-offer-track span[aria-hidden="true"] {
    display: none;
  }

  .grade-photo-placeholder {
    background-position: center;
  }

  .grade-neuro {
    padding: 72px 0 74px;
  }

  .grade-neuro-action .button {
    width: 410px;
    height: 70px;
  }

  .grade-neuro-action .button span {
    font-size: 28px;
  }
}

@media (max-width: 760px) {
  .grade-course-selector {
    padding-top: 10px;
  }

  .grade-course-options {
    flex-direction: row;
    gap: 8px;
    width: calc(100% - 20px);
  }

  .grade-course-option {
    min-height: 56px;
    padding: 8px 5px 7px;
  }

  .grade-course-option strong {
    font-size: clamp(20px, 5.8vw, 25px);
  }

  .grade-course-option small {
    font-size: clamp(13px, 3.8vw, 16px);
  }

  .grade-promo-intro {
    padding: 26px 0 18px;
  }

  .grade-promo-intro h1 {
    max-width: 360px;
  }

  .grade-promo-intro p {
    max-width: 380px;
  }

  .grade-cta-clouds {
    height: 62px;
  }

  .grade-cloud-left {
    left: -56px;
    width: 106px;
  }

  .grade-cloud-right {
    right: -50px;
    width: 96px;
  }

  .grade-photo-hero {
    min-height: 337px;
  }

  .grade-photo-placeholder {
    background-position: center;
  }

  .grade-photo-label {
    left: 0;
    top: 34px;
    width: min(48%, 190px);
    min-width: 0;
    padding: 12px 16px;
    border-radius: 0 10px 10px 0;
  }

  .grade-photo-label span,
  .grade-photo-label strong {
    font-size: 17px;
    line-height: 1.05;
  }

  .grade-neuro {
    padding: 28px 0 32px;
  }

  .grade-neuro-inner {
    grid-template-columns: minmax(0, 1fr) minmax(180px, 43%);
    align-items: start;
    gap: 8px;
  }

  .grade-neuro-copy {
    grid-column: 1 / 2;
  }

  .grade-neuro-copy h2 {
    font-size: clamp(22px, 4.8vw, 28px);
    line-height: 1.08;
  }

  .grade-neuro-copy p {
    margin-top: 20px;
    font-size: clamp(16px, 3.7vw, 20px);
    line-height: 1.24;
  }

  .grade-neuro-media {
    grid-column: 2 / 3;
    align-self: start;
    min-height: 250px;
    margin-top: 2px;
  }

  .grade-neuro-action {
    margin-top: 12px;
  }

  .grade-neuro-action .button {
    width: 350px;
    height: 60px;
  }

  .grade-neuro-action .button span {
    font-size: 21px;
  }

  .grade-proof-list {
    gap: 8px;
  }

  .grade-proof-list li {
    min-height: 42px;
    padding: 8px 14px;
    border-radius: 9px;
    font-size: 16px;
  }

  .grade-rocket {
    right: 6px;
    bottom: -6px;
    width: 154px;
  }

  .grade-offer-track img {
    width: 34px;
  }
}

@media (max-width: 420px) {
  .grade-neuro-inner {
    grid-template-columns: minmax(0, 1fr) minmax(150px, 43%);
  }

  .grade-neuro-copy h2 {
    font-size: clamp(20px, 5.2vw, 22px);
  }

  .grade-neuro-media {
    min-height: 220px;
  }

  .grade-neuro-action .button {
    width: 100%;
  }

  .grade-rocket {
    right: 2px;
    width: 138px;
  }

  .grade-proof-list li {
    padding-right: 92px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .grade-offer-track {
    animation: none;
  }
}

/* 1y2 · September concerns */
.grade-concerns {
  padding: 58px 0 44px;
  color: var(--teal-dark);
}

.grade-concerns-inner {
  max-width: 760px;
}

.grade-concerns h2 {
  max-width: 610px;
  margin: 0 auto 22px;
  color: var(--teal-dark);
  font-size: clamp(28px, 4.2vw, 48px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: 0;
}

.grade-concerns .section-intro {
  max-width: 640px;
  margin-bottom: 28px;
  color: var(--teal-dark);
  font-size: clamp(19px, 2.6vw, 26px);
  line-height: 1.18;
}

.grade-concern-cards {
  display: grid;
  gap: 12px;
  width: 100%;
  margin: 0 auto;
}

.grade-concern-card {
  padding: 24px 28px 22px;
  border-radius: 18px;
  background: var(--white);
  color: var(--teal-dark);
  box-shadow: 0 4px 14px rgba(0, 70, 109, .16);
}

.grade-concern-card h3 {
  margin: 0 0 12px;
  color: var(--teal-dark);
  font-size: clamp(20px, 2.3vw, 27px);
  font-weight: 800;
  line-height: 1.08;
}

.grade-concern-card p {
  max-width: 610px;
  margin: 0 auto;
  color: var(--teal-dark);
  font-size: clamp(18px, 2.2vw, 25px);
  line-height: 1.18;
}

.grade-discovery-kids {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: center;
  gap: 9px;
  width: min(100%, 470px);
  max-width: none;
  margin: 34px auto -10px;
  overflow: hidden;
}

.grade-discovery-kids img {
  width: calc((100% - 18px) / 3);
}

.grade-concerns-cta {
  width: min(100%, 430px);
  height: 66px;
  margin-top: 0;
}

.grade-concerns-cta span {
  font-size: clamp(18px, 3vw, 25px);
  font-weight: 800;
}

.grade-concerns-note {
  margin: 18px 0 30px;
  color: #000;
  font-size: clamp(16px, 2vw, 20px);
}

.grade-concerns-close {
  max-width: 650px;
  margin-bottom: 28px;
}

.grade-concerns-created {
  margin: 0 0 8px;
  color: var(--teal-dark);
  font-size: clamp(27px, 3.8vw, 40px);
  font-weight: 800;
  line-height: 1.08;
}

.grade-concerns-copy {
  max-width: 560px;
  margin: 0 auto 28px;
  color: var(--teal-dark);
  font-size: clamp(19px, 2.5vw, 25px);
  line-height: 1.16;
}

.grade-concerns-logos {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(38px, 8vw, 88px);
}

.grade-concerns-logos img {
  width: auto;
  max-width: min(40%, 220px);
  max-height: 58px;
}

@media (min-width: 900px) {
  .grade-concerns {
    padding-top: 76px;
    padding-bottom: 58px;
  }

  .grade-concerns-inner {
    max-width: 850px;
  }

  .grade-concern-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    max-width: 920px;
  }

  .grade-concern-card:last-child {
    grid-column: auto;
    max-width: none;
    margin: 0;
  }
}

@media (max-width: 760px) {
  .grade-concerns {
    padding: 26px 0 32px;
  }

  .grade-concerns h2 {
    max-width: 330px;
    margin-bottom: 20px;
    font-size: 22px;
    line-height: 1.08;
  }

  .grade-concerns .section-intro {
    max-width: 320px;
    margin-bottom: 18px;
    font-size: 16px;
    line-height: 1.18;
  }

  .grade-concern-cards {
    gap: 8px;
  }

  .grade-concern-card {
    padding: 16px 18px 15px;
    border-radius: 11px;
  }

  .grade-concern-card h3 {
    margin-bottom: 9px;
    font-size: 15px;
    line-height: 1.15;
  }

  .grade-concern-card p {
    font-size: 15px;
    line-height: 1.16;
  }

  .grade-discovery-kids {
    width: min(100%, 285px);
    max-height: none;
    margin-top: 20px;
    margin-bottom: -3px;
  }

  .grade-concerns-cta {
    width: min(100%, 285px);
    height: 52px;
  }

  .grade-concerns-cta span {
    font-size: 15px;
  }

  .grade-concerns-note {
    margin: 12px 0 18px;
    font-size: 12px;
  }

  .grade-concerns-close {
    max-width: 320px;
    margin-bottom: 24px;
    font-size: 20px;
    line-height: 1.08;
  }

  .grade-concerns-created {
    margin-bottom: 4px;
    font-size: 20px;
  }

  .grade-concerns-copy {
    max-width: 310px;
    margin-bottom: 24px;
    font-size: 15px;
    line-height: 1.12;
  }

  .grade-concerns-logos {
    gap: 32px;
  }

  .grade-concerns-logos img {
    max-width: 42%;
    max-height: 42px;
  }
}

/* 1y2 · brain toggle */
.grade-brain {
  --grade-brain-card-bg: #fff2c7;
  background: linear-gradient(180deg, var(--grade-brain-card-bg) 0%, var(--grade-brain-card-bg) 30%, #ffc07f 100%);
  overflow: hidden;
  text-align: center;
}

.grade-brain-head {
  padding: 52px 0 126px;
}

.grade-brain-head h2 {
  max-width: 820px;
  margin: 0 auto;
  color: var(--white);
  font-size: clamp(30px, 4.1vw, 48px);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: 0;
}

.grade-brain-compare {
  width: 100%;
  margin-top: -100px;
  margin-right: auto;
  margin-left: auto;
  padding: 0 0 50px;
  background: transparent;
}

.grade-brain-inner {
  width: min(100%, 860px);
  margin-right: auto;
  margin-left: auto;
  align-items: center;
}

.grade-brain-tabs {
  display: flex;
  width: min(100%, 700px);
  margin-right: auto;
  margin-left: auto;
  gap: 22px;
  margin-bottom: 0;
}

.grade-brain-tab {
  width: calc(50% - 11px);
  min-height: 106px;
  padding: 18px 24px 22px;
  border: 0;
  outline: 0;
  border-radius: 24px 24px 0 0;
  background: linear-gradient(180deg, #367f9a 0%, var(--teal-dark) 100%);
  box-shadow: none;
}

.grade-brain-tab.is-active {
  background: var(--grade-brain-card-bg);
}

.grade-brain-tab span {
  color: var(--white);
  font-size: clamp(22px, 2.7vw, 32px);
  font-weight: 800;
  line-height: .95;
  text-transform: none;
}

.grade-brain-tab span b {
  font-size: clamp(46px, 6.3vw, 82px);
  line-height: .8;
}

.grade-brain-tab.is-active span {
  color: #c7683c;
}

.grade-brain-card {
  position: relative;
  z-index: 5;
  width: 100%;
  max-width: none;
  margin-right: auto;
  margin-left: auto;
  padding: 30px 46px 38px;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.grade-brain-card::before {
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  background: linear-gradient(180deg, var(--grade-brain-card-bg) 0%, var(--grade-brain-card-bg) 30%, #ffc07f 100%);
  content: '';
  transform: translateX(-50%);
}

.grade-brain-panel {
  display: block;
}

.grade-brain-panel[hidden] {
  display: none !important;
}

.grade-age-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 156px;
  min-height: 44px;
  margin-bottom: 22px;
  padding: 7px 24px;
  border-radius: 14px;
  background: #ffffe8;
  color: #c7683c;
  font-size: clamp(21px, 2.4vw, 28px);
  font-weight: 800;
  line-height: 1;
}

.grade-brain-panel h3 {
  margin: 0 0 18px;
  color: #c7683c;
  font-size: clamp(27px, 3.2vw, 40px);
  font-weight: 800;
  line-height: 1.08;
}

.grade-brain-panel p {
  max-width: 680px;
  margin: 0 auto 24px;
  color: #000;
  font-size: clamp(20px, 2.3vw, 30px);
  line-height: 1.18;
}

.grade-brain-panel p strong {
  font-weight: 800;
}

.grade-brain-phones {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: clamp(18px, 3.5vw, 42px);
  margin: 22px auto 28px;
}

.grade-brain-phones img {
  width: min(27%, 190px);
  filter: drop-shadow(0 10px 10px rgba(0, 0, 0, .28));
}

.grade-brain-cta {
  width: min(100%, 510px);
  height: 66px;
  margin: 0 auto 18px;
}

.grade-brain-cta span {
  font-size: clamp(21px, 2.6vw, 30px);
  font-weight: 800;
}

.grade-brain-safe {
  margin: 0;
  color: #000;
  font-size: clamp(16px, 1.9vw, 22px);
}

@media (max-width: 760px) {
  .grade-brain-head {
    padding: 34px 0 96px;
  }

  .grade-brain-head h2 {
    max-width: 330px;
    font-size: 24px;
  }

  .grade-brain-compare {
    margin-top: -84px;
    padding-bottom: 28px;
  }

  .grade-brain-inner {
    width: 100%;
  }

  .grade-brain-tabs {
    width: calc(100% - 32px);
    gap: 14px;
  }

  .grade-brain-tab {
    width: calc(50% - 7px);
    min-height: 88px;
    padding: 14px 14px 18px;
    border-radius: 20px 20px 0 0;
  }

  .grade-brain-tab span {
    font-size: 19px;
  }

  .grade-brain-tab span b {
    font-size: 50px;
  }

  .grade-brain-card {
    padding: 18px 20px 26px;
  }

  .grade-age-pill {
    min-width: 142px;
    min-height: 38px;
    margin-bottom: 18px;
    border-radius: 12px;
    font-size: 20px;
  }

  .grade-brain-panel h3 {
    margin-bottom: 16px;
    font-size: 23px;
  }

  .grade-brain-panel p {
    margin-bottom: 22px;
    font-size: 20px;
    line-height: 1.25;
  }

  .grade-brain-phones {
    gap: 10px;
    margin: 18px auto 24px;
  }

  .grade-brain-phones img {
    width: 29%;
  }

  .grade-brain-cta {
    height: 56px;
    margin-bottom: 18px;
  }

  .grade-brain-cta span {
    font-size: 20px;
  }

  .grade-brain-safe {
    font-size: 16px;
  }
}

/* 1y2 · scroll story */
.scroll-special {
  touch-action: pan-y;
}

.grade-scroll-story {
  position: relative;
  min-height: 100vh;
  background: var(--sky);
}

.grade-scroll-stage {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--sky);
}

.grade-scroll-inner {
  display: grid;
  grid-template-rows: auto minmax(280px, 1fr) auto auto;
  gap: 20px;
  width: min(100%, 980px);
  min-height: min(100vh, 760px);
  padding-top: clamp(30px, 5vh, 54px);
  padding-bottom: clamp(22px, 4vh, 40px);
  text-align: center;
}

.grade-scroll-copy h2 {
  margin: 0;
  color: var(--teal-dark);
  font-size: clamp(26px, 3vw, 38px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: 0;
}

.grade-scroll-subtitle {
  margin: 4px 0 18px;
  color: var(--teal-dark);
  font-size: clamp(23px, 2.8vw, 34px);
  line-height: 1.1;
}

.grade-scroll-lead {
  max-width: 590px;
  margin: 0 auto;
  color: #000;
  font-size: clamp(18px, 2vw, 23px);
  line-height: 1.25;
}

.grade-scroll-scene {
  position: relative;
  display: grid;
  grid-template-columns: minmax(150px, .74fr) minmax(280px, 1fr);
  align-items: center;
  min-height: 390px;
  isolation: isolate;
}

.grade-scroll-card-shell {
  z-index: 0;
  grid-column: 2;
  justify-self: start;
  width: min(100%, 430px);
  min-height: 290px;
  margin-left: -12px;
  border-radius: 0 0 18px 18px;
  background: var(--white);
  box-shadow: 0 6px 18px rgba(0, 70, 109, .13);
}

.scroll-special-indicators {
  position: relative;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  width: max-content;
  margin: 4px auto 0;
}

.scroll-special-dot {
  width: 9px;
  height: 9px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 70, 109, .28);
  cursor: pointer;
  transition: width .2s ease, background-color .2s ease, transform .2s ease;
}

.scroll-special-dot:hover,
.scroll-special-dot:focus-visible {
  transform: scale(1.2);
}

.scroll-special-dot:focus-visible {
  outline: 2px solid var(--teal-dark);
  outline-offset: 3px;
}

.scroll-special-dot.is-active {
  width: 22px;
  border-radius: 999px;
  background: var(--teal-dark);
}

.grade-scroll-step {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: minmax(150px, .74fr) minmax(280px, 1fr);
  align-items: center;
  gap: 0;
  opacity: 0;
  transform: translateY(8px) scale(.995);
  pointer-events: none;
  will-change: opacity, transform;
  transition:
    opacity .8s ease-in-out,
    transform .9s cubic-bezier(.22, 1, .36, 1);
}

.grade-scroll-step.is-active {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

.grade-scroll-phone {
  position: relative;
  z-index: 2;
  justify-self: end;
  width: min(100%, 190px);
}

.grade-scroll-phone--small {
  width: min(100%, 190px);
}

.grade-scroll-phone img {
  width: 100%;
  height: auto;
  filter: drop-shadow(0 12px 12px rgba(0, 0, 0, .22));
}

.grade-scroll-card {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  column-gap: 14px;
  row-gap: 14px;
  align-items: center;
  justify-self: start;
  max-width: 430px;
  min-height: 240px;
  margin-left: -12px;
  padding: 36px 34px;
  border-radius: 0 0 18px 18px;
  background: transparent;
  text-align: left;
}

.grade-scroll-check {
  position: static;
  grid-column: 1;
  grid-row: 1;
  width: 44px;
  height: 44px;
  opacity: 0;
  transform: scale(.72);
  filter: drop-shadow(0 4px 5px rgba(0, 0, 0, .18));
  transition: opacity .25s ease, transform .3s cubic-bezier(.2, .8, .2, 1);
}

.grade-scroll-step.is-active .grade-scroll-check {
  opacity: 1;
  transform: scale(1);
  transition-delay: .48s;
}

.grade-scroll-mindy {
  position: absolute;
  z-index: 2;
  top: -115px;
  right: -24px;
  width: 240px;
  height: auto;
  pointer-events: none;
}

.grade-scroll-hand {
  position: absolute;
  z-index: 3;
  top: 20%;
  right: -20px;
  width: 42px;
  height: auto;
  transform: translateY(-50%);
  pointer-events: none;
}

.grade-scroll-card h3 {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  color: var(--teal-dark);
  font-size: clamp(22px, 2.3vw, 30px);
  font-weight: 800;
  line-height: 1.05;
}

.grade-scroll-card p {
  grid-column: 1 / -1;
  margin: 0;
  color: #000;
  font-size: clamp(18px, 2vw, 25px);
  line-height: 1.18;
}

.grade-scroll-actions {
  display: grid;
  justify-items: center;
  gap: 10px;
  margin-top: 28px;
  padding-bottom: 10px;
}

.grade-scroll-actions p {
  margin: 0;
  color: #000;
  font-size: clamp(15px, 1.6vw, 18px);
}

.grade-scroll-stores {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 170px));
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
}

.grade-scroll-stores a {
  display: block;
  width: 100%;
}

.grade-scroll-stores img {
  width: 100%;
  height: auto;
  max-height: 54px;
  object-fit: contain;
}

/* 1y2 · Mindy pinned story */
.grade-mindy-story,
.grade-mindy-stage {
  background: var(--teal);
}

.grade-mindy-stage {
  position: relative;
  isolation: isolate;
}

.grade-mindy-inner {
  display: grid;
  grid-template-rows: minmax(390px, 1fr) auto auto;
  gap: 12px;
  width: min(100%, 720px);
  min-height: 100vh;
  padding-top: clamp(72px, 9vh, 96px);
  padding-bottom: clamp(24px, 4vh, 38px);
  text-align: center;
}

.grade-mindy-scene {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 390px;
}

.grade-mindy-story .scroll-special-dot {
  background: rgba(255, 255, 255, .45);
}

.grade-mindy-story .scroll-special-dot.is-active {
  background: #fff;
}

.grade-mindy-story .scroll-special-dot:focus-visible {
  outline-color: #fff;
}

.grade-mindy-story .scroll-special-indicators {
  margin-top: 30px;
  margin-bottom: 22px;
}

.grade-mindy-step {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: start center;
  opacity: 0;
  transform: translateY(8px) scale(.995);
  pointer-events: none;
  will-change: opacity, transform;
  transition: opacity .8s ease-in-out, transform .9s cubic-bezier(.22, 1, .36, 1);
}

.grade-mindy-step.is-active {
  z-index: 1;
  opacity: 1;
  transform: translateY(0) scale(1);
}

.grade-mindy-bubble {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: min(100%, 560px);
  aspect-ratio: 1143 / 513;
  background: url('../img/public/1y2-primaria/sectionscroll2/Union.png') center / 100% 100% no-repeat;
  color: #000;
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 800;
  line-height: 1.14;
}

.grade-mindy-copy {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 0 44px 11%;
  opacity: 0;
  transform: translateY(6px);
  will-change: opacity, transform;
  transition: opacity .8s ease-in-out, transform .9s cubic-bezier(.22, 1, .36, 1);
}

.grade-mindy-copy.is-active {
  opacity: 1;
  transform: translateY(0);
}

.grade-mindy-character-stage {
  position: relative;
  z-index: 1;
  flex: 0 0 270px;
  width: 100%;
  margin-top: -58px;
}

.grade-mindy-character {
  width: min(76%, 370px);
  max-height: 270px;
  object-fit: contain;
}

.grade-mindy-actions {
  position: relative;
  z-index: 3;
}

.grade-mindy-actions h2 {
  max-width: 650px;
  margin: 0 auto 20px;
  color: #fff;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.15;
}

.grade-mindy-cta {
  width: min(100%, 560px);
  height: 62px;
}

.grade-mindy-actions p {
  margin: 16px 0 0;
  color: var(--white);
  font-size: 17px;
}

.grade-mindy-cloud {
  position: absolute;
  z-index: 0;
  width: clamp(90px, 13vw, 170px);
  pointer-events: none;
}

.grade-mindy-cloud--left {
  top: 34%;
  left: 0;
  transform: translateX(-35%);
}

.grade-mindy-cloud--right {
  top: 31%;
  right: 0;
  transform: translateX(38%);
}

/* 1y2 · S5 reviews recovered from promo-verano */
.grade-reviews {
  width: 100%;
  padding: 34px 0;
  background: var(--teal-dark);
  color: var(--white);
  text-align: center;
}

.grade-reviews .pl-inner {
  width: min(calc(100% - 32px), 1120px);
  margin: 0 auto;
}

.grade-reviews .pl-stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
}

.grade-reviews .pl-h1,
.grade-reviews .pl-sub {
  margin: 0;
  color: var(--white);
  text-align: center;
}

.grade-reviews .pl-h1 {
  max-width: 760px;
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 700;
  line-height: 1.18;
  letter-spacing: -.01em;
}

.grade-reviews .pl-sub {
  font-size: clamp(16px, 2vw, 21px);
  font-weight: 500;
  line-height: 1.35;
}

.grade-reviews .pl-reviews-gallery {
  width: 100%;
  overflow: hidden;
  margin-top: 22px;
}

.grade-reviews .pl-reviews-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: min(68vw, 320px);
  gap: 16px;
  overflow-x: auto;
  padding: 4px calc((100vw - min(68vw, 320px)) / 2) 12px;
  scroll-padding-left: calc((100vw - min(68vw, 320px)) / 2);
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.grade-reviews .pl-reviews-track::-webkit-scrollbar {
  display: none;
}

.grade-reviews .pl-reviews-card {
  display: block;
  width: 100%;
  height: auto;
  scroll-snap-align: center;
  scroll-snap-stop: always;
}

@media (min-width: 900px) {
  .grade-reviews .pl-reviews-gallery {
    max-width: 1120px;
    margin: 26px auto 0;
    padding: 0 clamp(16px, 5vw, 48px);
  }

  .grade-reviews .pl-reviews-track {
    grid-auto-columns: 1fr;
    gap: 18px;
    overflow: visible;
    padding: 0;
  }
}

/* 1y2 · FAQ with S3b image transition */
.grade-faq {
  position: relative;
  overflow: hidden;
  background: #f4f4f4;
}

.grade-faq-inner {
  position: relative;
  z-index: 2;
  padding-top: clamp(38px, 6vw, 72px);
}

.grade-faq-copy {
  position: relative;
  padding-bottom: clamp(100px, 12vw, 160px);
  margin-bottom: clamp(-100px, -12vw, -160px);
  text-align: center;
  background: linear-gradient(180deg, #f4f4f4 0%, #f4f4f4 70%, rgba(244, 244, 244, 0) 100%);
}

.grade-faq h2 {
  margin-bottom: 28px;
  color: var(--teal-dark);
  font-size: clamp(27px, 3.4vw, 42px);
}

.grade-faq-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.grade-faq-card {
  display: flex;
  min-height: 190px;
  flex-direction: column;
  justify-content: center;
  padding: 26px 24px;
  border-radius: 22px;
  background: var(--white);
  box-shadow: 0 3px 16px rgba(0, 70, 109, .22);
}

.grade-faq-card h3 {
  margin: 0;
  color: #000;
  font-size: clamp(19px, 1.8vw, 24px);
  line-height: 1.18;
}

.grade-faq-card p {
  margin: 4px 0 0;
  color: #000;
  font-size: clamp(17px, 1.45vw, 20px);
  line-height: 1.28;
}

.grade-faq-media {
  position: relative;
  z-index: 1;
  width: 100%;
  overflow: hidden;
}

.grade-faq-media::before {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  left: 0;
  height: clamp(130px, 16vw, 230px);
  background: linear-gradient(180deg, #f4f4f4 0%, rgba(244, 244, 244, .92) 24%, rgba(244, 244, 244, 0) 100%);
  content: '';
  pointer-events: none;
}

.grade-faq-media img {
  width: 100%;
  height: clamp(560px, 62vw, 860px);
  object-fit: cover;
  object-position: center top;
}

.grade-faq-media-34 img {
  height: clamp(600px, 66vw, 920px);
  object-position: center 20%;
}

.grade-faq-media-56 img {
  height: clamp(600px, 66vw, 920px);
  object-position: center 10%;
}

@media (max-width: 760px) {
  .grade-faq-inner {
    padding-top: 38px;
  }

  .grade-faq-copy {
    padding-bottom: 105px;
    margin-bottom: -105px;
    background: linear-gradient(180deg, #f4f4f4 0%, #f4f4f4 78%, rgba(244, 244, 244, 0) 100%);
  }

  .grade-faq h2 {
    margin-bottom: 22px;
    font-size: 24px;
  }

  .grade-faq-list {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .grade-faq-card {
    min-height: 0;
    padding: 22px 20px;
    border-radius: 16px;
  }

  .grade-faq-card h3 {
    font-size: 18px;
  }

  .grade-faq-card p {
    font-size: 17px;
  }

  .grade-faq-media img {
    height: clamp(460px, 125vw, 600px);
    object-position: center top;
  }
}

/* 1y2 · back to school promotion */
.grade-backschool {
  overflow: hidden;
  background: #ffc07f;
  text-align: center;
}

.grade-backschool-strip {
  background: var(--sky);
  color: var(--teal-dark);
}

.grade-backschool-inner {
  position: relative;
  z-index: 2;
  padding-top: clamp(34px, 5vw, 62px);
  padding-bottom: clamp(110px, 12vw, 170px);
  margin-bottom: clamp(-110px, -12vw, -170px);
  background: linear-gradient(180deg, #ffc07f 0%, #ffc07f 72%, rgba(255, 192, 127, 0) 100%);
}

.grade-backschool-banner {
  position: relative;
  width: min(86%, 760px);
  margin: 0 auto 28px;
}

.grade-backschool-ribbon {
  width: 100%;
}

.grade-backschool-mindy {
  position: absolute;
  z-index: 2;
  bottom: -24%;
  left: -8%;
  width: clamp(125px, 23%, 185px);
}

.grade-backschool-banner p {
  position: absolute;
  inset: 0 12% 0 20%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0;
  color: var(--white);
  line-height: 1.05;
  text-shadow: 0 2px 2px rgba(0, 0, 0, .25);
}

.grade-backschool-banner span {
  color: var(--gold);
  font-size: clamp(18px, 2vw, 26px);
  font-weight: 800;
}

.grade-backschool-banner strong {
  font-size: clamp(31px, 4vw, 52px);
}

.grade-backschool-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  width: min(100%, 940px);
  margin: 0 auto 28px;
}

.grade-backschool-card {
  display: grid;
  min-height: 190px;
  place-items: center;
  padding: 28px;
  border-radius: 22px;
  background: var(--cream);
  box-shadow: 0 5px 16px rgba(156, 83, 26, .2);
}

.grade-backschool-card p {
  margin: 0;
  color: #000;
  font-size: clamp(18px, 1.8vw, 23px);
  line-height: 1.25;
}

.grade-backschool-card strong {
  color: inherit;
}

.grade-backschool-card:nth-child(2) strong {
  color: #c7683c;
}

.grade-backschool-cta {
  width: min(100%, 560px);
  min-height: 62px;
  background: transparent;
  color: var(--white);
}

.grade-backschool-safe {
  margin: 17px 0 0;
  color: #000;
  font-size: 17px;
}

.grade-backschool-media {
  position: relative;
}

.grade-backschool-media::before {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  left: 0;
  height: clamp(120px, 15vw, 220px);
  background: linear-gradient(180deg, #ffc07f 0%, rgba(255, 192, 127, .9) 24%, rgba(255, 192, 127, 0) 100%);
  content: '';
  pointer-events: none;
}

.grade-backschool-media img {
  width: 100%;
  height: clamp(650px, 72vw, 1000px);
  object-fit: cover;
  object-position: center top;
}

@media (max-width: 760px) {
  .grade-backschool-inner {
    padding: 28px 18px 112px;
    margin-bottom: -112px;
  }

  .grade-backschool-banner {
    width: 100%;
    margin-bottom: 26px;
  }

  .grade-backschool-mindy {
    bottom: -30%;
    left: -7%;
    width: 31%;
  }

  .grade-backschool-banner p {
    inset: 0 12% 0 23%;
  }

  .grade-backschool-banner span {
    font-size: 16px;
  }

  .grade-backschool-banner strong {
    font-size: 27px;
  }

  .grade-backschool-cards {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-bottom: 24px;
  }

  .grade-backschool-card {
    min-height: 0;
    padding: 22px 18px;
    border-radius: 16px;
  }

  .grade-backschool-card p {
    font-size: 17px;
  }

  .grade-backschool-cta {
    min-height: 56px;
  }

  .grade-backschool-media img {
    height: clamp(600px, 165vw, 780px);
  }
}

/* S8 · recovered from promo-verano-sorteo */
.pl-talent {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #10bacb 0%, #37d7d0 62%, #71e6d5 100%);
}

.pl-talent-inner {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  min-height: clamp(300px, 56vw, 660px);
  padding: 22px clamp(20px, 5vw, 48px) 0;
}

.pl-talent-copy {
  position: absolute;
  z-index: 2;
  top: 50px;
  left: 50%;
  display: flex;
  width: min(calc(100% - 40px), 820px);
  flex-direction: column;
  align-items: center;
  gap: 14px;
  text-align: center;
  transform: translateX(-50%);
}

.pl-talent-logo {
  width: clamp(220px, 36vw, 300px);
  filter: drop-shadow(0 8px 18px rgba(0, 70, 109, .18));
}

.pl-talent-title {
  margin: 0;
  color: #000;
  font-size: clamp(24px, 4.4vw, 52px);
  font-weight: 700;
  line-height: 1.04;
  letter-spacing: -.03em;
}

.pl-talent-cloud {
  position: absolute;
  z-index: 3;
  top: 12px;
  width: clamp(72px, 12vw, 120px);
}

.pl-talent-cloud-left {
  left: 10px;
}

.pl-talent-cloud-right {
  right: 10px;
}

.pl-talent-scene {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  max-width: none;
  transform: translateY(50%);
}

@media (min-width: 761px) {
  .pl-talent-copy {
    top: 28px;
  }

  .pl-talent-title {
    font-size: clamp(32px, 3.4vw, 46px);
  }

  .pl-talent-cloud {
    top: 16px;
    width: clamp(84px, 8vw, 120px);
  }

  .pl-talent-cloud-left {
    left: 12px;
  }

  .pl-talent-cloud-right {
    right: 12px;
  }
}

@media (min-width: 761px) {
  .grade-backschool-inner {
    padding-top: 22px;
    padding-bottom: 72px;
    margin-bottom: -72px;
  }

  .grade-backschool-banner {
    width: min(68%, 590px);
    margin-bottom: 16px;
  }

  .grade-backschool-mindy {
    top: 50%;
    bottom: auto;
    left: -7%;
    width: clamp(96px, 19%, 125px);
    transform: translateY(-50%);
  }

  .grade-backschool-banner span {
    font-size: clamp(15px, 1.5vw, 20px);
  }

  .grade-backschool-banner strong {
    font-size: clamp(25px, 3vw, 38px);
  }

  .grade-backschool-cards {
    gap: 18px;
    width: min(88%, 850px);
    margin-bottom: 18px;
  }

  .grade-backschool-card {
    min-height: 122px;
    padding: 16px 20px;
    border-radius: 18px;
  }

  .grade-backschool-card p {
    font-size: clamp(15px, 1.35vw, 18px);
    line-height: 1.18;
  }

  .grade-backschool-cta {
    width: min(46%, 430px);
    min-height: 50px;
  }

  .grade-backschool-cta span {
    font-size: 18px;
  }

  .grade-backschool-safe {
    margin-top: 10px;
    font-size: 15px;
  }

  .grade-backschool-media img {
    object-position: center 38%;
  }

  .grade-mindy-cloud--left {
    left: clamp(70px, 12vw, 240px);
    transform: none;
  }

  .grade-mindy-cloud--right {
    right: clamp(70px, 12vw, 240px);
    transform: none;
  }
}

@media (min-width: 1024px) {
  .grade-scroll-inner {
    min-height: min(100vh, 700px);
  }
}

@media (max-width: 760px) {
  .grade-scroll-story {
    min-height: 100svh;
  }

  .grade-scroll-story:not(.grade-mindy-story) {
    min-height: 0;
  }

  .grade-scroll-story:not(.grade-mindy-story) .grade-scroll-stage {
    min-height: 0;
  }

  .grade-scroll-story:not(.grade-mindy-story) .grade-scroll-inner {
    grid-template-rows: auto auto auto auto;
    min-height: 0;
    gap: 12px;
    padding-bottom: 34px;
  }

  .grade-scroll-stage {
    align-items: flex-start;
  }

  .grade-scroll-inner {
    grid-template-rows: auto minmax(340px, 1fr) auto;
    width: 100%;
    min-height: 100vh;
    gap: 14px;
    padding-top: 28px;
    padding-bottom: 22px;
  }

  .grade-scroll-copy h2 {
    font-size: 23px;
  }

  .grade-scroll-subtitle {
    margin-bottom: 12px;
    font-size: 22px;
  }

  .grade-scroll-lead {
    max-width: 310px;
    font-size: 16px;
  }

  .grade-scroll-scene {
    grid-template-columns: 120px minmax(0, 1fr);
    min-height: 360px;
  }

  .grade-scroll-card-shell {
    width: calc(100% - 14px);
    min-height: 225px;
    margin-left: -10px;
    border-radius: 0 0 12px 12px;
  }

  .grade-scroll-step {
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 0;
    padding-right: 14px;
  }

  .grade-scroll-phone {
    align-self: center;
    width: 118px;
  }

  .grade-scroll-phone--small {
    width: 118px;
  }

  .grade-scroll-card {
    grid-template-columns: 30px minmax(0, 1fr);
    column-gap: 8px;
    row-gap: 8px;
    max-width: none;
    min-height: 190px;
    margin-left: -10px;
    padding: 22px 16px;
    border-radius: 0 0 12px 12px;
  }

  .grade-scroll-check {
    width: 30px;
    height: 30px;
  }

  .grade-scroll-mindy {
    top: -90px;
    right: 0;
    width: 180px;
  }

  .grade-scroll-hand {
    right: -13px;
    width: 30px;
  }

  .grade-scroll-card h3 {
    margin-bottom: 0;
    font-size: 18px;
  }

  .grade-scroll-card p {
    font-size: 15px;
    line-height: 1.14;
  }

  .grade-scroll-actions {
    margin-top: 20px;
    padding-bottom: 8px;
  }

  .grade-scroll-stores {
    grid-template-columns: repeat(2, minmax(0, 150px));
    gap: 7px;
  }

  .grade-scroll-stores a:last-child {
    grid-column: 1 / -1;
    justify-self: center;
    width: 150px;
  }

  .grade-mindy-inner {
    grid-template-rows: minmax(370px, 1fr) auto;
    gap: 8px;
    padding: 54px 16px 20px;
  }

  .grade-mindy-story .scroll-special-indicators {
    margin-top: 24px;
    margin-bottom: 18px;
  }

  .grade-mindy-scene {
    min-height: 370px;
  }

  .grade-mindy-bubble {
    font-size: clamp(21px, 6vw, 27px);
  }

  .grade-mindy-copy {
    padding: 0 25px 11%;
  }

  .grade-mindy-character-stage {
    flex-basis: 235px;
    margin-top: -42px;
  }

  .grade-mindy-character {
    width: min(82%, 285px);
    max-height: 235px;
  }

  .grade-mindy-actions h2 {
    margin-bottom: 14px;
    font-size: 22px;
  }

  .grade-mindy-cta {
    height: 56px;
  }

  .grade-mindy-actions p {
    margin-top: 12px;
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .grade-scroll-story {
    height: auto;
    min-height: 0;
  }

  .grade-scroll-stage {
    position: relative;
  }

  .grade-scroll-step {
    position: relative;
    display: none;
    opacity: 1;
    transform: none;
    transition: none;
  }

  .grade-scroll-step.is-active {
    display: grid;
  }

  .scroll-special-dot {
    transition: none;
  }
}

/* Compact desktop composition for laptop-height viewports */
@media (min-width: 900px) and (max-height: 1050px) {
  .grade-neuro {
    padding: 34px 0 38px;
  }

  .grade-neuro-inner {
    grid-template-columns: minmax(0, 1fr) minmax(230px, 330px);
    gap: 12px 30px;
  }

  .grade-neuro-copy h2 {
    font-size: clamp(34px, 3.3vw, 46px);
    line-height: 1.06;
  }

  .grade-neuro-copy p {
    margin-top: 20px;
    font-size: clamp(20px, 1.8vw, 25px);
  }

  .grade-neuro-media {
    min-height: 300px;
  }

  .grade-neuro-action {
    gap: 8px;
    margin-top: 0;
  }

  .grade-neuro-action .button {
    width: 370px;
    height: 56px;
  }

  .grade-neuro-action .button span {
    font-size: 22px;
  }

  .grade-neuro-action p {
    font-size: 17px;
  }

  .grade-proof-list {
    gap: 6px;
    width: min(100%, 690px);
  }

  .grade-proof-list li {
    min-height: 38px;
    padding: 6px 18px;
    font-size: 17px;
  }

  .grade-rocket {
    right: calc(50% - 295px);
    width: 185px;
  }

  .grade-concerns {
    padding-top: 38px;
    padding-bottom: 36px;
  }

  .grade-concerns h2 {
    margin-bottom: 14px;
    font-size: 34px;
  }

  .grade-concerns .section-intro {
    margin-bottom: 18px;
    font-size: 20px;
  }

  .grade-concern-card {
    padding: 16px 20px;
  }

  .grade-concern-card h3 {
    margin-bottom: 8px;
    font-size: 20px;
  }

  .grade-concern-card p {
    font-size: 18px;
  }

  .grade-discovery-kids {
    width: 360px;
    margin-top: 18px;
  }

  .grade-concerns-note {
    margin: 10px 0 16px;
  }

  .grade-concerns-close {
    margin-bottom: 14px;
    font-size: 30px;
  }

  .grade-concerns-created {
    font-size: 28px;
  }

  .grade-concerns-copy {
    margin-bottom: 18px;
    font-size: 18px;
  }

  .grade-brain-head {
    padding: 34px 0 104px;
  }

  .grade-brain-tab {
    min-height: 86px;
    padding: 12px 20px 16px;
  }

  .grade-brain-tab span {
    font-size: 22px;
  }

  .grade-brain-tab span b {
    font-size: 58px;
  }

  .grade-brain-card {
    padding-top: 18px;
    padding-bottom: 26px;
  }

  .grade-age-pill {
    min-height: 36px;
    margin-bottom: 12px;
    font-size: 20px;
  }

  .grade-brain-panel h3 {
    margin-bottom: 12px;
    font-size: 29px;
  }

  .grade-brain-panel p {
    margin-bottom: 14px;
    font-size: 19px;
  }

  .grade-brain-phones {
    margin: 12px auto 16px;
  }

  .grade-brain-phones img {
    width: min(23%, 135px);
  }

  .grade-brain-cta {
    height: 56px;
    margin-bottom: 10px;
  }

  .grade-faq-inner {
    padding-top: 36px;
  }

  .grade-faq h2 {
    margin-bottom: 18px;
    font-size: 34px;
  }

  .grade-faq-card {
    min-height: 145px;
    padding: 18px 20px;
  }

  .grade-faq-card h3 {
    font-size: 20px;
  }

  .grade-faq-card p {
    font-size: 17px;
  }

  .grade-faq-media img {
    height: 660px;
  }

  .grade-backschool-inner {
    padding-top: 18px;
  }

  .grade-backschool-banner {
    width: min(72%, 620px);
    margin-bottom: 18px;
  }

  .grade-backschool-cards {
    gap: 18px;
    margin-bottom: 18px;
  }

  .grade-backschool-card {
    min-height: 145px;
    padding: 18px 22px;
  }

  .grade-backschool-card p {
    font-size: 18px;
  }

  .grade-backschool-cta {
    min-height: 54px;
  }

  .grade-backschool-safe {
    margin-top: 10px;
  }

  .grade-backschool-media img {
    height: 720px;
  }

  .pl-talent-inner {
    min-height: 560px;
  }
}

.cta-store-choices {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 180px));
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: min(100%, 560px);
  margin: 20px auto;
}

.cta-store-choices a {
  display: block;
  width: 100%;
}

.cta-store-choices img {
  width: 100%;
  height: auto;
}

@media (max-width: 760px) {
  .cta-store-choices {
    grid-template-columns: repeat(2, minmax(0, 150px));
    gap: 8px;
    width: min(100%, 320px);
  }

  .cta-store-choices a {
    width: 100%;
  }

  .cta-store-choices a:last-child {
    grid-column: 1 / -1;
    justify-self: center;
    width: 150px;
  }

  .pl-footer .social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
  }

  .pl-footer .intFooter .social li {
    display: block;
    margin: 0;
  }
}
