/* Generated by scripts/build-assets.py. Edit the source modules. */
/* Source: fonts.css */
/* Original variable fonts, locally served. Licenses are in fonts/. */
@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/dm-sans-latin.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('fonts/manrope-latin.woff2') format('woff2')}

/* Source: styles.css */
:root{--ink:#26364b;--muted:#5c687a;--line:rgba(90,108,139,.16);--glass:rgba(255,255,255,.52);--blue:#6484bc;--radius:30px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#f3f4f8;color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}body::before{content:'';position:absolute;inset:0 0 auto;height:1030px;background:radial-gradient(ellipse at 78% 18%,#d7dcf6 0,transparent 43%),radial-gradient(ellipse at 17% 49%,#deedf1 0,transparent 50%),linear-gradient(#f2f3f8,#edf1f7 70%,#f3f4f8);z-index:-2}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #47789b;outline-offset:5px}button:disabled{cursor:default}img{max-width:100%;display:block}button[hidden],div[hidden]{display:none!important}.section-wrap{width:min(1160px,calc(100% - 72px));margin-inline:auto}.section-space{padding-top:112px}.glass{background:var(--glass);border:1px solid rgba(255,255,255,.9);box-shadow:inset 0 1px 0 #fff,0 16px 40px -28px rgba(41,59,102,.23);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.ambient{position:absolute;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(40px)}.ambient-one{width:300px;height:300px;background:#d3e9e9;top:370px;right:-130px}.ambient-two{width:270px;height:270px;background:#e3dff0;top:1500px;left:-140px}.site-header{position:relative;z-index:10;padding-top:24px}.nav{max-width:1250px;width:calc(100% - 48px);margin:auto;border-radius:24px;display:flex;justify-content:space-between;align-items:center;padding:14px 20px 14px 23px}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand-name{font-size:13px;line-height:1.5;font-weight:650}.brand-name small{display:block;letter-spacing:2px;font-size:12px;font-weight:500;color:var(--muted)}.nav-links{display:flex;gap:31px;font-size:13px}.nav-links a{transition:color .2s}.nav-links a:hover{color:#577ab3}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:54px;padding:15px 24px;border-radius:100px;font-size:13px;font-weight:600;line-height:1.4;border:0;transition:transform .2s,background .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 8px 16px -8px #273b5460}.button-dark{color:#fff;background:var(--ink)}.button-dark:hover{background:#38506b}.button-small{min-height:42px;padding:11px 19px;font-size:12px}.button span{font-size:20px;line-height:1}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;display:flex;gap:10px;align-items:center;color:#55647b}.status-dot{display:inline-block;width:7px;height:7px;background:#61948b;border-radius:50%;box-shadow:0 0 0 4px #8ab6a91a;flex-shrink:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Manrope',sans-serif}h1{font-size:clamp(52px,5.6vw,77px);line-height:1.12;letter-spacing:-4.2px;font-weight:500;margin:23px 0 25px}h2{font-size:44px;line-height:1.19;letter-spacing:-2px;font-weight:500;margin:17px 0 0}h3{font-weight:650}.serif{font-family:Georgia,'Times New Roman',serif;font-style:italic;letter-spacing:-2.5px;font-weight:400}.gradient-text{background:linear-gradient(100deg,#58718f,#8c83b0);background-clip:text;-webkit-background-clip:text;color:transparent}.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:24px;min-height:660px;padding-top:50px;padding-bottom:40px}.hero-description{max-width:435px;color:var(--muted);font-size:16px;line-height:1.8;margin-bottom:28px}.hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:20px}.text-link{font-size:12px;display:inline-flex;align-items:center;gap:10px;font-weight:550}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.play-small{font-size:12px;width:27px;height:27px;display:grid;place-items:center;border:1px solid #b9c5d3;border-radius:50%;padding-left:2px}.hero-proof{display:flex;gap:15px;align-items:center;margin-top:37px;font-size:12px;line-height:1.5}.hero-proof strong{font-weight:600}.hero-proof small{color:var(--muted);font-size:12px}.stars{font-size:13px;color:#7b879f;letter-spacing:2px}.hero-proof .stars{font-size:12px;letter-spacing:0}.proof-divider{height:30px;width:1px;background:var(--line);margin:0 3px}.hero-visual{height:535px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate}.portrait{width:330px;height:424px;position:relative;border-radius:170px 170px 35px 35px;padding:8px;overflow:hidden;transform:rotate(3deg);background:#e1e9ef}.portrait>img{width:100%;height:100%;object-fit:cover;object-position:center 27%;border-radius:inherit;filter:saturate(.73);transform:scale(1.025)}.portrait::after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(32,48,67,.47));pointer-events:none}.portrait-caption{position:absolute;bottom:25px;left:28px;right:24px;display:flex;align-items:center;gap:12px;color:white;z-index:1;transform:rotate(-3deg)}.portrait-caption strong{display:block;font-size:14px}.portrait-caption small{font-size:12px;color:#f4f6fa}.portrait-caption .status-dot{background:#c9ece2}.wave{font-size:35px;margin-left:auto;color:#dbf0e8}.orbit{position:absolute;border:1px solid rgba(132,151,180,.17);border-radius:50%;z-index:-1}.orbit-one{width:480px;height:480px}.orbit-two{width:530px;height:390px;transform:rotate(-35deg)}.floating-bubble{position:absolute;top:42px;left:-4px;display:flex;align-items:center;gap:10px;padding:13px 18px;border-radius:20px;font-size:12px;line-height:1.6;transform:rotate(-5deg);z-index:2;background:rgba(255,255,255,.7)}.bubble-icon{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#e7eef8;font-size:21px}.floating-bubble strong{font-weight:600}.mini-card{position:absolute;right:-10px;bottom:25px;width:205px;padding:23px;border-radius:24px;transform:rotate(7deg);z-index:2;background:rgba(249,250,255,.75)}.mini-label{font-size:12px;letter-spacing:1.6px;font-weight:700;color:#66778e}.mini-title{font-family:'Manrope',sans-serif;font-size:28px;letter-spacing:-1px;line-height:1.1;margin:19px 0}.mini-title em{font-family:Georgia,serif;color:#7982a2;font-weight:400}.mini-line{display:block;height:1px;background:var(--line);margin-bottom:13px}.mini-footer{font-size:12px;display:flex;justify-content:space-between;align-items:center}.mini-footer span{font-size:22px;color:#8b9dbe}.visual-spark{position:absolute;right:29px;top:34px;font-size:47px;font-weight:200;color:#8e9cbb}.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 10px;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#637084;letter-spacing:.2px}.trust-strip span:nth-child(even){font-size:19px;color:#929fb4}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:40px}.section-heading>p{max-width:350px;font-size:14px;color:var(--muted);margin-bottom:3px;line-height:1.8}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.method-card{border-radius:var(--radius);padding:29px 29px 28px}.card-number{font-size:12px;letter-spacing:1.5px;color:#69768c;font-weight:650}.method-card h3{font-size:18px;letter-spacing:-.5px;margin-bottom:12px}.method-card p{font-size:13px;color:var(--muted);line-height:1.8;margin:0}.method-art{height:147px;position:relative;display:flex;align-items:center;justify-content:center;margin:12px 0}.conversation-art{flex-direction:column;gap:10px}.conversation-art>span{background:#edf0f8;border:1px solid #fff;border-radius:14px 14px 14px 3px;font-size:12px;padding:10px 15px;align-self:flex-start;margin-left:10px;transform:rotate(-5deg)}.conversation-art>span+span{align-self:flex-end;margin-right:10px;background:#ddeae8;border-radius:14px 14px 3px 14px;transform:rotate(4deg)}.conversation-art i{color:#76a097;font-style:normal;font-size:19px;margin-left:12px}.explore-art>span{position:absolute;padding:11px 18px;background:#e2e8f5;border:1px solid #fff;border-radius:11px;box-shadow:0 6px 15px #2b385310;font-size:14px}.explore-art>span:nth-child(1){transform:translate(-52px,-17px) rotate(-14deg);background:#eee7f5}.explore-art>span:nth-child(2){transform:translate(14px,15px) rotate(9deg);z-index:1;background:#dfebe8}.explore-art>span:nth-child(3){transform:translate(61px,-34px) rotate(16deg)}.explore-art i{font-style:normal;font-size:27px;color:#8d9bb7;position:absolute;left:30px;bottom:12px}.progress-art{align-items:flex-end;gap:10px;padding:30px 35px}.progress-art>span{width:35px;border-radius:8px 8px 3px 3px;background:#dde6f1;border:1px solid white;height:23px}.progress-art>span:nth-child(2){height:39px;background:#cbdce8}.progress-art>span:nth-child(3){height:60px;background:#b8cddd}.progress-art>span:nth-child(4){height:80px;background:#9ebacb}.progress-art i{position:absolute;left:12px;top:16px;font-size:12px;font-style:normal;transform:rotate(-7deg);color:#637889}.practice-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.practice-copy h2{font-size:42px;margin-bottom:24px}.practice-copy>p{max-width:375px;font-size:14px;color:var(--muted)}.practice-copy .practice-note{font-size:12px;display:flex;gap:10px;align-items:flex-start;margin-top:28px;max-width:305px}.practice-note span{font-size:24px;line-height:1;color:#8ba1bc}.practice{border-radius:32px;padding:30px;background:linear-gradient(140deg,#ffffffb0,#e8edf780);position:relative;box-shadow:inset 0 1px 0 white,0 25px 70px -45px #51639380}.practice-top{display:flex;justify-content:space-between;align-items:center}.level-label{font-size:12px;padding:4px 9px;border-radius:12px;background:#dfe8ec;color:#536b78}.topics{display:flex;gap:7px;margin:24px 0 25px;flex-wrap:wrap}.topic{background:transparent;border:1px solid #d3dce6;border-radius:30px;padding:7px 13px;font-size:12px;color:#667387;transition:all .2s}.topic.active{background:#fff;border-color:#fff;color:#27394e;box-shadow:0 3px 12px #344b7410}.question-area{min-height:184px}.question-index{font-size:12px;letter-spacing:2px;color:#8693a7}.question-area h3{font-size:25px;line-height:1.4;letter-spacing:-.7px;font-weight:500;margin:11px 0}.question-area>p{font-size:12px;color:var(--muted)}.hint{background:#ffffff80;border:1px solid white;padding:14px 16px;border-radius:15px;margin-bottom:18px}.hint>span{font-size:12px;letter-spacing:1.2px;color:#687a91}.hint>p{font-size:13px;margin:6px 0 0;color:#496077}.practice-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:22px}.text-button{padding:6px 0;background:none;border:0;font-size:12px;color:#53677f}.text-button span{margin-left:6px}.about-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.video-card{border-radius:32px;padding:9px;position:relative}.video-launch{display:block;width:100%;height:415px;border:0;border-radius:24px;overflow:hidden;position:relative;padding:0;text-align:left;background:#dbe4ee}.video-launch>img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:saturate(.6)}.video-shade{position:absolute;inset:0;background:linear-gradient(0deg,#26364bcc,transparent 70%)}.video-badge{position:absolute;top:22px;left:22px;padding:7px 12px;border-radius:30px;color:#26364b;font-size:12px;letter-spacing:1.4px;font-weight:650}.play-large{position:absolute;top:42%;left:calc(50% - 31px);width:62px;height:62px;border-radius:50%;background:#ffffff45;backdrop-filter:blur(10px);border:1px solid #ffffffb0;color:white;display:grid;place-items:center;font-size:17px;padding-left:3px;transition:transform .2s}.video-launch:hover .play-large{transform:scale(1.12)}.video-title{position:absolute;left:30px;bottom:27px;color:white;font-size:34px;font-family:'Manrope',sans-serif;line-height:1.1;letter-spacing:-1px}.video-title em{font-family:Georgia,serif;font-weight:400}.video-notice{text-align:center;font-size:12px;color:#66758c;margin:10px 5px 3px}#video-container{height:415px;background:#1f2937;border-radius:24px;overflow:hidden}#video-container iframe{border:0;width:100%;height:100%}.about-copy h2{margin-bottom:26px}.about-copy>p{font-size:14px;color:var(--muted);line-height:1.85}.about-detail{border-top:1px solid var(--line);padding-top:20px;display:flex;gap:18px;margin-top:25px}.about-detail>span{font-size:25px;color:#8099b0}.about-detail p{font-size:12px;color:var(--muted);margin:0}.about-detail strong{color:var(--ink);font-weight:600}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review-card{border-radius:26px;padding:29px;display:flex;flex-direction:column}.review-card>.stars{font-size:12px;color:#7f8ea8}.review-card h3{font-size:17px;margin:22px 0 12px;letter-spacing:-.5px}.review-card>p{font-size:13px;line-height:1.8;color:var(--muted);flex:1}.review-person{display:flex;gap:12px;align-items:center;margin-top:15px}.review-person>span{width:34px;height:34px;background:#e1e7f0;display:grid;place-items:center;border-radius:50%;font-family:Georgia,serif;font-size:15px;color:#748098}.review-card:nth-child(2) .review-person>span{background:#dfeae6;color:#6d8a7f}.review-card:nth-child(3) .review-person>span{background:#e9e3ef;color:#897393}.review-person strong{display:block;font-size:12px;font-weight:650}.review-person small{font-size:12px;color:var(--muted)}.source-note{font-size:12px;color:#768296;margin-top:17px}.faq-section{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.faq-section h2{font-size:40px}.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}.faq-list details:first-child{padding-top:7px}.faq-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;font-weight:550}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:22px;font-weight:400;color:#7e8ca2;transition:transform .2s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details p{font-size:13px;line-height:1.8;color:var(--muted);margin:15px 28px 0 0}.contact-section{padding-top:110px}.contact{position:relative;overflow:hidden;text-align:center;border-radius:38px;padding:65px 35px;background:radial-gradient(ellipse at 80% 20%,#dde3f4c9,transparent 60%),radial-gradient(ellipse at 10% 90%,#d9eae780,transparent 60%),#ffffff80}.contact .eyebrow{justify-content:center;font-size:12px}.contact h2{font-size:48px;position:relative;z-index:1;margin:21px 0}.contact p{font-size:14px;color:var(--muted)}.contact .button{margin-top:6px}.contact>small{display:block;font-size:12px;color:var(--muted);margin-top:15px}.contact-decoration{position:absolute;right:-25px;top:65px;font-size:240px;line-height:1;color:#8fa0c015;transform:rotate(15deg);pointer-events:none}footer{display:flex;align-items:center;justify-content:space-between;padding:45px 0 40px;gap:20px}footer>p{font-size:12px;color:#7d8798;margin:0}footer>span{font-size:12px;color:#7d8798}.skip{position:fixed;top:-100px;left:20px;background:#26364b;color:white;z-index:100;padding:10px 20px;border-radius:8px}.skip:focus{top:15px}
@media(min-width:1250px){.hero-actions{flex-direction:row;align-items:center;gap:18px}.hero-actions>.button{padding:17px 20px;font-size:12px;gap:16px}.hero-actions>.text-link{font-size:12px;gap:7px}.hero-actions .play-small{width:23px;height:23px}.hero-visual{margin-left:25px}}
@media(max-width:1000px){.section-wrap{width:calc(100% - 48px)}h1{font-size:58px;letter-spacing:-3px}.hero{gap:15px;min-height:610px}.hero-visual{height:480px}.portrait{width:285px;height:390px}.mini-card{width:170px;right:-5px;bottom:5px;padding:20px}.mini-title{font-size:24px}.floating-bubble{left:-5px;top:22px;padding:12px;font-size:12px}.orbit-one{width:380px;height:380px}.orbit-two{width:420px;height:330px}.visual-spark{right:10px}.method-card,.review-card{padding:24px 20px}.practice-section,.about-section{gap:42px}.section-heading{gap:30px}.practice-copy h2{font-size:36px}h2{font-size:38px}.method-card h3{font-size:16px}.practice{padding:25px}.practice-actions .button{gap:8px;padding:10px 14px}.about-section .video-launch,#video-container{height:390px}.faq-section{gap:40px}.nav-links{gap:22px}}
@media(max-width:760px){html{scroll-padding-top:25px}.site-header{padding-top:14px}.nav{width:calc(100% - 28px);padding:12px 15px;border-radius:21px}.nav-links{display:none}.nav .brand-name{font-size:12px}.nav .brand-name small{font-size:12px;letter-spacing:1.5px}.nav .button{font-size:12px;min-height:38px;padding:10px 15px;gap:12px}.section-wrap{width:calc(100% - 40px)}.hero{grid-template-columns:1fr;padding-top:49px;gap:10px;padding-bottom:30px;min-height:0}.hero-copy{max-width:540px}.eyebrow{font-size:12px;letter-spacing:1.7px}h1{font-size:59px;line-height:1.1;letter-spacing:-3.5px;margin:23px 0 24px}.hero-description{font-size:14px;max-width:360px}.hero-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:17px}.hero-actions>.button{font-size:12px;gap:20px}.hero-actions>.text-link{font-size:12px}.hero-proof{margin-top:27px;gap:13px}.hero-visual{height:470px;width:min(440px,100%);margin:auto}.portrait{width:285px;height:370px}.floating-bubble{top:32px;left:0;font-size:12px}.mini-card{right:0;bottom:20px;width:170px}.visual-spark{right:15px;top:28px;font-size:38px}.orbit-one{width:360px;height:360px;max-width:100%}.orbit-two{width:390px;height:310px;max-width:110%}.trust-strip{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;font-size:12px;padding:20px 0;text-align:center}.trust-strip span:nth-child(even){display:none}.section-space{padding-top:73px}.section-heading{display:block;margin-bottom:27px}h2{font-size:36px;letter-spacing:-1.7px}.serif{letter-spacing:-1.7px}.section-heading>p{margin:20px 0 0;font-size:13px;max-width:380px}.method-grid{grid-template-columns:1fr;gap:14px}.method-card{padding:25px;display:grid;grid-template-columns:1fr 115px;column-gap:10px}.card-number{grid-column:1}.method-art{grid-column:2;grid-row:1/4;height:120px;margin:0;align-self:center}.method-card h3{font-size:18px;grid-column:1;margin-top:17px}.method-card p{font-size:12px;grid-column:1}.conversation-art>span{font-size:12px;padding:8px;margin:0!important}.conversation-art i{font-size:13px;margin-left:4px}.explore-art>span{font-size:12px;padding:9px 12px}.explore-art>span:nth-child(1){transform:translate(-17px,-22px) rotate(-14deg)}.explore-art>span:nth-child(2){transform:translate(-2px,12px) rotate(9deg)}.explore-art>span:nth-child(3){transform:translate(16px,43px) rotate(-4deg)}.explore-art i{display:none}.progress-art{padding:20px 0 15px;gap:5px}.progress-art>span{width:22px}.progress-art i{left:0;top:0;font-size:12px}.practice-section,.about-section,.faq-section{grid-template-columns:1fr;gap:28px}.practice-copy h2{font-size:36px;margin-bottom:18px}.practice-copy>p{font-size:13px;max-width:100%}.practice-copy .practice-note{margin:18px 0 0;max-width:100%}.practice{padding:24px;border-radius:27px}.question-area{min-height:170px}.question-area h3{font-size:24px}.about-section{gap:35px}.about-copy{grid-row:1}.about-copy h2{margin-bottom:20px}.about-copy>p{font-size:13px}.video-card{width:min(440px,100%);margin:auto}.about-section .video-launch,#video-container{height:400px}.reviews-grid{grid-template-columns:1fr;gap:14px}.review-card{padding:26px}.review-card h3{margin-top:15px;font-size:18px}.review-card>p{margin-bottom:5px}.review-person small{font-size:12px}.reviews-section .section-heading>a{margin-top:20px}.source-note{font-size:12px;line-height:1.7}.faq-section h2{font-size:36px}.faq-list summary{font-size:13px}.contact-section{padding-top:70px}.contact{padding:45px 22px;border-radius:28px}.contact h2{font-size:36px}.contact .eyebrow{font-size:12px;letter-spacing:1px}.contact p{font-size:13px}.contact>small{font-size:12px}.contact-decoration{font-size:170px;right:-50px;top:85px}footer{flex-wrap:wrap;padding:30px 0;gap:20px}footer .brand-name{font-size:12px}footer>p{order:3;width:100%;font-size:12px}footer>span{margin-left:auto}}
@media(max-width:370px){h1{font-size:51px}.method-card{grid-template-columns:1fr}.method-art{display:none}.hero-proof{gap:9px}.hero-proof .stars{display:none}.portrait{width:260px}.floating-bubble{font-size:12px}.mini-card{width:150px}.question-area h3{font-size:22px}.practice-actions .button{font-size:12px}.topic{padding:7px 10px}.contact h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Small, tactile movements preserve the original composition. */
.floating-bubble,.mini-card,.method-card,.review-card,.portrait,.practice{transition:translate .45s cubic-bezier(.22,1,.36,1),scale .45s cubic-bezier(.22,1,.36,1),box-shadow .45s,border-color .45s,background .45s}
.method-art>span,.bubble-icon,.mini-footer>span,.visual-spark,.wave{transition:transform .55s cubic-bezier(.22,1,.36,1),translate .55s cubic-bezier(.22,1,.36,1)}
.floating-bubble,.mini-card{overflow:hidden}
.floating-bubble::after,.mini-card::after{content:'';position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 35%,#ffffff70 49%,transparent 62%);translate:-85% 0;opacity:0;pointer-events:none;transition:translate .85s ease,opacity .3s}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .floating-bubble:hover,.mini-card:hover{translate:0 -8px;scale:1.035;box-shadow:inset 0 1px 0 #fff,0 22px 35px -20px #53658155;background:rgba(255,255,255,.83)}
 .floating-bubble:hover::after,.mini-card:hover::after{translate:75% 0;opacity:1}
 .floating-bubble:hover .bubble-icon{transform:rotate(12deg)}
 .mini-card:hover .mini-footer>span{transform:rotate(90deg)}
 .method-card:hover,.review-card:hover{translate:0 -6px;box-shadow:inset 0 1px 0 #fff,0 24px 42px -25px #53658140;border-color:#fff}
 .method-card:hover .conversation-art>span:first-child{translate:-3px -4px}
 .method-card:hover .conversation-art>span+span{translate:4px 3px}
 .method-card:hover .explore-art>span:nth-child(1){translate:-5px -6px}
 .method-card:hover .explore-art>span:nth-child(2){translate:0 5px}
 .method-card:hover .explore-art>span:nth-child(3){translate:5px -3px}
 .method-card:hover .progress-art>span{translate:0 -5px}
 .method-card:hover .progress-art>span:nth-child(2){transition-delay:40ms}
 .method-card:hover .progress-art>span:nth-child(3){transition-delay:80ms}
 .method-card:hover .progress-art>span:nth-child(4){transition-delay:120ms}
 .portrait:hover{translate:0 -5px}
 .portrait:hover .wave{transform:rotate(60deg)}
 .visual-spark:hover{transform:rotate(90deg)}
 .practice:focus-within{box-shadow:inset 0 1px 0 #fff,0 25px 70px -40px #51639365}
}
@media(prefers-reduced-motion:no-preference){
 .hero-copy{animation:hero-arrive .8s both cubic-bezier(.22,1,.36,1)}
 .hero-visual{animation:hero-arrive 1s .1s both cubic-bezier(.22,1,.36,1)}
 .reveal-ready{opacity:0;translate:0 22px;transition:opacity .7s cubic-bezier(.22,1,.36,1),translate .7s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms)}
 .reveal-ready.is-visible{opacity:1;translate:0 0}
 .question-refresh{animation:question-arrive .35s ease both}
}
@keyframes hero-arrive{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}
@keyframes question-arrive{from{opacity:.3;translate:0 6px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;translate:none}.floating-bubble::after,.mini-card::after{display:none}}

/* Source: legal.css */
.legal-page{max-width:860px;padding-top:55px;padding-bottom:70px;overflow-wrap:anywhere}.legal-page h1{font-size:clamp(36px,7vw,62px);letter-spacing:-2px}.legal-page h2{font-size:clamp(25px,4vw,32px);letter-spacing:-1px;margin-top:45px}.legal-page h3{font-size:20px;margin-top:26px}.legal-page p,.legal-page li{color:var(--muted)}.legal-page a,.legal-links a,.privacy-summary a{text-decoration:underline;text-underline-offset:4px}.legal-page section{scroll-margin-top:35px}.legal-links{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:12px;max-width:100%}.privacy-summary{font-size:12px;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}.legal-page dl{line-height:1.7}.legal-page dt{font-weight:700;margin-top:12px}.legal-page dd{margin-left:0;color:var(--muted)}
.site-shell main.legal-page{width:min(860px,calc(100% - 72px))}@media(max-width:1000px){.site-shell main.legal-page{width:calc(100% - 48px)}}@media(max-width:760px){.site-shell main.legal-page{width:calc(100% - 40px)}}.legal-page .legal-links{font-size:16px;gap:4px 16px}

.complaints-qr-figure{margin:16px 0}.complaints-qr-figure .complaints-qr{display:block;width:140px;height:140px;image-rendering:pixelated;background:#fff;margin:0 0 8px}.complaints-qr-figure figcaption{font-size:14px;line-height:1.6}

/* Source: theme.css */
/* Native system preference responds immediately, without cookies or a script. */
:root { color-scheme: light dark; }
.portrait > img { object-position: center 30%; filter: none; }
.video-launch > img { object-position: center 30%; filter: none; }

@media (prefers-color-scheme: dark) {
  :root {
    --ink: #e5ecf8;
    --muted: #b0bbcf;
    --line: rgba(177, 196, 229, .17);
    --glass: rgba(30, 42, 61, .62);
    --blue: #a4bee9;
  }
  body { background: #111824; }
  body::before {
    background: radial-gradient(ellipse at 78% 18%, #29314f 0, transparent 43%),
      radial-gradient(ellipse at 17% 49%, #18303a 0, transparent 50%),
      linear-gradient(#151b2b, #172131 70%, #111824);
  }
  .glass {
    border-color: rgba(210, 225, 255, .14);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 16px 40px -28px #0009;
  }
  .ambient-one { background: #284951; opacity: .4; }
  .ambient-two { background: #393450; opacity: .45; }
  .monogram > span { color: #a0c9c1; }
  .eyebrow, .mini-label, .card-number, .trust-strip,
  .text-button, .question-index, .source-note, .video-notice,
  footer > p, footer > span { color: #adbbd2; }
  .nav-links a:hover { color: #bfd2f4; }
  .gradient-text {
    background-image: linear-gradient(100deg, #a9c8ec, #c7b8e8);
  }
  .button-dark { background: #dbe7f7; color: #1b2c43; }
  .button-dark:hover { background: #edf3ff; }
  .button:hover { box-shadow: 0 8px 18px -8px #0008; }
  button:focus-visible, a:focus-visible, summary:focus-visible {
    outline-color: #b3d9ee;
  }
  .play-small { border-color: #72839d; }
  .stars { color: #b7c8e7; }
  .status-dot { background: #a0d0bd; }
  .portrait { background: #303e53; }
  .portrait-caption { color: #fff; }
  .orbit { border-color: rgba(155, 179, 219, .13); }
  .floating-bubble, .mini-card { background: rgba(34, 47, 68, .78); }
  .bubble-icon { background: #354863; color: #dce9ff; }
  .mini-title em { color: #c0c5e6; }
  .mini-footer > span, .visual-spark { color: #a8bce0; }
  .trust-strip span:nth-child(even) { color: #93a9c9; }
  .conversation-art > span {
    background: #303e59; border-color: #ffffff14; color: #dce7f8;
  }
  .conversation-art > span + span { background: #2d4949; }
  .conversation-art i { color: #a4d2be; }
  .explore-art > span { border-color: #ffffff14; color: #e5ebf8; }
  .explore-art > span:nth-child(1) { background: #443d5c; }
  .explore-art > span:nth-child(2) { background: #2e4948; }
  .explore-art > span:nth-child(3) { background: #354764; }
  .explore-art i { color: #afbfdf; }
  .progress-art > span { background: #35475e; border-color: #ffffff12; }
  .progress-art > span:nth-child(2) { background: #486078; }
  .progress-art > span:nth-child(3) { background: #607d95; }
  .progress-art > span:nth-child(4) { background: #83a4ba; }
  .progress-art i, .practice-note span { color: #b2c5df; }
  .practice {
    background: linear-gradient(140deg, #293750b5, #1c283bba);
    box-shadow: inset 0 1px 0 #ffffff12, 0 25px 70px -45px #000b;
  }
  .level-label { background: #314653; color: #d1e4ed; }
  .topic { border-color: #53647e; color: #b9c7dd; }
  .topic.active { background: #3b506d; border-color: #7188aa; color: #f5f8ff; }
  .topic:hover { border-color: #91a7c9; }
  .hint { background: #ffffff08; border-color: #ffffff16; }
  .hint > span { color: #b2c4dd; }
  .hint > p { color: #d4e3f4; }
  .video-launch { background: #26364b; }
  .video-badge { background: #1d2d45c7; color: #edf3ff; }
  .review-card > .stars { color: #b7c8e7; }
  .review-person > span { background: #34455f; color: #d0ddf4; }
  .review-card:nth-child(2) .review-person > span { background: #2d4641; color: #b9dcd0; }
  .review-card:nth-child(3) .review-person > span { background: #443b57; color: #dfcaec; }
  .faq-list summary > span, .about-detail > span { color: #aabbd5; }
  .contact {
    background: radial-gradient(ellipse at 80% 20%, #343e61a8, transparent 60%),
      radial-gradient(ellipse at 10% 90%, #21414380, transparent 60%), #1c2739b3;
  }
  .contact-decoration { color: #a3b8df12; }
  .skip { color: #172437; background: #e1ecfb; }
  .floating-bubble::after, .mini-card::after {
    background: linear-gradient(110deg, transparent 35%, #ffffff18 49%, transparent 62%);
  }
}

@media (prefers-color-scheme: dark) and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .floating-bubble:hover, .mini-card:hover {
    background: rgba(46, 62, 88, .87);
    box-shadow: inset 0 1px 0 #ffffff1c, 0 22px 35px -20px #000b;
  }
  .method-card:hover, .review-card:hover {
    border-color: #b6d3ff38;
    box-shadow: inset 0 1px 0 #ffffff12, 0 24px 42px -25px #000b;
  }
  .practice:focus-within {
    box-shadow: inset 0 1px 0 #ffffff1c, 0 25px 70px -40px #7396cf55;
  }
}

/* Source: reviews.css */
.reviews-grid {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  padding: 8px 0 14px;
  cursor: grab;
}
.reviews-grid::-webkit-scrollbar { display: none; }
.reviews-grid > .review-card {
  flex: 0 0 calc((100% - 40px) / 3);
  min-width: 0;
  scroll-snap-align: start;
}
.review-quote { margin: 24px 0 0; flex: 1; }
.review-quote p { font-size: 14px; line-height: 1.85; color: var(--muted); margin: 0; }
.review-person { margin-top: 25px; }
.review-person small { display: block; line-height: 1.7; }
.reviews-navigation { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 14px; }
.reviews-instruction { font-size: 12px; color: var(--muted); }
.reviews-controls { display: flex; align-items: center; gap: 10px; }
#reviews-count { font-size: 12px; color: var(--muted); margin-right: 10px; min-width: 53px; }
.review-arrow { width: 42px; height: 42px; display: grid; place-items: center; color: var(--ink); font-size: 20px; border-radius: 50%; transition: translate .2s, opacity .2s; }
.review-arrow:hover:not(:disabled) { translate: 0 -2px; }
.review-arrow:disabled { opacity: .3; }
.reviews-grid.dragging { cursor: grabbing; user-select: none; scroll-snap-type: none; }
@media (max-width: 1000px) and (min-width: 761px) {
  .reviews-grid > .review-card { flex-basis: calc((100% - 20px) / 2); }
}
@media (max-width: 760px) {
  .reviews-grid { gap: 14px; }
  .reviews-grid > .review-card { flex-basis: 88%; }
  .reviews-navigation { gap: 10px; }
  .reviews-instruction { font-size: 12px; max-width: 140px; }
  .reviews-controls { gap: 7px; }
  #reviews-count { margin-right: 2px; font-size: 12px; }
  .review-arrow { width: 37px; height: 37px; }
}

/* Source: improvements.css */
/* Readable small labels, without changing the original visual direction. */
.brand-name small,.nav .brand-name small {font-size:12px;letter-spacing:1.3px}
.eyebrow,.card-number,.mini-label,.mini-footer,.question-index,.hint>span,.video-badge {font-size:12px}
.hero-proof,.hero-proof small,.portrait-caption small,.floating-bubble {font-size:12px}
.review-person strong,.review-person small,.reviews-instruction,#reviews-count,.video-notice,.source-note,footer>p,footer>span,.contact>small {font-size:12px}
.topic,.level-label,.text-button,.practice-copy .practice-note {font-size:13px}
.question-area>p,.hint>p {font-size:15px;line-height:1.7}
.mini-card {width:220px}
.mini-label {letter-spacing:1.1px}
.practice-section {align-items:start;gap:55px}
.practice-copy {padding-top:24px}
.practice-copy .practice-note {max-width:360px}
.sample-steps {display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:30px;font-size:12px;color:var(--muted)}
.practice .question-area {min-height:0}
.practice .question-area h3 {font-size:27px}
.choices {display:grid;gap:9px;margin:22px 0}
.choice {display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--line);border-radius:15px;background:var(--glass);color:var(--ink);padding:13px 15px;font-size:14px;line-height:1.5;min-height:48px}
.choice::before {content:'';width:15px;height:15px;border:1px solid var(--muted);border-radius:50%;flex-shrink:0}
.choice:hover {border-color:var(--blue)}
.choice[aria-pressed=true] {border-color:#6484bc;background:#6484bc16}
.choice[aria-pressed=true]::before {background:var(--blue);box-shadow:inset 0 0 0 3px #fff}
.speaking {padding:20px 0;border-top:1px solid var(--line)}
.speaking>p {font-size:16px;line-height:1.6;margin:10px 0}
.speaking #challenge {font-size:14px;color:var(--muted)}
.teacher-note {margin-top:18px;font-size:13px;color:var(--muted)}
.teacher-note summary {cursor:pointer;font-weight:600;color:var(--ink);padding:8px 0}
.teacher-note p {margin:10px 0 0;line-height:1.8}
.scenario-twist {border-left:3px solid var(--blue);padding:8px 0 8px 15px}
.sample-caption {font-size:12px;color:var(--muted);line-height:1.6;margin:18px 0 0}
.practice-actions .button:disabled {opacity:.5;transform:none;box-shadow:none}
[hidden] {display:none!important}
@media(max-width:1000px) and (min-width:761px){.practice-section{gap:28px}.practice-actions{flex-wrap:wrap}.mini-card{width:185px}.floating-bubble{max-width:250px}}
@media(max-width:760px){.practice-section{gap:24px}.practice-copy{padding-top:0}.mini-card{width:185px}.floating-bubble{font-size:12px;max-width:245px}.sample-steps{margin-top:22px}.practice-actions{flex-wrap:wrap}.practice .question-area h3{font-size:25px}.contact .eyebrow{font-size:12px}.mini-footer{font-size:12px}}
@media(max-width:370px){.mini-card{width:162px;padding:16px}.floating-bubble{max-width:220px}.portrait-caption small{font-size:12px}.practice{padding:20px}.practice-actions .button{font-size:12px}}
@media(prefers-color-scheme:dark){.choice[aria-pressed=true]{border-color:#91acd4;background:#91acd41a}.choice[aria-pressed=true]::before{box-shadow:inset 0 0 0 3px #273750}}

/* Supplied vector identity: preserve each asset's native proportions. */
.brand-logo{display:block;flex-shrink:0;line-height:0}
.brand-logo picture{display:block}
.brand-logo img{width:340px;height:auto;display:block}
footer .brand-logo img{width:320px}
@media(max-width:1000px) and (min-width:761px){.nav .brand-logo img{width:280px}.nav-links{gap:18px}}
@media(max-width:760px){.nav .brand-logo img{width:54px;aspect-ratio:1;object-fit:contain}.nav{padding:10px 15px}.nav .brand-logo{min-width:54px}footer .brand-logo img{width:min(280px,calc(100vw - 100px))}}

/* Vector UI marks inherit the palette; no platform emoji rendering. */
.ui-icon{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex-shrink:0;pointer-events:none}

/* A small invitation to a real class, rather than a course catalogue. */
.sample-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sample-card{display:flex;flex-direction:column;border-radius:30px;padding:28px;transition:translate .2s,border-color .2s}
.sample-card:hover{translate:0 -4px;border-color:var(--blue)}
.sample-card h3{font-size:21px;letter-spacing:-.6px;margin:20px 0 12px}
.sample-card p{font-size:14px;color:var(--muted);line-height:1.8;flex:1}
.sample-card .text-link{margin-top:14px;font-size:13px}
.sample-mark{font-family:Georgia,serif;font-style:italic;font-size:52px;line-height:1;margin-top:28px;color:var(--blue);opacity:.7}
.finder-section{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}
.finder-copy{padding-top:24px}.finder-copy>p{font-size:14px;color:var(--muted);max-width:390px;margin-top:24px}
.finder{border-radius:30px;padding:30px}
.finder-progress{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;color:var(--muted);margin-bottom:24px}
.finder-step{padding:0;border:0;margin:0;min-width:0}
.finder-step legend{font-family:Manrope,sans-serif;font-weight:550;font-size:24px;line-height:1.4;margin-bottom:22px;letter-spacing:-.6px;width:100%}
.finder-options{display:grid;gap:10px}
.finder-option{display:flex;gap:13px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:14px;font-size:14px;cursor:pointer;min-height:52px;line-height:1.6}
.finder-option:has(input:checked){border-color:var(--blue);background:#6484bc12}
.finder-option:focus-within{outline:3px solid var(--blue);outline-offset:3px}
.finder-option input{accent-color:var(--blue);width:18px;height:18px;flex-shrink:0;margin:0}
.finder-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:25px;border-top:1px solid var(--line);padding-top:20px}
.finder-actions .button{margin-left:auto}.finder-actions .button:disabled{opacity:.45;transform:none;box-shadow:none}
.finder-note,.finder-copy>p.finder-note{font-size:12px;color:var(--muted);line-height:1.7}
#finder-result h3{font-size:26px;letter-spacing:-.7px;line-height:1.3;margin:18px 0}
#finder-result>p{font-size:14px;color:var(--muted);line-height:1.8}
#finder-result>.button,#finder-result>.text-link,#finder-result>.text-button{display:flex;width:fit-content;margin-top:18px;text-align:left}
#finder-result>.button{max-width:100%}
.answer-summary{font-size:13px;margin:20px 0;border-block:1px solid var(--line);padding:14px 0}
.answer-summary summary{cursor:pointer;color:var(--ink)}
.answer-summary dt{font-size:12px;letter-spacing:.5px;color:var(--muted);margin-top:12px}
.answer-summary dd{margin:3px 0 0;font-size:13px}
#finder-result .finder-note{font-size:12px;margin-top:24px}
.experience-layout{padding-top:60px;padding-bottom:60px}
.experience-layout .practice-copy>a{margin-bottom:28px}
.share-sample{border-top:1px solid var(--line);margin-top:20px;padding-top:10px}
#share-status{display:block;font-size:12px;color:var(--muted);line-height:1.6}
.sample-invitation{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:40px;border-radius:32px;align-items:center}
.sample-invitation h2{font-size:36px}.sample-invitation p{color:var(--muted);font-size:14px;margin:22px 0 0}
.invitation-actions{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
@media(max-width:1000px){.finder-section{gap:28px}.sample-card{padding:24px 20px}}
@media(max-width:760px){.sample-grid,.finder-section,.sample-invitation{grid-template-columns:1fr}.sample-card{padding:24px}.sample-mark{font-size:38px;margin-top:20px}.sample-card h3{margin-top:16px}.finder-copy{padding-top:0}.finder-copy>p{max-width:none}.finder{padding:24px}.finder-step legend{font-size:23px}.experience-layout{padding-top:32px;padding-bottom:36px}.sample-invitation{padding:28px;gap:28px}.sample-invitation h2{font-size:32px}.sample-invitation .button{font-size:12px}.finder-section{gap:24px}}

.practice-copy .experience-title{font-size:42px;line-height:1.19;letter-spacing:-2px;margin:17px 0 24px;font-weight:500}
@media(max-width:760px){.practice-copy .experience-title{font-size:36px;letter-spacing:-1.7px}}

/* The full identity and all five destinations remain available on mobile. */
.mobile-menu{display:none}
@media(max-width:760px){
 .nav{position:relative;gap:12px;min-height:76px}
 .nav .brand-logo{min-width:0;flex-shrink:1}
 .nav .brand-logo img{width:min(260px,calc(100vw - 124px));height:auto;aspect-ratio:auto}
 .nav>.button{display:none}
 .mobile-menu{display:block;flex-shrink:0}
 .mobile-menu summary{list-style:none;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;cursor:pointer;color:var(--ink);background:var(--glass)}
 .mobile-menu summary::-webkit-details-marker{display:none}
 .mobile-menu summary svg{width:22px;height:22px;grid-area:1/1}
 .mobile-menu .menu-close-icon{display:none}
 .mobile-menu[open] .menu-open-icon{display:none}
 .mobile-menu[open] .menu-close-icon{display:block}
 .mobile-menu-panel{position:absolute;left:0;right:0;top:calc(100% + 10px);border-radius:22px;padding:12px;display:grid;gap:3px;background:#f7f8fc;box-shadow:0 18px 45px -16px #26364b55}
 .mobile-menu-panel a{font-size:15px;line-height:1.5;padding:13px 16px;border-radius:12px;min-height:48px;display:flex;align-items:center}
 .mobile-menu-panel a:hover{background:#6484bc14}
 .mobile-menu-panel .mobile-contact{background:var(--ink);color:#fff;margin-top:6px;justify-content:center}
}
@media(max-width:760px) and (prefers-color-scheme:dark){.mobile-menu-panel{background:#1e2a3d}.mobile-menu-panel .mobile-contact{color:#1b2c43}}

@media(max-width:760px) and (prefers-reduced-motion:no-preference){
 .mobile-menu-panel{transform-origin:top right;will-change:transform,opacity}
}

/* Restrained movement follows the same rhythm across the whole site. */
@media(prefers-reduced-motion:no-preference){
 .hero-copy{animation:hero-arrive 1.1s both cubic-bezier(.22,1,.36,1)}
 .hero-visual{animation:hero-arrive 1.35s .12s both cubic-bezier(.22,1,.36,1)}
 .sample-card{transition:translate .45s cubic-bezier(.22,1,.36,1),box-shadow .45s,border-color .45s}
 .sample-card:hover{box-shadow:0 24px 45px -26px #51639360;translate:0 -6px}
 .finder-option{transition:background .25s,border-color .25s,translate .25s}
 .finder-option:has(input:checked){translate:3px 0}
 .button:active{transform:translateY(0) scale(.98)}
 .mobile-menu summary{transition:background .25s,border-color .25s}
 .mobile-menu[open] summary{background:#6484bc18;border-color:var(--blue)}
 .mobile-menu-panel{overflow:hidden;will-change:clip-path,transform}
 .mobile-menu-panel a{transition:background .2s,color .2s}
}

@media(prefers-reduced-motion:no-preference){.hero-visual{transform:translate3d(0,var(--hero-drift,0px),0)}}

/* Keep intrinsic form/carousel widths inside the layout, including iOS focus. */
html{width:100%;max-width:100%;overflow-x:hidden}
body{width:100%;max-width:100%;min-width:0;overflow-x:hidden}
/* A normal block clips actual descendants, independently of root overflow handling.
   Absolute decorations and transforms must never enlarge the document viewport. */
.site-shell{position:relative;isolation:isolate;width:100%;max-width:100%;min-width:0;overflow:hidden;contain:inline-size}
.site-shell main,.site-shell .site-header{width:100%;max-width:100%;min-width:0}
.hero-copy,.hero-visual,.method-grid,.method-card,.method-art,.about-copy,.video-card,
.practice-section>*,.about-section>*,.faq-section>*,.section-heading>*{min-width:0}
.button{max-width:100%;white-space:normal}
.section-heading,.hero-proof,.eyebrow{overflow-wrap:anywhere}
main,.section-wrap,.section-wrap>*,.finder,.finder-copy,.finder-options,.finder-option,
.contact-intro,.contact-composer,.faq-list,.review-card,.sample-card{min-width:0}
.finder-section,.sample-invitation{grid-template-columns:repeat(2,minmax(0,1fr))}
.reviews-grid{width:100%;max-width:100%;min-width:0;contain:inline-size;overscroll-behavior-x:contain}
.finder form,.finder fieldset,.finder legend,#finder-result{min-width:0;max-width:100%}
.finder-option span,.answer-summary dd,.review-quote p{overflow-wrap:anywhere;min-width:0}
.finder-actions,.reviews-navigation{flex-wrap:wrap}
#finder-result>.text-link,#finder-result>.text-button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.contact-composer a,.contact-intro a{overflow-wrap:anywhere;max-width:100%}
@media(max-width:760px){
 .hero,.method-grid,.practice-section,.about-section,.faq-section{grid-template-columns:minmax(0,1fr)}
 .method-card{grid-template-columns:minmax(0,1fr) 115px}
 .finder-section,.sample-invitation{grid-template-columns:minmax(0,1fr)}
 .reviews-controls{flex-shrink:0}
 .finder-actions .button{min-width:0;max-width:100%}
}
@media(max-width:370px){.method-card{grid-template-columns:minmax(0,1fr)}}
#result-copy-text{width:100%;max-width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--glass);color:var(--ink);font:inherit;font-size:16px;padding:12px;margin-top:16px;resize:vertical}

/* Móvil: la tarjeta «Let’s talk about…» baja bajo el retrato para no tapar el pie de foto. */
@media(max-width:760px){.hero-visual{height:570px;align-items:flex-start}.portrait{margin-top:24px}.mini-card{bottom:0}}

/* Source: class-contact.css */
.class-fit{border-radius:var(--radius);padding:30px 36px;margin-bottom:20px}
.class-fit h3,.practical-faq h3{font-size:22px;letter-spacing:-.6px}
.class-fit ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-left:20px;margin:22px 0}
.class-fit li{padding-left:4px;line-height:1.8}
.class-fit p,.class-steps p,.reviews-context{font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:0}
.class-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.class-steps li{padding:28px;border-radius:var(--radius)}
.class-steps h3{font-size:20px;letter-spacing:-.5px;line-height:1.5;margin:20px 0 12px}
.class-next{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}
.reviews-context{max-width:700px;margin:-12px 0 26px}
.practical-faq{padding-top:32px;display:grid;grid-template-columns:1fr 1.35fr;gap:60px}
.guided-contact{display:grid;grid-template-columns:1fr 1fr;gap:48px;text-align:left;padding:48px}
.guided-contact h2{font-size:40px;margin-bottom:24px}
.guided-contact p{font-size:15px;line-height:1.8;max-width:none}
.guided-contact .contact-expectation,.guided-contact .contact-alternative{font-size:13px;color:var(--muted)}
.contact-alternative{margin-top:26px}
.contact-composer{min-width:0;align-self:center}
.contact-composer label{display:block;font-size:14px;font-weight:600;margin-bottom:9px}
.contact-composer label span{font-size:12px;font-weight:400;color:var(--muted)}
.contact-composer input,.contact-composer textarea{display:block;width:100%;min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--glass);color:var(--ink);font:inherit;font-size:14px;line-height:1.6;padding:13px 15px;margin-bottom:20px}
.contact-composer textarea{resize:vertical}
.contact-composer input::placeholder,.contact-composer textarea::placeholder{color:var(--muted);opacity:1}
.contact-composer input:focus-visible,.contact-composer textarea:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.guided-contact .composer-note{font-size:12px;color:var(--muted);margin:16px 0 0;line-height:1.7}
.draft-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.contact-extra{margin:0 0 20px;font-size:13px}
.contact-extra summary{cursor:pointer;padding:8px 0;color:var(--muted)}
.contact-extra label{margin-top:14px}
.contact-extra textarea{margin-bottom:0}
.class-steps li{padding:22px 24px}
.class-steps h3{margin:12px 0 8px}
.classes-section .section-heading{margin-bottom:26px}
#contact-preview{font-size:13px}
#contact-draft h3{font-size:22px;line-height:1.4}
@media(max-width:1000px){.guided-contact{gap:28px;padding:32px}.class-fit ul{gap:20px}.class-steps li{padding:24px}.practical-faq{gap:28px}}
@media(max-width:760px){.class-fit ul,.class-steps,.guided-contact,.practical-faq{grid-template-columns:1fr}.class-fit{padding:24px}.class-fit ul{gap:12px}.class-steps{gap:14px}.class-steps li{padding:24px}.class-next{gap:18px}.practical-faq{gap:8px}.guided-contact{padding:28px 24px;gap:28px}.guided-contact h2{font-size:34px}.reviews-context{margin-top:0}.contact-composer .button{max-width:100%}}
@media(max-width:760px){
 .class-steps{gap:0;border-block:1px solid var(--line)}
 .class-steps li{display:grid;grid-template-columns:28px 1fr;column-gap:14px;padding:18px 0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none}
 .class-steps li+li{border-top:1px solid var(--line)}
 .class-steps .card-number{grid-row:1/3;padding-top:3px}
 .class-steps h3{font-size:17px;margin:0 0 4px}
 .class-steps p{font-size:13px;grid-column:2}
 .section-space{padding-top:76px}
 .sample-grid{display:flex;overflow-x:auto;overflow-y:hidden;gap:14px;padding:6px 4px 18px;margin-inline:0;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}
 .sample-card{scroll-snap-align:start}
 .sample-card .sample-mark{font-size:34px;margin-top:12px}
 .sample-card h3{margin:14px 0 8px}
 .sample-card p{margin-bottom:10px}
 .sample-swipe-note{font-size:12px;color:var(--muted);margin:4px 0 0}
}
@media(min-width:761px){.sample-swipe-note{display:none}}
.guided-contact{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact-composer form,.contact-composer details,#contact-draft{min-width:0;max-width:100%}
@media(max-width:760px){
 .guided-contact{grid-template-columns:minmax(0,1fr)}
 .contact-composer input,.contact-composer textarea,#contact-preview{font-size:16px}
 .sample-grid{width:100%;max-width:100%;min-width:0;margin-inline:0;contain:inline-size}
 .sample-card{flex:0 0 88%;width:auto;max-width:100%;min-width:0;overflow-wrap:anywhere}
}
.sample-frame{width:100%;max-width:100%;min-width:0;overflow:hidden;contain:inline-size}
@media(hover:none){.sample-card:hover{translate:none;box-shadow:inherit}}
@media(prefers-reduced-motion:no-preference){
 .class-steps li{position:relative}
 .class-steps li::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.22,1,.36,1)}
 .class-steps li.step-arrived::after{transform:scaleX(1)}
}

/* Source: carousel-edges.css */
/* Full-width tracks keep the initial cards aligned with the text.
   Only the scroll viewport reaches the screen edges; the document stays contained. */
.carousel-section.section-wrap{width:100%;max-width:100%;--carousel-gutter:max(36px,calc((100% - 1160px)/2))}
.carousel-section>.section-heading,.carousel-section>.reviews-context,.carousel-section>.reviews-navigation{width:min(1160px,calc(100% - 72px));margin-inline:auto}
.carousel-section .reviews-grid,.carousel-section .sample-grid{width:100%;max-width:100%;padding-inline:var(--carousel-gutter);scroll-padding-inline:var(--carousel-gutter)}
@media(max-width:1000px){
 .carousel-section.section-wrap{--carousel-gutter:24px}
 .carousel-section>.section-heading,.carousel-section>.reviews-context,.carousel-section>.reviews-navigation{width:calc(100% - 48px)}
}
@media(max-width:760px){
 .carousel-section.section-wrap{--carousel-gutter:20px}
 .carousel-section>.section-heading,.carousel-section>.reviews-context,.carousel-section>.reviews-navigation{width:calc(100% - 40px)}
 .carousel-section>.sample-swipe-note{margin-inline:20px}
}

/* Source: contact-wizard.css */
.site-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:15px;padding:48px 0 40px}
.site-footer>p{order:initial;width:auto;font-size:12px;line-height:1.6}
.site-footer>span{margin:0}.site-footer .legal-links{justify-content:center;gap:12px 22px}
.site-footer .brand{justify-content:center}.site-footer .brand-logo{max-width:220px}
.unified-contact{padding-top:80px}.unified-contact .contact{padding:40px;text-align:left;display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:38px}
.unified-contact .contact-intro .eyebrow{justify-content:flex-start}
.unified-contact .contact-intro h2{font-size:clamp(32px,4vw,46px)}
.unified-contact .contact-intro>p{font-size:14px}.contact-wizard-wrap{min-width:0}
#contact-wizard{min-width:0}.wizard-progress{font-size:12px;letter-spacing:1.4px;color:var(--muted);margin-bottom:20px}
.wizard-step{border:0;padding:0;margin:0;min-width:0}.wizard-step[hidden],#wizard-result[hidden],#wizard-actions[hidden]{display:none!important}
.wizard-step legend{font-family:'Manrope',sans-serif;font-size:24px;line-height:1.3;font-weight:600;letter-spacing:-.7px;margin-bottom:20px;max-width:100%}
.wizard-bubbles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.wizard-bubble{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:1px solid var(--line);background:var(--glass);color:var(--ink);border-radius:28px;padding:20px 16px;min-height:100px;font-size:16px;font-weight:600;max-width:100%;min-width:0;overflow-wrap:anywhere;box-shadow:0 8px 20px -18px #26364b88}
.wizard-bubble:last-child{grid-column:1/-1;min-height:55px;padding:14px;font-size:13px;font-weight:400}
.wizard-bubble svg{width:30px;height:30px;stroke:currentColor}
.wizard-bubble[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.wizard-note{font-size:12px!important;color:var(--muted);line-height:1.6}
.wizard-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:24px}.wizard-actions #wizard-next{margin-left:auto}
.schedule{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0}
.schedule-day{display:grid;grid-template-columns:minmax(65px,.7fr) repeat(2,minmax(0,1fr));gap:8px;align-items:center;min-width:0}
.schedule-day>strong{font-size:12px;display:block;padding-left:2px}
.schedule-slot{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;font-size:12px;min-height:50px;padding:8px 6px;border:1px solid var(--line);background:var(--glass);border-radius:17px;cursor:pointer;min-width:0}
.schedule-slot input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;cursor:pointer}
.schedule-slot svg{width:19px;height:19px;flex-shrink:0;pointer-events:none}
.schedule-slot:has(input:checked){background:var(--ink);color:#fff;border-color:var(--ink)}
.schedule-slot:has(input:focus-visible){outline:3px solid #47789b;outline-offset:3px}
#contact-wizard input:focus-visible,#wizard-preview:focus-visible{outline:3px solid #47789b;outline-offset:3px}
#wizard-preview{width:100%;max-width:100%;min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--glass);color:var(--ink);padding:12px;font:inherit;font-size:16px}
#wizard-preview{resize:vertical;line-height:1.6;min-height:220px}
#wizard-result h3{font-family:'Manrope',sans-serif;font-size:26px;line-height:1.3;letter-spacing:-.6px;margin:0 0 12px}
.wizard-draft-label{display:block;font-size:12px;margin:18px 0 8px}
.wizard-result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:14px}
.wizard-privacy{font-size:12px!important;line-height:1.6;color:var(--muted);margin-top:22px}
.wizard-privacy a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){
 .unified-contact{padding-top:65px}.unified-contact .contact{grid-template-columns:minmax(0,1fr);padding:26px 20px;gap:25px}
 .unified-contact .contact-intro h2{margin:14px 0}.unified-contact .contact-intro .contact-alternative{margin-bottom:0}
 .wizard-step legend{font-size:22px}.wizard-bubble{font-size:15px;padding:18px 10px}
 .site-footer{gap:14px;padding-top:35px}.site-footer>p{width:auto;order:initial}.site-footer>span{margin:0}
}
.wizard-progress{margin-bottom:10px}
.wizard-progress-track{height:3px;width:100%;background:var(--line);border-radius:4px;margin-bottom:26px;overflow:hidden}
#wizard-progress-fill{display:block;height:100%;width:25%;background:var(--ink);border-radius:inherit}
.wizard-plan-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:26px;padding:24px;background:var(--glass);min-width:0}
.wizard-plan-card .eyebrow{font-size:12px;margin-bottom:14px}
.wizard-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0 12px;min-width:0}
.wizard-summary>div{border:1px solid var(--line);border-radius:17px;padding:12px;min-width:0;background:var(--glass)}
.wizard-summary dt{font-size:12px;color:var(--muted);margin-bottom:6px;letter-spacing:.4px}
.wizard-summary dd{margin:0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.wizard-summary-wide{grid-column:1/-1}
.wizard-identity{border:0;padding:0;margin:24px 0 0;min-width:0}
.wizard-identity legend{font-family:'Manrope',sans-serif;font-size:20px;letter-spacing:-.5px;margin-bottom:16px}
.wizard-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}
.wizard-fields>div{min-width:0}.wizard-fields label{display:block;font-size:12px;margin-bottom:8px}
.wizard-fields input{width:100%;min-width:0;max-width:100%;border:1px solid var(--line);border-radius:16px;background:var(--glass);color:var(--ink);padding:14px 12px;font:inherit;font-size:16px}
.wizard-fields input::placeholder{color:var(--muted);font-size:12px;opacity:1}
.wizard-fields input[aria-invalid=true]{outline:2px solid var(--ink);outline-offset:2px}
.wizard-message-details{margin:20px 0 0;border-block:1px solid var(--line)}
.wizard-message-details summary{display:flex;justify-content:space-between;align-items:center;min-height:48px;padding:12px 0;cursor:pointer;font-size:12px;list-style:none}
.wizard-message-details summary::-webkit-details-marker{display:none}
.wizard-message-details summary>span{font-size:20px}.wizard-message-details[open] summary>span{transform:rotate(45deg)}
.wizard-message-details[open]{padding-bottom:16px}
.wizard-message-details .wizard-draft-label{margin-top:4px}
.wizard-honeypot{display:none!important}
.wizard-send{display:flex;align-items:center;justify-content:center;gap:22px;min-height:54px;min-width:0}
.wizard-send svg{width:22px;height:22px;flex-shrink:0}
.wizard-send:disabled{cursor:wait;opacity:.75}
.wizard-send[data-sending=true] svg{display:none}
.wizard-send[data-sending=true]::after{content:'';width:18px;height:18px;border:1.5px solid currentColor;border-right-color:transparent;border-radius:50%}
.wizard-feedback:empty{display:none}.wizard-feedback{border-left:2px solid var(--ink);padding:10px 12px;margin:16px 0}
.wizard-mail-alternative{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:14px;font-size:12px}
.wizard-mail-alternative[hidden],.wizard-success[hidden]{display:none!important}
.wizard-success{border:1px solid var(--line);border-radius:28px;padding:34px 24px;text-align:center;min-width:0;background:var(--glass)}
.wizard-success-mark{display:block;width:80px;height:80px;margin:0 auto 24px}
.wizard-success .eyebrow{justify-content:center}
.wizard-success h3{font-family:'Manrope',sans-serif;font-size:clamp(28px,4vw,40px);line-height:1.2;letter-spacing:-1px;margin:18px 0}
.wizard-success p{font-size:14px;line-height:1.6}.wizard-success strong{overflow-wrap:anywhere;font-weight:500}
.wizard-success .text-link{display:inline-block;margin-top:18px}
@media(max-width:480px){.wizard-fields{grid-template-columns:minmax(0,1fr)}.wizard-plan-card{padding:20px 16px}.wizard-result-actions{align-items:flex-start;flex-direction:column}.wizard-send{width:100%}}
@media(prefers-reduced-motion:no-preference){
 #wizard-progress-fill{transition:width .55s cubic-bezier(.22,1,.36,1)}
 .wizard-step:not([hidden]),#wizard-result:not([hidden]){animation:wizard-shutter .55s cubic-bezier(.22,1,.36,1) both}
 .wizard-summary>div{animation:summary-arrive .5s cubic-bezier(.22,1,.36,1) backwards}
 .wizard-summary>div:nth-child(2){animation-delay:.06s}.wizard-summary>div:nth-child(3){animation-delay:.12s}.wizard-summary>div:nth-child(4){animation-delay:.18s}
 .wizard-send svg{transition:transform .25s}.wizard-send:hover svg{transform:translateX(3px)}
 .wizard-send[data-sending=true]::after{animation:send-turn .8s linear infinite}
 .wizard-success:not([hidden]){animation:wizard-shutter .6s cubic-bezier(.22,1,.36,1) both}
 .wizard-success-mark circle{stroke-dasharray:214;animation:success-circle .7s ease both}
 .wizard-success-mark path{stroke-dasharray:48;animation:success-check .5s .4s ease both}
 @keyframes wizard-shutter{from{opacity:0;clip-path:inset(0 0 100% 0)}to{opacity:1;clip-path:inset(0)}}
 @keyframes summary-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
 @keyframes send-turn{to{transform:rotate(360deg)}}
 @keyframes success-circle{from{stroke-dashoffset:214}to{stroke-dashoffset:0}}
 @keyframes success-check{from{stroke-dashoffset:48}to{stroke-dashoffset:0}}
}
@media(forced-colors:active){.wizard-plan-card,.wizard-summary>div,.wizard-success,.wizard-fields input{border:1px solid CanvasText}.wizard-progress-track{border:1px solid CanvasText}#wizard-progress-fill{background:Highlight}}
@media(prefers-color-scheme:dark){.wizard-bubble[aria-pressed=true],.schedule-slot:has(input:checked){background:#cad8ef;color:#182333;border-color:#cad8ef}}
@media(prefers-reduced-motion:no-preference){
 .wizard-bubble,.schedule-slot{transition:background .2s,color .2s,border-color .2s,box-shadow .2s}
 .wizard-step:not([hidden]) .wizard-bubble{animation:bubble-arrive .5s cubic-bezier(.22,1,.36,1) backwards}
 .wizard-step:not([hidden]) .wizard-bubble:nth-child(2){animation-delay:.05s}
 .wizard-step:not([hidden]) .wizard-bubble:nth-child(3){animation-delay:.1s}
 .wizard-step:not([hidden]) .wizard-bubble:nth-child(4){animation-delay:.15s}
 .wizard-step:not([hidden]) .wizard-bubble:nth-child(5){animation-delay:.2s}
 .wizard-step:not([hidden]) .wizard-bubble[aria-pressed=true]{animation:bubble-select .3s ease}
 .wizard-bubble:active{transform:scale(.97)}
 @keyframes wizard-reveal{from{opacity:.1}to{opacity:1}}
 @keyframes bubble-arrive{from{opacity:0;transform:translateY(10px) scale(.94)}to{opacity:1;transform:none}}
 @keyframes bubble-select{50%{transform:scale(1.035)}100%{transform:none}}
}

/* Source: contact-visual.css */
/* A route from the visitor's goal to a first conversation. */
.unified-contact .contact{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);padding:36px;gap:36px;align-items:start}
.contact-intro{padding:18px 4px;min-width:0}
.unified-contact .contact-intro h2{font-size:clamp(34px,4vw,46px);margin-block:20px}
.unified-contact .contact-intro>p{max-width:300px}
.contact-route-art{max-width:300px;margin:30px 0 36px}
.contact-route-art>svg{width:100%;height:auto;display:block;color:var(--ink);overflow:visible}
.contact-route-guide{stroke:var(--muted);stroke-dasharray:3 7;stroke-opacity:.45}
#contact-route-line{stroke-dasharray:1;stroke-dashoffset:1;stroke-width:2.5}
.contact-route-caption{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:baseline;margin-top:12px;font-size:12px;color:var(--muted)}
.contact-route-caption strong{font-family:'Manrope',sans-serif;color:var(--ink);font-size:18px;font-weight:500;letter-spacing:-.4px}
.contact-wizard-wrap{padding:28px;background:rgba(250,251,255,.68);border:1px solid var(--line);border-radius:32px;min-width:0;max-width:100%;box-shadow:0 20px 45px -42px #26364b99}
.wizard-progress{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.wizard-route{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:30px;min-width:0;isolation:isolate}
.wizard-route .wizard-progress-track{position:absolute;top:22px;inset-inline:calc(12.5% + 4px);width:auto;margin:0;height:1px;background:var(--line);z-index:-1}
.wizard-route-stop{border:0;padding:0;background:transparent;color:var(--muted);min-width:0;min-height:70px;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:12px;line-height:1.3}
.wizard-route-stop:disabled{cursor:default}
.wizard-route-dot{width:44px;height:44px;border-radius:50%;background:#f7f8fc;border:1px solid var(--line);display:grid;place-items:center;flex-shrink:0}
.wizard-route-dot svg{width:21px;height:21px}
.wizard-route-stop[data-state=current]{color:var(--ink);font-weight:600}
.wizard-route-stop[data-state=current] .wizard-route-dot{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:0 0 0 5px #6484bc12}
.wizard-route-stop[data-state=past] .wizard-route-dot{color:var(--ink);border-color:var(--ink)}
.wizard-step legend{font-size:clamp(22px,2.6vw,28px);letter-spacing:-.9px;margin-bottom:24px;max-width:100%}
.wizard-bubbles{gap:12px}
.wizard-bubble[data-choice-group=goal]{padding:14px 12px 17px;min-height:142px;border-radius:26px;background:linear-gradient(150deg,#fff9,#edf1f9a6);gap:10px}
.wizard-bubble .goal-art{width:100%;height:76px;max-width:160px;stroke:currentColor;flex-shrink:0;overflow:visible}
.goal-art text{font-family:'DM Sans',sans-serif;font-size:13px;fill:currentColor;stroke:none}
.goal-art .goal-guide{stroke-dasharray:3 6;stroke-opacity:.6}
.wizard-bubble[data-choice-group=goal]>span{font-family:'Manrope',sans-serif;font-size:16px;font-weight:600;letter-spacing:-.3px}
.wizard-bubble[data-choice-group=goal][aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:0 14px 25px -21px #26364bcc}
.wizard-bubble[data-choice-group=goal]:last-child{min-height:54px;flex-direction:row;padding:10px 16px;background:transparent}
.wizard-bubble[data-choice-group=goal]:last-child .goal-art{width:42px;height:30px}
.wizard-bubble[data-choice-group=goal]:last-child>span{font-size:12px;font-weight:400}
.wizard-bubble[data-choice-group=goal]:last-child[aria-pressed=true]{background:var(--ink)}
.wizard-bubble[data-choice-group=block]{min-height:90px;border-radius:22px;gap:10px;font-size:14px;padding:16px 10px}
.wizard-bubble[data-choice-group=block]:last-child{min-height:52px}
.wizard-bubble[data-choice-group=block] svg{width:26px;height:26px}
.schedule{gap:0;border:1px solid var(--line);border-radius:24px;padding:8px 12px;overflow:hidden;background:var(--glass)}
.schedule-head,.schedule-day{display:grid;grid-template-columns:minmax(66px,.7fr) repeat(2,minmax(0,1fr));gap:8px;align-items:center}
.schedule-head{min-height:44px;font-size:12px;color:var(--muted);text-align:center}
.schedule-head>span:first-child{text-align:left;font-size:12px}
.schedule-day{position:relative;min-height:60px;border-top:1px solid var(--line)}
.schedule-day>strong{position:relative;font-size:12px;font-weight:500;padding-left:14px}
.schedule-day>strong::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:5px;height:5px;border-radius:50%;border:1px solid var(--muted)}
.schedule-day:has(input:checked)>strong::before{background:var(--ink);border-color:var(--ink)}
.schedule-slot{min-height:42px;border-radius:14px;padding:8px;background:transparent}
.schedule-slot span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.schedule-slot svg{width:22px;height:22px}
.wizard-plan-card{border:0;background:transparent;border-radius:0;padding:0 0 20px;border-bottom:1px solid var(--line);overflow:visible}
.wizard-plan-card .eyebrow{letter-spacing:1.6px;margin-bottom:16px}
#wizard-result h3{font-size:clamp(26px,3.2vw,34px);font-weight:500;letter-spacing:-1.1px;line-height:1.2;max-width:430px}
.wizard-summary{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin-block:24px 10px}
.wizard-summary::before{content:'';position:absolute;top:18px;bottom:18px;left:5px;width:1px;background:var(--line)}
.wizard-summary>div{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px;border:0;background:transparent;border-radius:0;padding:10px 0 10px 24px;align-items:baseline}
.wizard-summary>div::before{content:'';position:absolute;left:0;top:17px;width:11px;height:11px;border:1px solid var(--ink);border-radius:50%;background:#f7f8fc}
.wizard-summary>div:first-child::before{background:var(--ink)}
.wizard-summary dt{margin:0;font-size:12px;letter-spacing:0}
.wizard-summary dd{font-size:13px;font-weight:500}
.wizard-identity{margin-top:22px}.wizard-identity legend{font-size:21px}
.wizard-fields input{border-radius:14px;background:transparent;min-height:52px}
.wizard-send{width:100%;justify-content:space-between;padding-inline:22px}
#wizard-send-label{font-size:14px;line-height:1.4}
.wizard-result-actions{gap:10px}
.wizard-result-actions>.wizard-note{margin:0;font-size:12px!important}
.wizard-mail-alternative{column-gap:18px;row-gap:8px}
.wizard-whatsapp[hidden]{display:none!important}
.wizard-success{border:0;background:transparent;padding:30px 8px}
.wizard-privacy{margin-top:24px;font-size:12px!important}
@media(max-width:1000px){.unified-contact .contact{grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);gap:22px;padding:28px}.contact-wizard-wrap{padding:22px}.wizard-fields{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){
 .unified-contact .contact{grid-template-columns:minmax(0,1fr);padding:26px 18px;gap:24px}
 .contact-intro{padding:0 4px}.unified-contact .contact-intro>p{max-width:100%;margin-bottom:16px}
 .contact-route-art{display:none}.contact-wizard-wrap{padding:22px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}
 .wizard-route{margin-bottom:28px}.wizard-route-dot{width:42px;height:42px}.wizard-route .wizard-progress-track{top:21px}
 .wizard-bubble[data-choice-group=goal]{min-height:142px;border-radius:24px;padding:14px 8px}
 .wizard-bubble .goal-art{height:75px}.wizard-step legend{font-size:25px;margin-bottom:22px}
 .schedule{padding:8px}.schedule-head,.schedule-day{grid-template-columns:minmax(63px,.8fr) repeat(2,minmax(0,1fr));gap:6px}
 .wizard-fields{grid-template-columns:minmax(0,1fr)}.wizard-summary>div{grid-template-columns:68px minmax(0,1fr)}
}
@media(prefers-color-scheme:dark){
 .contact-wizard-wrap{background:#172334a1}.wizard-route-dot{background:#1c293b}
 .wizard-route-stop[data-state=current] .wizard-route-dot{background:#dbe7f7;color:#1b2c43}
 .wizard-bubble[data-choice-group=goal]{background:linear-gradient(150deg,#34425980,#26344b80)}
 .wizard-bubble[data-choice-group=goal][aria-pressed=true],.wizard-bubble[data-choice-group=goal]:last-child[aria-pressed=true]{background:#cad8ef;color:#182333;border-color:#cad8ef}
 .wizard-summary>div::before{background:#1c293b}.wizard-summary>div:first-child::before{background:var(--ink)}
}
@media(max-width:760px) and (prefers-color-scheme:dark){.contact-wizard-wrap{background:transparent}}
@media(prefers-reduced-motion:no-preference){
 #contact-route-line{transition:stroke-dashoffset .7s cubic-bezier(.22,1,.36,1)}
 .wizard-route-dot{transition:background .25s,color .25s,border-color .25s,box-shadow .25s}
 .wizard-bubble[aria-pressed=true] .goal-plane{animation:goal-flight .7s cubic-bezier(.22,1,.36,1) both}
 .wizard-bubble[aria-pressed=true] .goal-reply{animation:goal-answer .6s cubic-bezier(.22,1,.36,1) both}
 .wizard-bubble[aria-pressed=true] .goal-work{animation:goal-answer .6s cubic-bezier(.22,1,.36,1) both}
 .wizard-bubble[aria-pressed=true] .goal-exam-check{stroke-dasharray:1;animation:goal-check .65s ease both}
 .wizard-route-stop[data-state=current] .wizard-route-dot{animation:route-stop .4s ease}
 @keyframes goal-flight{from{transform:translate(-6px,4px);opacity:.5}to{transform:translate(0);opacity:1}}
 @keyframes goal-answer{from{transform:translateY(6px);opacity:0}to{transform:none;opacity:1}}
 @keyframes goal-check{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
 @keyframes route-stop{50%{transform:scale(1.08)}to{transform:none}}
}
@media(forced-colors:active){
 .contact-wizard-wrap,.wizard-bubble[data-choice-group=goal],.schedule{border:1px solid CanvasText;background:Canvas}
 .wizard-route-dot,.wizard-summary>div::before{background:Canvas;border-color:CanvasText}
 .wizard-route-stop[data-state=current] .wizard-route-dot,.wizard-bubble[data-choice-group=goal][aria-pressed=true]{background:Highlight;color:HighlightText}
 .wizard-summary::before,.wizard-route .wizard-progress-track{background:CanvasText}
}
/* Shared scale and illustration language across every choice step. */
.wizard-bubble[data-choice-group=block]{padding:14px 12px 17px;min-height:142px;border-radius:26px;background:linear-gradient(150deg,#fff9,#edf1f9a6);gap:10px}
.wizard-bubble[data-choice-group=block] .challenge-art{width:100%;height:76px;max-width:160px}
.wizard-bubble[data-choice-group=block]>span{font-family:'Manrope',sans-serif;font-size:15px;font-weight:600;letter-spacing:-.3px;line-height:1.4}
.wizard-bubble[data-choice-group=block][aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.wizard-bubble[data-choice-group=block]:last-child{min-height:54px;flex-direction:row;padding:10px 16px;background:transparent}
.wizard-bubble[data-choice-group=block]:last-child .challenge-art{width:42px;height:30px}
.wizard-bubble[data-choice-group=block]:last-child>span{font-size:12px;font-weight:400}
.wizard-bubble[data-choice-group=block]:last-child[aria-pressed=true]{background:var(--ink)}
.schedule-head{min-height:154px;padding:6px 0 12px;align-items:stretch}
.schedule-head>span:first-child{align-self:end;font-size:12px;padding-bottom:10px;line-height:1.4}
.wizard-period{border:1px solid var(--line);border-radius:22px;background:linear-gradient(150deg,#fff9,#edf1f9a6);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px 4px;min-width:0;min-height:132px;font-family:'Manrope',sans-serif}
.wizard-period .period-art{width:100%;max-width:160px;height:66px}
.wizard-period>span{font-size:14px;font-weight:600;line-height:1.4}
.wizard-period>small{font-family:'DM Sans',sans-serif;font-size:12px;line-height:1.4}
.wizard-period[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.wizard-period[aria-pressed=mixed]{border-color:var(--ink);border-style:dashed}
.schedule-day{min-height:66px}.schedule-day>strong{font-size:13px}
.schedule-slot{min-height:50px}.schedule-slot svg{width:25px;height:25px}
@media(max-width:760px){.wizard-bubble[data-choice-group=block]{min-height:142px;border-radius:24px;padding:14px 8px}.wizard-bubble[data-choice-group=block] .challenge-art{height:75px}.wizard-period{border-radius:18px}.wizard-period .period-art{height:60px}}
@media(prefers-color-scheme:dark){.wizard-bubble[data-choice-group=block],.wizard-period{background:linear-gradient(150deg,#34425980,#26344b80)}.wizard-bubble[data-choice-group=block][aria-pressed=true],.wizard-bubble[data-choice-group=block]:last-child[aria-pressed=true],.wizard-period[aria-pressed=true]{background:#cad8ef;color:#182333;border-color:#cad8ef}}
@media(prefers-reduced-motion:no-preference){
 .wizard-period{transition:background .25s,color .25s,border-color .25s}
 .wizard-period:active{transform:scale(.97)}
 .wizard-period[aria-pressed=true] .period-sun{animation:daylight-arrive .6s cubic-bezier(.22,1,.36,1) both}
 .wizard-bubble[aria-pressed=true] .challenge-start{animation:goal-answer .6s ease both}
 .wizard-bubble[aria-pressed=true] .challenge-piece{animation:goal-answer .5s ease backwards}
 .wizard-bubble[aria-pressed=true] .challenge-piece:nth-of-type(2){animation-delay:.08s}
 .wizard-bubble[aria-pressed=true] .challenge-piece:nth-of-type(3){animation-delay:.16s}
 .wizard-bubble[aria-pressed=true] .challenge-listen{transform-origin:80px 57px;animation:listening-arrive .65s ease both}
 @keyframes daylight-arrive{from{opacity:.3;transform:translateY(6px)}to{opacity:1;transform:none}}
 @keyframes listening-arrive{from{opacity:.4;transform:scaleY(.35)}to{opacity:1;transform:none}}
}
@media(forced-colors:active){.wizard-period,.wizard-bubble[data-choice-group=block]{border:1px solid CanvasText;background:Canvas}.wizard-period[aria-pressed=true],.wizard-bubble[data-choice-group=block][aria-pressed=true]{background:Highlight;color:HighlightText}.wizard-period[aria-pressed=mixed]{border:2px dashed CanvasText}}

/* Source: accessibility.css */
/* Secondary information must remain readable over both theme backgrounds. */
.eyebrow,.mini-label,.card-number,.question-index,.source-note,.video-notice,
.reviews-instruction,#reviews-count,.site-footer>p,.site-footer>span{color:var(--muted)}
.source-note,.video-notice,.reviews-instruction,#reviews-count,.review-person small{font-size:12px}
.legal-links a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:6px}
.nav-links a{display:inline-flex;align-items:center;min-height:36px}
.text-button{min-height:44px;padding-block:8px}
:root{--focus-ring:#285f88}
/* A newly displayed question must retain a visible keyboard focus. */
#wizard-result-title:focus-visible,#wizard-status:focus-visible,#wizard-success-title:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}
.video-consent{padding:20px;text-align:left;overflow-wrap:anywhere}
.video-consent p{font-size:14px;line-height:1.6;color:var(--muted)}
.video-consent-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.video-consent-actions button{min-height:44px;white-space:normal}
.video-close{margin:12px;min-height:44px}
:where(a,button,input,textarea,summary,legend[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}
#contact-wizard input:focus-visible,#wizard-preview:focus-visible,.schedule-slot:has(input:focus-visible){outline-color:var(--focus-ring)}
.wizard-bubble{position:relative}
.wizard-bubble[aria-pressed=true]::after,.schedule-slot:has(input:checked)::after{content:'✓';position:absolute;right:10px;top:5px;font-size:15px;font-weight:700;line-height:1}
.schedule-slot:has(input:checked)::after{right:5px;top:3px;font-size:12px}
@media(prefers-color-scheme:dark){:root{--focus-ring:#b3d9ee}}
@media(forced-colors:active){
 .wizard-bubble,.schedule-slot{border:1px solid ButtonText;background:Canvas;color:CanvasText}
 .wizard-bubble[aria-pressed=true],.schedule-slot:has(input:checked){border:2px solid Highlight;outline:1px solid Highlight}
 .schedule-slot input{position:static;opacity:1;width:16px;height:16px}
 :root{--focus-ring:Highlight}
}

/* Source: whatsapp.css */

.whatsapp-icon{width:24px;height:24px;flex:none;display:block}
.nav .nav-whatsapp{background:var(--ink);color:Canvas;border-radius:100px;padding:10px 14px;gap:8px;min-height:44px}
.nav .nav-whatsapp .whatsapp-icon{margin:0;width:20px;height:20px}
.nav .nav-whatsapp span{padding:0}
.nav .nav-whatsapp:hover{background:var(--ink);filter:brightness(1.1)}
.hero-contact-note{font-size:12px;line-height:1.7;color:var(--muted);margin:14px 0 0;max-width:370px}
@media(max-width:760px){.nav .nav-whatsapp{width:44px;padding:10px}.hero-contact-note{font-size:12px}}
.nav-whatsapp{display:flex;gap:8px;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:14px;color:var(--ink);text-decoration:none;flex-shrink:0;transition:background .2s,transform .2s}
.nav-whatsapp span{font-size:12px;padding-right:10px}.nav-whatsapp .whatsapp-icon{margin:0 10px}
.nav-whatsapp:hover{background:#6cb49720;transform:translateY(-2px)}
.whatsapp-direct{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:22px;padding:20px;color:var(--ink);text-decoration:none;background:linear-gradient(130deg,#6cb49718,transparent);transition:transform .25s,box-shadow .25s}
.whatsapp-direct>span:last-child{margin-left:auto}.whatsapp-direct strong,.whatsapp-direct small{display:block}.whatsapp-direct strong{font-size:16px;font-weight:600}.whatsapp-direct small{font-size:12px;color:var(--muted);margin-top:4px}.whatsapp-direct:hover{transform:translateY(-3px);box-shadow:0 14px 30px -22px #38876b80}
.whatsapp-primary{display:flex;width:100%;justify-content:center;gap:12px;white-space:normal;background:var(--ink);color:var(--bg,#fff);margin-top:24px;text-decoration:none}.whatsapp-primary span:nth-child(2){flex:1}.contact-email-label{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:24px;margin-top:24px}
#wizard-next[hidden]{display:none!important}#wizard-actions:has(#wizard-back[hidden]):has(#wizard-next[hidden]){display:none}
@media(max-width:760px){.nav{gap:8px}.nav .brand-logo{margin-right:auto}.nav .brand-logo img{width:min(260px,calc(100vw - 165px))}.nav-whatsapp span{display:none}.nav-whatsapp .whatsapp-icon{margin:0}.nav-whatsapp{width:44px}.whatsapp-direct{padding:18px}.whatsapp-primary{font-size:13px;min-height:56px}}
@media(prefers-color-scheme:dark){.whatsapp-primary{color:#142132;background:#b8d9ce}}
@media(prefers-reduced-motion:no-preference){.wizard-step:not([hidden]){animation:whatsapp-step-in .4s cubic-bezier(.22,1,.36,1) both}@keyframes whatsapp-step-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}}

.class-offer{display:flex;align-items:center;gap:36px;padding:28px 32px;border-radius:26px;margin:24px 0;min-width:0}.class-offer-price{flex:none}.class-offer-price>strong{display:block;font-family:'Manrope',sans-serif;font-size:58px;line-height:1.1;letter-spacing:-3px;font-weight:500}.class-offer-price>strong span{font-size:30px;letter-spacing:-1px}.class-offer-price>span{font-size:12px;color:var(--muted)}.class-offer-copy{border-left:1px solid var(--line);padding-left:32px}.class-offer-copy p{margin:6px 0;font-size:14px;color:var(--muted);max-width:530px}.class-offer-copy .class-offer-duration{color:var(--ink);font-weight:600}.wizard-email-option{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.wizard-email-option>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;font-size:14px;list-style:none;color:var(--ink)}.wizard-email-option>summary::-webkit-details-marker{display:none}.wizard-email-option>summary span{font-size:22px;transition:transform .2s}.wizard-email-option[open]>summary span{transform:rotate(45deg)}
@media(max-width:600px){.class-offer{gap:18px;padding:24px;align-items:flex-start;flex-direction:column}.class-offer-copy{padding:18px 0 0;border-left:0;border-top:1px solid var(--line)}.class-offer-price>strong{font-size:52px}}

/* Keep each question at the same viewport position as the step changes. */
.contact-wizard-wrap,#contact-wizard{overflow-anchor:none}
.wizard-step>legend,#wizard-result-title{scroll-margin-top:28px}
@media(prefers-reduced-motion:no-preference){@keyframes whatsapp-step-in{from{opacity:0}to{opacity:1}}}
.wizard-email-option>summary{font-size:13px;color:var(--muted)}

.class-format{display:flex;flex-wrap:wrap;gap:10px 24px;padding:22px 0;margin:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.class-packages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0;min-width:0}.package-card{border:1px solid var(--line);border-radius:20px;padding:20px;min-width:0;background:linear-gradient(140deg,#8daaa20d,transparent)}.package-card-top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px}.package-card h4{font-size:18px;letter-spacing:-.5px;margin:0;font-weight:600}.package-card-top>span{font-size:12px;color:var(--muted)}.faq-list .package-total{margin:18px 0 8px}.package-total strong{display:block;color:var(--ink);font-family:'Manrope',sans-serif;font-size:29px;letter-spacing:-1px;font-weight:500;white-space:nowrap}.package-total span{font-size:12px;color:var(--muted)}.faq-list .package-unit,.faq-list .package-saving{margin:6px 0;font-size:12px}.faq-list .package-saving{color:var(--ink)}.faq-list .package-terms{font-size:12px}
@media(max-width:400px){.class-packages{gap:8px}.package-card{padding:14px 10px}.package-total strong{font-size:24px}.package-card h4{font-size:17px}}

.package-section{margin:32px 0 24px;min-width:0}.package-heading{display:flex;gap:28px;justify-content:space-between;align-items:end;margin-bottom:24px}.package-heading h3{font-size:38px;line-height:1.12;letter-spacing:-1.7px;font-weight:500;margin:12px 0 0}.package-heading>p{max-width:320px;font-size:14px;color:var(--muted);margin:0}.package-selector{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:5px;gap:5px;border:1px solid var(--line);border-radius:20px;margin-bottom:14px;background:var(--glass)}.package-duration{border:1px solid transparent;background:transparent;color:var(--muted);border-radius:15px;min-height:48px;font:inherit;font-size:14px;cursor:pointer}.package-duration[aria-pressed=true]{background:var(--ink);color:#fff;box-shadow:0 4px 14px #26364b14}.package-detail{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);border-radius:30px;padding:32px;gap:36px;overflow:hidden;min-width:0}.package-story h4{font-family:'Manrope',sans-serif;font-size:27px;font-weight:500;letter-spacing:-.8px;margin:15px 0 12px}.package-story>p{font-size:14px;color:var(--muted);min-height:46px;margin:0}.package-journey-art{width:100%;height:auto;max-width:400px;display:block;margin:14px 0;color:var(--ink);stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.package-journey-guide{stroke-dasharray:3 8;opacity:.25}#package-journey-path{stroke-dasharray:1;stroke-dashoffset:.75;stroke-width:2.5}.package-journey-node circle{fill:var(--bg,#eef2f7)}.package-includes{display:flex;flex-wrap:wrap;gap:8px 20px;color:var(--muted);font-size:12px}.package-numbers{border-left:1px solid var(--line);padding-left:36px;display:flex;flex-direction:column;justify-content:center;min-width:0}.package-unit-large{margin:0 0 15px;line-height:1.1;display:flex;align-items:baseline;gap:12px;color:var(--ink)}.package-unit-large strong{font-family:'Manrope',sans-serif;font-size:72px;font-weight:500;letter-spacing:-4px}.package-unit-large>span{font-size:18px}.package-total-line{margin:0;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.package-total-line strong{font-size:25px;letter-spacing:-.6px;font-weight:600}.package-total-line span{font-size:12px;color:var(--muted)}.package-monthly,.package-numbers>.package-saving{font-size:12px;color:var(--muted);margin:12px 0 0}.package-numbers>.package-saving{color:var(--ink)}.package-cta{margin-top:22px;justify-content:space-between;gap:14px;white-space:normal;text-align:left}.package-numbers>small{display:block;font-size:12px;color:var(--muted);margin-top:12px}.package-section>.package-terms{font-size:12px;color:var(--muted);line-height:1.7;margin:16px 4px 0;max-width:820px}
@media(max-width:760px){.package-heading{display:block}.package-heading h3{font-size:32px}.package-heading>p{margin-top:18px;max-width:100%;font-size:13px}.package-detail{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px;border-radius:26px}.package-story h4{font-size:24px}.package-story>p{min-height:0;font-size:13px}.package-journey-art{max-width:290px;margin:6px auto}.package-numbers{padding:22px 0 0;border-left:0;border-top:1px solid var(--line)}.package-unit-large strong{font-size:60px}.package-duration{font-size:13px}.package-selector{border-radius:18px}.package-cta{min-height:52px;font-size:13px}}
@media(prefers-color-scheme:dark){.package-duration[aria-pressed=true]{color:#142132}.package-cta{color:#142132}}
@media(prefers-reduced-motion:no-preference){#package-journey-path{transition:stroke-dashoffset .6s cubic-bezier(.22,1,.36,1)}.package-duration{transition:background .2s,color .2s}.package-speech{animation:package-speech-float 5s ease-in-out infinite}@keyframes package-speech-float{50%{transform:translateY(-5px)}}}

.package-unit-large{flex-wrap:wrap;gap:6px 12px}.package-unit-large>span{font-size:16px}@media(max-width:400px){.package-unit-large strong{font-size:52px;letter-spacing:-3px}}

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

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

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

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

/* Source: subscriptions-rhythm.css */
.rhythm-selector{padding:26px 30px 18px;border-radius:26px;margin:24px 0 16px;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 95% 0%,#afc9e52b,transparent 65%),var(--glass)}
.rhythm-selector[hidden]{display:none}
.rhythm-topline{display:flex;justify-content:space-between;align-items:center;gap:12px}
.rhythm-topline label{font-size:17px;font-weight:500;letter-spacing:-.4px}
.rhythm-topline>span{font-size:12px;letter-spacing:1.8px;color:var(--muted)}
.rhythm-display{display:flex;gap:30px;align-items:center;justify-content:space-between;margin:20px 0 10px}
.rhythm-quantity{display:flex;gap:12px;align-items:center;flex-shrink:0}
.rhythm-quantity output{font-family:Manrope,sans-serif;font-size:68px;font-weight:400;letter-spacing:-4px;line-height:1;font-variant-numeric:tabular-nums}
.rhythm-quantity>span{font-size:12px;line-height:1.5;color:var(--muted)}
.rhythm-visual{max-width:350px;min-width:0;flex:1}
.rhythm-marks{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:5px;align-items:end;height:34px}
.rhythm-mark{display:block;height:18px;border-radius:4px;background:var(--ink);opacity:.12;transform-origin:bottom;transition:opacity .3s ease,transform .4s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--mark-order) * 8ms)}
.rhythm-mark:nth-child(5n){height:30px}
.rhythm-mark.is-lit{opacity:.75;transform:scaleY(1.1)}
.rhythm-visual p{font-size:12px;color:var(--muted);margin:12px 0 0;line-height:1.6;text-align:right}
.rhythm-range{--rhythm-progress:0%;appearance:none;-webkit-appearance:none;display:block;width:100%;min-width:0;height:44px;margin:7px 0 0;padding:0;background:transparent;cursor:pointer;touch-action:pan-y}
.rhythm-range::-webkit-slider-runnable-track{height:3px;border-radius:9px;background:linear-gradient(to right,var(--ink) var(--rhythm-progress),var(--line) var(--rhythm-progress))}
.rhythm-range::-moz-range-track{height:3px;border-radius:9px;background:var(--line)}
.rhythm-range::-moz-range-progress{height:3px;background:var(--ink)}
.rhythm-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:25px;height:25px;border-radius:50%;background:var(--ink);border:5px solid var(--paper,#f1f3f9);box-shadow:0 0 0 1px var(--line),0 3px 12px #0002;margin-top:-11px}
.rhythm-range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--ink);border:5px solid var(--paper,#f1f3f9);box-shadow:0 0 0 1px var(--line)}
.rhythm-range:focus-visible{outline:2px solid var(--ink);outline-offset:4px;border-radius:10px}
.rhythm-stops{display:flex;justify-content:space-between;margin:0 -10px}
.rhythm-stops button{font:inherit;font-size:13px;font-variant-numeric:tabular-nums;min-width:44px;min-height:44px;padding:0 10px;border:0;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer;transition:color .2s,transform .2s}
.rhythm-stops button[aria-pressed=true]{color:var(--ink);font-weight:700;transform:scale(1.12)}
#rhythm-availability{font-size:12px;line-height:1.6;color:var(--muted);margin:4px 0 0;min-height:36px}
.rhythm-price-detail{display:flex;flex-wrap:wrap;gap:4px 14px;justify-content:space-between;font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 16px;font-variant-numeric:tabular-nums}
.plan-price data{display:inline-block;font-variant-numeric:tabular-nums}
.rhythm-monthly-total{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;font-family:Manrope,sans-serif;font-size:23px;line-height:1.4;letter-spacing:-.6px;margin:0 0 7px;font-variant-numeric:tabular-nums;color:var(--ink)}
.rhythm-monthly-total>span{font-family:'DM Sans',sans-serif;font-size:14px;letter-spacing:0}
#plans-track .plan-price{margin-bottom:8px}
@media(max-width:760px){#plans-track .rhythm-monthly-total{font-size:22px;margin:0 0 7px}#plans-track .rhythm-monthly-total>span{font-size:14px}}
@media(max-width:760px){.rhythm-selector{padding:22px 20px 14px;border-radius:23px}.rhythm-display{gap:14px;margin-top:18px}.rhythm-quantity{gap:8px}.rhythm-quantity output{font-size:57px;letter-spacing:-3px}.rhythm-quantity>span{font-size:12px}.rhythm-topline label{font-size:16px}.rhythm-topline>span{font-size:12px;letter-spacing:1.1px}.rhythm-marks{gap:3px}.rhythm-mark{border-radius:2px}.rhythm-visual p{font-size:12px;max-width:160px;margin-left:auto;min-height:32px}.rhythm-price-detail{display:block}.rhythm-price-detail>span{display:block}}
@media(prefers-reduced-motion:reduce){.rhythm-mark,.rhythm-stops button{transition:none}.rhythm-stops button[aria-pressed=true]{transform:none}}

.rhythm-saving{font-size:12px;line-height:1.6;min-height:36px;margin:0 0 12px;color:var(--muted);font-variant-numeric:tabular-nums}
.rhythm-explanation{font-size:12px;line-height:1.7;color:var(--muted);margin:4px 0 0}
.rhythm-selector .rhythm-explanation{max-width:none}
@media(max-width:760px){#plans-track .rhythm-price-detail{margin:0 0 6px;font-size:12px}#plans-track .rhythm-saving{font-size:12px;min-height:36px}}

/* Keep the frequency selector clear while returning visual priority to the plans. */
.rhythm-selector{padding:22px 26px 14px;margin:18px 0 12px}
.rhythm-display{gap:24px;margin:15px 0 7px}
.rhythm-quantity output{font-size:62px}
.rhythm-marks{height:30px}
.rhythm-mark:nth-child(5n){height:26px}
.rhythm-range{height:40px;margin-top:4px}
@media(max-width:760px){
 .rhythm-selector{padding:19px 18px 12px;margin:16px 0 10px}
 .rhythm-display{gap:11px;margin-top:14px}
 .rhythm-quantity output{font-size:52px}
 .rhythm-marks{height:27px}
 .rhythm-mark:nth-child(5n){height:24px}
 .rhythm-range{height:38px}
}

/* Source: booking.css */
.booking-section{padding-top:70px;scroll-margin-top:25px;min-width:0}
.site-shell:has(#agenda) .nav-whatsapp{background:transparent;color:var(--ink)}
.booking-panel{padding:32px;border-radius:30px;min-width:0;overflow:hidden}
.booking-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}
.booking-heading h2{font-size:clamp(30px,4vw,43px);line-height:1.15;margin:12px 0;letter-spacing:-1.4px}
.booking-heading p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;max-width:490px}
.booking-duration{flex:none;text-align:center;border:1px solid var(--line);border-radius:50%;width:100px;height:100px;display:flex;flex-direction:column;justify-content:center;font-family:Manrope,sans-serif;font-size:35px;line-height:1.1;letter-spacing:-1px}
.booking-duration small{font-family:'DM Sans',sans-serif;font-size:12px;line-height:1.6;letter-spacing:1px;margin-top:5px;color:var(--muted)}
.booking-launch{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
.booking-launch>p,.booking-privacy,.booking-status{font-size:12px;line-height:1.7;color:var(--muted);margin:0;max-width:490px}
.booking-privacy{margin-top:14px}.booking-privacy a{text-decoration:underline;text-underline-offset:3px}
.booking-fallback{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:16px}.booking-fallback a{font-size:12px;min-height:44px;display:inline-flex;align-items:center}
.booking-frame{width:100%;min-width:0;margin-top:20px;min-height:660px;overflow:hidden;border-radius:18px}
.booking-frame iframe{width:100%;max-width:100%;border:0}.booking-frame[hidden]{display:none}
.booking-status{margin-top:12px}
.unified-contact{padding-top:28px}
.contact-optional{border-top:1px solid var(--line);padding-top:18px}
.contact-optional>summary{cursor:pointer;min-height:48px;display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:14px;list-style:none}
.contact-optional>summary::-webkit-details-marker{display:none}.contact-optional>summary>span{font-size:21px;color:var(--muted)}
.contact-optional[open]>summary{margin-bottom:20px}.contact-optional[open]>summary>span{transform:rotate(45deg)}
@media(max-width:760px){.booking-section{padding-top:45px}.booking-panel{padding:24px 18px;border-radius:26px}.booking-heading{gap:14px;align-items:flex-start}.booking-heading h2{font-size:30px}.booking-heading p{font-size:13px}.booking-duration{width:69px;height:69px;font-size:28px;margin-top:20px}.booking-duration small{font-size:12px}.booking-launch .button{width:100%}.booking-frame{min-height:760px}.contact-optional>summary{font-size:13px}}

.closing-cta{text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px;padding-block:60px 30px}.closing-cta h2,.closing-cta p{margin:0}.closing-cta p{max-width:480px;line-height:1.7}.closing-cta small{opacity:.7}.closing-cta .button{max-width:100%;text-align:center}@media(max-width:760px){.closing-cta{padding-block:36px 12px;gap:18px}.closing-cta .button{font-size:13px;padding-inline:20px}}

/* Source: audience-paths.css */
.audience-paths{min-width:0;margin:26px 0 20px}
.pathways-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;border:1px solid var(--line);border-radius:22px;padding:6px;margin-bottom:14px;background:var(--glass)}
.pathways-tabs[hidden]{display:none}
.pathways-tabs button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:10px 12px;font:inherit;font-size:13px;line-height:1.4;color:var(--muted);border:0;border-radius:16px;background:transparent;cursor:pointer}
.pathways-tabs button[aria-selected=true]{color:var(--ink);background:var(--glass);box-shadow:0 3px 14px #142c4510,inset 0 1px 0 #ffffff60}
.pathways-tabs svg{width:22px;height:22px;flex:none}
.pathway-panel{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:30px;align-items:center;border-radius:27px;padding:30px;min-height:240px;margin-bottom:12px;overflow:hidden;min-width:0}
.pathway-panel[hidden]{display:none}
.pathway-panel>div{min-width:0}
.pathway-panel h3{font-size:27px;font-weight:500;line-height:1.25;letter-spacing:-.8px;margin:12px 0}
.pathway-panel p{font-size:14px;line-height:1.75;color:var(--muted);max-width:490px;margin:0 0 14px}
.pathway-panel .text-link{min-height:44px}
.pathway-sketch{width:100%;max-width:250px;height:auto;justify-self:center;color:var(--ink);opacity:.75}
.family-path{border-bottom:1px solid var(--line);padding:8px 2px 15px;font-size:13px;color:var(--muted)}
.family-path summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;color:var(--ink)}
.family-path summary::-webkit-details-marker{display:none}.family-path summary>span{font-size:21px;font-weight:400}
.family-path[open] summary>span{transform:rotate(45deg)}.family-path p{max-width:650px;font-size:13px;line-height:1.8;margin:12px 0}.family-path .text-link{min-height:44px}
.audience-page-inner{padding-block:30px 45px;min-width:0}
.audience-back{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
.audience-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:60px;align-items:center;padding:30px 0 45px}
.audience-hero>div{min-width:0}.audience-hero h1{font-size:clamp(38px,5.2vw,64px);line-height:1.1;letter-spacing:-2px;margin:20px 0}
.audience-hero p{font-size:16px;line-height:1.8;color:var(--muted);max-width:490px;margin-bottom:22px}
.audience-hero .button{display:inline-flex;gap:16px}.audience-hero small{display:block;font-size:12px;color:var(--muted);margin-top:12px}
.audience-scene{padding:30px;border-radius:30px;background:radial-gradient(ellipse at 100% 0%,#acc8e125,transparent 70%),var(--glass)}
.audience-scene .pathway-sketch{display:block;width:100%;max-width:310px;margin:15px auto}
.audience-scene strong{display:block;font-family:Georgia,serif;font-size:28px;font-weight:400;font-style:italic;line-height:1.4;margin:15px 0}.audience-scene p{font-size:13px;line-height:1.8;margin:0}
.audience-links{display:flex;gap:24px;flex-wrap:wrap;padding:14px 0;border-block:1px solid var(--line);margin-bottom:35px}.audience-links a{font-size:12px;min-height:44px;display:inline-flex;align-items:center}.audience-links [aria-current=page]{font-weight:700;text-decoration:underline;text-underline-offset:7px}
.audience-section{padding:25px 0;min-width:0}.audience-section h2,.audience-closing h2{font-size:clamp(29px,3.8vw,42px);line-height:1.2;font-weight:500;letter-spacing:-1.2px;margin:14px 0 22px}
.audience-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.audience-scenarios article{min-width:0;border-top:1px solid var(--line);padding-top:18px}.audience-scenarios .eyebrow{font-size:12px}.audience-scenarios h3{font-size:21px;line-height:1.4;letter-spacing:-.5px;font-weight:500;margin:14px 0 10px}.audience-scenarios p,.audience-section>p,.audience-faq p{font-size:14px;line-height:1.8;color:var(--muted);max-width:760px}
.audience-process{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:45px;padding:28px;border-radius:27px;align-items:start}
.audience-process ol{margin:0;padding-left:20px}.audience-process li{font-size:14px;line-height:1.8;color:var(--muted);padding:5px 0 10px 7px}.audience-process strong{display:block;color:var(--ink);font-weight:500}
.exam-names{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.exam-names span{border:1px solid var(--line);padding:8px 17px;border-radius:30px;font-size:13px}
.audience-faq{max-width:800px}.audience-faq details{padding:13px 0;border-bottom:1px solid var(--line)}.audience-faq summary{cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;list-style:none}.audience-faq summary::-webkit-details-marker{display:none}.audience-faq summary>span{font-size:22px;color:var(--muted)}.audience-faq details[open] summary>span{transform:rotate(45deg)}.audience-faq p{margin:12px 0}
.audience-closing{text-align:center;border-top:1px solid var(--line);padding:40px 0 0;margin-top:30px}.audience-closing p{font-size:14px;line-height:1.8;color:var(--muted);max-width:510px;margin:0 auto 22px}.audience-closing .button{gap:16px}.audience-closing .text-link{display:flex;justify-content:center;min-height:44px;margin-top:10px}
@media(max-width:760px){.pathways-tabs button{flex-direction:column;gap:5px;padding:10px 5px;font-size:12px}.pathway-panel{padding:23px;grid-template-columns:minmax(0,1fr);gap:8px;min-height:250px}.pathway-panel h3{font-size:24px}.pathway-panel p{font-size:13px}.pathway-panel .pathway-sketch{display:none}.family-path{font-size:12px}.audience-hero{grid-template-columns:minmax(0,1fr);gap:25px;padding:20px 0 30px}.audience-hero h1{font-size:40px;letter-spacing:-1.5px}.audience-hero p{font-size:14px}.audience-scene{padding:24px;max-width:440px;width:100%;justify-self:center}.audience-scene .pathway-sketch{max-width:220px}.audience-scene strong{font-size:25px}.audience-links{gap:8px 18px;margin-bottom:15px}.audience-links a{font-size:12px}.audience-scenarios{grid-template-columns:minmax(0,1fr);gap:10px}.audience-scenarios h3{font-size:20px}.audience-scenarios p,.audience-section>p,.audience-faq p{font-size:13px}.audience-section{padding:20px 0}.audience-process{grid-template-columns:minmax(0,1fr);gap:5px;padding:24px}.audience-process li{font-size:13px}.audience-faq summary{font-size:13px}.audience-closing p{font-size:13px}}

/* Source: integrated-journey.css */
.unified-contact .contact{grid-template-columns:minmax(0,1fr);gap:20px}.unified-contact .contact-intro{padding:4px;max-width:760px}.unified-contact .contact-intro>p{max-width:600px}.unified-contact .contact-intro h2{margin-block:14px}.unified-contact .contact-route-art{display:none}.contact-wizard-wrap{min-width:0}.wizard-route{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.wizard-step{min-width:0}.wizard-plans-step .plans-section{margin-top:15px}.wizard-plans-step .package-heading{display:none}.wizard-plans-step .plans-grid{margin:0}.wizard-plans-step .plans-note{font-size:12px}.wizard-plans-step .plan-cta[data-selected=true]{outline:2px solid var(--ink);outline-offset:3px}.wizard-plans-step .plans-section{overflow:visible}.integrated-other,.integrated-booking{border-block-start:1px solid var(--line);margin-top:22px;padding-top:14px}.integrated-other>summary,.integrated-booking>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;cursor:pointer;font-size:14px;list-style:none}.integrated-other>summary::-webkit-details-marker,.integrated-booking>summary::-webkit-details-marker{display:none}.integrated-booking .booking-panel{margin-top:16px}.integrated-booking .booking-heading h2{font-size:30px}.integrated-booking .booking-duration{display:none}.wizard-plans-step .plans-frame{min-width:0}.wizard-route-stop>span:last-child{font-size:12px}#empezamos,#paquetes,#wizard-result{scroll-margin-top:100px}.wizard-result .booking-frame{max-width:100%}@media(min-width:761px){.unified-contact .contact{padding:36px}.wizard-step:not(.wizard-plans-step),.wizard-plan-card,.wizard-message-details,.wizard-email-option{max-width:800px;margin-inline:auto}.wizard-bubbles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.unified-contact .contact{padding:24px 12px}.contact-wizard-wrap{padding:18px 8px}.wizard-route-stop>span:last-child{font-size:12px}.wizard-route{margin-bottom:24px}.wizard-plans-step .plans-grid{grid-auto-columns:86%;padding:8px 0 18px;scroll-padding-left:0}.integrated-booking>summary{font-size:13px}.wizard-plans-step .plan-card{padding:22px 18px}}
.wizard-plans-step .plans-frame{margin-inline:0;width:100%;max-width:100%}.wizard-plans-step #plans-track{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.wizard-plans-step #plans-track>.plan-card{min-width:0}@media(max-width:760px){.wizard-plans-step #plans-track{padding-inline:2px;scroll-padding-inline:2px}.wizard-plans-step #plans-track>.plan-card{flex:0 0 86%;width:86%;max-width:440px;padding:20px 16px}}

/* A single goal choice introduces the approach and starts the contact journey. */
.contact-anchor{display:block;scroll-margin-top:100px}
.wizard-goals{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.wizard-goals .wizard-bubble[data-choice-group=goal]{min-height:186px;padding:18px 14px;gap:9px;text-align:center}
.wizard-goals .wizard-bubble .goal-art{height:66px}
.wizard-goals .wizard-bubble small{font-size:12px;font-weight:400;line-height:1.65;max-width:220px;opacity:.85}
.wizard-goals .wizard-bubble[data-choice-group=goal]:last-child{min-height:54px;padding:10px 16px;flex-direction:row}
.wizard-goals .wizard-bubble:last-child .goal-art{height:30px;width:42px}
.wizard-goal-preview{border-left:2px solid var(--line);padding:2px 0 2px 20px;margin:22px 0}
.wizard-goal-preview[hidden]{display:none}
.wizard-goal-preview h3{font-size:20px;line-height:1.4;letter-spacing:-.4px;margin:0 0 8px}
.wizard-goal-preview p{font-size:14px;line-height:1.8;margin:0 0 8px;max-width:650px}
.wizard-goal-preview .text-link{font-size:12px;min-height:44px}
.wizard-goal-step .family-path{margin-top:16px}
@media(max-width:760px){
 .wizard-goals{grid-template-columns:minmax(0,1fr);gap:10px}
 .wizard-goals .wizard-bubble[data-choice-group=goal]:not(:last-child){display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:14px;row-gap:3px;min-height:106px;text-align:left;padding:16px 14px;align-items:center}
 .wizard-goals .wizard-bubble:not(:last-child) .goal-art{grid-row:1/3;width:64px;height:54px}
 .wizard-goals .wizard-bubble:not(:last-child)>span{align-self:end}
 .wizard-goals .wizard-bubble small{align-self:start;max-width:none}
 .wizard-goal-preview{padding-left:14px}
 .wizard-goal-preview h3{font-size:18px}
}

/* The mobile comparison scrolls to the outer contact edge, not an inner crop. */
@media(max-width:760px){
 .wizard-plans-step .plans-section>.plans-frame{width:calc(100% + 40px);max-width:none;margin-inline:-20px}
 .wizard-plans-step #plans-track{width:100%;max-width:none;padding:10px 20px 24px;scroll-padding-inline:20px}
 .wizard-plans-step #plans-track>.plan-card{flex:0 0 100%;width:auto;max-width:none}
}

/* One column and one typographic scale for the summary and contact actions. */
#wizard-result{max-width:800px;margin-inline:auto;min-width:0}
#wizard-result .wizard-plan-card{padding:0;border:0;border-radius:0;background:transparent}
#wizard-result .eyebrow{justify-content:flex-start;text-align:left}
#wizard-result h3{max-width:600px;margin:0 0 14px;font-size:clamp(26px,3.2vw,34px);line-height:1.25}
#wizard-result #wizard-idea{font-size:14px!important;line-height:1.8;max-width:620px;margin:0}
#wizard-result .wizard-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:24px 0 8px}
#wizard-result .wizard-summary::before,#wizard-result .wizard-summary>div::before{content:none}
#wizard-result .wizard-summary>div{display:block;min-width:0;padding:16px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
#wizard-result .wizard-summary dt{font-size:12px;line-height:1.6;color:var(--muted);margin-bottom:6px}
#wizard-result .wizard-summary dd{font-size:14px;font-weight:500;line-height:1.75}
#wizard-result #wizard-edit{font-size:13px;min-height:44px;margin:0}
#wizard-result .wizard-message-details{margin:18px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
#wizard-result .wizard-message-details summary{font-size:13px;padding-block:14px}
.wizard-contact-actions{display:grid;justify-items:start;gap:12px;margin:24px 0}
#wizard-whatsapp{display:inline-flex;width:auto;max-width:100%;min-height:54px;margin:0;padding:15px 24px;gap:16px;justify-content:center;font-size:14px;line-height:1.5;text-align:center;white-space:normal}
#wizard-whatsapp>span{font:inherit;min-width:0}
#wizard-whatsapp>.ui-icon{width:18px;height:18px;flex:0 0 18px}
#wizard-result .wizard-contact-note{max-width:520px;margin:0;font-size:12px;line-height:1.8;color:var(--muted)}
#wizard-result .wizard-email-option{margin:0;padding:0;border-top:1px solid var(--line)}
#wizard-result .wizard-email-option>summary{font-size:13px;min-height:54px;padding-block:12px}
#wizard-result .wizard-identity{margin:20px 0 0}
#wizard-result .wizard-identity legend{font-size:20px;line-height:1.4;margin-bottom:18px}
#wizard-result .wizard-fields label{font-size:13px}
#wizard-result .wizard-result-actions{align-items:center;margin-top:20px;gap:12px 20px}
#wizard-result .wizard-send{width:auto;justify-content:center;gap:16px;padding:15px 24px;font-size:14px}
#wizard-result .wizard-mail-alternative{margin-top:16px;font-size:13px}
#wizard-result .wizard-privacy{margin:20px 0 0;font-size:12px!important;line-height:1.8}
@media(max-width:480px){
 #wizard-result .wizard-summary{grid-template-columns:minmax(0,1fr)}
 .wizard-contact-actions{justify-items:stretch}
 #wizard-whatsapp,#wizard-result .wizard-send{width:100%}
 #wizard-result .wizard-result-actions{align-items:stretch}
}

/* Source: site-polish.css */
/* Shared labels and readable secondary copy across every public page. */
.nav-links a{min-height:44px}.text-link{min-height:44px}.legal-links a{min-height:44px}
.site-footer>span{font-size:12px;line-height:1.8;overflow-wrap:anywhere;text-align:center}
.video-launch{aspect-ratio:1;overflow:hidden}.video-launch>img{width:100%;height:100%;object-fit:cover}
.video-badge{font-size:12px}.video-title{line-height:1.15}
.practical-questions .practical-answers h3{font-size:16px;line-height:1.5;margin:24px 0 8px;letter-spacing:-.3px}
.practical-questions .practical-answers p{font-size:14px;line-height:1.8}.practical-questions .practical-answers{padding-bottom:8px}
.rhythm-explanation,.rhythm-topline>span,.rhythm-stops button,.plans-note,.rhythm-saving,.rhythm-price-detail,.plan-selection{font-size:12px}
.rhythm-stops button{min-width:44px;min-height:44px}.rhythm-topline{flex-wrap:wrap}
.wizard-note,.wizard-progress,.wizard-route-stop>span:last-child,.wizard-privacy{font-size:12px}
.wizard-identity input,.wizard-identity textarea,#wizard-preview{font-size:16px}
.audience-scenarios .eyebrow,.pathway-panel .eyebrow,.detail-index a,.detail-index span{font-size:12px}
@media(min-width:761px){
 .plans-grid#plans-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;overflow:visible;max-width:100%;width:100%;gap:20px}
 #plans-track>.plan-card{width:auto;max-width:none;min-width:0;flex:none}
 .carousel-section .sample-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:20px}
 .sample-grid>.sample-card{min-width:0;width:auto;max-width:none}
 .sample-swipe-note,.plans-mobile-nav{display:none}
}
@media(max-width:760px){
 .wizard-route-stop>span:last-child{font-size:12px}
 .audience-hero p,.pathway-panel p,.audience-scenarios p,.audience-section>p,.audience-faq p,.guide-body p,.guide-body li,.detail-support-list p{font-size:14px}
 .audience-links a{font-size:12px}.wizard-note,.wizard-privacy{line-height:1.7}
 .rhythm-stops{gap:2px}.plans-note{line-height:1.7}
 .practical-questions .practical-answers h3{font-size:15px}
}
@media(prefers-reduced-motion:reduce){.video-launch,.video-launch>img{animation:none;transition:none}}
.not-found{padding-block:65px 75px;max-width:820px;min-height:60vh}.not-found h1{font-size:clamp(38px,7vw,68px);letter-spacing:-2px}.not-found>p{max-width:520px;color:var(--muted);font-size:16px;line-height:1.8}.not-found .eyebrow{margin-bottom:24px}.not-found .button{margin-top:12px}.not-found .text-link{display:flex;margin-top:18px}


.nav .nav-booking{white-space:nowrap;font-size:12px;padding:11px 17px;min-height:44px;flex-shrink:0}.booking-section .integrated-booking{margin:0}.booking-section{scroll-margin-top:30px}@media(max-width:760px){.nav .nav-booking{font-size:12px;padding:10px 12px}.nav .brand-logo img{width:clamp(96px,calc(100vw - 210px),170px)}.nav{gap:8px}}

/* Desktop close: give the final invitation and legal footer a clear left/right rhythm. */
@media(min-width:761px){
 .closing-cta{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);grid-template-areas:"eyebrow copy" "title copy" "title action" "title note";align-items:center;justify-items:start;gap:12px 7vw;text-align:left;padding-block:64px 38px;border-top:1px solid var(--line)}
 .closing-cta>.eyebrow{grid-area:eyebrow}
 .closing-cta h2{grid-area:title;font-size:clamp(42px,4.4vw,58px);line-height:1.12;max-width:600px}
 .closing-cta p{grid-area:copy;max-width:390px;margin:0;align-self:end;font-size:15px}
 .closing-cta .button{grid-area:action;justify-self:start}
 .closing-cta small{grid-area:note}
 .site-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand copyright" "tagline legal";align-items:center;justify-content:initial;gap:10px 32px;padding:34px 0 36px;text-align:left;border-top:1px solid var(--line)}
 .site-footer>.brand-logo{grid-area:brand;justify-content:flex-start;max-width:250px}
 .site-footer>.brand-logo img{width:min(250px,100%)}
 .site-footer>p{grid-area:tagline;width:auto;margin:0;font-size:12px}
 .site-footer>span{grid-area:copyright;margin:0;text-align:right}
 .site-footer>.legal-links{grid-area:legal;justify-content:flex-end;gap:10px 22px}
}

/* Pause decorative loops outside the viewport, including generated surfaces. */
.motion-paused,.motion-paused::before,.motion-paused::after{animation-play-state:paused!important}

/* Keep room for the lifted card, its border and shadow inside the track. */
.carousel-section .sample-grid{padding-block:10px 24px}
@media(min-width:761px){.sample-frame{overflow:visible}}

/* Verified teaching background; keep the existing presentation and video. */
.about-credentials{margin:24px 0 0;display:grid;gap:18px}
.about-credentials>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;padding-top:18px;border-top:1px solid var(--line)}
.about-credentials dt{font-size:12px;font-weight:600;color:var(--muted);padding-top:2px}
.about-credentials dd{margin:0;min-width:0;font-size:14px;line-height:1.6}
.about-credentials dd strong{display:block;font-weight:600;color:var(--ink)}
.about-credentials dd span{display:block;margin-top:4px;font-size:13px;color:var(--muted)}
@media(min-width:761px) and (max-width:1100px){.nav{gap:14px}.nav .brand-logo img{width:clamp(150px,calc(100vw - 610px),300px)}.nav-links{gap:clamp(10px,1.5vw,20px);font-size:12px;white-space:nowrap}}
@media(max-width:480px){.about-credentials>div{grid-template-columns:1fr;gap:7px}.about-credentials dt{padding:0}}
/* Readable service facts remain visible before scripts load. */
.lesson-facts{padding:30px 0;border-block:1px solid var(--line);margin:30px 0;min-width:0}
.lesson-facts h2{font-size:clamp(25px,3.2vw,36px);font-weight:500;line-height:1.25;letter-spacing:-.8px;margin:12px 0 16px}
.lesson-facts>p{font-size:14px;line-height:1.8;color:var(--muted);max-width:760px}
.lesson-facts dl{margin:24px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px}
.lesson-facts dl>div{padding:16px 0;border-top:1px solid var(--line);min-width:0}
.lesson-facts dt{font-size:14px;font-weight:600;line-height:1.5;margin-bottom:7px}
.lesson-facts dd{margin:0;font-size:14px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}
.lesson-facts dl>div:last-child{grid-column:1/-1;max-width:760px}
.lesson-facts .lesson-facts-note{font-size:15px;line-height:1.7;color:var(--ink)}
.audience-hero .audience-byline{font-size:12px;line-height:1.7;margin:0 0 20px}
.audience-plan-reference{font-size:14px;line-height:1.8;color:var(--muted);max-width:760px;margin:25px 0}
@media(max-width:760px){.lesson-facts{padding:24px 0;margin:24px 0}.lesson-facts dl{grid-template-columns:minmax(0,1fr)}.lesson-facts dl>div:last-child{grid-column:auto}}

/* Crawlable guide links: a quiet footer row, two columns on small screens. */
.footer-guides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;width:100%;min-width:0;text-align:center;font-size:12px;line-height:1.6}
.footer-guides a{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:0;overflow-wrap:anywhere;padding:4px 0;color:var(--muted)}
.footer-guides a:hover{color:var(--ink)}
@media(min-width:761px){.site-footer:has(>.footer-guides){grid-template-areas:"brand copyright" "tagline legal" "guides guides"}.footer-guides{grid-area:guides;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:0 24px;margin-top:6px;text-align:left}.footer-guides a{justify-content:flex-start}}
.not-found .button.thanks-book{margin-bottom:28px}

/* Source: analytics.css */
.analytics-choice{position:fixed;z-index:120;bottom:16px;left:16px;right:16px;max-width:520px;padding:20px;border:1px solid #8c9aac66;border-radius:20px;background:#f3f6fa;color:#172233;box-shadow:0 10px 40px #0002;font:14px/1.6 sans-serif}.analytics-choice[hidden]{display:none}.analytics-choice p{margin:0 0 12px}.analytics-choice a{color:inherit;text-decoration:underline}.analytics-choice div{display:flex;gap:10px;flex-wrap:wrap}.analytics-choice button,.analytics-settings{font:inherit;cursor:pointer;border:1px solid #7889a0;border-radius:12px;padding:10px 14px;background:transparent;color:inherit}.analytics-settings{display:block;margin:16px auto;font-size:12px}.analytics-choice button:focus-visible,.analytics-settings:focus-visible{outline:3px solid #377ae6;outline-offset:3px}@media(prefers-color-scheme:dark){.analytics-choice{background:#172233;color:#f3f6fa}}

