/* Short, progressive animations; content remains visible without JavaScript. */
.reading-progress{position:fixed;top:0;left:0;width:100%;height:2px;z-index:50;pointer-events:none;background:transparent}.reading-progress span{display:block;height:100%;background:var(--green);transform:scaleX(0);transform-origin:left;box-shadow:0 0 12px #c3e5a070}.site-header{position:sticky;top:0;z-index:30;background:#101713ed;backdrop-filter:none;transition:box-shadow .25s,background .25s}.site-header.is-scrolled{box-shadow:0 12px 35px #0002;background:#101713f5}.hero{position:relative;isolation:isolate}.hero::before{content:'';position:absolute;pointer-events:none;z-index:-1;width:65%;height:80%;right:-3%;top:12%;background:radial-gradient(ellipse,#759e4a13,transparent 66%)}.headline-line{display:block}.hero-copy h1 em{background:linear-gradient(110deg,#c3e5a0 15%,#e4f8d2 45%,#a9ce88 85%);background-clip:text;-webkit-background-clip:text;color:transparent}.js-motion .hero .eyebrow{animation:enter-up .7s .05s both}.js-motion .headline-line{animation:enter-up .9s cubic-bezier(.2,.7,.2,1) both}.js-motion .headline-line:nth-child(1){animation-delay:.12s}.js-motion .headline-line:nth-child(2){animation-delay:.25s}.js-motion .hero-description{animation:enter-up .8s .4s both}.js-motion .hero-actions,.js-motion .hero-price{animation:enter-up .8s .52s both}.js-motion .chart-panel{animation:chart-enter 1.05s .25s cubic-bezier(.16,1,.3,1) both}.chart-panel{position:relative;transform:rotate(-1deg);transition:border-color .3s,box-shadow .3s;will-change:auto}.chart-panel:hover{border-color:#6d8a57;box-shadow:0 30px 85px -38px #000c,0 0 42px -28px #c3e5a070}.chart-panel::before{content:'';position:absolute;top:-1px;left:15%;width:65%;height:1px;background:linear-gradient(90deg,transparent,#c3e5a0aa,transparent);pointer-events:none}.concept-chart{overflow:hidden}.js-motion .price-line{stroke-dasharray:1100;stroke-dashoffset:1100;animation:draw-chart 1.2s .3s cubic-bezier(.35,.1,.2,1) forwards}.concept-halo{opacity:0;transform-box:fill-box;transform-origin:center}.js-motion .concept-halo{animation:highlight-point 1.4s 1s 1}.js-motion .reference-line{animation:reference-in 1.2s .85s both}.chart-insight{min-height:137px;align-items:flex-start}.chart-insight.is-changing{animation:insight-in .35s ease both}.concept-steps{font-size:.875rem}.concept-steps button{position:relative;background:transparent;color:var(--muted);border:0;border-right:1px solid var(--line);padding:13px 7px;cursor:pointer;transition:color .2s,background .2s}.concept-steps button:last-child{border-right:0}.concept-steps button:hover{color:var(--text);background:#31433055}.concept-steps button.active{color:var(--green);background:#31433070}.concept-steps button.active::after{content:'';position:absolute;height:2px;bottom:0;left:15%;right:15%;background:var(--green)}.concept-steps button:focus-visible{outline-offset:-5px}.panel-topline{font-size:.75rem}.lesson-tag{font-size:.75rem}.reveal-ready{opacity:0;transform:translateY(24px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}.lesson{position:relative;transition:background .25s,padding .25s,border-color .25s}.lesson:hover{background:#c3e5a006;border-color:#627851;padding-left:12px}.lesson-number{transition:color .2s}.lesson:hover .lesson-number{color:var(--green)}.button{position:relative;overflow:hidden;transition:background .2s,transform .2s,box-shadow .2s}.button-primary:hover:not(:disabled){box-shadow:0 7px 24px #98bf7224}.button-primary:not(:disabled)::after{content:'';position:absolute;inset:-100%;width:50%;background:linear-gradient(90deg,transparent,#fff4,transparent);transform:rotate(25deg) translateX(-220%);pointer-events:none}.button-primary:not(:disabled):hover::after{animation:button-glint .65s ease-out}.access-steps li{transition:transform .25s}.access-steps li:hover{transform:translateX(4px)}.access-steps li>span{transition:background .25s,border-color .25s}.access-steps li:hover>span{background:#405a38;border-color:#8caa6d}.price-card{transition:border-color .25s,box-shadow .25s}.price-card:hover{border-color:#94b276;box-shadow:0 20px 48px -27px #000b}.faq-list details[open]>p{animation:insight-in .3s ease}.motion-toggle{padding:0;background:none;border:0;color:var(--muted);font-size:.75rem;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.motion-toggle:hover{color:var(--green)}
@keyframes enter-up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes chart-enter{from{opacity:0;transform:translateY(25px) rotate(0)}to{opacity:1;transform:translateY(0) rotate(-1deg)}}@keyframes draw-chart{to{stroke-dashoffset:0}}@keyframes highlight-point{0%{opacity:0;transform:scale(.5)}20%{opacity:.45}100%{opacity:0;transform:scale(1.65)}}@keyframes reference-in{from{opacity:0}to{opacity:1}}@keyframes insight-in{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes button-glint{to{transform:rotate(25deg) translateX(420%)}}
body.motion-paused *,body.motion-paused *::before,body.motion-paused *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body.motion-paused .reveal-ready{opacity:1;transform:none}body.motion-paused .price-line{stroke-dashoffset:0}body.motion-paused .concept-halo{opacity:0}
@media(max-width:1100px){.lesson-tag{display:none}.hero{gap:40px}.chart-caption{font-size:.75rem}}
@media(max-width:820px){.chart-panel{transform:none}@keyframes chart-enter{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}.hero::before{width:100%;height:60%;top:40%}.chart-insight{min-height:126px}}
@media(max-width:520px){.panel-topline{font-size:.75rem;letter-spacing:.04em}.panel-topline>span:first-child{max-width:190px}.chart-caption{font-size:.75rem;flex-wrap:wrap;gap:3px 12px}.hero .eyebrow{font-size:.75rem}.concept-steps{font-size:.8125rem}.chart-insight{min-height:158px}.hero-actions .button{width:100%}.hero-actions{gap:20px}.hero-actions .text-link{margin-inline:auto}.membership-copy h2{font-size:2.5rem}.site-footer>div{gap:15px 22px}.site-header{height:82px}}
@media(prefers-reduced-motion:reduce){.js-motion *, .js-motion *::before, .js-motion *::after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}.price-line{stroke-dashoffset:0!important}.concept-halo{opacity:0!important}.hero-copy h1 em{background:none;color:var(--green)}}
