:root{--navy:#08082e;--purple:#6235fc;--ink:#353563;font-family:'DM Sans',sans-serif;color:var(--navy);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff}button,input{font:inherit}button{cursor:pointer;border:0}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #dfac00;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Fredoka','Nunito',sans-serif}.skip{position:fixed;top:-100px;left:15px;background:white;padding:15px;z-index:100}.skip:focus{top:15px}.page-frame{position:relative;width:100%;aspect-ratio:3/2;overflow:hidden;max-width:1920px;margin:auto}.page-canvas{position:absolute;top:0;left:0;width:1536px;height:1024px;transform:scale(var(--page-scale,1));transform-origin:top left}.header{position:relative;height:96px;z-index:2;background:#fff;border-radius:0 0 35% 9%/0 0 12% 40%}.brand-image{position:absolute;left:79px;top:14px;height:73px;font-size:54px}.header nav{position:absolute;left:581px;top:28px;display:flex;align-items:center;gap:28px;font-size:14px;white-space:nowrap}.header nav a,.header nav button{background:transparent;color:var(--ink);font-weight:400;padding:12px 0}.header nav .active{color:var(--navy);font-weight:700;border-bottom:2px solid var(--purple)}.header nav a:hover,.header nav button:hover{color:var(--purple)}.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;background:linear-gradient(120deg,#6c3dff,#6032ff);color:white;border:0;border-radius:50px;padding:15px 25px;font-weight:600;font-size:16px;transition:filter .2s,transform .2s}.button:hover{filter:brightness(1.07);transform:translateY(-1px)}.header-cta{position:absolute;right:77px;top:23px;height:51px;width:214px;padding:10px 14px}.header-cta svg{width:23px;height:23px;stroke:white;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.menu-toggle{display:none}.hero{height:534px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 22% 3%,#e9edffcc,transparent 48%),radial-gradient(ellipse at 0 58%,#e5f9f6,transparent 45%),#fff}.hero:after{position:absolute;content:'';width:550px;height:180px;background:#e8f1ff;bottom:-162px;left:240px;border-radius:50%;transform:rotate(-5deg)}.hero-copy{position:absolute;z-index:1;left:80px;top:42px;width:500px}.eyebrow{font-weight:600;font-size:16px;letter-spacing:3px;margin:0 0 11px;line-height:1.4}.hero h1{font-size:102px;font-weight:700;line-height:.91;letter-spacing:-3.8px;margin:0 0 26px}.hero h1 span{display:inline-block;color:#6230fd;position:relative;margin-left:30px;white-space:nowrap;z-index:0}.hero h1 span:after{content:'';position:absolute;background:#ffdb32;height:13px;width:209px;border-radius:55% 40%;right:16px;bottom:-11px;transform:rotate(-5deg);z-index:-1}.hero-description{font-size:22px;line-height:28px;letter-spacing:-.35px;color:var(--ink);margin:28px 0 17px}.stores{display:flex;gap:15px}.store{display:block;width:205px;height:61px;border-radius:10px;background-image:url('assets/calmenta-reference.webp');background-size:1536px 1024px;transition:transform .2s}.store:hover{transform:translateY(-2px)}.apple-store{background-position:-80px -487px}.google-store{background-position:-299px -487px}.social-proof{display:flex;align-items:center;gap:17px;margin-top:17px}.avatar-strip{width:148px;height:48px;background:url('assets/calmenta-reference.webp') -79px -565px/1536px 1024px;border-radius:30px;flex-shrink:0}.social-proof p{font-size:14px;line-height:17px;color:var(--ink);margin:0}.hero-art{position:absolute;left:574px;top:-9px;width:962px;height:543px;background:url('assets/calmenta-reference.webp') -574px -87px/1536px 1024px;z-index:0}.phone-hotspot{position:absolute;left:132px;top:394px;width:231px;height:47px;border-radius:30px;transform:rotate(6deg);background:transparent}.phone-hotspot:hover{box-shadow:0 0 0 3px #ffffff90}.benefits{position:relative;height:134px;display:grid;grid-template-columns:repeat(4,1fr);padding:17px 69px 21px 75px;gap:34px;background:white}.benefits article{display:flex;align-items:center;gap:22px}.feature-icon{width:96px;height:96px;flex-shrink:0;border-radius:50%;background-image:url('assets/calmenta-reference.webp');background-size:1536px 1024px}.cap-icon{background-position:-75px -647px}.chart-icon{background-position:-442px -647px}.trophy-icon{background-position:-794px -647px}.heart-icon{background-position:-1161px -647px}.benefits h2{font-size:21px;line-height:25px;font-weight:600;white-space:nowrap;margin:0 0 4px}.benefits p{font-size:17px;line-height:21px;color:var(--ink);margin:0;white-space:nowrap}.stories{display:grid;grid-template-columns:727px 729px;gap:15px;padding:0 32px;height:260px}.story{position:relative;border-radius:32px;overflow:hidden}.exercise-story{background:linear-gradient(120deg,#f2f2ff,#e9ecff)}.training-preview{position:absolute;inset:0 auto 0 0;width:325px;height:260px;background:url('assets/calmenta-reference.webp') -32px -764px/1536px 1024px}.training-hotspot{position:absolute;background:transparent;left:78px;top:80px;width:220px;height:180px;transform:rotate(-10deg);border-radius:20px}.training-hotspot:hover{box-shadow:inset 0 0 0 2px #6438f544}.story-copy{position:absolute;left:333px;top:30px;width:365px;z-index:1}.pill{display:inline-block;font-size:10px;font-weight:600;letter-spacing:1.7px;padding:6px 19px;border-radius:30px;margin:0 0 10px;line-height:1.2}.lavender{background:#e0e2ff;color:#4426e6}.mint{background:#cef9e8;color:#007350}.story h2{font-size:32px;font-weight:600;line-height:32px;letter-spacing:-.8px;margin:0 0 11px}.story-copy>p:not(.pill){font-size:16px;line-height:21px;color:var(--ink);margin:0;letter-spacing:-.25px}.family-story{background:linear-gradient(110deg,#ebfff8,#e5f9f2)}.family-story .story-copy{left:45px;top:30px;width:435px}.family-story h2{font-size:31px;line-height:32px}.family-story .story-copy>p:not(.pill){width:404px}.family-photo{position:absolute;right:0;top:0;width:283px;height:260px;background:url('assets/calmenta-reference.webp') -1221px -764px/1536px 1024px;mask-image:linear-gradient(to right,transparent,#000 20%)}
dialog{border:0;border-radius:30px;padding:42px;text-align:center;width:min(460px,calc(100% - 30px));color:var(--navy);box-shadow:0 30px 100px #17133944;max-height:90dvh;overflow:auto}dialog::backdrop{background:#15123575;backdrop-filter:blur(5px)}dialog h2{font-size:35px;line-height:1.15;font-weight:600;margin-bottom:20px}dialog p:not(.eyebrow,.pill){color:var(--ink);line-height:1.6}dialog .eyebrow{font-size:11px;letter-spacing:2px;margin-bottom:14px}.dialog-icon{display:block;font-size:45px;color:var(--purple);margin-bottom:18px}.close-dialog{position:absolute;right:15px;top:12px;background:transparent;font-size:28px;color:var(--ink);z-index:3;width:35px;height:35px}.wide-dialog{width:min(940px,calc(100% - 30px));padding:45px;text-align:left}.how-steps{text-align:left;padding-left:22px;line-height:1.5}.how-steps li{margin-bottom:20px;padding-left:7px}.how-steps p{font-size:14px;margin:6px 0}.demo-section{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.demo-copy h2{font-size:37px}.demo-copy>p:not(.pill){font-size:15px;line-height:1.7}.demo-options{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 15px}.mode-button{border:1px solid #d9d2ed;background:#fff;color:var(--ink);padding:11px 13px;border-radius:100px;font-size:13px}.mode-button.selected{background:var(--purple);border-color:var(--purple);color:#fff}.demo-copy .demo-note{font-size:12px!important;color:#858099!important}.demo-card{background:#f7f5ff;border:1px solid #ece7fa;border-radius:25px;padding:25px;min-height:336px;text-align:center}.demo-top{display:flex;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:1px;color:#82799a}.demo-progress{height:5px;border-radius:10px;background:#e7e0f6;overflow:hidden;margin:14px 0 25px}.demo-progress span{display:block;height:100%;width:0;background:var(--purple);transition:width .3s}#quiz-label{display:block;font-size:15px;color:#69617e}#quiz-operation{display:block;font-family:'Fredoka',sans-serif;font-size:43px;color:var(--navy);font-weight:600;margin-top:4px}.answer-wrap input{width:115px;height:61px;border:2px solid #d8cef6;background:#fff;border-radius:14px;text-align:center;font-weight:700;font-size:32px;color:var(--purple);appearance:textfield}.answer-wrap input::-webkit-inner-spin-button{appearance:none}#quiz-feedback{font-size:13px;color:#736786;line-height:1.5;margin:15px 0;min-height:20px}#quiz-feedback.correct{color:#008051}#quiz-feedback.retry{color:#9a5109}#quiz-submit{width:100%;font-size:14px}.complete-star{color:#e8b617;font-size:55px}#quiz-complete h3{font-size:25px;font-weight:600;margin-bottom:8px}#quiz-complete p{font-size:14px}.faq-heading h2{font-size:37px}.faq-heading>p:last-child{display:none}.faq-heading h2 br{display:none}.purple-text{color:var(--purple)}.faq-list details{border-bottom:1px solid #e9e7f0}.faq-list summary{cursor:pointer;list-style:none;font-size:16px;font-weight:600;padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--purple);font-size:22px;flex-shrink:0}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:14px;line-height:1.8;padding-right:25px;padding-bottom:12px}
@media(max-width:800px){.page-frame{aspect-ratio:auto;overflow:visible}.page-canvas{position:relative;width:100%;height:auto;transform:none}.header{height:87px;border-radius:0}.brand-image{left:20px;top:17px;height:52px;font-size:38px}.header-cta{display:none}.menu-toggle{display:block;position:absolute;right:22px;top:24px;background:#f0ebff;border-radius:9px;color:var(--purple);font-size:24px;padding:5px 10px}.header nav{display:none;position:absolute;left:15px;right:15px;top:76px;padding:20px;border-radius:20px;background:white;box-shadow:0 20px 40px #17143f25;align-items:stretch;gap:3px;font-size:16px}.header nav.open{display:flex;flex-direction:column}.header nav button,.header nav a{text-align:left;padding:10px}.header nav .active{border:0;color:var(--purple)}.hero{height:auto;padding-top:26px;overflow:hidden;display:flex;flex-direction:column}.hero-copy{position:relative;left:auto;top:auto;width:100%;padding:0 24px;text-align:center}.eyebrow{font-size:13px;letter-spacing:2px}.hero h1{font-size:clamp(65px,11vw,90px);letter-spacing:-2.5px;line-height:.94;margin-bottom:30px}.hero h1 span{margin-left:0}.hero h1 span:after{height:9px;bottom:-7px;right:4px;width:48%}.hero-description{font-size:17px;line-height:1.5;letter-spacing:0;margin:0 auto 20px;max-width:480px}.desktop-break{display:none}.stores{justify-content:center;gap:10px}.store{width:170px;height:51px;background-size:1274px 849px;border-radius:9px}.apple-store{background-position:-66px -404px}.google-store{background-position:-248px -404px}.social-proof{justify-content:center;gap:12px;margin:17px 0}.social-proof p{text-align:left;font-size:12px;line-height:1.35}.avatar-strip{width:126px;height:41px;background-size:1306px 870px;background-position:-67px -480px}.hero-art{position:relative;left:auto;top:auto;align-self:center;width:769.6px;height:434.4px;background-size:1228.8px 819.2px;background-position:-459.2px -69.6px;transform:scale(var(--mobile-art-scale,0.6));transform-origin:top center;margin-bottom:calc(-434.4px * (1 - var(--mobile-art-scale,0.6)));z-index:1}.phone-hotspot{left:106px;top:315px;width:185px;height:38px}.hero:after{display:none}.benefits{height:auto;padding:27px 22px;gap:24px 16px;grid-template-columns:1fr 1fr}.benefits article{gap:12px;align-items:center}.feature-icon{width:56px;height:56px;background-size:896px 597.3px}.cap-icon{background-position:-43.75px -377.4px}.chart-icon{background-position:-257.8px -377.4px}.trophy-icon{background-position:-463.1px -377.4px}.heart-icon{background-position:-677.2px -377.4px}.benefits h2{font-size:17px;line-height:1.15;white-space:normal;margin-bottom:5px}.benefits p{font-size:13px;line-height:1.4;white-space:normal}.benefits p br{display:none}.stories{height:auto;display:flex;flex-direction:column;padding:0 20px 20px;gap:17px}.story{min-height:280px;border-radius:27px}.story-copy{left:46%;top:30px;width:49%;padding-right:13px}.training-preview{left:0;bottom:0;top:auto;transform:scale(.92);transform-origin:left bottom}.story h2{font-size:26px;line-height:1.1;letter-spacing:-.4px}.story-copy>p:not(.pill){font-size:14px;line-height:1.5;letter-spacing:0}.pill{font-size:9px;letter-spacing:1.2px;padding:6px 12px}.family-story .story-copy{left:25px;top:30px;width:65%;padding-right:0}.family-story h2{font-size:26px;line-height:1.1}.family-story .story-copy>p:not(.pill){width:100%;max-width:330px}.family-photo{height:280px;background-size:1654px 1103px;background-position:-1315px -823px;width:39%}.wide-dialog{padding:42px 23px 25px}.demo-section{grid-template-columns:1fr}.demo-copy h2{font-size:30px}.demo-copy>p:not(.pill){font-size:14px}.demo-note{display:none}.faq-list summary{font-size:14px}}
@media(max-width:480px){.header{height:80px}.brand-image{left:20px;top:16px;height:47px;font-size:34px}.menu-toggle{top:20px}.hero{padding-top:23px}.hero-copy{padding:0 20px}.hero h1{font-size:68px}.hero-description{font-size:16px}.store{width:155px;height:46px;background-size:1161px 774px}.apple-store{background-position:-60.5px -368.1px}.google-store{background-position:-226px -368.1px}.benefits{padding:25px 20px;gap:23px 13px}.benefits article{gap:8px}.feature-icon{width:43px;height:43px;background-size:688px 458.7px}.cap-icon{background-position:-33.6px -289.8px}.chart-icon{background-position:-198px -289.8px}.trophy-icon{background-position:-355.65px -289.8px}.heart-icon{background-position:-520px -289.8px}.benefits h2{font-size:16px}.benefits p{font-size:12px}.story{min-height:440px}.exercise-story .story-copy{position:relative;left:auto;top:auto;width:auto;padding:26px 24px 0}.story h2{font-size:29px}.story-copy>p:not(.pill){font-size:14px}.training-preview{width:325px;height:260px;transform:scale(.8);left:50%;margin-left:-130px;bottom:-30px}.family-story .story-copy{left:24px;top:26px;width:calc(100% - 48px)}.family-story h2{font-size:27px}.family-story .story-copy>p:not(.pill){max-width:100%}.family-photo{width:100%;height:220px;top:auto;bottom:0;background-size:1536px 1024px;background-position:right -32px bottom 0;mask-image:linear-gradient(0deg,#000 70%,transparent)}.family-story{min-height:480px}.social-proof p{font-size:11px}.avatar-strip{width:117px}.wide-dialog{width:calc(100% - 20px)}dialog{padding:40px 25px 30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* More breathing room, preserving the reference composition and artwork. */
@media(min-width:801px){
  .page-frame{aspect-ratio:1536/1320}
  .page-canvas{height:1320px}
  .header{height:112px}
  .brand-image{top:22px}
  .header nav{top:36px}
  .header-cta{top:31px}
  .hero{height:650px}
  .hero-copy{top:58px}
  .hero .eyebrow{margin-bottom:19px}
  .hero h1{line-height:1.01;margin-bottom:34px}
  .hero-description{line-height:33px;margin:31px 0 25px}
  .stores{gap:20px}
  .social-proof{margin-top:24px;gap:20px}
  .social-proof p{line-height:20px}
  .hero-art{top:73px}
  .benefits{height:178px;padding-top:39px;padding-bottom:43px}
  .benefits article{gap:24px}
  .benefits h2{margin-bottom:9px}
  .benefits p{line-height:25px}
  .stories{height:380px;grid-template-columns:1fr 1fr;gap:28px;padding:8px 40px 42px}
  .story-copy{left:320px;top:38px;width:350px}
  .story h2{line-height:1.16;margin-bottom:18px}
  .pill{margin-bottom:16px}
  .story-copy>p:not(.pill){line-height:25px;letter-spacing:0}
  .training-preview{top:auto;bottom:0;width:305px;mask-image:linear-gradient(90deg,#000 91%,transparent)}
  .family-story .story-copy{left:36px;top:38px;width:430px}
  .family-story h2{line-height:1.16}
  .family-story .story-copy>p:not(.pill){width:390px}
  .family-photo{top:auto;bottom:0;mask-image:linear-gradient(90deg,transparent,#000 25%)}
}
@media(max-width:800px){
  .hero{padding-top:38px}
  .hero .eyebrow{margin-bottom:18px}
  .hero h1{line-height:1.02;margin-bottom:34px}
  .hero-description{line-height:1.7;margin-bottom:27px}
  .social-proof{margin-top:23px;margin-bottom:30px}
  .benefits{padding-top:36px;padding-bottom:38px;row-gap:32px}
  .benefits h2{margin-bottom:8px}
  .benefits p{line-height:1.6}
  .stories{gap:26px;padding-bottom:35px}
  .story{min-height:325px}
  .story h2{line-height:1.2;margin-bottom:16px}
  .story-copy>p:not(.pill){line-height:1.75}
  .pill{margin-bottom:16px}
}
@media(max-width:480px){
  .hero{padding-top:34px}
  .hero h1{font-size:64px}
  .story{min-height:495px}
  .exercise-story .story-copy{padding:30px 25px 0}
  .family-story{min-height:535px}
  .family-story .story-copy{top:30px}
  .family-story h2{line-height:1.2}
  .benefits{column-gap:17px}
  .benefits article{align-items:flex-start}
}

/* Blend only the empty edges of reference slices into their existing backgrounds. */
@media(min-width:801px){
 .hero-art{mask-image:linear-gradient(90deg,transparent 0,#000 40px),linear-gradient(180deg,transparent 0,#000 12px);mask-composite:intersect}
 .training-preview{mask-image:linear-gradient(90deg,#000 90%,transparent),linear-gradient(180deg,transparent 0,#000 18px);mask-composite:intersect}
 .family-photo{mask-image:linear-gradient(90deg,transparent,#000 20%),linear-gradient(180deg,transparent 0,#000 20px);mask-composite:intersect}
}

/* Restore the original card proportions so both reference visuals remain visible. */
@media(min-width:801px){
 .page-frame{aspect-ratio:1536/1250}
 .page-canvas{height:1250px}
 .stories{height:310px}
 .training-preview{top:0;bottom:auto;width:325px;height:260px;background-position:-32px -764px;background-size:1536px 1024px;mask-image:none}
 .family-photo{top:0;bottom:auto;width:283px;height:260px;background-position:-1221px -764px;background-size:1536px 1024px;mask-image:linear-gradient(90deg,transparent,#000 12%);mask-composite:add}
 .story-copy{top:30px;left:333px;width:350px}
 .family-story .story-copy{top:30px;left:36px;width:430px}
 .story h2,.family-story h2{line-height:32px;margin-bottom:11px}
 .story .pill{margin-bottom:10px}
 .story-copy>p:not(.pill){line-height:21px}
}

/* The second reference, directly below the original landing-page cards. */
.page-frame{aspect-ratio:auto}
.page-canvas{height:auto}
.landing-suite{position:relative;padding:0 40px;background:radial-gradient(ellipse at 0 12%,#e5f6ff99,transparent 28%),radial-gradient(ellipse at 100% 15%,#e9faed99,transparent 25%),#fff}
.suite-title{font-size:42px;line-height:1.15;font-weight:600;text-align:center;margin:0;padding:8px 0 23px;position:relative;letter-spacing:-.5px}
.suite-title:after{content:'';position:absolute;bottom:13px;width:181px;height:9px;background:#ffda39;border-radius:70% 35%;left:50%;transform:translateX(-15%) rotate(-3deg)}
.how-section,.testimonials-section,.inline-faq{position:relative}
.suite-note{position:absolute;right:40px;top:0;font-family:'Nunito',sans-serif;font-size:22px;font-weight:800;line-height:1.13;text-align:center;transform:rotate(-9deg);margin:0}
.how-note{right:160px;top:3px}
.suite-doodle{position:absolute;font-size:81px;color:#ffce23;line-height:1;left:60px;top:-4px;transform:rotate(-10deg)}
.how-cards{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px}
.how-card{height:182px;border-radius:29px;position:relative;display:grid;grid-template-columns:175px 1fr;align-items:start}
.step-one{background:#f0efff}.step-two{background:#e9fcf5}.step-three{background:#fff8e2}
.step-art{height:182px;width:175px;background-image:url('assets/calmenta-suite.webp');background-size:1536px 1024px;background-repeat:no-repeat;border-radius:29px 0 0 29px}
.step-art-one{background-position:-44px -76px}.step-art-two{background-position:-537px -76px}.step-art-three{background-position:-1016px -76px}
.step-copy{padding:20px 19px 18px 6px;position:relative;z-index:1;min-width:0}
.step-copy .pill{font-size:12px;letter-spacing:.6px;padding:5px 15px;margin-bottom:7px}
.peach{background:#ffe9c7;color:#101044}
.step-copy h3{font-size:23px;line-height:1.15;font-weight:600;margin:0 0 8px;letter-spacing:-.5px}
.step-copy>p:not(.pill){font-size:15px;line-height:20px;color:var(--ink);margin:0}
.step-arrow{position:absolute;right:-39px;top:63px;color:#733dff;font-size:76px;line-height:1;z-index:3;transform:rotate(5deg)}
.testimonials-section .suite-title{padding-top:9px;padding-bottom:20px}
.testimonials-section .suite-title:after{bottom:8px;width:140px}
.testimonials-note{right:28px;top:22px;font-size:21px;padding-left:45px}
.testimonials-note>span{position:absolute;left:-17px;top:-13px;font-size:58px;color:#fa599c;line-height:1}
.quote-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.quote-card{height:188px;border-radius:26px;padding:18px 20px;display:grid;grid-template-columns:140px 1fr;gap:8px;margin:0;position:relative}
.quote-lavender{background:#f1f2ff}.quote-mint{background:#eafbf5}.quote-yellow{background:#fff8e5}
.quote-card figcaption{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;font-size:14px;color:#67617d;line-height:19px;white-space:nowrap}
.portrait{display:block;width:85px;height:85px;border-radius:50%;background-image:url('assets/calmenta-suite.webp');background-size:1536px 1024px;flex:none;margin-bottom:8px}
.portrait-sophie{background-position:-60px -344px}.portrait-thomas{background-position:-560px -344px}.portrait-caroline{background-position:-1041px -344px}
.quote-card strong{font-size:16px;color:var(--navy);font-weight:800}
.rating{font-size:21px;color:#ffb900;letter-spacing:2px;line-height:23px;margin-top:4px;text-shadow:0 1px #ee9700}
.quote-card blockquote{margin:3px 0 0;font-size:15px;line-height:21px;position:relative;color:#27254b}
.quote-mark{position:absolute;left:-42px;top:-9px;font-family:Georgia,serif;font-size:61px;font-weight:bold;color:#8650ff}
.quote-mint .quote-mark{color:#17b682}.quote-yellow .quote-mark{color:#ff8900}
.quote-card mark{color:#08082e;background:#d7c5ff;padding:0 3px;border-radius:8px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.quote-mint mark{background:#aef0ce}.quote-yellow mark{background:#ffe07b}
.inline-faq{padding:0 15px}
.inline-faq .suite-title{padding-top:12px;padding-bottom:19px;font-size:39px}
.inline-faq .suite-title:after{bottom:8px;width:145px;transform:translateX(30%) rotate(-2deg)}
.faq-note{font-size:21px;right:55px;top:11px}
.faq-columns{display:grid;grid-template-columns:1fr 1.035fr 1.025fr;gap:22px;align-items:start;min-height:133px}
.faq-columns>div{display:grid;gap:9px}
.faq-columns details{border:1px solid #e4e6f4;border-radius:15px;background:#f9f9fe;overflow:hidden}
.faq-columns summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;min-height:52px;padding:13px 23px;font-size:16px;font-weight:700}
.faq-columns summary::-webkit-details-marker{display:none}
.faq-columns summary>span{width:10px;height:10px;border-bottom:3px solid var(--navy);border-right:3px solid var(--navy);transform:rotate(45deg);flex:none;margin-right:4px;margin-top:-5px}
.faq-columns details[open]{background:#eef8ff;border:2px solid #d9edff}
.faq-columns details[open] summary{background:#e1edff;min-height:44px;padding-top:9px;padding-bottom:9px}
.faq-columns details[open] summary>span{transform:rotate(225deg);margin-top:6px}
.faq-columns details p{font-size:15px;line-height:18px;color:var(--ink);padding:10px 28px 6px;margin:0;background:linear-gradient(100deg,#fff,#eef8ff);border-radius:14px}
.reference-cta{height:224px;margin:10px -12px 0;position:relative;border-radius:36px;overflow:hidden}
.cta-art{position:absolute;inset:0;background:url('assets/calmenta-suite.webp') -28px -722px/1536px 1024px no-repeat}
.cta-store{position:absolute;top:157px;height:53px;background:transparent;border-radius:10px;width:179px}
.cta-store:hover{box-shadow:0 0 0 3px #7a4bfa55}.cta-apple{left:609px}.cta-google{left:809px}
.suite-footer{height:78px;display:flex;align-items:center;gap:25px;padding:10px 30px}
.footer-brand{height:54px;font-size:38px;flex:none}
.brand-image,.footer-brand{display:flex;align-items:center;gap:.36em}
.brand-image:before,.footer-brand:before{content:'';height:100%;aspect-ratio:1;flex:none;background:url('assets/logo.webp') center/contain no-repeat}
.brand-name{font-family:'Fredoka','Nunito',sans-serif;font-weight:500;line-height:1;letter-spacing:-.01em;color:var(--navy);white-space:nowrap}
.brand-name span{color:#12b37f}
.suite-footer nav{display:flex;gap:22px;font-size:12px;margin-left:auto;white-space:nowrap}
.suite-footer nav a:hover,.footer-contact a:hover{color:var(--purple)}
.footer-contact{display:flex;gap:28px;align-items:center;border-left:2px solid #e0deed;padding-left:32px;margin-left:28px;font-size:12px;white-space:nowrap}
.footer-contact a{display:flex;gap:12px;align-items:center}.footer-contact span a{display:inline}.footer-contact a>span{font-size:24px;line-height:1}
.social-marks{display:flex;gap:19px;margin-left:auto}
.social-marks button{width:26px;height:26px;background:transparent center/contain no-repeat}
.social-marks .social-instagram{background-image:url('assets/instagram.svg')}.social-marks .social-youtube{background-image:url('assets/youtube.svg')}
@media(max-width:800px){
 .page-frame{height:auto!important}
 .landing-suite{padding:15px 20px 0}
 .suite-title,.inline-faq .suite-title{font-size:32px;padding:16px 0 28px}
 .suite-title:after{bottom:17px;width:125px;height:7px}
 .suite-note,.suite-doodle,.step-arrow{display:none}
 .how-cards{grid-template-columns:1fr;gap:18px}
 .how-card{height:auto;min-height:182px;grid-template-columns:175px 1fr}
 .step-copy{padding:24px 22px 20px 8px}
 .step-copy h3{font-size:25px}.step-copy>p:not(.pill){font-size:16px;line-height:1.5}
 .step-art{align-self:center}
 .testimonials-section{padding-top:20px}
 .testimonials-section .suite-title{padding-bottom:28px}
 .testimonials-section .suite-title:after{bottom:16px}
 .quote-cards{grid-template-columns:1fr;gap:18px}
 .quote-card{height:auto;min-height:188px;padding:22px;grid-template-columns:150px 1fr;gap:8px}
 .quote-card blockquote{font-size:16px;line-height:1.5}
 .inline-faq{padding:22px 0 0}
 .inline-faq .suite-title:after{bottom:15px;width:115px}
 .faq-columns{grid-template-columns:1fr;gap:12px}
 .faq-columns>div{gap:12px}
 .faq-columns summary{font-size:15px;padding:15px 18px;min-height:56px}
 .faq-columns details p{font-size:15px;line-height:1.55;padding:15px 20px}
 .reference-cta{height:auto;aspect-ratio:1480/224;margin:24px -5px 0;border-radius:18px}
 .cta-art{background-size:103.784% 457.143%;background-position:50% 90.25%}
 .cta-store{top:70.09%;height:23.66%;width:12.1%;border-radius:4px}.cta-apple{left:41.15%}.cta-google{left:54.66%}
 .suite-footer{height:auto;padding:25px 0;flex-wrap:wrap;justify-content:center;gap:22px}
 .suite-footer nav{margin:0;flex-wrap:wrap;justify-content:center;gap:16px;width:100%;font-size:13px}
 .footer-contact{padding:0;border:0;margin:0;gap:22px;font-size:13px;flex-wrap:wrap;justify-content:center}
 .social-marks{margin:0;gap:22px}
}
@media(max-width:480px){
 .suite-title,.inline-faq .suite-title{font-size:29px}
 .how-card{grid-template-columns:100px 1fr;min-height:198px;border-radius:23px}
 .step-art{width:100px;height:150px;background-size:1075.2px 716.8px;border-radius:20px 0 0 20px}
 .step-art-one{background-position:-41px -55px}.step-art-two{background-position:-399px -55px}.step-art-three{background-position:-731px -55px}
 .step-copy{padding:20px 15px 20px 2px}.step-copy h3{font-size:21px;line-height:1.2}.step-copy>p:not(.pill){font-size:14px;line-height:1.5}
 .step-copy .pill{font-size:10px;padding:5px 12px}
 .quote-card{grid-template-columns:1fr;padding:22px;gap:20px}
 .quote-card figcaption{display:grid;grid-template-columns:72px 1fr;grid-template-rows:repeat(3,auto);column-gap:15px;align-items:center;white-space:normal}
 .portrait{width:65px;height:65px;background-size:1174.6px 783.1px;grid-row:1/4;margin:0}.portrait-sophie{background-position:-45.9px -263.1px}.portrait-thomas{background-position:-428.2px -263.1px}.portrait-caroline{background-position:-796.1px -263.1px}
 .quote-card strong{font-size:16px}.quote-card figcaption>span:not(.portrait){font-size:13px}.quote-card figcaption .rating{font-size:18px!important;margin:0}
 .quote-card blockquote{font-size:15px;line-height:1.55;padding-left:20px}.quote-mark{left:-8px;top:-12px;font-size:44px}
 .reference-cta{height:220px;aspect-ratio:auto;border-radius:23px;background:#eff8ff}
 .cta-art{background-size:1100px 733.3px;background-position:-300px -517px}
 .cta-store{top:112px;height:39px;width:128px}.cta-apple{left:calc(50% - 135px)}.cta-google{left:calc(50% + 8px)}
}

/* Separate the three lower sections without changing their cards. */
.landing-suite{padding-top:26px}
.testimonials-section{margin-top:54px}
.inline-faq{margin-top:54px}
.reference-cta{margin-top:34px}
@media(max-width:800px){
 .landing-suite{padding-top:30px}
 .testimonials-section{margin-top:40px;padding-top:0}
 .inline-faq{margin-top:40px;padding-top:0}
 .reference-cta{margin-top:30px}
}

/* Additional review examples, using the existing three-column grid. */
.quote-cards{row-gap:24px}
.quote-card:has(.example-review){height:214px}
.initials{display:grid;place-items:center;font-family:'Fredoka',sans-serif;font-size:29px;font-weight:500;background-image:none}
.initials-elise{background:#ffe5bc;color:#996120}
.initials-karim{background:#ded5ff;color:#6440b5}
.initials-julie{background:#c4f0dd;color:#167757}
.example-review{font-size:11px;line-height:16px;color:#66617a;margin-top:3px}
@media(max-width:800px){.quote-card:has(.example-review){height:auto;min-height:214px}}
@media(max-width:480px){
 .quote-card figcaption:has(.example-review){grid-template-rows:repeat(4,auto)}
 .quote-card figcaption:has(.example-review) .portrait{grid-row:1/5}
 .example-review{grid-column:2;font-size:11px}
 .initials{font-size:24px}
}

/* Official App Store / Google Play badges (SVG) instead of the screenshot crops. */
.store.apple-store,.store.google-store{width:auto;background:center/contain no-repeat}
.store.apple-store{aspect-ratio:126.50751/40;background-image:url('assets/app-store-badge-fr.svg')}
.store.google-store{aspect-ratio:238.96/70.87;background-image:url('assets/google-play-badge-fr.svg')}
.cta-store{top:155px;height:56px;background:center/100% 100% no-repeat}
.cta-apple{left:608px;width:177px;background-image:url('assets/app-store-badge-fr.svg')}
.cta-google{left:808px;width:189px;background-image:url('assets/google-play-badge-fr.svg')}
@media(max-width:800px){
 .cta-store{top:69.2%;height:25%}
 .cta-apple{left:41.08%;width:11.96%}
 .cta-google{left:54.59%;width:12.77%}
}
@media(max-width:480px){
 .cta-art{background-position:calc(50% - 49.3px) -517px}
 .cta-store{top:111px;height:40px}
 .cta-apple{left:calc(50% - 143.5px);width:126.5px}
 .cta-google{left:calc(50% - 1px);width:135px}
}

/* Mobile : les découpes de l'image de référence débordaient sur le texte voisin et laissaient des zones blanches.
   Sur petit écran, chaque carte empile son texte puis une découpe limitée à l'illustration, et l'appel à l'action
   utilise du vrai texte avec la mascotte. */
.cta-copy,.cta-mascot{display:none}
@media(max-width:800px){
 .stories{padding-bottom:22px}
 .story,.family-story{min-height:0;display:flex;flex-direction:column}
 .story .story-copy{order:0}
 .training-preview,.family-photo{order:1}
 .story .story-copy,.exercise-story .story-copy,.family-story .story-copy{position:relative;left:auto;top:auto;width:auto;max-width:none;padding:28px 24px 0}
 .family-story .story-copy>p:not(.pill){width:auto;max-width:none}
 .training-preview{position:relative;left:auto;right:auto;top:auto;bottom:auto;transform:none;margin:14px auto -6px;width:290px;height:240px;background:url('assets/calmenta-reference.webp') -62px -775px/1536px 1024px no-repeat;mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent),linear-gradient(180deg,transparent,#000 24px,#000 82%,transparent);mask-composite:intersect}
 .training-hotspot{left:50%;top:auto;bottom:10px;margin-left:-100px;width:200px;height:170px}
 .family-photo{position:relative;left:auto;right:auto;top:auto;bottom:auto;align-self:flex-end;width:283px;height:236px;margin-top:4px;background:url('assets/calmenta-reference.webp') -1221px -788px/1536px 1024px no-repeat;mask-image:linear-gradient(90deg,transparent,#000 70px),linear-gradient(180deg,transparent,#000 44px);mask-composite:intersect}
 .landing-suite{padding-top:0}
 .reference-cta{height:auto;aspect-ratio:auto;margin:0;padding:30px 22px 26px;border-radius:26px;background:radial-gradient(ellipse at 15% 20%,#fff2cc88,transparent 45%),radial-gradient(ellipse at 90% 85%,#d9f7ee,transparent 50%),linear-gradient(135deg,#eef1ff,#eaf6ff)}
 .reference-cta{display:flex;flex-direction:column;align-items:center;text-align:center}
 .cta-art{display:none}
 .cta-copy{display:block;position:relative;z-index:1}
 .cta-copy h2{font-size:30px;line-height:1.1;letter-spacing:-.6px;margin:0 0 12px}
 .cta-copy h2 span{color:var(--purple);position:relative;display:inline-block;z-index:0}
 .cta-copy h2 span:after{content:'';position:absolute;left:0;right:0;bottom:-3px;height:7px;background:#ffdb32;border-radius:55% 40%;z-index:-1;transform:rotate(-2deg)}
 .cta-copy p{font-size:15px;line-height:1.55;color:var(--ink);margin:0 auto 16px;max-width:420px}
 .cta-mascot{display:block;width:150px;height:150px;object-fit:contain;margin:0 0 14px}
 .cta-stores{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
 .reference-cta .cta-store{position:static;width:150px;height:46px;background-size:100% 100%;background-position:center;background-repeat:no-repeat;border-radius:8px}
}
@media(max-width:480px){
 .story,.family-story{min-height:0}
 .exercise-story .story-copy,.family-story .story-copy{padding:26px 22px 0}
 .cta-copy h2{font-size:27px}
 .reference-cta .cta-store{width:140px;height:43px}
}

/* Dedicated high-resolution children photography. */
.avatar-strip{background-image:url("assets/enfants-portraits-hd.webp");background-size:100% auto;background-position:center;background-repeat:no-repeat}
.family-photo{background-image:url("assets/enfant-famille-hd.webp");background-size:cover;background-position:65% center;background-repeat:no-repeat}

/* Dedicated transparent high-definition illustrations. */
.step-art{background-size:contain;background-position:center;background-repeat:no-repeat}
.step-art-one{background-image:url("assets/entrainement-hd.webp")}
.step-art-two{background-image:url("assets/chronometre-hd.webp")}
.step-art-three{background-image:url("assets/progression-hd.webp")}



/* Original screenshots laid over the existing phone screens without regenerating UI. */
.hero-art,.training-preview,.cta-art{overflow:hidden}
.authentic-layer{position:absolute;width:1536px;height:1024px;transform-origin:top left;pointer-events:none}
.authentic-screen{position:absolute;left:0;top:0;width:260px;height:565px;transform-origin:top left;border-radius:32px;overflow:hidden;background:#fff}
.authentic-screen img{display:block;width:100%;height:100%;object-fit:fill}
.authentic-screen:after{content:"";position:absolute;left:34%;top:2%;width:32%;height:4.2%;background:#050505;border-radius:30px}
.hero-art .authentic-layer{left:-574px;top:-87px}
.training-preview .authentic-layer{left:-32px;top:-764px}
.cta-art .authentic-layer{left:-28px;top:-722px}
.phone-hotspot,.training-hotspot{z-index:2}
@media(max-width:800px){
.hero-art .authentic-layer{left:-459.2px;top:-69.6px;transform:scale(.8)}
.training-preview .authentic-layer{left:-62px;top:-775px}
}

/* Original black handwriting, displayed directly so it also works with local HTML files. */
.authentic-screen .authentic-answer-trace{position:absolute;left:15.81637%;top:47.51461%;width:68.15082%;height:27.04057%;object-fit:fill;pointer-events:none}

/* Unanswered operation: replace the recognized answer and its success badge. */
.authentic-question-mark{position:absolute;left:65%;top:21%;width:30%;height:13%;display:flex;align-items:flex-end;background:#fff;color:#77777f;font-family:ui-rounded,"Arial Rounded MT Bold",sans-serif;font-size:47px;font-weight:600;line-height:1;padding:0 0 2px 2px;pointer-events:none}

/* Crisp banner typography; preserve the original artwork on either side. */
.cta-promises,.cta-books,.cta-star{display:none}
@media(min-width:801px){
.reference-cta{background:radial-gradient(ellipse at 15% 15%,#e6f1ff,transparent 46%),radial-gradient(ellipse at 100% 70%,#fff4d7,transparent 38%),linear-gradient(110deg,#f0eaff,#edfdf8 58%,#edf5ff)}
.reference-cta .cta-art{width:535px;right:auto;mask-image:linear-gradient(90deg,#000 92%,transparent);mask-composite:add}
.reference-cta .cta-copy{display:block;position:absolute;left:515px;top:10px;width:615px;text-align:center;z-index:1}
.reference-cta .cta-copy h2{font-family:'Fredoka',sans-serif;font-weight:600;font-size:44px;line-height:1.02;letter-spacing:-1.1px;margin:0 0 8px;color:var(--navy)}
.reference-cta .cta-copy h2 span{color:var(--purple)}
.reference-cta .cta-copy h2:after{content:'';display:block;width:255px;height:7px;background:#ffda39;border-radius:70% 35%;margin:0 auto;transform:translateX(45px) rotate(-2deg)}
.reference-cta .cta-copy p{font-size:15px;line-height:20px;letter-spacing:0;color:var(--ink);margin:0 auto;max-width:610px}
.reference-cta .cta-stores{position:absolute;left:590px;top:166px;display:flex;align-items:center;gap:18px;z-index:2}
.reference-cta .cta-store{position:static;top:auto;left:auto;height:51px;background-size:contain;background-position:center;background-repeat:no-repeat}
.reference-cta .cta-apple{width:161px}.reference-cta .cta-google{width:172px}
.cta-promises{display:block;position:absolute;left:1153px;top:25px;z-index:1;transform:rotate(-8deg);font-family:'Nunito',sans-serif;font-size:21px;font-weight:800;line-height:1.25;color:var(--navy)}
.cta-promises p{margin:0 0 4px;white-space:nowrap}
.cta-promises span{display:inline-block;color:#9564ff;font-size:28px;line-height:1;vertical-align:-2px;margin-right:7px}
.cta-promises p:nth-child(2) span{color:#fa65a8}.cta-promises p:nth-child(3) span{color:#ff8b82}
.cta-books{display:block;position:absolute;right:0;bottom:0;width:270px;height:125px;background:url('assets/calmenta-suite.webp') -1238px -821px/1536px 1024px no-repeat;mask-image:linear-gradient(90deg,transparent,#000 22px),linear-gradient(180deg,transparent,#000 25px);mask-composite:intersect}
.cta-star{display:block;position:absolute;right:30px;top:17px;color:#ffcc31;font-size:70px;line-height:1;transform:rotate(12deg)}
}



/* Témoignages : initiales à la place des portraits */
.initials-sophie{background:#ded5ff;color:#6440b5}
.initials-thomas{background:#c4f0dd;color:#167757}
.initials-caroline{background:#ffe5bc;color:#996120}

/* Pied de page : liens légaux compacts */
.footer-legal{font-size:11px;color:#66617a;white-space:nowrap}
.footer-legal a{display:inline;color:inherit}
.footer-legal a:hover{color:var(--purple)}
@media(max-width:800px){.footer-legal{width:100%;text-align:center}}

/* Two rows of feature cards on desktop; stacked cards on mobile. */
@media(min-width:801px){.stories{height:auto;grid-auto-rows:260px;row-gap:28px}}

/* Distinct product stories with generous spacing and actual Calmenta screens. */
.learning-section{position:relative;padding:65px 60px 80px;background:linear-gradient(180deg,#fff 0%,#faf8ff 70%,#f5fbff 100%);scroll-margin-top:24px}
.learning-section:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:27px;background:white;clip-path:ellipse(58% 100% at 50% 100%)}
.learning-heading{text-align:center;max-width:850px;margin:0 auto 48px}
.learning-heading .eyebrow{font-size:13px;letter-spacing:2.5px;color:#7352bc;margin-bottom:18px}
.learning-heading h2{font-family:'Fredoka',sans-serif;font-size:49px;line-height:1.1;font-weight:600;letter-spacing:-1px;margin:0 0 22px;color:var(--navy)}
.learning-heading h2 span{color:var(--purple)}
.learning-heading>p:last-child{max-width:630px;margin:0 auto;font-size:19px;line-height:1.6;color:#57536e}
.discovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.discovery-card{position:relative;display:grid;grid-template-columns:55% 45%;min-height:390px;border-radius:34px;overflow:clip;border:1px solid #ffffffb3;isolation:isolate}
.discovery-exercises{background:#efecff}.discovery-family{background:#e5f8ee}.discovery-levels{background:#fff2d8}.discovery-parents{background:#e9f3ff}
.discovery-copy{padding:38px 0 36px 32px;position:relative;z-index:2}
.discovery-copy .pill{font-size:10px;letter-spacing:1.3px;padding:8px 13px;margin-bottom:20px;max-width:100%}
.pill.sky{background:#d1e6ff;color:#24599c}
.discovery-copy h3{font-family:'Fredoka',sans-serif;font-size:31px;font-weight:600;line-height:1.13;letter-spacing:-.5px;color:var(--navy);margin:0 0 18px}
.discovery-copy>p:not(.pill){font-size:16px;line-height:1.65;color:#4f4b67;margin:0 0 22px}
.discovery-link{display:inline-flex;align-items:center;gap:16px;padding:0 0 5px;background:transparent;color:#6032d9;font-size:16px;font-weight:700;border-bottom:1px solid #6032d959}
.discovery-link:hover{color:#35128d;border-color:currentColor}
.discovery-link:focus-visible{outline:3px solid #6032d9;outline-offset:5px}
.discovery-caption{display:block;font-size:13px;line-height:1.55;font-weight:700;color:#5d5872}
.discovery-visual{position:relative;min-width:0;overflow:visible;align-self:stretch}
.discovery-phone{position:absolute;left:34px;top:36px;width:213px;aspect-ratio:1320/2868;border:7px solid #242536;border-radius:35px;overflow:hidden;background:white;box-shadow:0 20px 32px #20234822;transform:rotate(6deg)}
.discovery-phone img{display:block;width:100%;height:100%;object-fit:cover}
.discovery-levels .discovery-phone{transform:rotate(-6deg);left:42px}
.discovery-parents .discovery-phone{transform:rotate(5deg)}
.discovery-child{position:absolute;width:255px;height:330px;max-width:none;object-fit:cover;object-position:60% center;left:22px;bottom:0;border-radius:130px 130px 0 0}
.discovery-spark{position:absolute;left:7px;top:34px;font-size:49px;line-height:1;color:#b38bfa;z-index:1;transform:rotate(-10deg)}
.discovery-family .discovery-spark{top:33px;left:10px;color:#20ac84;font-size:57px}
.discovery-levels .discovery-spark{top:16px;left:7px;color:#eeb22d}
.discovery-parents .discovery-spark{color:#729ee3}
.learning-section+.landing-suite{padding-top:30px}
.how-section{padding-top:32px;margin-bottom:65px}
.how-cards{margin-top:24px;gap:24px}
.testimonials-section{margin-top:65px}
.inline-faq{margin-top:72px;margin-bottom:55px}
.suite-title{font-size:43px;letter-spacing:-.6px}
@media(min-width:801px){.header nav{gap:23px;font-size:13px}.reference-cta{margin-top:45px;margin-bottom:15px}}
@media(max-width:800px){
.learning-section{padding:44px 20px 50px}
.learning-heading{margin-bottom:30px}
.learning-heading .eyebrow{font-size:11px;letter-spacing:1.8px;margin-bottom:13px}
.learning-heading h2{font-size:35px;letter-spacing:-.6px;margin-bottom:18px}
.learning-heading>p:last-child{font-size:16px;line-height:1.6}
.discovery-grid{grid-template-columns:1fr;gap:22px}
.discovery-card{min-height:365px;grid-template-columns:55% 45%}
.discovery-copy{padding:30px 0 30px 25px}
.discovery-copy h3{font-size:29px}
.discovery-copy>p:not(.pill){font-size:15px}
.discovery-copy .pill{font-size:9px;letter-spacing:.8px}
.discovery-phone{width:200px;left:35px}
.discovery-child{width:235px;height:315px;left:20px}
.suite-title{font-size:32px}
.how-section{padding-top:20px;margin-bottom:40px}
.testimonials-section,.inline-faq{margin-top:45px}
.inline-faq{margin-bottom:35px}
}
@media(max-width:480px){
.learning-heading h2{font-size:30px}
.discovery-card{display:flex;flex-direction:column;min-height:0;border-radius:28px}
.discovery-copy{padding:27px 25px 10px}
.discovery-copy .pill{margin-bottom:15px}
.discovery-copy h3{font-size:28px}
.discovery-copy>p:not(.pill){margin-bottom:15px}
.discovery-visual{height:255px;width:100%;overflow:hidden;flex:none;margin-top:10px}
.discovery-phone,.discovery-levels .discovery-phone,.discovery-parents .discovery-phone{top:14px;left:calc(50% - 99px);width:198px;border-width:6px;border-radius:30px;transform:rotate(5deg)}
.discovery-levels .discovery-phone{transform:rotate(-5deg)}
.discovery-child{left:calc(50% - 125px);width:250px;height:255px;object-position:60% 36%;border-radius:110px 110px 0 0}
.discovery-spark,.discovery-family .discovery-spark,.discovery-levels .discovery-spark{left:calc(50% - 135px);top:25px}
}

/* Human stories: one iPad scene, school, teachers and family. */
.discovery-card{display:flex;flex-direction:column;min-height:0}
.discovery-copy{padding:34px 36px 30px;flex:1;display:flex;flex-direction:column;align-items:flex-start}
.discovery-copy .pill{margin-bottom:16px}
.discovery-copy h3{font-size:34px;line-height:1.12}
.discovery-copy>p:not(.pill){max-width:580px;margin-bottom:20px;font-size:17px;line-height:1.6}
.discovery-copy .discovery-link,.discovery-copy .discovery-caption{margin-top:auto}
.discovery-visual{width:100%;height:auto;flex:none;margin:0;overflow:clip}
.discovery-scene{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
@media(max-width:800px){
.discovery-copy{padding:28px 28px 25px}
.discovery-copy h3{font-size:30px}
.discovery-copy>p:not(.pill){font-size:16px}
.discovery-copy .pill{font-size:10px}
}
@media(max-width:480px){
.discovery-copy{padding:26px 24px 24px}
.discovery-copy h3{font-size:27px}
.discovery-copy>p:not(.pill){font-size:15px}
.discovery-visual{height:auto;margin:0}
}

/* Lower page: airy steps, readable reviews and a single FAQ column. */
.landing-suite{padding:0 60px;background:#fff}
.lower-heading{max-width:850px;margin:0 auto 40px;text-align:center}
.lower-heading .eyebrow,.faq-intro .eyebrow{font-size:13px;letter-spacing:2px;color:#7352bc;margin-bottom:17px}
.lower-heading .suite-title,.inline-faq .suite-title{font-size:46px;line-height:1.12;padding:0;margin:0 0 22px;letter-spacing:-.8px}
.lower-heading .suite-title span,.faq-intro .suite-title span{color:var(--purple)}
.lower-heading .suite-title:after,.inline-faq .suite-title:after{display:none}
.section-intro{font-size:19px;line-height:1.6;color:#57536e;margin:0 auto;max-width:630px}
.landing-suite .suite-note,.landing-suite .suite-doodle,.step-arrow{display:none}
.how-section{padding-top:48px;margin-bottom:88px;scroll-margin-top:30px}
.how-cards{gap:28px;margin:0}
.how-card{height:auto;min-height:0;display:flex;flex-direction:column;border-radius:30px;padding:24px 30px 32px;overflow:clip}
.step-art{height:175px;width:190px;align-self:center;border-radius:0;background-size:contain;background-position:center;margin-bottom:12px}
.step-copy{padding:0;width:100%}
.step-copy .pill{font-size:11px;letter-spacing:1px;padding:7px 13px;margin-bottom:17px}
.step-copy h3{font-size:27px;line-height:1.2;margin-bottom:14px}
.step-copy>p:not(.pill){font-size:17px;line-height:1.65;color:#57536e}
.testimonials-section{margin:0 -60px;padding:68px 60px 76px;background:#faf8ff;scroll-margin-top:20px}
.quote-cards{gap:24px}
.quote-card{height:auto;min-height:270px;display:flex;flex-direction:column;padding:28px;border-radius:26px;border:1px solid #eee9f7;background:#fff;gap:24px}
.quote-card figcaption{display:grid;grid-template-columns:56px 1fr;grid-template-rows:auto auto auto;column-gap:14px;white-space:normal;align-items:center}
.quote-card .portrait{display:grid;place-items:center;width:52px;height:52px;font-size:21px;grid-column:1;grid-row:1/4;margin:0;background-image:none}
.quote-card strong{font-size:17px;line-height:1.4}
.quote-card figcaption>span:not(.portrait){font-size:13px;line-height:1.5}
.quote-card figcaption .rating{font-size:15px!important;letter-spacing:2px;margin-top:3px;line-height:1.3;text-shadow:none;color:#c58a00}
.quote-card blockquote{font-size:17px;line-height:1.7;margin:0;padding:0}
.quote-mark{display:none}
.quote-card mark{background:transparent;padding:0;font-weight:700;color:#5837a5}
.inline-faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;padding:90px 0;margin:0;align-items:start;scroll-margin-top:20px}
.faq-intro .suite-title{text-align:left;font-size:43px}
.faq-intro>p:not(.eyebrow){font-size:18px;line-height:1.65;color:#57536e;max-width:390px;margin-bottom:26px}
.faq-contact{display:inline-flex;gap:12px;font-size:16px;font-weight:700;color:#6032d9;border-bottom:1px solid #d7c5ff;padding-bottom:7px}
.faq-columns{display:flex;flex-direction:column;gap:12px;min-height:0}
.faq-columns details{width:100%;border:1px solid #e7e3f0;border-radius:18px;background:#fff;overflow:clip}
.faq-columns summary,.faq-columns details[open] summary{padding:21px 24px;min-height:66px;font-size:17px;line-height:1.4;background:transparent}
.faq-columns details[open]{border:1px solid #d8cef3;background:#f7f4ff}
.faq-columns summary>span{width:9px;height:9px;border-width:2px;color:#6032d9}
.faq-columns details p{background:none;border-radius:0;padding:0 24px 23px;font-size:16px;line-height:1.7;color:#57536e}
.reference-cta{margin:0 -20px 45px;box-shadow:0 12px 35px #5250a008}
.suite-footer{height:auto;min-height:160px;padding:30px 0 38px;flex-wrap:wrap;gap:26px;border-top:1px solid #ece8f3}
.suite-footer nav{font-size:14px;gap:25px}
.footer-contact{order:3;width:100%;margin:0;border:0;border-top:1px solid #f0edf5;padding:22px 0 0;justify-content:space-between;font-size:13px}
.footer-legal{font-size:12px}
.social-marks{margin-left:12px}
@media(max-width:800px){
.landing-suite{padding:0 20px}
.learning-section+.landing-suite{padding-top:0}
.how-section{padding-top:38px;margin-bottom:48px}
.lower-heading{margin-bottom:28px}
.lower-heading .eyebrow,.faq-intro .eyebrow{font-size:10px;letter-spacing:1.5px}
.lower-heading .suite-title,.inline-faq .suite-title{font-size:32px;line-height:1.15;margin-bottom:18px}
.section-intro{font-size:16px}
.how-cards{gap:18px}
.how-card{display:grid;grid-template-columns:105px 1fr;gap:18px;padding:24px 20px}
.step-art{width:105px;height:130px;margin:0}
.step-copy h3{font-size:24px}
.step-copy>p:not(.pill){font-size:15px;line-height:1.6}
.step-copy .pill{font-size:10px;margin-bottom:12px}
.testimonials-section{margin:0 -20px;padding:44px 20px}
.quote-cards{gap:16px}
.quote-card{min-height:0;padding:24px;gap:19px}
.quote-card blockquote{font-size:16px;line-height:1.65}
.inline-faq{grid-template-columns:1fr;gap:30px;padding:50px 0}
.faq-intro>p:not(.eyebrow){max-width:none;font-size:16px}
.faq-contact{font-size:14px}
.faq-columns summary,.faq-columns details[open] summary{font-size:15px;padding:18px 20px;min-height:60px}
.faq-columns details p{font-size:15px;padding:0 20px 20px}
.reference-cta{margin:0 0 34px;padding:30px 22px}
.suite-footer{padding:28px 0;gap:22px}
.suite-footer nav{font-size:13px;gap:20px}
.footer-contact{justify-content:center;gap:16px;padding-top:22px;white-space:normal;text-align:center}
.social-marks{margin:0}
}
@media(max-width:400px){.how-card{grid-template-columns:1fr;gap:12px}.step-art{width:130px;height:120px;justify-self:center}.step-copy h3{font-size:23px}.lower-heading .suite-title,.inline-faq .suite-title{font-size:29px}}

/* Compact horizontal benefit cards, matching the approved family reference. */
.learning-section{padding-top:45px;padding-bottom:55px}
.learning-heading{margin-bottom:34px}
.discovery-card{display:grid;grid-template-columns:56% 44%;min-height:370px;overflow:clip;border-radius:32px}
.discovery-copy{padding:30px 0 28px 30px;display:block}
.discovery-copy .pill{font-size:10px;letter-spacing:1px;padding:7px 12px;margin-bottom:20px}
.discovery-copy h3{font-size:29px;line-height:1.15;margin-bottom:19px}
.discovery-copy>p:not(.pill){font-size:15.5px;line-height:1.65;margin-bottom:22px}
.discovery-copy .discovery-caption{font-size:12px;line-height:1.55;margin-top:0}
.discovery-link{font-size:15px}
.discovery-visual{position:relative;align-self:stretch;width:auto;height:auto;overflow:visible;margin:0}
.discovery-scene{position:absolute;bottom:0;right:22px;width:calc(100% - 40px);height:275px;aspect-ratio:auto;object-fit:cover;object-position:center;border-radius:150px 150px 0 0}
.discovery-family .discovery-scene{height:310px;object-position:60% center}
.discovery-exercises .discovery-scene{object-position:55% center}
.discovery-levels .discovery-scene,.discovery-parents .discovery-scene{height:235px;right:12px;width:calc(100% - 25px);border-radius:100px 100px 0 0}
.discovery-spark,.discovery-family .discovery-spark,.discovery-levels .discovery-spark,.discovery-parents .discovery-spark{left:8px;top:26px;font-size:43px}
.discovery-family .discovery-spark{font-size:55px;top:22px}
@media(max-width:800px){
.discovery-card{min-height:340px;grid-template-columns:56% 44%}
.discovery-copy{padding:28px 0 26px 26px}
.discovery-copy h3{font-size:28px}
.discovery-scene{height:270px}
.discovery-family .discovery-scene{height:290px}
}
@media(max-width:480px){
.learning-section{padding-top:35px;padding-bottom:40px}
.discovery-card{display:grid;grid-template-columns:60% 40%;min-height:315px;border-radius:25px}
.discovery-copy{padding:23px 0 23px 20px}
.discovery-copy .pill{font-size:8px;letter-spacing:.5px;padding:6px 9px;margin-bottom:16px}
.discovery-copy h3{font-size:22px;line-height:1.15;margin-bottom:14px}
.discovery-copy>p:not(.pill){font-size:13px;line-height:1.55;margin-bottom:16px}
.discovery-copy .discovery-caption{font-size:10px;line-height:1.5}
.discovery-link{font-size:12px;gap:8px}
.discovery-scene,.discovery-family .discovery-scene{right:8px;width:calc(100% - 17px);height:220px;border-radius:90px 90px 0 0}
.discovery-levels .discovery-scene,.discovery-parents .discovery-scene{right:5px;width:calc(100% - 10px);height:160px;object-fit:cover}
.discovery-spark,.discovery-family .discovery-spark,.discovery-levels .discovery-spark,.discovery-parents .discovery-spark{left:12px;top:28px;font-size:35px}
}

/* A dedicated mobile composition, using the original mascot and real app screen. */
.cta-mobile-visual{display:none}
@media(max-width:800px){
.reference-cta{display:flex;flex-direction:column;align-items:center;gap:0;padding:32px 20px 26px;overflow:clip;border-radius:28px;isolation:isolate;background:radial-gradient(ellipse at 0 50%,#fff2d5aa,transparent 60%),linear-gradient(145deg,#eeedff,#eff8ff 55%,#e1f7ee)}
.reference-cta .cta-copy{position:relative;inset:auto;width:100%;max-width:460px;order:0}
.reference-cta .cta-copy h2{font-size:clamp(26px,6.8vw,36px);line-height:1.12;letter-spacing:-.6px;margin:0 0 16px;text-wrap:balance}
.reference-cta .cta-copy p{font-size:15px;line-height:1.65;margin:0 auto;max-width:410px}
.cta-mobile-visual{display:block;position:relative;width:min(100%,340px);aspect-ratio:340/255;order:1;margin:22px 0 14px}
.cta-mobile-halo{position:absolute;inset:18% 0 0;border-radius:50%;background:radial-gradient(ellipse,#cbd9ff99,transparent 70%)}
.reference-cta .cta-mascot{display:block;position:absolute;left:-5%;bottom:0;width:69%;height:auto;aspect-ratio:1;object-fit:contain;margin:0;z-index:2;filter:drop-shadow(0 9px 10px #48518b16)}
.cta-mobile-phone{position:absolute;right:7%;top:0;width:34%;aspect-ratio:1320/2868;padding:4px;border-radius:20px;background:#252435;transform:rotate(8deg);box-shadow:5px 12px 20px #20244b26;overflow:hidden}
.cta-mobile-phone img{display:block;width:100%;height:100%;object-fit:cover;border-radius:16px}
.cta-mobile-phone:after{content:'';position:absolute;top:3%;left:35%;width:30%;height:3%;border-radius:20px;background:#111}
.cta-mobile-spark{position:absolute;left:7%;top:8%;font-size:35px;color:#ecb821;transform:rotate(-12deg)}
.reference-cta .cta-promises{display:flex;position:static;order:2;flex-wrap:wrap;justify-content:center;gap:7px 14px;transform:none;font-family:inherit;font-size:12px;font-weight:700;line-height:1.5;margin:0 0 22px;color:#4d4967}
.reference-cta .cta-promises p{margin:0;white-space:nowrap}
.reference-cta .cta-promises span{font-size:15px;margin-right:4px;color:#17a77e}
.reference-cta .cta-stores{position:static;order:3;width:100%;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px}
.reference-cta .cta-store{position:static;flex:none;height:44px;width:auto;border-radius:7px;background-size:contain;background-position:center}
.reference-cta .cta-apple{aspect-ratio:126.50751/40}
.reference-cta .cta-google{aspect-ratio:238.96/70.87}
}
@media(max-width:360px){
.reference-cta{padding:28px 16px 24px}
.reference-cta .cta-copy p{font-size:14px}
.reference-cta .cta-store{height:38px}
.reference-cta .cta-stores{gap:8px}
.reference-cta .cta-promises{font-size:11px;gap:5px 10px}
}

/* Reuse the exact desktop banner artwork on small screens. */
@media(max-width:800px){
.cta-mobile-visual{width:100%;max-width:535px;aspect-ratio:535/224;margin:24px 0 18px;overflow:clip;border-radius:18px;flex:none}
.cta-original-mobile{position:absolute;left:0;top:0;width:535px;height:224px;overflow:hidden;background:url('assets/calmenta-suite.webp') -28px -722px/1536px 1024px no-repeat;transform:scale(var(--cta-mobile-art-scale,1));transform-origin:top left;mask-image:linear-gradient(90deg,#000 92%,transparent)}
.cta-original-mobile .authentic-layer{left:-28px;top:-722px}
.reference-cta .cta-promises{font-family:'Nunito',sans-serif;font-weight:800}
}

/* One identical desktop composition, uniformly scaled on mobile. */
.cta-banner-frame{display:contents}
@media(max-width:800px){
.cta-banner-frame{display:block;position:relative;width:100%;aspect-ratio:1456/224;margin:0 0 34px}
.cta-banner-frame .reference-cta{display:block;position:absolute;left:0;top:0;width:1456px;height:224px;min-height:0;aspect-ratio:auto;margin:0;padding:0;border-radius:36px;overflow:hidden;transform:scale(var(--cta-banner-scale,1));transform-origin:top left;text-align:left;background:radial-gradient(ellipse at 15% 15%,#e6f1ff,transparent 46%),radial-gradient(ellipse at 100% 70%,#fff4d7,transparent 38%),linear-gradient(110deg,#f0eaff,#edfdf8 58%,#edf5ff)}
.cta-banner-frame .cta-art{display:block;position:absolute;left:0;top:0;right:auto;bottom:0;width:535px;height:224px;background:url('assets/calmenta-suite.webp') -28px -722px/1536px 1024px no-repeat;mask-image:linear-gradient(90deg,#000 92%,transparent)}
.cta-banner-frame .cta-copy{display:block;position:absolute;left:515px;top:10px;width:615px;max-width:none;text-align:center;z-index:1}
.cta-banner-frame .cta-copy h2{font-family:'Fredoka',sans-serif;font-weight:600;font-size:44px;line-height:1.02;letter-spacing:-1.1px;margin:0 0 8px;color:var(--navy);text-wrap:wrap}
.cta-banner-frame .cta-copy h2 span{color:var(--purple)}
.cta-banner-frame .cta-copy h2 span:after{display:none}
.cta-banner-frame .cta-copy h2:after{content:'';display:block;width:255px;height:7px;background:#ffda39;border-radius:70% 35%;margin:0 auto;transform:translateX(45px) rotate(-2deg)}
.cta-banner-frame .cta-copy p{font-size:15px;line-height:20px;letter-spacing:0;color:var(--ink);margin:0 auto;max-width:610px}
.cta-banner-frame .cta-stores{position:absolute;left:590px;top:166px;width:auto;display:flex;align-items:center;gap:18px;z-index:2}
.cta-banner-frame .cta-store{position:static;top:auto;left:auto;height:51px;background-size:contain;background-position:center;background-repeat:no-repeat;aspect-ratio:auto}
.cta-banner-frame .cta-apple{width:161px}.cta-banner-frame .cta-google{width:172px}
.cta-banner-frame .cta-promises{display:block;position:absolute;left:1153px;top:25px;z-index:1;transform:rotate(-8deg);font-family:'Nunito',sans-serif;font-size:21px;font-weight:800;line-height:1.25;color:var(--navy);margin:0}
.cta-banner-frame .cta-promises p{margin:0 0 4px;white-space:nowrap}
.cta-banner-frame .cta-promises span{display:inline-block;color:#9564ff;font-size:28px;line-height:1;vertical-align:-2px;margin-right:7px}
.cta-banner-frame .cta-promises p:nth-child(2) span{color:#fa65a8}.cta-banner-frame .cta-promises p:nth-child(3) span{color:#ff8b82}
.cta-banner-frame .cta-books{display:block;position:absolute;right:0;bottom:0;width:270px;height:125px;background:url('assets/calmenta-suite.webp') -1238px -821px/1536px 1024px no-repeat;mask-image:linear-gradient(90deg,transparent,#000 22px),linear-gradient(180deg,transparent,#000 25px);mask-composite:intersect}
.cta-banner-frame .cta-star{display:block;position:absolute;right:30px;top:17px;color:#ffcc31;font-size:70px;line-height:1;transform:rotate(12deg)}
}

/* Taller mobile banner retaining the original desktop artwork. */
@media(max-width:800px){
.cta-banner-frame{aspect-ratio:auto;height:auto;margin-bottom:34px}
.cta-banner-frame .reference-cta{position:relative;inset:auto;width:100%;height:auto;min-height:430px;transform:none;padding:28px 20px 24px;border-radius:28px;display:flex;flex-direction:column;align-items:center;text-align:center}
.cta-banner-frame .cta-copy{position:relative;inset:auto;width:100%;max-width:460px;order:0}
.cta-banner-frame .cta-copy h2{font-size:30px;line-height:1.12;letter-spacing:-.6px;margin:0 0 16px}
.cta-banner-frame .cta-copy h2:after{width:165px;height:6px;transform:translateX(22px) rotate(-2deg);margin-top:5px}
.cta-banner-frame .cta-copy p{font-size:14px;line-height:1.6;max-width:400px}
.cta-banner-frame .cta-art{position:relative;inset:auto;flex:none;order:1;width:535px;height:224px;margin:20px 0 calc(224px * (var(--cta-original-scale, .58) - 1) + 14px);transform:scale(var(--cta-original-scale,.58));transform-origin:top center;mask-image:linear-gradient(90deg,#000 92%,transparent)}
.cta-banner-frame .cta-promises{position:relative;inset:auto;order:2;display:flex;justify-content:center;flex-wrap:wrap;gap:6px 12px;transform:none;font-family:'Nunito',sans-serif;font-size:12px;line-height:1.5;margin:0 0 20px}
.cta-banner-frame .cta-promises p{margin:0}
.cta-banner-frame .cta-promises span{font-size:16px;margin-right:4px;vertical-align:0}
.cta-banner-frame .cta-stores{position:relative;inset:auto;order:3;width:100%;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px}
.cta-banner-frame .cta-store{height:43px;width:auto;flex:none}
.cta-banner-frame .cta-apple{aspect-ratio:126.50751/40}
.cta-banner-frame .cta-google{aspect-ratio:238.96/70.87}
.cta-banner-frame .cta-books,.cta-banner-frame .cta-star{display:none}
}
@media(max-width:360px){
.cta-banner-frame .reference-cta{padding:25px 16px 22px}
.cta-banner-frame .cta-copy h2{font-size:26px}
.cta-banner-frame .cta-store{height:37px}
.cta-banner-frame .cta-stores{gap:8px}
}
