*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#090f19;color:#f3eee3;font-family:Montserrat,Arial,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:#d6687a;color:#090f19}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #edc987;outline-offset:7px}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;position:relative;z-index:20}.wordmark{font-family:'Playfair Display',Georgia,serif;font-size:21px;letter-spacing:2px}.wordmark span{color:#d4af67;margin:0 8px;font-size:27px}.header-note{font-size:11px;letter-spacing:2px;color:#9ba4b0}.about-toggle{border:0;background:transparent;font-size:14px;padding:12px 0;display:flex;gap:20px;align-items:center}.about-toggle span{font-size:25px;color:#d8b578}.universe{height:calc(100svh - 145px);min-height:800px;max-height:1150px;position:relative;overflow:hidden;isolation:isolate}.cosmos{position:absolute;inset:0;background:radial-gradient(ellipse at 52% 48%,#143c4d65,transparent 46%),radial-gradient(ellipse at 76% 59%,#142a393b,transparent 65%);z-index:-1}.coordinate{position:absolute;font-size:11px;letter-spacing:2px;color:#bd9f6c;z-index:2}.coordinate-a{left:4.5%;top:5px}.coordinate-b{right:30px;top:44%;writing-mode:vertical-rl;font-size:10px;color:#85929e}h1{margin:0;font-family:'Playfair Display',Georgia,serif;font-weight:400;letter-spacing:-.075em;line-height:1.12}.title-top{position:absolute;top:2%;left:3.5%;font-size:clamp(100px,15.9vw,265px);z-index:2;transition:opacity .8s}.title-bottom{position:absolute;top:48%;right:6.4%;font-size:clamp(130px,18.5vw,295px);font-style:italic;z-index:6;color:#e6c38b;transition:opacity .8s}.bloom-position{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);width:min(50vw,750px);aspect-ratio:1;z-index:4;pointer-events:none}.bloom-motion{width:100%;height:100%;transform:translate(var(--mx,0px),var(--my,0px));transition:transform 1s ease-out}.bloom{width:100%;height:100%;transform:scale(1);transition:transform 4s linear;filter:drop-shadow(0 12px 55px #02050a);will-change:transform}.bloom img{display:block;width:100%;height:100%;object-fit:cover;mask-image:radial-gradient(ellipse 49% 46% at 50% 44%,#000 56%,#000c 68%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 49% 46% at 50% 44%,#000 56%,#000c 68%,transparent 100%)}.orbits{position:absolute;width:min(69vw,1000px);height:80%;left:50%;top:48%;transform:translate(-50%,-50%);pointer-events:none;z-index:1}.orbit{position:absolute;border:1px solid #d4af6745;border-radius:50%;inset:0}.ecliptic{transform:rotate(-24deg);height:66%;top:20%;width:115%;left:-8%}.meridian{transform:rotate(37deg);width:63%;height:110%;top:-8%;left:18%;border-color:#d4af672c}.equator{transform:rotate(-7deg);width:93%;height:84%;left:4%;top:5%;border-color:#d4af6722}.orbit-star{position:absolute;color:#d8b578;font-size:55px}.star-one{top:19%;right:2%}.star-two{bottom:16%;left:12%;font-size:28px}.whisper{position:absolute;left:6%;top:44%;z-index:7;transition:opacity .8s}.whisper p{font-size:21px;line-height:1.65;color:#c3c9ce;margin:15px 0 0}.whisper em{font-family:'Playfair Display',Georgia,serif;font-size:33px;font-style:italic;color:#f3eee3}.little-line{display:block;width:42px;height:1px;background:#d4af67}.satellite{margin:0;position:absolute;z-index:5;transition:opacity .8s;pointer-events:none}.satellite img{display:block;width:100%;height:100%;object-fit:cover;mask-image:radial-gradient(ellipse,#000 28%,#000e 48%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse,#000 28%,#000e 48%,transparent 72%)}.satellite figcaption{position:absolute;color:#c2b7a8;font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:21px;white-space:nowrap}.heart{right:6%;top:24%;width:140px;height:155px;transform:rotate(12deg)}.heart figcaption{right:72%;top:58%;transform:rotate(-12deg)}.rose{right:25%;bottom:6%;width:145px;height:150px;transform:rotate(-18deg)}.rose figcaption{left:80%;top:65%;transform:rotate(18deg)}.ritual-button{position:absolute;left:15%;top:64%;width:155px;height:155px;border-radius:50%;border:0;background:#d9b77d;color:#16202a;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transform:rotate(-12deg);transition:transform .4s,background .4s}.ritual-button:hover{transform:rotate(0deg) scale(1.05);background:#efd0a0}.button-orbit{position:absolute;inset:-10px;border:1px solid #d4af6760;border-radius:50%;border-top-color:transparent;border-left-color:transparent;transform:rotate(-22deg)}.button-arrow{font-size:27px;line-height:1}.button-label{font-size:16px;line-height:1.4;font-weight:600}.button-time{font-size:11px;letter-spacing:2px;margin-top:2px}.ritual-status{position:absolute;top:78%;left:50%;transform:translateX(-50%);z-index:8;text-align:center;white-space:nowrap;transition:top .8s}.status-top{display:flex;align-items:center;justify-content:center;gap:16px}.status-line{height:1px;width:26px;background:#d4af6759}#phase{font-family:'Playfair Display',Georgia,serif;font-size:25px;font-style:italic;color:#e0c391}#counter{display:block;font-size:10px;letter-spacing:1.8px;color:#a2aab3;margin-top:13px}.timeless{position:absolute;left:4.5%;bottom:1%;font-family:'Playfair Display',Georgia,serif;letter-spacing:-.055em;font-size:clamp(60px,7.5vw,120px);line-height:1.25;margin:0;z-index:6;transition:opacity .8s}.timeless em{font-weight:400;color:#d8b578}.scene-footnote{position:absolute;right:4.5%;bottom:1%;font-size:15px;line-height:1.65;color:#a9b1b8;text-align:right;z-index:7;margin:0;transition:opacity .8s}footer{display:flex;align-items:center;justify-content:space-between;padding:15px 4.5%;font-size:10px;letter-spacing:2px;color:#8995a1;position:relative;z-index:10}.footer-star{color:#c5a976;font-size:25px;line-height:1}.about{position:absolute;inset:auto 5% 8% auto;width:500px;max-width:90%;padding:55px 45px;background:#0b1723ed;backdrop-filter:blur(25px);border:1px solid #d4af6759;z-index:30;box-shadow:0 30px 120px #0009;transform:rotate(-2deg)}.about[hidden]{display:none}.about-close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:32px;color:#d4af67}.about-eyebrow{font-size:11px;letter-spacing:2px;color:#d4af67}.about h2{font:400 39px/1.2 'Playfair Display',Georgia,serif;letter-spacing:-1px;margin:25px 0}.about h2 em{color:#d8b578}.about p{font-size:16px;line-height:1.8;color:#c3c9ce}.about .about-note{font-size:12px;color:#9eacb6}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.practicing .title-top,.practicing .title-bottom{opacity:.16}.practicing .whisper,.practicing .satellite,.practicing .timeless,.practicing .scene-footnote{opacity:.15}.practicing .bloom.inhale{transform:scale(1.12)}.practicing .bloom.exhale{transform:scale(.94);transition-duration:6s}.practicing .ritual-status{top:81%}.practicing #phase{font-size:38px}.practicing .ritual-button{background:#132433;color:#e2c38d;border:1px solid #d4af6799}.practicing .button-arrow{font-size:24px}.practicing .bloom-motion{transform:none}.finished #phase{font-size:32px}@media(min-width:1600px){.bloom-position{width:660px}.title-top{font-size:15vw}.title-bottom{font-size:17vw}.whisper{top:47%}.heart{right:8%;top:23%}.rose{bottom:7%;right:28%}}@media(max-width:1100px){.header-note{display:none}.universe{min-height:760px}.title-top{top:7%}.title-bottom{top:50%;right:4%}.bloom-position{width:57vw;top:48%}.whisper{left:5%;top:40%}.whisper p{font-size:17px}.whisper em{font-size:28px}.ritual-button{width:135px;height:135px;left:12%;top:63%}.heart{width:115px;height:135px;right:5%;top:21%}.heart figcaption{font-size:18px;right:58%;top:85%}.rose{right:21%;bottom:8%;width:120px;height:130px}.rose figcaption{font-size:18px;left:67%}.scene-footnote{font-size:13px}.ritual-status{top:75%}.timeless{bottom:3%;font-size:8vw}.orbits{width:80vw;height:67%}.coordinate-b{right:13px}.practicing .ritual-status{top:74%}}@media(max-width:680px){header{height:76px;padding:0 6%}.wordmark{font-size:16px;letter-spacing:1px}.wordmark span{margin:0 4px;font-size:23px}.about-toggle{font-size:12px;gap:10px}.about-toggle span{font-size:22px}.universe{height:850px;min-height:0;max-height:none}.coordinate-a{top:9px;left:6%;font-size:9px}.coordinate-b{top:30%;right:12px;font-size:8px}.title-top{top:42px;left:4%;font-size:15.5vw;letter-spacing:-.065em}.title-bottom{top:344px;right:6%;font-size:32vw;letter-spacing:-.075em}.bloom-position{width:106vw;max-width:520px;top:300px;left:50%}.orbits{top:306px;width:95vw;height:400px;left:50%}.ecliptic{height:75%;width:125%;left:-13%;top:10%;transform:rotate(-37deg)}.meridian{width:72%;height:118%;left:13%;top:-13%;transform:rotate(29deg)}.star-one{top:12%;right:5%;font-size:39px}.star-two{left:7%;bottom:16%;font-size:23px}.whisper{top:475px;left:7%}.whisper p{font-size:16px;line-height:1.55;margin-top:12px}.whisper em{font-size:25px}.little-line{width:25px}.heart{top:116px;right:0;width:85px;height:95px;z-index:5}.heart figcaption{font-size:16px;right:60%;top:18%}.rose{bottom:38px;right:4%;width:120px;height:135px;z-index:3}.rose figcaption{left:-34%;top:75%;font-size:18px}.ritual-button{width:125px;height:125px;left:auto;right:8%;top:530px}.button-label{font-size:14px}.button-arrow{font-size:25px}.button-time{font-size:10px}.ritual-status{top:632px;left:35%;max-width:66%;white-space:normal;width:66%}#phase{font-size:23px}.status-top{gap:10px}.status-line{width:17px}#counter{font-size:9px;letter-spacing:1.3px;margin-top:10px}.timeless{font-size:13vw;left:6%;bottom:65px;z-index:6;white-space:nowrap}.scene-footnote{left:7%;right:auto;bottom:12px;text-align:left;font-size:13px}.practicing .ritual-status{top:457px;left:50%;max-width:none;width:90%}.practicing #phase{font-size:32px}.practicing .whisper{opacity:0}.practicing .bloom.inhale{transform:scale(1.08)}.about{position:absolute;top:180px;bottom:auto;left:6%;right:auto;max-width:88%;width:auto;padding:40px 25px;transform:rotate(-1deg)}.about h2{font-size:34px}.about p{font-size:15px}.about .about-note{font-size:11px}footer{padding:18px 6%;font-size:8px;letter-spacing:1px}.footer-star{font-size:22px}}@media(max-width:370px){.wordmark{font-size:14px}.about-toggle{font-size:11px;gap:5px}.title-bottom{top:330px}.bloom-position{top:280px}.whisper{top:449px}.ritual-button{top:513px;right:6%;width:113px;height:113px}.whisper p{font-size:14px}.whisper em{font-size:23px}.ritual-status{left:37%;top:603px}.timeless{bottom:64px}.satellite.heart{top:112px}.universe{height:820px}.rose{width:100px;height:120px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.bloom-motion{transform:none!important}}

/* The complete seated character is one layered, cursor-driven scene. */
.universe{min-height:860px}.character-position{position:absolute;top:0;left:50%;height:100%;aspect-ratio:941 / 1500;transform:translateX(-50%);z-index:4;pointer-events:none;mask-image:linear-gradient(to right,transparent,#000 17%,#000 85%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 17%,#000 85%,transparent)}.character-position:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,#090f19 0%,transparent 10%,transparent 83%,#090f19 100%)}.character-position canvas,.character-fallback{width:100%;height:100%;display:block;object-fit:cover}.character-fallback{position:absolute;inset:0;object-position:center top;opacity:1}.character-position.ready .character-fallback{opacity:0}.character-position canvas{position:relative;opacity:0;transition:opacity .5s}.character-position.ready canvas{opacity:1}.title-top{top:1%;font-size:clamp(100px,15vw,250px);z-index:2}.title-bottom{top:48%;right:4%;font-size:clamp(130px,17vw,265px)}.whisper{top:37%;left:5%}.ritual-button{top:61%;left:12%}.ritual-status{top:auto;bottom:7%;left:73%;z-index:8}.timeless{font-size:clamp(55px,6.6vw,110px);bottom:2%;left:4%}.scene-footnote{bottom:25%;right:5%;font-size:16px}.practicing .ritual-status{top:auto;bottom:13%;left:76%}.touch-hint{display:none}.practicing .character-position.inhale,.practicing .character-position.exhale{transform:translateX(-50%)}
@media(min-width:1600px){.character-position{height:100%;width:auto}.title-top{font-size:14.5vw}.whisper{top:42%}}
@media(max-width:1100px) and (min-width:681px){.character-position{left:53%;height:95%;top:3%}.whisper{left:4%;top:37%}.whisper p{font-size:16px}.whisper em{font-size:25px}.title-bottom{right:2%;top:52%}.ritual-status{left:77%;bottom:11%}#phase{font-size:22px}.scene-footnote{font-size:13px;bottom:21%}.ritual-button{left:8%}.timeless{font-size:7vw}.practicing .ritual-status{left:75%;bottom:11%}}
@media(max-width:680px){.universe{height:1030px;min-height:0}.character-position{top:75px;left:50%;width:110%;height:auto;aspect-ratio:941 / 1500}.title-top{top:38px;left:4%;font-size:15.5vw}.title-bottom{top:425px;right:2%;font-size:29vw}.orbits{top:350px;height:580px}.whisper{top:600px;left:7%}.whisper p{font-size:16px;text-shadow:0 2px 15px #090f19}.ritual-button{top:660px;right:7%;left:auto}.ritual-status{top:805px;bottom:auto;left:48%;width:90%;max-width:none;white-space:nowrap}.timeless{font-size:13vw;bottom:90px;left:6%}.scene-footnote{bottom:13px;left:7%;right:auto;font-size:14px}.practicing .ritual-status{top:790px;bottom:auto;left:50%;width:94%}.practicing .whisper{opacity:.15}.practicing #phase{font-size:32px}.about{top:180px}.coordinate-b{top:28%}#counter{font-size:10px}}
@media(max-width:370px){.universe{height:950px}.character-position{top:84px;width:115%}.title-bottom{top:383px}.whisper{top:540px}.ritual-button{top:605px}.ritual-status{top:737px}.practicing .ritual-status{top:724px}.timeless{bottom:90px}.scene-footnote{font-size:13px}}
@media(hover:none){.pointer-hint{display:none}.touch-hint{display:inline}}

.scene-footnote{top:34%;bottom:auto}@media(max-width:1100px) and (min-width:681px){.scene-footnote{top:32%;bottom:auto}}@media(max-width:680px){.scene-footnote{top:auto;bottom:13px}.title-top{z-index:6}.title-bottom{top:515px;font-size:26vw}}@media(max-width:370px){.title-bottom{top:453px}}
/* Panoramic environment joins the character to both edges of the composition. */
.panorama{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(180deg,#090f1966,transparent 32%,#090f1920 70%,#090f19bb),url('assets/panorama.png');background-position:center;background-size:cover;opacity:.82;mask-image:linear-gradient(to bottom,transparent,#000 14%,#000 90%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 14%,#000 90%,transparent)}.cosmos{z-index:1;background:radial-gradient(ellipse at 10% 46%,#090f1999,transparent 34%),radial-gradient(ellipse at 90% 38%,#090f1966,transparent 27%);pointer-events:none}.orbits{z-index:1}.whisper p,.scene-footnote{color:#e6e7e8;text-shadow:0 2px 18px #02060b}.title-top,.title-bottom,.timeless{text-shadow:0 3px 30px #090f1966}.ritual-status{text-shadow:0 2px 15px #090f19}.character-position{mask-image:linear-gradient(to right,transparent,#000 24%,#000 79%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 24%,#000 79%,transparent)}
@media(max-width:680px){.panorama{background-size:auto 83%;background-repeat:no-repeat;background-position:center 19%;opacity:.7}.character-position{mask-image:linear-gradient(to right,transparent,#000 14%,#000 86%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 14%,#000 86%,transparent)}}

/* Homepage: the existing scene, with only the brand and connection action. */
.home-page .universe{height:calc(100svh - 90px);min-height:740px;max-height:1100px}
.home-page .network-link{font-size:12px;color:#c7c6c1;letter-spacing:.3px}.home-page .network-link:hover{color:#e1c48f}
.home-page .title-top{z-index:6}.home-page .button-label{font-size:14px}.home-page .network-section{max-width:1240px;margin:0 auto;padding:80px 40px 64px;scroll-margin-top:30px}
.home-page .network-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:32px}.home-page .network-heading h2{font-family:'Playfair Display',Georgia,serif;font-size:42px;font-weight:400;line-height:1.15;margin:0}.home-page .network-heading>p{font-size:13px;line-height:1.7;color:#aeb8c4;max-width:290px;margin:0}
.home-page .network-grid{display:grid;grid-template-columns:.9fr 1.6fr;gap:20px}.home-page .server-card,.home-page .protocol-card{background:#101a26;border:1px solid #d4af6729;border-radius:16px;padding:28px}.home-page .server-code,.home-page .protocol-transport{font-size:10px;letter-spacing:1.5px;color:#d6b77e}.home-page .server-card h3{font-family:'Playfair Display',Georgia,serif;font-size:32px;font-weight:400;margin:15px 0}.home-page .server-summary{font-size:15px;line-height:1.6;color:#d7dce0;margin:0 0 23px}.home-page .server-facts{border-top:1px solid #d4af6729;padding-top:5px}.home-page .server-facts p{color:#aeb8c4;font-size:12px;line-height:1.8;margin:15px 0}.home-page .server-facts strong{color:#e8e2d7;font-weight:500}.home-page .network-connect{display:inline-block;margin-top:16px;color:#e4c68f;border-bottom:1px solid #d4af6766;padding-bottom:5px;font-size:14px}.home-page .protocol-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.home-page .protocol-card h3{font-size:20px;font-weight:500;margin:20px 0 12px}.home-page .protocol-card p{font-size:12px;line-height:1.8;color:#aeb8c4;margin:0 0 22px}.home-page .protocol-card code{font-size:10px;color:#8995a2;overflow-wrap:anywhere}.home-page .network-note{font-size:11px;line-height:1.8;color:#8995a2;max-width:640px;margin:24px 0 0}
@media(max-width:850px){.home-page .network-grid{grid-template-columns:1fr}.home-page .network-heading{display:block}.home-page .network-heading>p{max-width:none;margin-top:15px}.home-page .server-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.home-page .network-section{padding:54px 26px}}
@media(max-width:680px){.home-page .universe{height:820px;min-height:0}.home-page .network-link{font-size:10px}.home-page .ritual-button{top:620px}.home-page .network-heading h2{font-size:32px}.home-page .network-section{padding:40px 22px}.home-page .server-facts{display:block}.home-page .protocol-grid{gap:12px}.home-page .protocol-card{padding:20px 16px}.home-page .protocol-card h3{font-size:17px}.home-page .protocol-transport{font-size:8px;letter-spacing:1px}.home-page .protocol-card p{font-size:11px}.home-page .server-card{padding:24px}.home-page .button-label{font-size:13px}}
@media(max-width:370px){.home-page .universe{height:760px}.home-page .ritual-button{top:560px}.home-page .network-link{font-size:9px}.home-page .protocol-grid{grid-template-columns:1fr}}

/* Brand sits on either side of the flower, aligned with its eye. */
.home-page .home-symbol{font-size:30px;color:#d4af67;line-height:1}
.home-page .head-brand{--head-space:clamp(281px,calc((100svh - 90px)*.38),418px);position:absolute;left:4.5%;right:4.5%;top:28%;transform:translateY(-50%);display:grid;grid-template-columns:minmax(0,1fr) var(--head-space) minmax(0,1fr);gap:24px;align-items:center;z-index:6;font-family:'Playfair Display',Georgia,serif;font-size:clamp(42px,7vw,120px);font-weight:400;font-style:italic;line-height:1.1;letter-spacing:-.045em;margin:0;pointer-events:none;text-shadow:0 3px 22px #090f19cc}
.home-page .head-brand span{position:static}.home-page .brand-left{text-align:right;color:#f3eee3}.home-page .brand-right{text-align:left;color:#e6c38b;font-style:italic}
@media(min-width:681px) and (max-width:1100px){.home-page .head-brand{top:30%}}
@media(max-width:680px){.home-page .head-brand{--head-space:66vw;left:2%;right:2%;top:calc(75px + 50vw);gap:6px;font-size:clamp(15px,4.9vw,32px);letter-spacing:-.03em;text-shadow:0 1px 3px #000,0 0 8px #090f19}}
@media(max-width:370px){.home-page .head-brand{--head-space:69vw;left:1.5%;right:1.5%;top:calc(84px + 51.2vw);gap:4px;font-size:clamp(13.5px,4.2vw,16px)}}

/* The connection action uses the same italic display face as the brand. */
.home-page .ritual-button{gap:5px;box-shadow:0 12px 35px #03081138;transform:rotate(-7deg)}
.home-page .ritual-button:hover{transform:rotate(0) scale(1.04)}
.home-page .ritual-button .button-label{font-family:'Playfair Display',Georgia,serif;font-size:25px;font-style:italic;font-weight:400;line-height:1.12;letter-spacing:-.035em}
.home-page .ritual-button .button-label em{font-size:31px;font-weight:400}
.home-page .ritual-button .button-arrow{font-size:20px}
@media(max-width:680px){.home-page .ritual-button .button-label{font-size:20px}.home-page .ritual-button .button-label em{font-size:27px}.home-page .ritual-button .button-arrow{font-size:18px}}
@media(max-width:370px){.home-page .ritual-button .button-label{font-size:18px}.home-page .ritual-button .button-label em{font-size:24px}}
