/* Real lesson pages, framed as learning materials rather than stock visuals. */
.lesson-slider{display:grid;grid-template-columns:1fr 1fr;gap:24px;scroll-snap-type:x mandatory;scrollbar-width:none}.lesson-card{min-width:0;border:1px solid #dbe3d7;border-radius:29px;background:#fff;padding:16px;overflow:hidden}.lesson-window{position:relative;padding:24px 23px 0;background:#dcebe1;border-radius:22px;overflow:hidden;height:365px;isolation:isolate}.lesson-window-2{background:#e7eacb}.lesson-window:before{content:'';position:absolute;inset:16px 42px -10px 16px;background:#a8c89b;border-radius:20px;transform:rotate(-5deg);z-index:-1}.lesson-page-frame{border-radius:18px 18px 0 0;background:#fff;padding:12px 12px 0;box-shadow:0 16px 35px #294a3326;transform:rotate(2deg);overflow:hidden;min-height:100%}.lesson-window-2 .lesson-page-frame{transform:rotate(-2deg)}.lesson-page-frame img{display:block;width:100%;height:auto}.lesson-sticker{position:absolute;right:12px;top:13px;z-index:2;width:48px;height:48px;display:grid;place-items:center;background:#f0f6ce;border:1px solid white;border-radius:15px;transform:rotate(9deg);color:#4a7a36;font:34px Georgia,serif;box-shadow:0 6px 15px #203c1d12}.lesson-card-copy{padding:23px 15px 18px}.lesson-card-copy h3{display:flex;align-items:center;gap:16px;font-size:31px;margin:0 0 22px;letter-spacing:-1px}.lesson-step{height:44px;width:44px;flex:0 0 44px;display:grid;place-items:center;background:#245a35;border-radius:50%;color:#fff;font-size:22px;font-weight:500}.lesson-card-copy p{font-size:19px;line-height:1.85;color:#63715d;margin:0}.lesson-slider::-webkit-scrollbar,.plan-grid::-webkit-scrollbar{display:none}
/* Two sheets travel naturally with scroll, over a skewed paper backing. */
.method-section{padding-bottom:30px;position:relative}.method-scroll{height:220svh;position:relative}.method-stage{position:sticky;top:105px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px;height:calc(100svh - 130px);min-height:560px;max-height:820px}.method-copy{position:relative;z-index:4;min-width:0}.method-copy h2{font-size:49px;line-height:1.16;letter-spacing:-2px;margin:0 0 26px;min-height:175px}.method-accent{color:#3c9d2b}.method-copy>p{font-size:20px;line-height:1.8;color:#62725a;min-height:150px;max-width:460px}.method-progress{display:flex;align-items:center;gap:13px;margin-top:30px;font-size:18px;color:#98a28d}.method-progress>span[data-method-step]{display:grid;place-items:center;min-width:38px;height:38px;border-radius:50%;border:1px solid #d9e2cf;transition:background .25s,color .25s}.method-progress>span.is-current{background:#245a35;border-color:#245a35;color:white}.method-progress-line{height:1px;width:65px;background:#b9c9ab}.method-stack{position:relative;height:min(620px,73svh);min-width:0;perspective:1500px;isolation:isolate;overflow:clip;overflow-clip-margin:35px}.method-sheet{position:absolute;inset:10px 15px 25px;margin:0;transform-origin:50% 85%;will-change:transform,opacity}.method-sheet-first{z-index:2;transform:translateY(0) rotate(-6deg)}.method-sheet-second{z-index:1;transform:translateY(75%) rotate(9deg);opacity:0}.method-paper-back{position:absolute;inset:15px -10px -10px 12px;background:linear-gradient(145deg,#d5dcb1,#a9c48b);border:1px solid #ebf1d8;border-radius:11px;transform:rotate(8deg);box-shadow:0 18px 35px #304c2520;z-index:-1}.method-sheet-second .method-paper-back{background:linear-gradient(145deg,#dce9ce,#c7d7bd);transform:rotate(-6deg)}.method-page{height:100%;background:#fffdf5;padding:16px;border-radius:10px;box-shadow:0 15px 45px #203c2420;overflow:hidden;border:1px solid #e8e9dc}.method-page img{display:block;width:100%;height:100%;object-fit:contain;object-position:center top}.method-sheet figcaption{display:none}
/* Shared staggered letter transitions. Layers share the same layout origin. */
.motion-heading{display:grid!important;position:relative;isolation:isolate}.motion-text-layer{grid-area:1/1;display:block;line-height:inherit;align-self:start;min-width:0}.motion-word{display:inline-block;white-space:nowrap}.motion-glyph{display:inline-block;white-space:pre;vertical-align:baseline;transform-origin:50% 70%;backface-visibility:hidden}.motion-glyph:empty{display:none}.motion-text-layer.motion-leaving{pointer-events:none}.book-motion-heading{min-height:120px;align-items:center}.book-motion-heading .motion-text-layer{align-self:center}.book-motion-heading .book-title-accent{color:#36ad25}.book-heading{position:relative;z-index:4}
/* Harmonious plans: photographs, useful inclusions, then compact prices. */
.formats{padding-top:80px}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;scroll-snap-type:x mandatory;scrollbar-width:none;margin-top:36px;align-items:stretch}.plan-card{display:flex;flex-direction:column;min-width:0;border-radius:29px;overflow:hidden;background:#fff;border:1px solid #dbe3d5;scroll-snap-align:center}.plan-photo{height:270px;position:relative;background:#e5efdc;overflow:hidden;flex-shrink:0}.plan-photo .responsive-photo,.plan-photo img{display:block;width:100%;height:100%}.plan-photo img{object-fit:cover;object-position:50% 48%}.plan-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#18331c60);pointer-events:none}.plan-photo-chip{display:flex;align-items:center;gap:9px;position:absolute;left:23px;bottom:20px;padding:11px 15px;border:1px solid #ffffffb3;border-radius:20px;background:#ffffffe0;backdrop-filter:blur(18px);font-size:16px;z-index:1;color:#28512c}.plan-photo-chip .icon{width:22px;height:22px}.plan-portrait{background:radial-gradient(ellipse at 75% 25%,#8fcb6b,#ddebd0 65%)}.plan-portrait img{width:100%;height:160%;object-fit:contain;object-position:center top;transform:translateY(3px)}.plan-body{display:flex;flex-direction:column;flex:1;min-width:0;padding:30px}.plan-body>h3{font-size:35px;line-height:1.15;letter-spacing:-1.2px;margin:0 0 17px;font-weight:600}.plan-intro{font-size:18px;line-height:1.75;margin:0 0 26px;color:#66775d;min-height:95px}.plan-features{padding:24px 0 0;margin:0 0 28px;list-style:none;border-top:1px solid #dce4d3}.plan-features li{position:relative;padding-left:24px;font-size:17px;line-height:1.7;color:#66775d;margin-bottom:14px}.plan-features li:before{content:'';position:absolute;left:3px;top:10px;width:6px;height:6px;background:#9db492;border-radius:50%}.plan-features li.feature-primary{color:#304c2c;font-weight:600}.plan-features li.feature-primary:before{width:8px;height:8px;left:2px;top:9px;background:#48b631}.plan-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;margin-bottom:23px}.plan-tags span{font-size:16px;line-height:1.5;padding:8px 12px;border-radius:12px;background:#edf4e4;color:#4e7141}.plan-bottom{margin-top:auto}.plan-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;margin:0 0 20px;font-size:18px;color:#849078}.plan-price strong{font-size:34px;letter-spacing:-1px;font-weight:650;color:#23492b}.plan-bottom .button{width:100%;min-height:61px;font-size:18px;padding:18px 22px;gap:14px}.plan-details{display:flex;justify-content:center;align-items:center;gap:12px;padding:18px 0 0;font-size:17px;line-height:1.5;color:#547548;text-decoration:underline;text-underline-offset:5px}.plan-details .icon{width:18px;height:18px;transform:rotate(-45deg)}.plan-individual{background:#1c422e;border-color:#1c422e;color:#f5f8ed}.plan-individual .plan-intro{color:#c2d2ba}.plan-individual .plan-features{border-color:#ffffff25}.plan-individual .plan-features li{color:#c4d5bd}.plan-individual .plan-features li.feature-primary{color:#f0f5e9}.plan-individual .plan-tags span{background:#ffffff10;color:#d9e8ce;border:1px solid #ffffff16}.plan-individual .plan-price strong{color:#e1ecb7}.plan-individual .plan-price{color:#bacbb0}.plan-dark-button{background:#edf4d7;color:#1d432b}.plan-dark-button:hover{background:#e0edbd}.plan-packages{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 25px}.plan-package{background:#ffffff08;color:#cadabf;border:1px solid #ffffff30;border-radius:17px;text-align:left;padding:16px 13px;min-height:88px}.plan-package[aria-pressed=true]{background:#e4edc8;color:#22442a;border-color:#e4edc8}.plan-package strong{display:block;font-size:21px;line-height:1.25;letter-spacing:-.5px;margin-bottom:7px}.plan-package span{font-size:16px;line-height:1.5}.enrollment-video{background:linear-gradient(125deg,#d6f5bd,#e8f5dc);margin-bottom:15px}
@media(max-width:900px){.method-stage{gap:35px}.method-copy h2{font-size:40px}.method-copy>p{font-size:18px}.plan-body{padding:24px}.plan-body>h3{font-size:30px}.plan-intro{font-size:17px}.plan-features li{font-size:17px}.plan-package{padding:15px 10px}.plan-package strong{font-size:20px}.lesson-window{height:305px;padding:20px 17px 0}}
@media(max-width:600px){.lesson-slider{display:flex;overflow-x:auto;margin:0 -22px;padding:0 22px 14px;gap:16px;overscroll-behavior-x:contain}.lesson-card{flex:0 0 94%;padding:13px;border-radius:25px}.lesson-window{height:290px;padding:23px 17px 0;border-radius:19px}.lesson-page-frame{padding:10px 10px 0;border-radius:16px 16px 0 0}.lesson-sticker{width:43px;height:43px;font-size:31px;border-radius:13px}.lesson-card-copy{padding:24px 12px 19px}.lesson-card-copy h3{font-size:29px;gap:13px;margin-bottom:20px}.lesson-step{width:42px;height:42px;flex-basis:42px;font-size:21px}.lesson-card-copy p{font-size:18px;line-height:1.85}.book-motion-heading{min-height:120px}.method-section{padding-top:65px;padding-bottom:15px}.method-scroll{height:215svh}.method-stage{top:83px;height:calc(100svh - 98px);min-height:540px;max-height:850px;display:flex;flex-direction:column;gap:12px;justify-content:space-between}.method-copy{width:100%}.method-copy h2{font-size:34px;line-height:1.17;letter-spacing:-1.5px;min-height:83px;margin:0 0 15px}.method-copy>p{font-size:18px;line-height:1.65;min-height:113px;margin:0}.method-progress{position:absolute;right:0;bottom:-38px;gap:9px;margin:0;font-size:16px}.method-progress>span[data-method-step]{min-width:30px;height:30px}.method-progress-line{width:35px}.method-stack{width:100%;height:min(420px,48svh);min-height:270px;flex:1;margin-top:27px;overflow-clip-margin:12px}.method-sheet{inset:13px 34px 20px}.method-page{padding:11px;border-radius:9px}.method-paper-back{inset:12px -8px -7px 8px}.method-page img{object-fit:contain}.formats{padding-top:65px}.plan-grid{display:flex;overflow-x:auto;margin:28px -22px 0;padding:0 22px 15px;gap:16px;overscroll-behavior-x:contain}.plan-card{flex:0 0 96%;border-radius:25px}.plan-photo{height:245px}.plan-photo-chip{left:18px;bottom:17px;font-size:16px;padding:10px 14px}.plan-body{padding:25px 23px}.plan-body>h3{font-size:31px;letter-spacing:-1px}.plan-intro{font-size:18px;line-height:1.75;min-height:120px}.plan-features{padding-top:23px}.plan-features li{font-size:17px;line-height:1.75;margin-bottom:15px}.plan-tags{gap:8px;margin-bottom:24px}.plan-tags span{font-size:16px;padding:8px 10px}.plan-price strong{font-size:32px}.plan-bottom .button{font-size:17px;padding:18px 16px}.plan-package strong{font-size:20px}.plan-package span{font-size:16px}.plan-packages{gap:9px}.plan-details{font-size:17px}.enrollment-video .enrollment-option-copy strong{font-size:24px}.plan-portrait img{height:155%}}
@media(max-width:360px){.lesson-window{height:252px}.lesson-card-copy h3{font-size:26px}.method-copy h2{font-size:30px}.method-copy>p{font-size:17px}.method-sheet{inset-inline:24px}.plan-body{padding:22px 18px}.plan-body>h3{font-size:28px}.plan-package strong{font-size:18px}.plan-package{padding-inline:10px}.plan-tags span{padding-inline:8px}}
@media(max-width:600px) and (max-height:710px){.method-stage{min-height:495px;gap:5px}.method-copy h2{font-size:30px;min-height:72px;margin-bottom:10px}.method-copy>p{font-size:17px;line-height:1.6;min-height:105px}.method-stack{height:265px;min-height:240px;margin-top:17px}.method-progress{bottom:-28px}.method-sheet{inset:12px 48px 15px}}
@media(prefers-reduced-motion:reduce){.method-scroll{height:auto}.method-stage{position:static;display:block;height:auto;min-height:0;max-height:none}.method-copy{display:none}.method-stack{display:grid;grid-template-columns:1fr 1fr;gap:35px;height:auto;overflow:visible;perspective:none;margin:0}.method-sheet{position:relative;inset:auto;transform:none!important;opacity:1!important;will-change:auto}.method-page{height:450px}.method-sheet figcaption{display:block}.method-sheet figcaption h3{font-size:27px;line-height:1.25;margin:25px 0 15px}.method-sheet figcaption p{font-size:18px;line-height:1.8}.motion-glyph{filter:none!important;transform:none!important;opacity:1!important}}
@media(prefers-reduced-motion:reduce) and (max-width:600px){.method-stack{grid-template-columns:1fr;gap:45px}.method-page{height:430px}}
/* Animated letter wrappers inherit color; only the marked keyword turns green. */
.book-heading .book-motion-heading{color:var(--ink)}
.book-heading .book-motion-heading span{color:inherit}
.book-heading .book-motion-heading .book-title-accent{color:#36ad25}
/* A true two-photo stack: no resizable frames, only the incoming sheet moves. */
.method-section .method-scroll{height:190svh}.method-section .method-stage{gap:50px;min-height:540px}.method-section .method-stack{height:auto;min-height:0;width:min(100%,430px,calc(68svh * .70703125));aspect-ratio:905/1280;justify-self:center;margin:0;overflow:clip;overflow-clip-margin:14px;perspective:none}.method-section .method-sheet{inset:0;transform-origin:50% 80%;margin:0}.method-section .method-sheet-first{z-index:1;transform:rotate(-2deg)}.method-section .method-sheet-second{z-index:2;opacity:1;transform:translateY(104%) rotate(3deg)}.method-section .method-page{height:auto;width:100%;padding:0;border:0;border-radius:17px;background:transparent;box-shadow:0 9px 25px #1b38221c;overflow:hidden}.method-section .method-page img{display:block;width:100%;height:auto;object-fit:initial;object-position:initial;aspect-ratio:905/1280}.method-section .method-paper-back{display:none}.method-section .method-copy h2{min-height:120px}.method-section .method-copy>p{min-height:145px}.method-section .method-copy{align-self:center}
/* Compact plans disclose secondary inclusions only when requested. */
.plan-grid .plan-photo{height:195px}.plan-grid .plan-photo img{height:100%;width:100%;object-fit:cover;object-position:center;transform:none}.plan-grid .plan-photo-chip{left:17px;bottom:15px;padding:8px 12px;font-size:16px;border-radius:14px}.plan-grid .plan-body{padding:23px 25px;gap:0}.plan-grid .plan-body>h3{font-size:31px;margin-bottom:11px}.plan-grid .plan-intro{min-height:0;font-size:17px;line-height:1.6;margin-bottom:18px}.plan-grid .plan-features{margin:0;padding:15px 0 0;border-top:1px solid #dce4d3}.plan-grid .plan-features li{font-size:17px;line-height:1.6;margin-bottom:10px;padding-left:21px}.plan-grid .plan-features li:before{top:9px;width:6px;height:6px}.plan-grid .plan-individual .plan-features{border-top-color:#ffffff25}.plan-more{margin:0 0 17px;font-size:16px}.plan-more summary{list-style:none;display:flex;align-items:center;gap:8px;width:fit-content;min-height:41px;font-size:16px;font-weight:600;color:#537348;cursor:pointer;padding:5px 2px}.plan-more summary::-webkit-details-marker{display:none}.plan-more summary>.icon{width:16px;height:16px;transition:transform .2s}.more-count{font-size:16px;font-weight:400;color:#76866c}.more-open{display:none}.plan-more[open] .more-open{display:inline}.plan-more[open] .more-closed{display:none}.plan-more[open] summary>.icon{transform:rotate(45deg)}.plan-grid .plan-extra-features{padding-top:6px;border:0}.plan-grid .plan-extra-features li{font-size:16px;font-weight:400}.plan-individual .plan-more summary{color:#c5dbb8}.plan-individual .more-count{color:#9bb28e}.plan-grid .plan-tags{margin:0 0 18px;gap:7px}.plan-grid .plan-tags span{font-size:16px;line-height:1.4;padding:7px 10px}.plan-grid .plan-price{margin:0 0 15px;gap:10px;font-size:16px}.plan-grid .plan-price strong{font-size:30px}.plan-grid .plan-packages{margin:0 0 16px;gap:8px}.plan-grid .plan-package{min-height:0;padding:11px 12px;border-radius:13px}.plan-grid .plan-package strong{font-size:18px;line-height:1.3;margin-bottom:3px}.plan-grid .plan-package span{font-size:16px;line-height:1.4}.plan-grid .plan-bottom .button{min-height:55px;border-radius:14px;padding:15px 17px;font-size:17px}.plan-grid .plan-details{padding-top:14px;font-size:16px}
@media(max-width:600px){.method-section .method-scroll{height:190svh}.method-section .method-stage{display:flex;flex-direction:column;justify-content:center;gap:24px;top:80px;height:calc(100svh - 100px);min-height:535px}.method-section .method-copy{width:100%}.method-section .method-copy h2{font-size:32px;min-height:78px;margin-bottom:12px}.method-section .method-copy>p{font-size:18px;line-height:1.65;min-height:114px}.method-section .method-progress{display:none}.method-section .method-stack{width:min(calc(100% - 20px),calc(47svh * .70703125));height:auto;min-height:0;flex:none;margin:0 auto;aspect-ratio:905/1280;overflow-clip-margin:10px}.method-section .method-sheet{inset:0}.method-section .method-page{border-radius:14px}.plan-grid .plan-photo{height:auto;aspect-ratio:16/9}.plan-grid .plan-photo .responsive-photo{height:100%;width:100%;position:absolute;inset:0}.plan-grid .plan-body{padding:22px 21px}.plan-grid .plan-body>h3{font-size:29px;line-height:1.16;margin-bottom:10px}.plan-grid .plan-intro{font-size:17px;line-height:1.6;margin-bottom:16px;min-height:0}.plan-grid .plan-features li{font-size:16px;line-height:1.65;margin-bottom:9px}.plan-grid .plan-tags{margin-bottom:17px;gap:6px}.plan-grid .plan-tags span{font-size:16px;padding:7px 9px}.plan-grid .plan-price strong{font-size:29px}.plan-grid .plan-package{padding:10px}.plan-grid .plan-package strong{font-size:18px}.plan-grid .plan-package span{font-size:16px}.plan-grid .plan-bottom .button{font-size:17px;min-height:55px}.plan-more{margin-bottom:14px}.plan-grid .plan-extra-features li{font-size:16px}}
@media(max-width:600px) and (max-height:710px){.method-section .method-stage{min-height:490px;gap:15px}.method-section .method-copy h2{font-size:29px;min-height:69px}.method-section .method-copy>p{font-size:17px;min-height:104px}.method-section .method-stack{width:min(calc(100% - 20px),calc(40svh * .70703125))}}
@media(prefers-reduced-motion:reduce){.method-section .method-scroll{height:auto}.method-section .method-stage{position:static;display:block;height:auto;min-height:0;max-height:none}.method-section .method-copy{display:none}.method-section .method-stack{display:grid;width:100%;grid-template-columns:1fr 1fr;gap:28px;aspect-ratio:auto;height:auto;overflow:visible;margin:0}.method-section .method-sheet{position:relative;inset:auto;transform:none!important;opacity:1!important}.method-section .method-page{width:100%;height:auto}.method-section .method-page img{height:auto}.method-section .method-sheet figcaption{display:block}}
@media(prefers-reduced-motion:reduce) and (max-width:600px){.method-section .method-stack{grid-template-columns:1fr;width:100%;gap:40px}}
/* Scroll performance: one moving image and stable text; no blur or per-letter effects. */
.method-section .method-copy{display:grid;min-height:0;align-self:center}.method-copy-pane{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .16s ease;pointer-events:none}.method-copy-pane.is-current{opacity:1;visibility:visible;pointer-events:auto}.method-copy-pane h2{font-size:49px;line-height:1.16;letter-spacing:-2px;margin:0 0 24px;min-height:120px}.method-copy-pane p{font-size:20px;line-height:1.8;color:#62725a;min-height:145px;max-width:460px;margin:0}.method-section .method-sheet-first{will-change:auto;transform:none!important;opacity:1!important}.method-section .method-sheet-second{will-change:transform;transform:translate3d(0,104%,0);opacity:1;backface-visibility:hidden}.method-section .method-page{box-shadow:none;filter:none}.method-section .method-stack{overflow-clip-margin:0;isolation:isolate;contain:layout paint}.method-section .method-copy-pane h2,.method-section .method-copy-pane p{filter:none;transform:none;will-change:auto}
@media(max-width:900px){.method-copy-pane h2{font-size:40px}.method-copy-pane p{font-size:18px}}
@media(max-width:600px){.method-copy-pane h2{font-size:32px;line-height:1.17;letter-spacing:-1.5px;min-height:78px;margin-bottom:12px}.method-copy-pane p{font-size:18px;line-height:1.65;min-height:114px;max-width:none}.method-section .method-stack{overflow-clip-margin:0}.method-section .method-copy{display:grid}}
@media(max-width:600px) and (max-height:710px){.method-copy-pane h2{font-size:29px;min-height:69px}.method-copy-pane p{font-size:17px;min-height:104px}}
@media(prefers-reduced-motion:reduce){.method-section .method-copy{display:none}.method-section .method-copy-pane{transition:none}.method-section .method-stack{contain:none;overflow:visible}.method-section .method-sheet-second{will-change:auto}}
/* A visible deck of real paper: the rear page rises out from under the front. */
.method-section .method-stack{overflow:visible;contain:layout;isolation:auto;perspective:1100px;perspective-origin:50% 35%;transform-style:preserve-3d}.method-section .method-sheet{z-index:auto;transform-style:preserve-3d;transform-origin:50% 65%;backface-visibility:hidden}.method-section .method-sheet-first{transform:translate3d(0,0,0) rotateZ(-3deg)!important;will-change:auto}.method-section .method-sheet-second{z-index:auto;transform:translate3d(12px,25px,-16px) rotateZ(3deg);will-change:transform}.method-section .method-page{border:1px solid #fff;border-radius:15px;background:#fff;box-shadow:0 2px 0 #d6dbcf,0 4px 0 #f6f7ee,0 6px 0 #c9cebf,0 15px 22px #19382220;filter:none}.method-section .method-page img{border-radius:14px}.method-section .method-copy{display:block;position:relative;z-index:5}.method-section .method-copy>h2{min-height:130px;margin:0 0 22px;font-size:49px;line-height:1.16;letter-spacing:-2px}.method-section .method-copy>p{min-height:160px;margin:0;font-size:20px;line-height:1.8;color:#62725a}.method-section .method-copy .motion-text-layer{backface-visibility:hidden}.method-section .method-copy .motion-word{color:inherit}.method-section .method-copy .method-accent{color:#3c9d2b}
@media(max-width:900px){.method-section .method-copy>h2{font-size:40px}.method-section .method-copy>p{font-size:18px}}
@media(max-width:600px){.method-section .method-stage{gap:52px;min-height:560px}.method-section .method-stack{width:min(calc(100% - 40px),calc(44svh * .70703125));perspective:850px;margin:0 auto 10px}.method-section .method-copy>h2{font-size:32px;min-height:80px;margin-bottom:15px;line-height:1.17;letter-spacing:-1.5px}.method-section .method-copy>p{font-size:18px;line-height:1.65;min-height:120px}.method-section .method-page{border-radius:13px;box-shadow:0 2px 0 #d6dbcf,0 4px 0 #f6f7ee,0 6px 0 #c9cebf,0 12px 18px #19382220}.method-section .method-page img{border-radius:12px}}
@media(max-width:600px) and (max-height:710px){.method-section .method-stage{gap:35px;min-height:520px}.method-section .method-stack{width:min(calc(100% - 40px),calc(37svh * .70703125))}.method-section .method-copy>h2{font-size:29px;min-height:70px}.method-section .method-copy>p{font-size:17px;min-height:110px}}
@media(prefers-reduced-motion:reduce){.method-section .method-copy{display:none}.method-section .method-stack{perspective:none;transform-style:flat;contain:none}.method-section .method-sheet,.method-section .method-sheet-first,.method-section .method-sheet-second{transform:none!important;transform-style:flat;will-change:auto;z-index:auto}.method-section .method-page{box-shadow:0 5px 15px #19382215}}
/* Leave the extraction path open: the page clears the stack before coming forward. */
.method-section .method-scroll{height:225svh}.method-section .method-stack{overflow:visible}.method-section .method-sheet{transform-origin:50% 65%}.method-section .method-page{backface-visibility:hidden}
@media(prefers-reduced-motion:reduce){.method-section .method-scroll{height:auto}}
/* One clean paper edge per sheet; volume comes from shadows alone. */
.method-section .method-page{border:0;background:transparent;border-radius:14px;box-shadow:0 13px 25px #19382224,0 3px 7px #19382212;overflow:hidden}.method-section .method-page img{border-radius:inherit}.method-section .method-sheet:before,.method-section .method-sheet:after{content:none}.method-section .method-sheet-second{backface-visibility:visible;transform:translate3d(12px,25px,-16px) rotateZ(3deg);transform-style:preserve-3d}.method-section .method-sheet-second>.method-page{position:absolute;inset:0;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden}.method-section .method-sheet-second>.method-face-front{transform:translateZ(.2px)}.method-section .method-sheet-second>.method-face-back{transform:rotateY(180deg) translateZ(.2px)}.method-section .method-sheet-second>.method-page img{width:100%;height:auto}.method-section .method-scroll{height:195svh}.method-anchor-nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.method-anchor-nav a{font-size:16px;line-height:1.5;padding:10px 14px;border:1px solid #d1ddc6;border-radius:25px;color:#62765a;background:#f6f8f1;transition:background .2s,color .2s}.method-anchor-nav a[aria-current=true]{background:#245a35;border-color:#245a35;color:#fff}.method-anchor-nav a:hover{border-color:#719d60}
@media(max-width:600px){.method-anchor-nav{margin-top:16px;gap:8px}.method-anchor-nav a{padding:8px 12px;font-size:16px}.method-section .method-stage{gap:30px}.method-section .method-stack{width:min(calc(100% - 65px),calc(42svh * .70703125));margin-left:16px;margin-right:auto}.method-section .method-page{box-shadow:0 11px 20px #19382223,0 3px 6px #19382212;border:0}.method-section .method-copy>p{min-height:120px}}
@media(max-width:600px) and (max-height:710px){.method-section .method-stage{gap:20px}.method-section .method-stack{width:min(calc(100% - 65px),calc(34svh * .70703125))}.method-anchor-nav{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.method-section .method-scroll{height:auto}.method-section .method-sheet-second>.method-page{position:static;inset:auto;height:auto;transform:none}.method-section .method-sheet-second>.method-face-back{display:none}}
.method-section .method-scroll{height:180svh}
@media(prefers-reduced-motion:reduce){.method-section .method-scroll{height:auto}}
/* Solid paper cards: visible edge faces instead of outline rings. */
.method-section .method-sheet{--card-thickness:14px;--card-half:7px;overflow:visible;transform-style:preserve-3d}.method-section .method-sheet-first{--card-thickness:12px;--card-half:6px}.method-section .method-sheet-first>.method-page{transform:translateZ(var(--card-half))}.method-section .method-sheet-second>.method-face-front{transform:translateZ(var(--card-half))}.method-section .method-sheet-second>.method-face-back{transform:rotateY(180deg) translateZ(var(--card-half))}.method-section .method-page{border:0;box-shadow:0 14px 25px #19382225,0 3px 6px #1938220c;backface-visibility:hidden}.method-solid-edge{position:absolute;display:block;pointer-events:none;backface-visibility:visible;background:linear-gradient(90deg,#cbd1c1 0%,#eef0e3 32%,#d6dccc 66%,#b4beaa 100%);border:0;border-radius:2px}.method-solid-edge-right,.method-solid-edge-left{top:5px;height:calc(100% - 10px);width:var(--card-thickness);transform:rotateY(90deg)}.method-solid-edge-right{right:calc(-1 * var(--card-half))}.method-solid-edge-left{left:calc(-1 * var(--card-half))}.method-solid-edge-top,.method-solid-edge-bottom{left:5px;width:calc(100% - 10px);height:var(--card-thickness);transform:rotateX(90deg);background:linear-gradient(#c3cbb9,#f1f3e6 45%,#bac5ae)}.method-solid-edge-top{top:calc(-1 * var(--card-half))}.method-solid-edge-bottom{bottom:calc(-1 * var(--card-half))}.method-section .method-stack{perspective:1400px}.method-section .method-sheet-second{transform:translate3d(0,25px,-34px) rotateZ(3deg)}
@media(prefers-reduced-motion:reduce){.method-section .method-solid-edge{display:none}.method-section .method-sheet-first>.method-page,.method-section .method-sheet-second>.method-face-front{transform:none}}
.method-section .method-solid-edge{background:#fff}.method-card-pattern{position:absolute;inset:0;display:block;background:#fff url('assets/method-card-pattern.svg') center/cover no-repeat;border-radius:inherit}.method-section .method-sheet-second>.method-face-front{background:#fff}
@media(prefers-reduced-motion:reduce){.method-section .method-sheet-second>.method-face-front{display:none}.method-section .method-sheet-second>.method-face-back{display:block;position:static;height:auto;transform:none;backface-visibility:visible}}
@media(max-width:600px){.method-section .method-stack{position:relative;left:12px;top:-20px}}
/* On phones the card deck comes before its explanatory text. */
@media(max-width:600px){.method-section .method-stack{order:-1;top:0;left:12px}.method-section .method-copy{order:0}.method-section .method-stage{gap:32px}}
@media(max-width:600px) and (max-height:710px){.method-section .method-stage{gap:24px}}
@media(max-width:600px){.method-section .method-stack{left:28px}}
@media(max-width:600px){.method-section .method-stack{left:44px}}


/* Extend the rotated paper below its clipped window without changing layout. */
.lesson-page-frame{padding-bottom:48px;margin-bottom:-48px;min-height:calc(100% + 48px)}
.lesson-window-1 .lesson-sticker{font-size:52px}
.lesson-window-2 .lesson-sticker{padding-bottom:8px}
/* Keep plan actions compact and consistent with the rounded controls. */
.plan-grid .plan-body{flex:0 1 auto}
.plan-grid .plan-bottom{margin-top:8px}
.plan-more{margin-bottom:8px}
.plan-grid .plan-details{margin-top:10px;padding:11px 15px;min-height:44px;border:1px solid #d4dfcb;border-radius:14px;background:#f2f6ec;color:#315b32;text-decoration:none;justify-content:space-between;transition:background .2s,border-color .2s}
.plan-grid .plan-details:hover{background:#e6efdc;border-color:#97b886}
.plan-grid .plan-details:focus-visible{outline:2px solid #397b35;outline-offset:3px}
/* A thin plastic rim, with matching front/back offsets. */
.method-section .method-sheet,.method-section .method-sheet-first{--card-thickness:2px;--card-half:1px}
.reviews.section{padding-bottom:20px}
.method-section.section{padding-top:24px}
.method-section .method-stage{align-content:start}
@media(max-width:600px){
 .lesson-window-1 .lesson-sticker{font-size:48px}
 .reviews.section{padding-bottom:8px}
 .method-section.section{padding-top:8px}
 .method-section .method-stage{justify-content:flex-start;padding-top:28px}
 .method-section .method-stack{width:min(calc(100% - 65px),calc(48.3svh * .70703125))}
}
@media(max-width:600px) and (max-height:710px){
 .method-section .method-stack{width:min(calc(100% - 65px),calc(39.1svh * .70703125))}
}

/* Follow-up spacing and scroll controls. */
.approach.section{padding-bottom:60px}
.reviews .review-bottom{display:flex;align-items:center;justify-content:flex-end;gap:22px;margin-top:20px}
.reviews .review-bottom .review-buttons{margin:0;display:flex}
.reviews #review-position{flex:none}
.header{transition:transform .32s cubic-bezier(.22,.61,.36,1),opacity .25s,background .2s,box-shadow .2s,border-color .2s}
.header.is-scroll-hidden{transform:translateY(calc(-100% - 2px));opacity:0;pointer-events:none}
.header:focus-within,.navigation-open .header{transform:translateY(0);opacity:1;pointer-events:auto}
@media(max-width:600px){.approach.section{padding-bottom:44px}.reviews .review-bottom{gap:18px}}
@media(prefers-reduced-motion:reduce){.header{transition:none}}

/* Standard section spacing after the method cards. */
.stories.section{padding-top:55px}
@media(max-width:600px){.stories.section{padding-top:73px}}

/* Desktop deck uses a compact stage and only the travel needed for its turn. */
@media(min-width:601px) and (prefers-reduced-motion:no-preference){
 .method-section .method-stage{height:clamp(560px,74svh,650px);min-height:0;max-height:none;align-items:center}
 .method-section .method-scroll{height:calc(clamp(560px,74svh,650px) + 45svh)}
 .method-section .method-stack{width:min(100%,375px,calc(66svh * .70703125))}
}

/* Match the heading treatment used by reviews and stories. */
.formats h2{text-align:left;max-width:none;margin-inline:0;font-size:48px;line-height:1.15;letter-spacing:-2px;font-weight:500}
@media(max-width:600px){.formats h2{font-size:37px}}

/* Complete plans, compact enough for a typical laptop or phone viewport. */
.formats.section{padding-top:36px}
.formats h2{font-size:38px;line-height:1.12;margin:0 0 20px}
.formats .plan-grid{margin-top:0;gap:18px}
.formats .plan-card{border-radius:20px}
.formats .plan-grid .plan-photo{height:175px;aspect-ratio:auto}
.formats .plan-grid .plan-body{padding:16px 20px;flex:1}
.formats .plan-grid .plan-body>h3{font-size:27px;line-height:1.15;margin:0 0 6px;letter-spacing:-.7px}
.formats .plan-grid .plan-intro{font-size:15px;line-height:1.4;margin:0 0 10px;min-height:0}
.formats .plan-grid .plan-features{padding:10px 0 0;margin:0}
.formats .plan-grid .plan-features li{font-size:15px;line-height:1.4;margin-bottom:5px;padding-left:16px}
.formats .plan-grid .plan-features li:before{top:7px;width:5px;height:5px;left:2px}
.formats .plan-grid .plan-packages{margin-bottom:10px;gap:8px}
.formats .plan-grid .plan-package{padding:8px 10px;min-height:0;border-radius:10px}
.formats .plan-grid .plan-package strong{font-size:17px;margin-bottom:2px}
.formats .plan-grid .plan-package span{font-size:14px}
.formats .plan-grid .plan-bottom{margin-top:0;padding-top:4px}
.formats .plan-grid .plan-price{margin-bottom:9px;font-size:14px;gap:8px}
.formats .plan-grid .plan-price strong{font-size:26px}
.formats .plan-grid .plan-bottom .button{min-height:44px;padding:11px 14px;font-size:16px;border-radius:11px}
.formats .plan-grid .plan-details{font-size:14px;min-height:36px;padding:8px 12px;margin-top:7px;border-radius:11px}
.formats .slider-controls{margin-top:12px}
@media(max-width:600px){
 .formats.section{padding-top:28px}
 .formats h2{font-size:37px;line-height:1.15;margin-bottom:16px;letter-spacing:-2px}
 .formats .plan-grid{gap:14px;padding-bottom:6px}
 .formats .plan-grid .plan-photo{height:150px}
 .formats .plan-grid .plan-body{padding:14px 16px}
 .formats .plan-grid .plan-body>h3{font-size:25px}
 .formats .plan-grid .plan-features li{margin-bottom:4px}
}

/* Original plan typography; retain the compact spacing and complete lists. */
.formats .plan-grid .plan-body>h3{font-size:31px}
.formats .plan-grid .plan-intro{font-size:17px}
.formats .plan-grid .plan-features li{font-size:17px}
.formats .plan-grid .plan-package strong{font-size:18px}
.formats .plan-grid .plan-package span{font-size:16px}
.formats .plan-grid .plan-price{font-size:16px}
.formats .plan-grid .plan-price strong{font-size:30px}
.formats .plan-grid .plan-bottom .button{font-size:17px}
.formats .plan-grid .plan-details{font-size:16px}
@media(max-width:600px){
 .formats .plan-grid .plan-body>h3{font-size:29px}
 .formats .plan-grid .plan-features li{font-size:16px}
 .formats .plan-grid .plan-price strong{font-size:29px}
}

/* Natural card heights prevent empty space below the actions. */
.formats .plan-grid{align-items:start}
.formats .plan-grid .plan-card{align-self:start}
.formats .plan-grid .plan-body{flex:0 1 auto}
.formats .plan-grid .plan-features li{margin-bottom:8px}
.formats .plan-grid .plan-features li:last-child{margin-bottom:0}
.formats .plan-grid .plan-bottom{padding-top:8px}
@media(max-width:600px){.formats .plan-grid .plan-features li{margin-bottom:7px}.formats .plan-grid .plan-features li:last-child{margin-bottom:0}}

/* Desktop heading and full-height landscape photos; mobile stays unchanged. */
@media(min-width:601px){
 .formats h2{font-size:clamp(38px,4.2vw,57px);line-height:1.12;letter-spacing:-2.5px}
 .formats .plan-grid .plan-photo{height:auto;aspect-ratio:16/9}
 .formats .plan-grid .plan-photo .responsive-photo{position:absolute;inset:0;width:100%;height:100%}
}

/* Pin the whole screen while native scrolling turns the cards in either direction. */
.method-section.section{--method-top:100px;padding-top:64px;padding-bottom:0}
.method-section .method-scroll{height:calc(var(--method-stage-height, 100svh) + 55svh)}
.method-section .method-stage{position:sticky;top:var(--method-top);height:auto;min-height:calc(100svh - var(--method-top));max-height:none;padding:24px 0 32px;gap:48px;align-items:center;align-content:normal}
.method-section .method-stack{width:min(78%,350px,calc(62svh * .70703125));height:auto;min-height:0;aspect-ratio:905/1280;margin:0;justify-self:end;left:auto;top:auto;flex:none}
.method-section .method-copy>h2{min-height:0;margin:0 0 22px}
.method-section .method-copy>p{min-height:0;margin:0}
@media(max-width:600px){
 .method-section.section{--method-top:24px;padding-top:44px}
 .method-section .method-stage{top:var(--method-top);gap:48px;padding:18px 0 24px;justify-content:center;align-items:stretch}
 /* Center the resting deck on phones. */
 .method-section .method-stack{width:min(60%,260px,calc(42svh * .70703125));margin:0 auto;left:auto;top:auto;align-self:center}
 .method-section .method-copy>h2{min-height:0;margin-bottom:16px}
 .method-section .method-copy>p{min-height:0}
}
@media(max-width:600px) and (max-height:710px){
 .method-section.section{--method-top:16px}
 .method-section .method-stage{top:var(--method-top);gap:36px;padding-top:12px}
 .method-section .method-stack{width:min(60%,calc(35svh * .70703125))}
}
@media(prefers-reduced-motion:reduce){
 .method-section .method-scroll{height:auto}
 .method-section .method-stage{position:static;min-height:0;padding:0;display:block}
 .method-section .method-copy{display:none}
 .method-section .method-stack{width:100%;margin:0;aspect-ratio:auto}
}

/* Stack learning steps on phones; preserve the desktop columns. */
@media(max-width:600px){
.approach .lesson-slider{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;overflow:visible;scroll-snap-type:none;margin:0;padding:0;width:100%;max-width:620px;margin-inline:auto}
.approach .lesson-card{width:100%;box-sizing:border-box}
.approach .slider-controls{display:none}
}
