:root{
  --knowing:0;
  --presence:0;
  --ink:#2b2730;
  --violet:#6f3b82;
  --paper:#f7f3ec;
  --screen-left:10.2vw;
  --screen-top:8vh;
  --screen-width:79.6vw;
  --screen-height:75.8vh;
}
*{box-sizing:border-box}
html{background:#171316;scroll-behavior:auto}
body{margin:0;min-height:980vh;overflow-x:hidden;background:#171316;color:var(--ink);font-family:Georgia,'Times New Roman',serif}
.scene{position:fixed;inset:0;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 45%,#2b2026 0,#171316 68%,#100d10 100%);z-index:0}
#sceneCanvas{display:block;width:100%;height:100%}
.scene-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,rgba(16,10,14,.22) 100%)}
.scene-grain{position:absolute;inset:-60px;pointer-events:none;opacity:.028;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.72'/%3E%3C/svg%3E");animation:grain .8s steps(2) infinite}

.laptop-screen{position:fixed;z-index:4;left:var(--screen-left);top:var(--screen-top);width:var(--screen-width);height:var(--screen-height);overflow:hidden;border-radius:3px;background:transparent;box-shadow:none;isolation:isolate}
.paper-life{display:none}

.document-header{position:absolute;z-index:5;left:4.2%;right:3.5%;top:4.6%;display:flex;justify-content:space-between;align-items:center;font:clamp(7px,.58vw,10px) Arial,sans-serif;letter-spacing:.45em;color:#332d35}
.document-header a{color:inherit;text-decoration:none}.wordmark span{font-size:1.3em;margin-right:.8em}.document-header p{margin:0}.document-header b{font-weight:400}.document-header span{opacity:.6}
.document-viewport{position:absolute;z-index:3;left:22%;right:22%;top:13%;bottom:5%;overflow:hidden;mask-image:linear-gradient(to bottom,transparent 0,#000 3%,#000 96%,transparent 100%)}
#manifestoDocument{will-change:transform;padding:8vh 0 30vh;width:min(1240px,98%);margin:0 auto}
.chapter{min-height:78vh;padding:7vh 0 12vh;opacity:.38;transition:opacity 1.2s ease;text-align:center}.chapter.is-visible{opacity:1}
.eyebrow{font:clamp(7px,.52vw,9px) Arial,sans-serif;letter-spacing:.4em;color:#665e67;margin:0 0 3.2vh;text-align:center}
h1,h2{font-weight:400;letter-spacing:.035em;line-height:1.2;margin:0 auto 5vh;font-size:clamp(31px,3.3vw,57px);max-width:32ch}h2{font-size:clamp(28px,2.95vw,50px)}
.chapter>p,.breath-lines,.sensory-list,.invitation{font-size:clamp(18px,1.35vw,24px);line-height:1.72;max-width:97ch;margin-left:auto;margin-right:auto}.chapter>p{margin-top:0;margin-bottom:1.5em}.breath-lines p,.sensory-list p,.invitation p{margin:.28em 0}.breath-lines,.sensory-list{margin-top:0;margin-bottom:2.6em}.sensory-list{padding:0;border:0}
.statement{font-size:clamp(20px,1.65vw,28px)!important;line-height:1.52!important;margin:2.8em auto!important;max-width:81ch!important}.question{font-size:clamp(21px,1.95vw,33px)!important;line-height:1.46!important;margin:2.5em auto!important;color:#45384a;max-width:68ch!important}
.invitation{font-size:clamp(20px,1.71vw,30px);line-height:1.55;margin:3.6em auto;color:#3f3942;max-width:92ch}.closing{font-size:clamp(20px,1.71vw,30px)!important;line-height:1.55!important;margin:3.4em auto 0!important;max-width:73ch!important}
em{display:inline-block;font-weight:400;font-style:normal;color:var(--violet);text-shadow:0 0 13px rgba(119,62,139,.14);animation:livingWord 7s ease-in-out infinite;transform-origin:50% 70%}.living-word-unit{display:inline-block;white-space:nowrap;position:relative;isolation:isolate;padding:0;margin:0;background:transparent;box-shadow:none;transition:width .9s ease,margin .9s ease,padding .9s ease,opacity .55s ease,filter .55s ease}
.living-word-unit.trigger-word{padding:.08em .18em;margin:0 .025em;animation:wordMist 6.8s ease-in-out infinite alternate}.living-word-unit.trigger-word::before,.living-word-unit.trigger-word::after,.flying-word::before,.flying-word::after{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-.42em -.62em;background:radial-gradient(ellipse 42% 48% at 17% 54%,rgba(255,255,255,.72) 0,rgba(255,255,255,.31) 45%,transparent 78%),radial-gradient(ellipse 36% 55% at 45% 38%,rgba(255,255,255,.62) 0,rgba(255,255,255,.24) 47%,transparent 80%),radial-gradient(ellipse 45% 44% at 76% 58%,rgba(255,255,255,.68) 0,rgba(255,255,255,.26) 43%,transparent 79%),radial-gradient(ellipse 24% 31% at 91% 34%,rgba(255,255,255,.48) 0,transparent 76%);filter:blur(.16em);opacity:.9;transform:rotate(-2deg) scale(1.04,.88)}.living-word-unit.trigger-word::after,.flying-word::after{inset:-.64em -.82em;background:radial-gradient(ellipse 34% 39% at 14% 42%,rgba(255,255,255,.38),transparent 74%),radial-gradient(ellipse 49% 36% at 54% 67%,rgba(255,255,255,.34),transparent 76%),radial-gradient(ellipse 31% 45% at 88% 48%,rgba(255,255,255,.32),transparent 73%);filter:blur(.3em);opacity:.76;transform:rotate(3deg)}.living-letter{display:inline-block;will-change:transform,opacity,filter;transform-origin:50% 72%}.living-word-unit.is-departing{opacity:0;width:0!important;margin-left:0;margin-right:0;padding-left:0;padding-right:0;filter:blur(6px);overflow:hidden}.flying-word{position:fixed;top:0;left:0;z-index:12;pointer-events:none;white-space:nowrap;color:var(--ink);font:inherit;line-height:1;padding:.14em .24em;background:transparent;will-change:transform,opacity,filter;transform-origin:center;mix-blend-mode:screen}.flying-word::before{inset:-.58em -.86em;opacity:1;filter:blur(.2em)}.flying-word::after{inset:-.82em -1.05em;opacity:.88;filter:blur(.36em)}.flying-word em{color:inherit}.living-letter.is-breathing{animation:letterPulse 4.8s ease-in-out infinite}.living-letter.is-flickering{animation:letterFlicker 9.5s steps(1,end) infinite}.living-letter.is-shifting{animation:letterShift 12s ease-in-out infinite}
/* Farewell finale: enlarged emotional handoff into Founders. */
.farewell{
  min-height:72vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  margin-top:10vh;
  padding:8vh 5vw 12vh;
  border-top:1px solid rgba(70,57,72,.14);
}
.farewell>p:first-child{
  font-size:clamp(18px,1.6vw,28px);
  line-height:1.4;
  margin:0 0 2vh;
}
.farewell h2{
  font-size:clamp(58px,7vw,110px);
  line-height:.95;
  max-width:14ch;
  margin:2vh auto 4vh;
}
.farewell .closing{
  font-size:clamp(26px,2.3vw,42px)!important;
  line-height:1.35!important;
  max-width:38ch!important;
  margin:0 auto 6vh!important;
}
.farewell h2 em,
.farewell .closing em,
.farewell .final-word{
  color:#dfb9ec;
  text-shadow:0 0 10px rgba(223,185,236,.22),0 0 26px rgba(223,185,236,.12);
  animation:finalVioletBloom 2.2s ease both;
}
.founders-link{
  display:block;
  width:max-content;
  max-width:100%;
  margin:6vh auto 0;
  padding:14px 0;
  border-bottom:1px solid var(--violet);
  color:var(--ink);
  text-decoration:none;
  font:clamp(9px,.75vw,13px) Arial,sans-serif;
  letter-spacing:.25em;
}
.founders-link span{
  color:var(--violet);
  font-size:1.45em;
  margin-left:1em;
}

.document-footer{position:absolute;z-index:5;left:4.3%;right:3.8%;bottom:3.2%;display:flex;justify-content:space-between;font:clamp(6px,.47vw,8px) Arial,sans-serif;letter-spacing:.36em;color:#544d56}.document-footer span:first-child{writing-mode:vertical-rl;transform:rotate(180deg);position:absolute;left:0;bottom:0;transform-origin:left bottom}.document-footer span:last-child{margin-left:auto}
.sound-toggle,.scroll-cue{position:fixed;z-index:7;border:0;background:rgba(247,243,236,.72);backdrop-filter:blur(8px);color:#2d2830;font:9px Arial,sans-serif;letter-spacing:.22em}.sound-toggle{right:24px;top:20px;padding:10px 12px;cursor:pointer}.scroll-cue{left:50%;bottom:17px;transform:translateX(-50%);padding:9px 14px;transition:opacity .8s ease}.scroll-cue span{font-size:14px;margin-left:8px}

@keyframes grain{0%{transform:translate(0)}25%{transform:translate(2%,1%)}50%{transform:translate(-1%,2%)}75%{transform:translate(1%,-2%)}}
@keyframes paperBreath{to{transform:scale(1.004);filter:brightness(1.014)}}
@keyframes paperDrift{to{transform:translate(2%,1.4%)}}
@keyframes livingWord{0%,100%{filter:brightness(1);transform:scale(1)}50%{filter:brightness(1.1);transform:scale(1.008)}}
@keyframes wordMist{0%{filter:drop-shadow(-.14em .02em .36em rgba(255,255,255,.4))}46%{filter:drop-shadow(.11em -.08em .5em rgba(255,255,255,.58))}100%{filter:drop-shadow(-.04em .1em .62em rgba(255,255,255,.48))}}
@keyframes letterPulse{0%,100%{transform:translateY(0) scale(1);opacity:1;filter:none}45%{transform:translateY(-.025em) scale(1.065);opacity:.86;filter:brightness(1.08)}55%{transform:translateY(-.018em) scale(1.048);opacity:.91;filter:brightness(1.04)}}
@keyframes letterFlicker{0%,84%,87%,90%,93%,100%{opacity:1;filter:none;text-shadow:none}85%{opacity:.48;filter:blur(.35px);text-shadow:.018em 0 rgba(112,67,130,.35)}88%{opacity:.82;filter:brightness(1.15)}91%{opacity:.66;transform:translateX(.018em)}92%{opacity:1;transform:translateX(0)}}
@keyframes letterShift{0%,100%{transform:translate(0,0) rotate(0)}46%{transform:translate(.028em,-.018em) rotate(.35deg)}53%{transform:translate(-.018em,.012em) rotate(-.25deg)}}

@keyframes finalVioletBloom{
  from{color:rgba(250,247,251,.95);text-shadow:none}
  to{color:#dfb9ec;text-shadow:0 0 10px rgba(223,185,236,.22),0 0 26px rgba(223,185,236,.12)}
}

@media(max-width:900px){
  body{min-height:1080vh}.document-header{font-size:6px}.document-viewport{left:9%;right:9%;top:12%;bottom:10%}.document-footer span:first-child{display:none}
  #manifestoDocument{width:98%;padding-top:7vh}.chapter{padding:5vh 0 10vh}.sound-toggle{right:8px;top:8px;font-size:7px}.scroll-cue{font-size:7px}
}
@media(max-width:560px){
  body{min-height:1180vh}.document-header{top:4%;font-size:5px}.document-viewport{left:7%;right:7%;top:11%;bottom:8%}
  h1,h2{font-size:clamp(26px,7.2vw,40px)}.chapter>p,.breath-lines,.sensory-list,.invitation{font-size:14px}.chapter{min-height:90vh;padding-bottom:12vh}
  .farewell{min-height:78vh;padding:9vh 5vw 14vh}.farewell>p:first-child{font-size:clamp(17px,4.8vw,23px)}.farewell h2{font-size:clamp(50px,14vw,78px);max-width:10ch}.farewell .closing{font-size:clamp(22px,6.2vw,32px)!important;max-width:20ch!important}.farewell .founders-link{font-size:clamp(9px,2.5vw,12px)}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition-duration:.01ms!important}.scene-grain{display:none}}

/* Final reading focus: a dark field only behind the scrolling manifesto. */
.document-viewport{
  background:rgba(8,7,10,calc(.50 - (var(--knowing) * .14)));
  border-radius:clamp(12px,1.4vw,24px);
  box-shadow:
    0 0 14px rgba(0,0,0,.28),
    0 0 34px rgba(0,0,0,.16),
    inset 0 0 26px rgba(0,0,0,.16);
  backdrop-filter:blur(10px) saturate(.84);
  -webkit-backdrop-filter:blur(10px) saturate(.84);
}
#manifestoDocument{
  color:rgba(250,247,251,.95);
  padding-left:clamp(18px,3vw,54px);
  padding-right:clamp(18px,3vw,54px);
}
.eyebrow{color:rgba(236,228,239,.72)}
.question,.invitation{color:rgba(250,242,252,.96)}
em{color:#dfb9ec;text-shadow:0 0 13px rgba(225,183,238,.28)}
.farewell{border-top-color:rgba(255,255,255,.16)}
.founders-link{color:rgba(250,247,251,.95);border-bottom-color:#dcb3e9}
.founders-link span{color:#dfb9ec}
.flying-word{color:rgba(255,255,255,.98)}

/* 2026-08-09 Flow pass: reduce expensive compositing while preserving the Living Manifesto feel. */
.scene-grain{animation:none;opacity:.018}
.document-viewport{
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.chapter{transition:opacity .35s ease}
.living-word-unit{will-change:auto;transition:width .55s ease,margin .55s ease,padding .55s ease,opacity .38s ease}
.living-word-unit.is-breathing{animation:letterPulse 5.8s ease-in-out infinite}
.living-word-unit.is-flickering{animation:letterFlicker 11s steps(1,end) infinite}
.living-word-unit.is-shifting{animation:letterShift 13s ease-in-out infinite}
.flying-word{mix-blend-mode:normal}
@media(max-width:900px){
  .scene-grain{display:none}
  .living-word-unit.is-flickering,.living-word-unit.is-shifting{animation:none}
  .document-viewport{box-shadow:0 0 18px rgba(0,0,0,.24),inset 0 0 18px rgba(0,0,0,.12)}
}
