:root{color:#2f0a4a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;font-family:Courier New,Courier,monospace}*,:before,:after{box-sizing:border-box}html{color:#2f0a4a;scroll-behavior:smooth;background:#fff;width:100%;margin:0;padding:0}body{color:#2f0a4a;background:#fff;width:100%;min-width:320px;min-height:100vh;margin:0;padding:0;font-family:Courier New,Courier,monospace;overflow-x:hidden}body,button,a,input,textarea{font-family:Courier New,Courier,monospace}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}img,video,canvas,svg{max-width:100%;display:block}#root{color:#2f0a4a;background:#fff;width:100%;min-height:100vh;margin:0;padding:0;position:relative}:root{--dark-purple:#2f0a4a;--white:#fff;--page-side-padding:24px;--opening-max-size:400px;--about-max-size:24px}.site{width:100%;min-height:100vh;color:var(--dark-purple);background:var(--white);margin:0;padding:0;position:relative;overflow-x:hidden}.site-menu{z-index:1000;width:max-content;max-width:calc(100vw - 32px);color:var(--dark-purple);text-align:right;background:0 0;flex-direction:column;justify-content:flex-start;align-items:flex-end;gap:2px;margin:0;padding:0;font-family:Courier New,Courier,monospace;display:flex;position:fixed;top:24px;right:26px}.site-menu__item{width:auto;min-width:0;color:var(--dark-purple);box-shadow:none;letter-spacing:-.06em;text-align:right;text-transform:lowercase;appearance:none;cursor:pointer;background:0 0;border:0;border-radius:0;outline:0;margin:0;padding:0;font-family:Courier New,Courier,monospace;font-size:clamp(14px,1.18vw,17px);font-weight:400;line-height:1.2;display:block}.site-menu__item:hover,.site-menu__item--active{font-style:italic}.site-menu__item:focus-visible{text-underline-offset:3px;text-decoration:underline}.site-menu__marker{text-align:left;width:1.25em;display:inline-block}.opening{width:100%;min-height:100vh;padding:120px var(--page-side-padding) 100px;color:var(--dark-purple);background:var(--white);cursor:none;isolation:isolate;margin:0;position:relative;overflow:hidden}.opening__text{z-index:2;width:100%;max-width:none;color:var(--dark-purple);font-family:Courier New,Courier,monospace;font-size:clamp(120px, 27.8vw, var(--opening-max-size));letter-spacing:-.14em;text-align:left;background:0 0;margin:0;padding:0;font-weight:400;line-height:.58;display:block;position:relative}.opening__text-group{width:100%;margin:0;padding:0;display:block}.opening__line{width:max-content;max-width:calc(100vw - (var(--page-side-padding) * 2));font-size:min(1em, calc(( 100vw - (var(--page-side-padding) * 2) ) / (var(--line-length) * .5)));white-space:nowrap;display:block}.letter{color:var(--dark-purple);opacity:1;filter:blur();will-change:transform, opacity, filter;transition:transform .65s cubic-bezier(.16,1,.3,1),opacity .4s,filter .4s;display:inline-block;position:relative;transform:translate(0,0)rotate(0)}.letter--space{width:.37em}.opening-interlude{width:100%;min-height:165vh;color:var(--dark-purple);background:var(--white);letter-spacing:normal;justify-content:center;align-items:center;margin:15vh 0 18vh;padding:0;font-size:clamp(12px,1.05vw,15px);line-height:1.4;display:flex;position:relative}.opening-interlude__text{width:auto;max-width:min(80%,620px);color:var(--dark-purple);font-family:Avenir,Avenir Next,Century Gothic,sans-serif;font-size:inherit;letter-spacing:0;text-align:left;margin:0;font-style:oblique;font-weight:300;line-height:1.45;display:block;transform:translate(-7vw)}.opening-interlude__line{white-space:nowrap;width:max-content;max-width:100%;display:block}.opening-interlude__line--indented{margin-left:5em}.spider{z-index:20;pointer-events:none;opacity:0;will-change:transform, opacity;place-items:center;width:42px;height:42px;transition:opacity .18s;display:grid;position:absolute;top:0;left:0}.spider--visible{opacity:1}.spider__body{z-index:3;pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:50%;will-change:transform;place-items:center;width:27px;height:27px;font-size:24px;line-height:1;animation:1.7s ease-in-out infinite spider-movement;display:grid;position:relative;transform:rotate(-10deg)scale(1)}.spider__thread{z-index:1;pointer-events:none;transform-origin:50% 100%;will-change:transform, filter;width:160px;height:150vh;animation:3.2s cubic-bezier(.45,0,.55,1) infinite spider-thread-sway;display:block;position:absolute;bottom:58%;right:50%;overflow:visible;transform:translate(50%)rotate(-.4deg)scaleX(1)}.spider__thread-path{fill:none;stroke:#2f0a4a52;stroke-width:1.15px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;transform-box:fill-box;transform-origin:bottom;will-change:opacity, transform, stroke-dashoffset}.spider__thread-path--one{stroke-dasharray:11 3 27 2;animation:4.1s ease-in-out infinite spider-thread-path-one}.spider__thread-path--two{opacity:0;stroke-dasharray:18 2 7 3;animation:4.1s ease-in-out infinite spider-thread-path-two}@keyframes spider-movement{0%,to{transform:translate(-1px)rotate(-12deg)scale(1)}25%{transform:translate(1px,-1px)rotate(-7deg)scale(1.05)}50%{transform:translate(2px,1px)rotate(-3deg)scale(1.12)}75%{transform:translate(-1px,1px)rotate(-8deg)scale(1.04)}}@keyframes spider-thread-sway{0%,to{filter:blur();transform:translate(50%)rotate(-1.5deg)skew(-3deg)scaleX(.9)}18%{filter:blur(.08px);transform:translate(48%)rotate(.4deg)skew(2deg)scaleX(1.08)}38%{filter:blur();transform:translate(52%)rotate(1.8deg)skew(4deg)scaleX(.95)}58%{filter:blur(.12px);transform:translate(49%)rotate(-.2deg)skew(-1deg)scaleX(1.12)}78%{filter:blur();transform:translate(51%)rotate(-2deg)skew(-4deg)scaleX(.93)}}@keyframes spider-thread-path-one{0%,to{opacity:1;stroke-dashoffset:0;transform:translate(-5px)skew(-1deg)scaleX(.96)}25%{opacity:.6;stroke-dashoffset:-14px;transform:translate(5px)skew(2deg)scaleX(1.05)}50%{opacity:.08;stroke-dashoffset:-29px;transform:translate(10px)skew(4deg)scaleX(.92)}75%{opacity:.65;stroke-dashoffset:-43px;transform:translate(-2px)skew(-2deg)scaleX(1.08)}}@keyframes spider-thread-path-two{0%,to{opacity:0;stroke-dashoffset:-43px;transform:translate(7px)skew(3deg)scaleX(1.04)}25%{opacity:.42;stroke-dashoffset:-29px;transform:translate(-3px)skew(-1deg)scaleX(.94)}50%{opacity:.95;stroke-dashoffset:-14px;transform:translate(-9px)skew(-4deg)scaleX(1.08)}75%{opacity:.35;stroke-dashoffset:0;transform:translate(3px)skew(2deg)scaleX(.96)}}.about-page{width:100%;min-height:100vh;padding:130px var(--page-side-padding) 50px;color:var(--dark-purple);background:var(--white);margin:0;position:relative;overflow:hidden}.about-page__content{width:100%;margin:0;padding:0}.about-block{font-family:Miriam Fixed,Miriam Mono CLM,Courier New,Courier,monospace;font-size:clamp(15px, 1.67vw, var(--about-max-size));letter-spacing:-.5px;font-weight:400;line-height:1}.about-block p{margin:0;padding:0}.about-line{width:max-content;max-width:calc(100vw - (var(--page-side-padding) * 2));min-height:1.42em;font-size:min(1em, calc(( 100vw - (var(--page-side-padding) * 2) ) / (var(--line-length) * .61)));white-space:nowrap;display:block}.about-line--empty{opacity:0}.about-letter{color:var(--dark-purple);opacity:.16;transform-origin:50%;will-change:transform, opacity;transition:transform .62s cubic-bezier(.16,1,.3,1),opacity .42s;display:inline-block;position:relative;transform:translate(0,0)rotate(0)}.about-letter--space{width:.6em}.about-block--introduction{text-align:left;width:min(1350px,94vw);margin-left:0;margin-right:auto}.about-block--concepts{text-align:left;width:min(1120px,82vw);margin-top:34vh;margin-left:13vw;margin-right:4vw}.about-block--practice{text-align:right;width:min(1180px,86vw);margin-top:38vh;margin-left:auto;margin-right:0}.about-block--practice .about-line{margin-left:auto;margin-right:0}.about-block--materials{text-align:left;width:min(1250px,88vw);margin-top:42vh;margin-left:7vw;margin-right:7vw}.about-block--production{text-align:left;width:min(1120px,82vw);margin-top:38vh;margin-left:2vw;margin-right:auto}.star-group{color:var(--dark-purple);pointer-events:none;align-items:center;font-family:Miriam Fixed,Miriam Mono CLM,Courier New,Courier,monospace;display:flex}.star-group--centre{justify-content:center;gap:15vw;width:100%;margin-top:24vh}.star-group--right{justify-content:flex-end;width:82%;margin-top:27vh;margin-left:auto;margin-right:0}.star-group--final{justify-content:flex-start;gap:22vw;width:75%;margin-top:27vh;margin-left:8vw;margin-right:auto}.interactive-star{transform-origin:50%;will-change:transform;font-size:clamp(30px,3.2vw,46px);line-height:1;transition:transform 1.1s cubic-bezier(.16,1,.3,1);display:inline-block;transform:rotate(0)scale(1)}.interactive-star--large{font-size:clamp(42px,4.5vw,65px)}.section-page{width:100%;min-height:100vh;padding:130px var(--page-side-padding) 50px;color:var(--dark-purple);background:var(--white);justify-content:flex-start;align-items:flex-start;margin:0;display:flex;position:relative}.section-page__content{flex-direction:column;width:100%;min-height:calc(100vh - 180px);display:flex}.section-page__title{max-width:calc(100vw - (var(--page-side-padding) * 2));color:var(--dark-purple);letter-spacing:-.1em;overflow-wrap:anywhere;margin:0;padding:0;font-family:Courier New,Courier,monospace;font-size:clamp(54px,13vw,190px);font-weight:400;line-height:.82}.return-home{width:max-content;max-width:100%;color:var(--dark-purple);box-shadow:none;letter-spacing:-.06em;text-align:right;appearance:none;cursor:pointer;background:0 0;border:0;border-radius:0;outline:0;margin:35vh 0 0 auto;padding:0;font-family:Courier New,Courier,monospace;font-size:clamp(14px,1.18vw,17px);font-weight:400;line-height:1.2;display:block}.section-page .return-home{margin-top:auto;padding-top:20vh}.return-home:hover{font-style:italic}.return-home:focus-visible{text-underline-offset:4px;text-decoration:underline}@media (width<=1000px){:root{--page-side-padding:18px}.opening{padding-top:110px;padding-bottom:90px}.opening-interlude{min-height:150vh;margin:13vh 0 16vh}.opening-interlude__text{transform:translate(-5vw)}.about-page,.section-page{padding-top:120px;padding-bottom:45px}.about-block--concepts{width:86vw;margin-left:10vw}.about-block--practice{width:90vw}.about-block--materials{width:90vw;margin-left:5vw;margin-right:5vw}.about-block--production{width:86vw}.star-group--right{width:88%}.star-group--final{width:80%;margin-left:6vw}}@media (width<=700px){:root{--page-side-padding:12px}.site-menu{top:16px;right:16px}.site-menu__item{font-size:14px}.opening{min-height:100vh;padding-top:110px;padding-bottom:70px}.opening__text{font-size:clamp(96px,38vw,170px)}.opening-interlude{min-height:135vh;margin:11vh 0 14vh}.opening-interlude__text{max-width:92%;transform:translate(-3vw)}.opening-interlude__line--indented{margin-left:3em}.about-page,.section-page{padding-top:120px;padding-bottom:35px}.about-block{font-size:clamp(15px,4.7vw,24px);line-height:1.45}.about-block--introduction{width:100%;margin-left:0;margin-right:0}.about-block--concepts{width:94%;margin-top:26vh;margin-left:6%;margin-right:0}.about-block--practice{text-align:right;width:94%;margin-top:29vh;margin-left:auto;margin-right:0}.about-block--materials{width:96%;margin-top:32vh;margin-left:2%;margin-right:2%}.about-block--production{width:96%;margin-top:29vh;margin-left:0;margin-right:auto}.star-group--centre{gap:20vw;margin-top:20vh}.star-group--right{width:92%;margin-top:22vh}.star-group--final{gap:42vw;width:100%;margin-top:23vh;margin-left:0}.return-home{margin-top:28vh;font-size:14px}.section-page__title{font-size:clamp(50px,19vw,110px)}}@media (width<=390px){:root{--page-side-padding:10px}.site-menu{top:13px;right:12px}.site-menu__item{font-size:13px;line-height:1.15}.opening,.about-page,.section-page{padding-top:108px}.opening__text{font-size:clamp(82px,36vw,140px)}.opening-interlude__text{font-size:12px}}@media (hover:none){.opening{cursor:auto}.spider{display:none}.about-letter{opacity:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.letter,.spider,.spider__body,.spider__thread,.spider__thread-path,.about-letter,.interactive-star{transition:none;animation:none}.about-letter{opacity:1}}@media (width<=700px){html,body{width:100%;max-width:100%;overflow-x:hidden}#root{width:100%;max-width:100%;min-height:100vh}img,svg{max-width:100%}}
