/* One material, different possibilities. The colour and type identity are retained. */
@font-face{font-family:Abundance;src:url('assets/nimbus-sans-bold.otf') format('opentype');font-weight:600 800;font-display:swap}
.header .menu-button{width:124px;height:53px;min-height:53px;gap:13px;padding:0 17px;border-radius:56% 44% 49% 51%/48% 47% 53% 52%;background:var(--iris);color:#fff9ee;font-size:15px;letter-spacing:0;box-shadow:0 5px 22px #5046e52b;transform:rotate(-3deg);transition:transform .35s,background .35s,box-shadow .35s}
.header .menu-button:hover{transform:rotate(0) translateY(-2px);background:#4034bf;box-shadow:0 8px 25px #5046e540}.menu-dots{display:flex;align-items:center;gap:4px;width:20px;letter-spacing:0}.menu-dots i{display:block;width:6px;height:17px;border-radius:60% 40% 60% 40%;background:currentColor;transform:rotate(25deg)}.menu-dots i+ i{height:11px;transform:rotate(25deg) translateY(-3px)}.menu-open .header .menu-button{background:#ffdb91;color:#37254b}.menu-open .menu-dots i{display:none}.menu-open .menu-label:after{font-size:15px}.menu-button:focus-visible{outline:3px solid #ee9c48;outline-offset:5px}.navigation{padding-top:95px;padding-bottom:70px}.navigation>a{font-size:clamp(33px,4.6vw,66px);padding:8px 0}.navigation:before{top:15%}.navigation .nav-contact{font-size:20px;margin-top:20px}.navigation:after{bottom:7%}
.hero--immersive,.with-flow{overflow:clip;isolation:isolate}.hero--immersive{min-height:790px;max-height:none}.hero--immersive .hero-copy{z-index:5}.hero--immersive .hero-bottom{position:relative;z-index:5}.hero--immersive .hero-copy h1{pointer-events:none}
.flow-stage,body[data-scene=home] .flow-stage,body:not([data-scene=home]) .flow-stage{position:absolute;top:25px;right:-3%;width:62vw;height:740px;max-width:none;aspect-ratio:auto;z-index:3;opacity:1;transform:none;transition:none;pointer-events:none;view-transition-name:none}
.with-flow>.flow-stage{width:55%;right:0;top:40px;max-width:none}.with-flow>*:not(.flow-stage){position:relative;z-index:4}.with-flow>.flow-stage *{max-width:none}.flow-stage canvas{pointer-events:auto;mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 89%,transparent);mix-blend-mode:normal;filter:none}.flow-stage .flow-shadow{display:none}.flow-links{z-index:5;opacity:calc(1 - var(--departure,0)*1.4)}.flow-stage .flow-link{position:absolute;min-height:52px;padding:12px 17px;background:transparent;box-shadow:none;backdrop-filter:none;border-radius:52% 48% 56% 44%/46% 53% 47% 54%;color:#312138;white-space:nowrap;animation:none;font-size:21px;line-height:1.1;font-weight:600;letter-spacing:-.035em;gap:0;transform:translate(-50%,-50%) rotate(-5deg);transition:left 1.05s var(--ease),top 1.05s var(--ease),font-size .8s var(--ease),transform .65s var(--ease),color .35s;isolation:isolate}
.flow-link::before{content:'';position:absolute;inset:7% -5%;z-index:-1;border-radius:45% 55% 54% 46%/50% 43% 57% 50%;background:radial-gradient(ellipse,var(--field-wash,#ffedce) 15%,transparent 72%);opacity:.87;transform:scale(1.2);transition:transform .65s var(--ease),opacity .5s;filter:blur(3px)}.flow-stage .flow-link span{font-size:inherit}.flow-link:hover::before{transform:scale(1.45,1.7);opacity:1}.flow-stage .flow-link:hover{transform:translate(-50%,-50%) rotate(0deg) scale(1.07);background:transparent;box-shadow:none}.flow-link-housing{--field-wash:#ffc2a5}.flow-link-health{--field-wash:#b4e8e7}.flow-link-education{--field-wash:#ffe283}.flow-link-transport{--field-wash:#b5e2c3}
.flow-stage .flow-link-housing{left:75%;top:21%}.flow-stage .flow-link-health{left:82%;top:51%;transform:translate(-50%,-50%) rotate(4deg)}.flow-stage .flow-link-education{left:30%;top:78%}.flow-stage .flow-link-transport{left:70%;top:83%;transform:translate(-50%,-50%) rotate(5deg)}
body:not([data-scene=home]) .flow-stage .flow-link{top:87%;left:calc(22% + var(--rest-index,0)*28%);font-size:17px;transform:translate(-50%,-50%)}body:not([data-scene=home]) .flow-stage .flow-link.selected{top:48%;left:50%;font-size:clamp(25px,2.5vw,37px);font-weight:700;background:transparent;box-shadow:none;transform:translate(-50%,-50%) rotate(-4deg)}.flow-link.selected::before{background:radial-gradient(ellipse,#fff8eedd 10%,#fff8ee99 40%,transparent 73%);transform:scale(1.3,1.7);filter:blur(8px)}
.flow-link:focus-visible{outline:2px solid var(--iris);outline-offset:4px}.flow-stage .flow-caption{bottom:0;left:17%;right:12%;font-size:9px;letter-spacing:.04em;text-transform:none;opacity:calc(1 - var(--departure,0)*1.4);justify-content:space-between;z-index:6}.flow-caption .motion-toggle{width:auto;height:auto;min-height:44px;background:none;border-radius:50%;font-size:10px;padding:10px 0;color:#6b5461;box-shadow:none}.flow-caption .motion-toggle:hover{color:var(--iris)}body:not([data-scene=home]) .flow-caption>span{visibility:hidden}
.with-flow{min-height:850px;padding-top:43px;padding-bottom:60px}.with-flow h1{font-size:clamp(80px,7.6vw,124px);font-weight:700;max-width:51%;line-height:.98;letter-spacing:-.064em;margin-bottom:35px}.with-flow .lead{max-width:40%;font-size:20px;line-height:1.48;margin-top:0}.with-flow .eyebrow{margin-bottom:34px}.with-flow .disclosure{max-width:43%;margin-top:25px}.with-flow .back{margin-bottom:34px;font-size:13px}.page-top:not(.with-flow) h1{font-weight:600;font-size:clamp(65px,7.7vw,116px);letter-spacing:-.06em}.page-top:not(.with-flow) h1 em{font-weight:400}
/* Soft type-led controls share one language, with no detached arrow badges. */
.action{position:relative;isolation:isolate;min-height:50px;padding:13px 22px;font-size:15px!important;letter-spacing:-.015em;border-radius:50%;width:fit-content}.action:before{content:'';position:absolute;inset:3px -4px;z-index:-1;background:var(--tint);border-radius:46% 54% 53% 47%/60% 44% 56% 40%;transform:rotate(-3deg);opacity:.85;transition:transform .5s var(--ease),background .5s,box-shadow .5s}.action:hover:before{transform:rotate(2deg) scale(1.07);background:#ddd3ff;box-shadow:0 8px 25px #5046e515}.circle-arrow{display:none}.scroll-invitation{font-size:11px;min-height:48px;gap:14px}.scroll-thread{height:42px;width:19px;display:block;position:relative;overflow:hidden;border-radius:60%}.scroll-thread:before{content:'';position:absolute;left:5px;top:-3px;width:8px;height:36px;border-radius:50%;background:linear-gradient(#ffcb5e,#ed9872,#5046e500);transform:rotate(15deg);animation:thread-flow 3s ease-in-out infinite}.scroll-thread:after{content:'';position:absolute;left:3px;top:25px;width:8px;height:8px;border-radius:50%;background:#e4a866;opacity:.6}.disclosure-toggle{background:transparent!important;color:var(--accent)!important;font-weight:400;width:26px;height:26px;font-size:23px}.disclosure summary{transition:color .25s;padding:15px 0}.disclosure summary:hover{color:var(--iris)}.tab,.filter,.depth-switch button,.policy-toggle button{position:relative;background:transparent!important;color:var(--muted)!important;font-size:13px;padding:13px 18px;isolation:isolate;min-height:46px;transition:color .25s}.tab:before,.filter:before,.depth-switch button:before,.policy-toggle button:before{content:'';position:absolute;inset:6px 0;z-index:-1;background:var(--tint);border-radius:45% 55% 53% 47%/60% 45% 55% 40%;opacity:0;transform:rotate(-3deg) scale(.85);transition:transform .4s var(--ease),opacity .3s}.tab:hover:before,.filter:hover:before,.depth-switch button:hover:before,.policy-toggle button:hover:before{opacity:.6;transform:rotate(0)}.tab[aria-selected=true],.filter[aria-pressed=true],.depth-switch button[aria-selected=true],.policy-toggle button[aria-pressed=true]{color:var(--ink)!important;font-weight:600}.tab[aria-selected=true]:before,.filter[aria-pressed=true]:before,.depth-switch button[aria-selected=true]:before,.policy-toggle button[aria-pressed=true]:before{opacity:1;transform:rotate(-3deg) scale(1)}.step-number{background:transparent;font-size:33px;font-weight:400;width:auto;height:38px;display:block;transform:rotate(-8deg);text-align:left}.portal-enter{font-size:13px!important;letter-spacing:0;align-self:center;position:static!important;color:var(--muted)}.pillar-poem{grid-template-columns:35px 1fr 65px}.pillar-poem:hover .portal-enter{color:var(--iris)}
/* Artwork dissolves inside its opening chapter. The reading surface stays quiet. */
.connection-chapter{min-height:0;padding:100px 10% 110px}.connection-copy{display:grid;grid-template-columns:1.05fr 1fr;column-gap:12%;width:100%;margin:0;max-width:none}.connection-copy>.eyebrow{grid-column:1 / -1;margin-bottom:32px}.connection-copy>h2{grid-column:1;grid-row:2 / 6;font-size:clamp(41px,4.4vw,65px);max-width:530px}.connection-copy>.commons-space{display:none!important}.connection-copy>.depth-switch{grid-column:2;margin:6px 0 29px;gap:4px;flex-wrap:nowrap}.connection-copy>#depth-reading{grid-column:2}.connection-copy>.action{grid-column:2;margin-top:25px}.connection-copy>#depth-reading p{min-height:125px;font-size:17px}.connection-copy>#depth-reading h3{font-size:27px}.connection-copy .depth-switch button{font-size:12px;padding:12px 13px}.connection-chapter:before{inset:0 -12%;border-radius:48% 52% 45% 55%/14% 20% 16% 21%}.page-top,.hero-copy{animation:chapter-arrive .8s var(--ease) both}.with-flow .eyebrow,.with-flow h1,.with-flow .lead,.with-flow .disclosure{animation:chapter-arrive .9s var(--ease) both}.with-flow .lead{animation-delay:.07s}
/* Prompt Library is an invitation into an emerging method. */
.prompt-teaser{position:relative;isolation:isolate;overflow:clip;padding:90px 10% 100px;margin:40px auto 80px;max-width:1450px;background:#eee7f5;border-radius:42% 58% 52% 48%/9% 14% 10% 15%;display:grid;grid-template-columns:1fr 1fr;gap:25px 12%}.prompt-teaser>.eyebrow{grid-column:1/-1}.prompt-teaser h2{font-size:clamp(55px,6.4vw,88px);position:relative;z-index:2}.prompt-teaser h2 em{font-style:italic}.prompt-teaser-copy{position:relative;z-index:2;padding-top:8px;max-width:400px}.prompt-teaser-copy p{font-size:19px}.prompt-teaser .action{--tint:#d7cbee}.prompt-orbits{position:absolute;inset:0;z-index:-1;opacity:.16;pointer-events:none}.prompt-orbits i{position:absolute;left:12%;top:15%;width:180px;height:350px;border:36px solid #ddab8d;border-radius:50%;transform:rotate(60deg)}.prompt-orbits i:nth-child(2){left:29%;top:30%;border-color:#7472c4;transform:rotate(43deg)}.prompt-orbits i:nth-child(3){left:43%;top:50%;border-color:#64b5ac;transform:rotate(70deg)}.prompt-top{padding-top:55px;padding-bottom:60px}.prompt-top h1{max-width:1150px;font-size:clamp(64px,7.5vw,115px)!important}.coming-soon{display:inline-block;margin:0 0 35px;padding:10px 25px;border-radius:47% 53% 48% 52%;background:#e5dbfa;color:#5d448c;font-size:13px;transform:rotate(-4deg)}body[data-scene=prompts]{--paper:#f9f4ff;--tint:#e9dcf5;--accent:#6540a0}.prompt-intro{max-width:1240px;padding:0 6% 70px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:9%}.prompt-intro p{font-size:19px;line-height:1.6;color:var(--muted)}.prompt-method .reading-title h2{font-size:52px;font-weight:600}.prompt-method .disclosure{margin-bottom:13px}.prompt-example{max-width:1250px;margin:40px auto 80px;padding:70px 10% 75px;background:#f0e7da;border-radius:47% 53% 48% 52%/12% 16% 10% 14%;transform:rotate(-1deg)}.prompt-example blockquote{margin:28px 0;font-size:clamp(28px,3.3vw,45px);line-height:1.22;letter-spacing:-.04em}.prompt-example .note{margin:35px 0 0}.prompt-foundations .source-link{display:block;font-size:14px}.prompt-foundations .reading-title h2{font-size:43px}
@keyframes chapter-arrive{from{opacity:0;translate:0 18px;filter:blur(2px)}to{opacity:1;translate:0 0;filter:blur(0)}}@keyframes thread-flow{0%,100%{translate:0 -3px}50%{translate:0 6px}}
@media(min-width:1600px){.flow-stage,body[data-scene=home] .flow-stage,body:not([data-scene=home]) .flow-stage{height:850px}.with-flow{min-height:960px}.hero--immersive{min-height:920px}.with-flow>.flow-stage{width:54%;right:0}}
@media(max-width:1100px) and (min-width:801px){.hero--immersive{min-height:770px}.flow-stage,body[data-scene=home] .flow-stage,body:not([data-scene=home]) .flow-stage{height:680px;top:60px;width:65vw;right:-5%}.with-flow>.flow-stage{width:53%;right:-1%;top:50px}.flow-stage .flow-link{font-size:18px}.with-flow{min-height:780px}.with-flow h1{font-size:83px;max-width:50%}.with-flow .lead{font-size:18px}.connection-copy{column-gap:8%}.connection-copy>.depth-switch{flex-wrap:wrap}.prompt-teaser{column-gap:7%}}
@media(max-width:800px){.header .menu-button{width:112px;height:49px;min-height:49px;font-size:14px;gap:10px;padding:0 14px}.menu-open .menu-label:after{font-size:14px}.navigation>a{font-size:clamp(31px,5vw,45px);padding:10px 0}.navigation .nav-contact{font-size:18px}.navigation:before{top:16%}.navigation:after{bottom:9%}.hero--immersive{min-height:0;height:auto;padding-bottom:45px}.hero--immersive h1{font-size:14.3vw}.flow-stage,body[data-scene=home] .flow-stage,body:not([data-scene=home]) .flow-stage{width:110%;height:610px;left:-5%;right:auto;transform:none;top:310px}.flow-stage canvas{mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 93%,transparent)}.flow-stage .flow-link{font-size:23px;padding:12px 19px;min-height:50px}.flow-stage .flow-caption{left:14%;right:12%;bottom:0}.with-flow{min-height:0;padding-top:40px}.with-flow h1{font-size:clamp(70px,11.3vw,100px);max-width:95%!important;font-weight:700}.with-flow .lead{max-width:620px!important;font-size:20px}.with-flow .disclosure{max-width:90%!important}.with-flow>*:not(.flow-stage){max-width:100%}.with-flow>.flow-stage{max-width:none!important}.with-flow .eyebrow{margin-bottom:30px}.with-flow .back{margin-bottom:30px}body:not([data-scene=home]) .flow-stage .flow-link.selected{font-size:34px}body:not([data-scene=home]) .flow-stage .flow-link:not(.selected){font-size:20px}.page-top:not(.with-flow) h1{font-size:75px}.connection-chapter{padding:80px 8% 90px}.connection-copy{display:block;max-width:650px;margin:auto}.connection-copy>h2{font-size:56px;max-width:610px}.connection-copy>.depth-switch{margin:35px 0 25px;gap:12px}.connection-copy>#depth-reading p{min-height:0;max-width:500px}.connection-copy>#depth-reading .note{min-height:0}.connection-copy>.action{margin-top:30px}.connection-copy>.eyebrow{margin-bottom:25px}.pillar-poem{grid-template-columns:25px 1fr 60px}.prompt-teaser{padding:70px 8% 80px;gap:30px;display:block;margin-bottom:70px}.prompt-teaser h2{font-size:70px}.prompt-teaser-copy{max-width:520px;margin:35px 0 0 15%}.prompt-intro{display:block;padding:0 7% 30px}.prompt-intro p{max-width:620px;font-size:18px}.prompt-method .reading-title h2{font-size:49px}.prompt-example{margin:30px 5% 70px;padding:55px 8%}.prompt-example blockquote{font-size:35px}.prompt-top h1{font-size:73px!important}}
@media(max-width:520px){.brand img{width:190px}.header .menu-button{width:105px;height:47px;min-height:47px;font-size:14px;right:5%;top:24px;gap:9px}.menu-open .brand{left:6%}.hero--immersive h1{font-size:16.3vw}.flow-stage,body[data-scene=home] .flow-stage,body:not([data-scene=home]) .flow-stage{height:470px;width:116%;left:-8%;right:auto}.flow-stage .flow-link{font-size:18px;min-height:48px;padding:11px 15px}.flow-stage .flow-link-housing{left:74%;top:20%}.flow-stage .flow-link-health{left:80%;top:50%}.flow-stage .flow-link-education{left:30%;top:76%}.flow-stage .flow-link-transport{left:69%;top:84%}.flow-stage .flow-caption{left:13%;right:12%;font-size:8px;gap:12px;bottom:-2px}.flow-caption .motion-toggle{font-size:9px}.flow-caption>span{max-width:150px}.with-flow{padding-top:28px}.with-flow h1{font-size:65px;line-height:1;max-width:100%!important;margin-bottom:28px}.with-flow .lead{font-size:18px;max-width:100%!important}.with-flow .eyebrow{margin-bottom:26px}.with-flow .back{font-size:12px;margin-bottom:30px}.with-flow .disclosure{max-width:100%!important}body:not([data-scene=home]) .flow-stage .flow-link.selected{font-size:28px}body:not([data-scene=home]) .flow-stage .flow-link:not(.selected){font-size:16px;left:calc(23% + var(--rest-index,0)*27%)}.page-top:not(.with-flow) h1{font-size:56px}.navigation>a{font-size:34px;padding:11px 0}.navigation .nav-contact{margin-top:17px;font-size:17px}.connection-copy>h2{font-size:42px}.connection-chapter{padding:65px 8% 75px}.connection-copy>.depth-switch{gap:2px;margin-top:30px}.connection-copy .depth-switch button{font-size:12px;padding:12px 10px}.connection-copy>#depth-reading p{min-height:123px;font-size:16px}.connection-copy>#depth-reading h3{font-size:27px}.pillar-poem{grid-template-columns:18px 1fr 50px;gap:10px}.portal-enter{font-size:11px!important}.prompt-teaser{padding:60px 8% 65px;border-radius:40% 60% 48% 52%/5% 9% 5% 8%}.prompt-teaser h2{font-size:58px}.prompt-teaser-copy{margin:30px 0 0 7%;max-width:310px}.prompt-teaser-copy p{font-size:17px}.prompt-top h1{font-size:57px!important}.prompt-top{padding-top:32px;padding-bottom:40px}.prompt-top .lead{font-size:18px}.coming-soon{margin-bottom:30px;font-size:12px;padding:10px 21px}.prompt-intro p{font-size:17px}.prompt-method .reading-title h2{font-size:43px}.prompt-example{padding:42px 9%;margin-inline:0}.prompt-example blockquote{font-size:29px}.prompt-foundations .reading-title h2{font-size:38px}}
@media(max-width:360px){.brand img{width:170px}.header .menu-button{width:96px;right:4%;font-size:13px}.flow-stage .flow-link{font-size:16px}.with-flow h1{font-size:58px}.flow-stage,body[data-scene=home] .flow-stage,body:not([data-scene=home]) .flow-stage{height:440px}.connection-copy>h2{font-size:37px}.prompt-top h1{font-size:51px!important}}
@media(prefers-reduced-motion:reduce){.flow-stage .flow-link,.header .menu-button{transition:none}.page-top,.hero-copy,.with-flow .eyebrow,.with-flow h1,.with-flow .lead,.with-flow .disclosure{animation:none}.flow-caption .motion-toggle{display:none}.scroll-thread:before{animation:none}}
/* Typographic theme handles sit quietly within the sculpture. */
.flow-link{--field-ink:#8d3956}.flow-link-health{--field-ink:#1b6a8b}.flow-link-education{--field-ink:#79550c}.flow-link-transport{--field-ink:#36766c}.flow-link::before{opacity:0;filter:blur(8px)}.flow-link:hover::before{opacity:.3;transform:scale(1.1,1.2)}.flow-link.selected::before{opacity:0}.flow-stage .flow-link:hover{color:var(--field-ink)}

main,.flow-stage{overflow-anchor:none}
body[data-scene=home] .flow-stage .flow-link-health{left:46%;top:66%;color:#fffdf1;text-shadow:0 1px 7px #184c6c55}body[data-scene=home] .flow-stage .flow-link-education{left:55%;top:43%;color:#624710}body[data-scene=home] .flow-stage .flow-link-transport{left:72%;top:84%;color:#345f56}
body[data-scene=home] .flow-stage .flow-link-health{left:49%}
