@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#f6f4ed;--ink:#242b24;--line:#c9cbbc;--lime:#d1fc64;--purple:#d9c8fa;--blue:#b5dcf6;--orange:#ffa77c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font:16px 'DM Sans',sans-serif}body.dark{--bg:#1d2821;--ink:#f6f4ed;--line:#526455}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #7861ca;outline-offset:4px}header{position:sticky;top:0;z-index:10;background:var(--bg);padding:22px 6vw;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.logo{font:600 29px 'Space Grotesk';letter-spacing:-2px}nav{display:flex;align-items:center;gap:28px;font-size:13px}nav button{background:none;border:1px solid var(--line);border-radius:50%;width:32px;height:32px}section{padding:85px 6vw;border-bottom:1px solid var(--line)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;margin-bottom:26px}h1,h2,h3{font-family:'Space Grotesk',sans-serif;font-weight:500;letter-spacing:-.055em;margin:0}h1{font-size:clamp(70px,8vw,116px);line-height:.97;position:relative;z-index:2}h1 span{color:#8060c9;display:inline-block;animation:spin 24s linear infinite}em{font-style:normal;background:var(--lime);color:#242b24;padding:0 8px}h2{font-size:clamp(38px,4.5vw,65px);line-height:1.06}h3{font-size:30px}p{line-height:1.75}.hero{position:relative;overflow:hidden;min-height:740px;padding-top:50px}.hero>p{max-width:330px;margin-top:30px;position:relative;z-index:2}.cta{display:inline-block;background:var(--ink);color:var(--bg);border:0;padding:18px 25px;font-size:14px;font-weight:600}.cta:hover{background:#7250be;color:white}.bottom{margin-top:40px;margin-bottom:0}.art{position:absolute;width:460px;height:460px;right:5vw;top:125px;transform:rotate(-10deg)}.art i{position:absolute;inset:20px;border:2px solid var(--ink);border-radius:50%;transform:rotate(20deg) scaleX(.5);background:#d9c8fa44}.art i:nth-child(2){transform:rotate(80deg) scaleX(.5);background:#b5dcf644}.art i:nth-child(3){transform:rotate(140deg) scaleX(.5);background:#d1fc6433}.art b{position:absolute;top:195px;left:145px;text-align:center;font:24px 'Space Grotesk';transform:rotate(10deg)}.art strong{position:absolute;border:1px solid #242b24;color:#242b24;border-radius:50%;width:70px;height:70px;display:grid;place-items:center;font:40px 'Space Grotesk';background:var(--lime);left:80px;top:25px}.art strong:nth-last-child(2){left:auto;right:0;top:220px;background:var(--orange)}.art strong:last-child{top:auto;bottom:0;left:100px;background:var(--blue)}.ticker{background:var(--lime);color:#242b24;padding:20px;display:flex;justify-content:space-around;gap:20px;font-size:12px;letter-spacing:1px;font-weight:700;border-block:1px solid #242b24}.heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:38px}.heading p{max-width:330px;margin:0;font-size:15px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.movements button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:23px 14px;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;font-size:12px}.movements b{font:28px 'Space Grotesk';width:70%}.movements button.selected{background:var(--lime);color:#242b24}.small{font-size:12px}#movement{background:var(--purple);color:#242b24;padding:36px;min-height:350px}#movement h3{font-size:43px}#movement blockquote{margin:30px 0;font:25px 'Space Grotesk';line-height:1.3}.manifesto{background:#242b24;color:#f6f4ed}.manifesto h2{font-size:clamp(48px,6.5vw,90px)}.manifesto h3{font-size:24px;color:var(--lime);margin-top:25px;letter-spacing:-1px}.manifesto .grid{margin-top:35px;gap:65px;max-width:1000px}details{border-top:1px solid #626f62;margin-top:30px;padding-top:24px}summary{cursor:pointer;font-size:19px}.history{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;font-size:13px}.history b{color:var(--lime)}.chips{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.chips button{padding:12px 18px;border:1px solid var(--line);border-radius:30px;background:none;font-size:13px}.chips button.selected{background:var(--ink);color:var(--bg)}#discipline{background:var(--blue);color:#242b24;padding:35px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;border-top:1px solid #86a9bf;margin-top:25px;padding-top:20px;font-size:14px}.decision{background:var(--orange);color:#242b24}.decision>p{max-width:700px}.decision .grid{margin-top:35px}.checks label{display:flex;gap:14px;border-bottom:1px solid #c77e56;padding:20px 0;line-height:1.5;font-size:14px}.checks input{width:20px;height:20px;min-width:20px;accent-color:#242b24}#recommendation{background:#f6f4ed;padding:30px}#scale{border-left:4px solid #9973d8;padding:10px 25px;line-height:1.8}.journal{background:var(--purple);color:#242b24}.journal label{display:block;font-size:13px;font-weight:600}.journal textarea{display:block;width:100%;margin:12px 0 24px;min-height:110px;padding:16px;font:15px 'DM Sans';color:#242b24;border:1px solid #b8a1d8;background:#f6f4ede0;resize:vertical}.journal .cta{background:#242b24;color:#f6f4ed}#status{font-size:12px;margin-left:20px}.closing{background:var(--lime);color:#242b24;text-align:center}.closing h2{max-width:800px;margin:auto;min-height:140px}.closing button{background:none;border:1px solid #242b24;padding:15px 20px;margin-top:25px}footer{padding:40px 6vw;display:flex;gap:25px;flex-wrap:wrap;align-items:center;font-size:12px}footer p{margin-right:auto}footer small{width:100%;border-top:1px solid var(--line);padding-top:22px;line-height:1.8}footer small a{text-decoration:underline}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}@media(max-width:850px){.art{right:-100px;opacity:.4}.hero{min-height:730px}h1{font-size:85px}.heading{display:block}.heading p{margin-top:25px;max-width:600px}.steps,.history{grid-template-columns:1fr 1fr}.ticker{font-size:10px}}@media(max-width:580px){header{padding:18px 6vw}.logo{font-size:24px}nav{gap:14px;font-size:11px}nav a:nth-child(2){display:none}section{padding:55px 6vw}.hero{padding-top:35px;min-height:710px}h1{font-size:68px}.art{top:220px;right:-200px;opacity:.25}.hero>p{max-width:270px}.eyebrow{font-size:9px;letter-spacing:1.4px}.bottom{max-width:250px;line-height:1.8}.ticker{font-size:9px}.ticker span{display:none}.grid{grid-template-columns:1fr}.manifesto .grid{gap:5px}.manifesto h2{font-size:49px}#movement{padding:28px}.steps{gap:16px}#discipline{padding:25px}.history{grid-template-columns:1fr}.closing h2{min-height:155px}#status{display:block;margin:15px 0 0}}
/* Keep labels, movement numbers, and diagram text readable at every size. */
.eyebrow{font-size:12px;line-height:1.6;letter-spacing:1.3px}.small,#status{font-size:14px}.movements button{font-size:17px;font-weight:600}.steps b{font-size:15px}.journal label{font-size:15px}.art{opacity:1;pointer-events:none}.art b{z-index:2;background:var(--bg);color:var(--ink);padding:12px;border-radius:12px;font-weight:600}.hero .cta,.hero .bottom{position:relative;z-index:3}.journal textarea::placeholder{color:#57515e;opacity:1}#recommendation{color:#242b24}
@media(max-width:850px){.art{position:relative;top:auto;right:auto;transform:rotate(-10deg);width:360px;height:360px;margin:35px auto 0;opacity:1}.art b{top:145px;left:95px;font-size:22px}.art strong{width:58px;height:58px;font-size:34px;left:55px;top:10px}.art strong:nth-last-child(2){top:170px;right:0}.art strong:last-child{left:65px}.hero{min-height:0}.hero .bottom{margin-top:30px}h1{font-size:clamp(52px,10vw,85px)}}
@media(max-width:580px){.art{width:min(320px,100%);height:320px;top:auto;right:auto;opacity:1;margin:28px auto 0}.art b{top:128px;left:80px;font-size:20px}.hero{min-height:0}.eyebrow{font-size:11px;letter-spacing:1px}.ticker{font-size:11px;line-height:1.6}.movements button{font-size:17px}}
.transform-section{background:var(--blue);color:#242b24}.transform-stage{max-width:850px;margin:0 auto}.transform-stage svg{width:100%;height:auto;display:block;overflow:visible}.transform-stage text{font:600 16px 'DM Sans',sans-serif;fill:#242b24}.motion-controls{display:flex;gap:25px;align-items:center;max-width:850px;margin:20px auto}.motion-controls button,#export-reps{background:transparent;border:1px solid currentColor;padding:14px 18px;font-size:14px}.motion-controls label{flex:1;font-size:14px;font-weight:600}.motion-controls output{float:right}.motion-controls input{display:block;width:100%;margin-top:15px;accent-color:#6b4aba}.transform-section a{text-decoration:underline}.gym{background:#e7eedb;color:#242b24}.exercise-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:35px 0}.exercise-tabs button{background:transparent;border:1px solid #8f9c82;padding:18px 12px;font-size:14px;text-align:left;transition:background .2s,transform .2s}.exercise-tabs button.selected{background:#242b24;color:#f6f4ed;transform:translateY(-4px)}.workout{background:#f6f4ed;border:1px solid #a0ac94;padding:32px}.workout h3{font-size:32px}.workout li{line-height:1.8;margin-bottom:12px}.workout label{font-weight:600;font-size:15px}.workout textarea{width:100%;display:block;min-height:190px;padding:16px;border:1px solid #a0ac94;background:white;color:#242b24;font:16px 'DM Sans',sans-serif;margin:14px 0;resize:vertical}.workout .cta{background:#242b24;color:#f6f4ed}#rep-status{font-size:13px}.trail-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:35px 0 20px}.trail-head span{font-size:14px}#rep-list{padding:0;list-style:none}#rep-list li{border-top:1px solid #a0ac94;padding:22px 0;animation:rep-in .4s ease both}#rep-list p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}#rep-list small{font-size:12px}.gym .small{font-size:13px}@keyframes rep-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:580px){.exercise-tabs{grid-template-columns:1fr 1fr}.motion-controls{flex-wrap:wrap;gap:15px}.motion-controls label{order:3;flex-basis:100%}.workout{padding:22px}.trail-head{align-items:start;flex-direction:column}.transform-stage text{font-size:17px}}
.reflection-flow{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:30px 0 15px}.reflection-flow span{border:1px solid #8b71b3;padding:14px;font-size:14px;background:#f6f4ed;transition:background .3s,transform .3s}.reflection-flow span.active{background:#d1fc64;transform:translateY(-3px);box-shadow:0 0 0 5px #d1fc6440;animation:checkpoint 2s ease-in-out infinite}.reflection-flow b{font-size:20px}@keyframes checkpoint{50%{box-shadow:0 0 0 9px #d1fc6420}}
