/* RAUM Basel / Resonanz. One grid, one type scale, one motion vocabulary. */
:root{--paper:#f7f5ed;--ink:#123f36;--muted:#506960;--orange:#b13b20;--coral:#ff9978;--lilac:#cac3ed;--line:#cdd2c7;--gutter:clamp(1.25rem,4.5vw,5rem);--space:clamp(4.5rem,7vw,8rem);--ease:cubic-bezier(.2,.8,.2,1);--header:5rem;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 1rem);font-size:clamp(16px,min(.82vw,1.85svh),32px)}
body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 "Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
::selection{background:var(--lilac);color:var(--ink)}
a{color:inherit;text-underline-offset:.25em}
button{font:inherit;color:inherit;cursor:pointer}
button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
[hidden]{display:none!important}
svg{display:block;max-width:100%}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:500;line-height:1.05;letter-spacing:-.055em;text-wrap:balance;overflow-wrap:break-word;hyphens:none}
h1 em,h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em;font-kerning:normal}
h2{font-size:clamp(2.65rem,4.2vw,5.2rem)}
h3{font-size:1.6rem;letter-spacing:-.035em;line-height:1.15}
p{text-wrap:pretty;overflow-wrap:break-word}
:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
.container{width:calc(100% - var(--gutter)*2);max-width:100rem;margin-inline:auto}
.section-pad{padding-block:var(--space)}
.skip-link{position:fixed;top:.5rem;left:1rem;z-index:110;padding:.75rem 1rem;background:var(--ink);color:var(--paper);transform:translateY(-180%)}
.skip-link:focus{transform:none}
.eyebrow{display:flex;align-items:center;gap:.65rem;font-size:.72rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;line-height:1.55}
.status-dot{width:.4rem;height:.4rem;border-radius:50%;background:var(--orange);flex-shrink:0}
.section-index{font-variant-numeric:tabular-nums;white-space:nowrap}
.site-header{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}
.site-header::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--orange);transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}
.header-inner{min-height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem}
.brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none;min-width:0;font-size:1.1rem;line-height:1.1;letter-spacing:-.04em}
.brand-wordmark{white-space:nowrap}.brand-wordmark strong{font-weight:750}
.brand-mark{width:2.3rem;flex-shrink:0;transition:transform .6s var(--ease)}
.brand-mark svg{fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.brand:hover .brand-mark{transform:rotate(-12deg)}
.site-nav{display:flex;align-items:center;gap:clamp(1rem,2vw,2.2rem);font-size:.82rem}
.site-nav a{position:relative;display:inline-flex;align-items:center;min-height:2.75rem;text-decoration:none}
.site-nav a:not(.nav-cta)::after{content:"";position:absolute;bottom:.3rem;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.site-nav a:hover::after,.site-nav a[aria-current]::after{transform:scaleX(1)}
.site-nav .nav-cta{padding:.5rem 1.1rem;border:1px solid var(--ink);border-radius:3rem;gap:1.1rem;color:var(--ink);background:var(--paper);transition:background .25s,color .25s}
.site-nav .nav-cta:hover,.site-nav .nav-cta:focus-visible,.site-nav .nav-cta:active{background:var(--ink);color:var(--paper)}
.nav-cta span{transition:transform .4s var(--ease)}.nav-cta:hover span{transform:rotate(45deg)}
.menu-toggle{display:none}
/* Opening spread: the artwork and headline share the available height. */
.hero{position:relative;isolation:isolate;padding-top:clamp(2rem,4svh,4rem);overflow:clip}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,rgba(18,63,54,.035) 1px,transparent 1px);background-size:12.5% 100%;pointer-events:none}
.hero::after{content:"RAUM";position:absolute;z-index:-1;top:clamp(5rem,9vh,10rem);left:14%;font-size:clamp(10rem,23vw,32rem);font-weight:750;letter-spacing:-.13em;line-height:.78;white-space:nowrap;color:rgba(18,63,54,.045);pointer-events:none;user-select:none}
.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:clamp(2rem,5vw,6rem)}
.hero-copy{min-width:0;padding-block:1rem}
.hero .eyebrow{margin-bottom:1.8rem}
.hero h1{font-size:clamp(3.7rem,min(5.9vw,10svh),8rem);letter-spacing:-.075em;line-height:.99}
.hero h1>span{display:block}
.hero h1 em{display:block;white-space:nowrap;color:var(--orange);font-size:1.05em;line-height:1.1}
.hero-location{display:flex;align-items:center;gap:.65rem;margin-top:1.5rem;font-size:.85rem;letter-spacing:-.015em}
.hero-location::before{content:"";width:2.5rem;height:1px;background:var(--orange)}
.hero-location strong{font-weight:500}.hero-location span{color:var(--muted)}
.hero-lead{max-width:48ch;margin-top:1.6rem;color:var(--muted);font-size:1.02rem;line-height:1.7}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.6rem;margin-top:1.8rem}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.4rem;max-width:100%;min-height:3.2rem;padding:.5rem .55rem .5rem 1.25rem;border:1px solid var(--ink);border-radius:4rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .25s,color .25s,transform .35s var(--ease)}
.button-primary{background:var(--ink);color:var(--paper)}
.button-arrow{display:grid;place-items:center;flex-shrink:0;width:2.2rem;height:2.2rem;border-radius:50%;background:var(--paper);color:var(--ink);font-size:1.25rem;transition:transform .5s var(--ease)}
.button:hover .button-arrow{transform:rotate(45deg)}
.button-primary:hover,.button-primary:focus-visible{background:#235d4e;color:var(--paper)}
.button:active{transform:scale(.98)}
.button-quiet{background:transparent;color:var(--ink)}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.75rem;font-size:.82rem;text-decoration:none;border-bottom:1px solid var(--line)}
.text-link span{transition:transform .35s var(--ease)}.text-link:hover span{transform:translateY(3px)}
.text-link:hover{border-color:currentColor}
.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:clamp(1.5rem,4svh,3rem);padding-block:1rem;border-top:1px solid var(--line);font-size:.72rem;color:var(--muted)}
.hero-bottom a{display:inline-flex;align-items:center;gap:1rem;min-height:2.75rem;text-decoration:none;color:var(--ink)}
.hero-coordinate{font-variant-numeric:tabular-nums;letter-spacing:.04em}
/* A living print: two colours meet, a signal passes through the shared centre. */
.connection{position:relative;min-width:0;width:min(100%,57svh);max-width:43rem;justify-self:end;isolation:isolate;background:#e5e8dc;border:1px solid #c9d1c4;border-radius:.8rem clamp(4rem,7vw,9rem) .8rem .8rem;box-shadow:.7rem .7rem 0 -.15rem rgba(18,63,54,.08)}
.connection-top{position:relative;z-index:2;padding:1.4rem 1rem .4rem;text-align:center;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em}
.connection-top span::before{content:"";display:inline-block;width:.35rem;height:.35rem;margin:0 .5rem .1rem 0;border-radius:50%;background:var(--orange)}
.connection-stage{perspective:1000px}
.connection-art{position:relative;aspect-ratio:600/535;margin-inline:.4rem}
.connection-diagram{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform:rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .6s var(--ease)}
.diagram-grid{stroke:var(--ink);stroke-width:.5;opacity:.14;fill:none}
.connection-shape{mix-blend-mode:multiply;transform-box:fill-box;transform-origin:center}
.shape-one{fill:var(--coral);animation:shape-one 16s ease-in-out infinite}
.shape-two{fill:var(--lilac);animation:shape-two 16s ease-in-out infinite}
.connection-paths{fill:none;stroke:var(--ink);stroke-width:1;opacity:.45}
.connection-paths path:first-child{stroke-dasharray:2 10;stroke-linecap:round}
.orbit-guide{fill:none;stroke:var(--ink);stroke-width:.7;opacity:.15}
.orbital-ticks{fill:none;stroke:var(--ink);stroke-width:6;stroke-dasharray:1 28;opacity:.16;transform-origin:300px 290px;animation:orbit-turn 90s linear infinite}
.connection-orbit{fill:var(--ink);stroke:var(--paper);stroke-width:2;transform-origin:300px 290px;animation:orbit-turn 32s linear infinite}
.diagram-node{fill:var(--ink);stroke:var(--paper);stroke-width:4;cursor:pointer;pointer-events:all;touch-action:manipulation;outline:none}
.diagram-hit{fill:transparent;stroke:transparent;pointer-events:all}
.diagram-ring{fill:none;stroke:var(--orange);stroke-width:2;opacity:0;pointer-events:none;transform-box:fill-box;transform-origin:center}
.diagram-node:hover circle:not(.diagram-hit),.diagram-node:focus-visible circle:not(.diagram-hit),.diagram-node.is-selected circle:not(.diagram-hit){stroke:var(--orange);stroke-width:5}
.diagram-node:focus-visible .diagram-hit{stroke:var(--orange);stroke-width:2;stroke-dasharray:3 5}
.diagram-node.is-selected .diagram-ring{animation:node-ring 1.1s ease-out 2}
.diagram-node.is-arrived .diagram-ring{animation:node-ring 1.1s ease-out}
.diagram-node.is-arrived circle:not(.diagram-hit){stroke:var(--orange)}
.connection-signal{fill:var(--orange);stroke:var(--paper);stroke-width:3;opacity:0;pointer-events:none}
.connection-signal.is-active{opacity:1;filter:drop-shadow(0 0 4px #ff9978)}
.connection.is-signaling .connection-paths path{animation:neural-flash 1.15s ease-out}
.connection-pulse{fill:none;stroke:var(--ink);stroke-width:.7;transform-origin:300px 290px;animation:connection-pulse 6s ease-out infinite}
.pulse-two{animation-delay:3s}
.connection-center circle{fill:var(--paper);stroke:var(--ink);stroke-width:1}
.connection-center path{fill:none;stroke:var(--ink);stroke-width:1.2;stroke-linecap:round;transform-origin:300px 290px;animation:orbit-turn 24s linear infinite}
.connection-center-label-bg{fill:var(--paper);stroke:none;pointer-events:none}
.connection-center text{fill:var(--ink);stroke:none;font:700 14px "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:1.2px;pointer-events:none}
.connection-center.is-pulsing circle{animation:center-burst 1s ease-out}
.place-label{position:absolute;z-index:1;border:1px solid #779085;background:var(--paper);padding:.35rem .7rem;border-radius:2rem;font-size:.67rem;line-height:1.3;pointer-events:none}
.place-city{left:4%;top:19%;transform:rotate(-8deg)}.place-land{right:2%;bottom:10%;transform:rotate(6deg)}
.connection-caption{display:block;padding:.55rem 1rem 1rem;text-align:center;font-family:Georgia,"Times New Roman",serif;font-style:italic;letter-spacing:-.04em;font-size:clamp(1.1rem,1.9vw,1.9rem);line-height:1.2;white-space:nowrap}
.connection-bottom{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem 1rem;border-top:1px solid #c7cfc0;min-height:3.5rem}
.connection-hint{color:var(--muted);font-size:.68rem;line-height:1.4;max-width:29ch}
.motion-toggle{display:flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.75rem;padding:.35rem .1rem;border:0;background:none;font-size:.67rem;text-decoration:underline;text-underline-offset:.3em;flex-shrink:0}
.motion-symbol{width:.7rem;text-decoration:none}.motion-toggle:hover{color:var(--orange)}
/* Interlude connects the visual language across the page. */
.resonance-band{display:flex;align-items:center;justify-content:center;gap:clamp(1.2rem,4vw,5rem);padding:1.15rem var(--gutter);background:var(--coral);overflow:hidden}
.resonance-band span{font-size:clamp(.85rem,2vw,2rem);letter-spacing:-.04em;white-space:nowrap}
.resonance-band i{font-size:1.8rem;font-style:normal;line-height:1;animation:orbit-turn 30s linear infinite}
.section-heading{position:relative;display:grid;gap:2rem}
.section-heading>div{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2rem,6vw,7rem);align-items:end}
.section-heading h2{max-width:22ch}
.section-lead{max-width:46ch;color:var(--muted);font-size:1rem;line-height:1.75}
.section-heading .section-lead{padding-bottom:.25rem}
.intro,.world{position:relative;isolation:isolate;overflow:clip;background:var(--ink);color:var(--paper)}
.intro::after,.world::before{position:absolute;z-index:-1;top:2rem;right:var(--gutter);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:clamp(12rem,min(24vw,35svh),29rem);font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.09em;line-height:1;color:rgba(247,245,237,.04);pointer-events:none}
.intro::after{content:"01"}.world::before{content:"02"}
.intro h2 em,.world h2 em{color:var(--lilac)}
.intro .section-lead,.world .section-lead{color:#c6d3c9}
.principle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:3.5rem;border-top:1px solid #4e6c5f}
.principle{position:relative;padding:2rem 2rem 0;border-right:1px solid #4e6c5f}
.principle:first-child{padding-left:0}.principle:last-child{border:0;padding-right:0}
.principle-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.8rem;font-size:.7rem;color:#c6d3c9}
.principle-sign{display:grid;place-items:center;width:4rem;height:4rem;line-height:1;font-size:2.7rem;transition:transform .8s var(--ease)}
.sign-open{background:var(--coral);color:var(--ink);border-radius:50%}
.sign-diverse{color:var(--lilac);font-size:4.5rem}.sign-together{color:var(--paper);border:1px solid #93aa9f;border-radius:50%}
.principle h3{font-size:2rem;margin-bottom:.9rem}.principle p{max-width:34ch;color:#c6d3c9;font-size:.92rem}
.principle:hover .principle-sign{transform:rotate(90deg)}
.build{background:var(--paper)}
.build-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,10rem);align-items:start}
.build-heading{position:sticky;top:calc(var(--header) + 2rem)}
.build-heading h2{margin:2rem 0 1.8rem}.build-heading em{color:var(--orange)}
.planning-note{display:flex;align-items:center;gap:.6rem;font-size:.75rem;color:var(--muted);margin-top:1.75rem}
.build-list{border-top:1px solid var(--line)}
.build-item{position:relative;display:grid;grid-template-columns:1.5rem minmax(0,1fr) 2rem;gap:1rem;padding:1.7rem 0;border-bottom:1px solid var(--line)}
.build-item::before{content:"";position:absolute;inset:0 -.8rem;background:#e9ecdf;transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease);z-index:0}
.build-item>*{position:relative}.build-item:hover::before{transform:scaleY(1)}
.build-number{font-size:.7rem;font-variant-numeric:tabular-nums;padding-top:.25rem}
.build-item h3{font-size:clamp(1.3rem,1.8vw,2rem)}.build-item p{font-size:.92rem;color:var(--muted);max-width:45ch;margin-top:.8rem}
.build-arrow{align-self:start;font-size:1.7rem;line-height:1.2;transition:transform .5s var(--ease)}
.build-item:hover .build-arrow{transform:rotate(90deg)}
.world-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;margin-top:3.5rem;align-items:stretch}
.world-card{position:relative;display:flex;flex-direction:column;overflow:hidden;min-width:0;padding:2rem;border:1px solid #55756a;border-radius:.3rem;background:#19493e}
.world-card-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.7rem;letter-spacing:.08em}
.world-symbol{color:var(--coral);font-size:2rem;line-height:1}.world-symbol-earth{color:var(--lilac)}
.world-visual{position:relative;display:grid;place-items:center;height:clamp(9rem,15vw,15rem);margin:1rem -2rem 1.5rem;overflow:hidden;pointer-events:none}
.world-visual::before,.world-visual::after{content:"";position:absolute;width:12rem;height:12rem;border:1px solid #769285;border-radius:50%;opacity:.4}
.world-visual::after{width:16rem;height:16rem}
.radio-wave{display:flex;align-items:center;justify-content:center;gap:.32rem;height:5rem;z-index:1}
.radio-wave i{display:block;width:.3rem;height:var(--bar,2rem);background:var(--coral);border-radius:2rem;animation:wave 2.4s ease-in-out infinite;animation-delay:var(--phase,0s)}
.earth-orb{position:relative;width:9rem;height:9rem;border-radius:50%;background:radial-gradient(circle at 30% 25%,#dfdcf3 0%,#b4a7dd 47%,#7563a4 85%);box-shadow:inset -1rem -.8rem 2rem #4f4572;overflow:hidden;transform:rotate(-23deg)}
.earth-orb::before{content:"";position:absolute;inset:-5%;border-radius:50%;background:repeating-linear-gradient(0deg,transparent 0 1.7rem,rgba(18,63,54,.25) 1.7rem 1.75rem)}
.earth-orb i{position:absolute;inset:0 22%;border:1px solid rgba(18,63,54,.3);border-radius:50%;animation:meridian 12s linear infinite}.earth-orb i:nth-child(2){animation-delay:-4s}.earth-orb i:nth-child(3){animation-delay:-8s}
.world-card h3{font-size:clamp(1.8rem,2.7vw,3rem);max-width:18ch;min-height:2.3em;color:var(--paper)}
.world-card>p{font-size:.92rem;max-width:45ch;color:#c6d3c9;margin-top:1rem;min-height:4.8em}
.world-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.8rem 1.25rem;margin-top:auto;padding-top:1.8rem}
.world-actions .button{background:var(--coral);border-color:var(--coral);color:var(--ink)}
.world-earth .world-actions .button{background:var(--lilac);border-color:var(--lilac)}
.world-actions .button:hover,.world-actions .button:focus-visible,.world-actions .button[aria-expanded="true"]{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.world-actions .button-arrow{background:var(--ink);color:var(--paper)}
.world-actions .text-link{border-color:#769285;color:var(--paper);font-size:.75rem}
.space-panel{margin-top:1.5rem;border-top:1px solid #55756a;padding-top:1rem;scroll-margin-top:calc(var(--header) + 1rem)}
.space-panel iframe{display:block;width:100%;height:clamp(24rem,60vh,42rem);border:0;background:#081a17}
.world-note{font-size:.8rem;line-height:1.6;color:#c6d3c9;margin-top:1rem}
.world-card:has(.space-panel:not([hidden])){grid-column:1/-1}
.world-card:has(.space-panel:not([hidden])) .world-visual{display:none}
.world-card:has(.space-panel:not([hidden])) h3{min-height:0}
.team{background:#e8eade}.team h2 em{color:var(--orange)}
.team-note{display:flex;gap:1rem;align-items:center;margin-top:2.5rem;padding-block:1.3rem;border-block:1px solid #bcc8b8}
.team-note-mark{display:grid;place-items:center;width:2.5rem;height:2.5rem;flex-shrink:0;background:var(--coral);border-radius:50%;font-size:1.3rem}
.team-note strong{font-weight:500}.team-note p{font-size:.85rem;color:var(--muted);max-width:80ch;margin-top:.3rem}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2.5rem}
.team-card{position:relative;isolation:isolate;overflow:hidden;padding:1.5rem 1.5rem 2rem;border:1px solid #b9c6b8;min-height:21rem;transition:background .4s,border-color .4s}
.team-card::before{content:"";position:absolute;right:-2rem;top:-2rem;width:12rem;height:12rem;border-radius:50%;background:rgba(18,63,54,.045);z-index:-1;transition:transform .7s var(--ease)}
.team-card:hover{background:var(--paper);border-color:var(--ink)}.team-card:hover::before{transform:translate(-2rem,1rem) scale(1.15)}
.team-card-head{display:flex;align-items:center;justify-content:space-between;font-size:.7rem;margin-bottom:3rem}
.team-symbol{display:grid;place-items:center;width:3.2rem;height:3.2rem;font-size:2.3rem;transition:transform .7s var(--ease)}
.team-symbol-open{background:var(--coral);border-radius:50%}.team-symbol-people{border:1px solid var(--ink);border-radius:50%}.team-symbol-partners{color:#6e588e;font-size:4rem}
.team-card:hover .team-symbol{transform:rotate(90deg)}
.team-label{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.team-card h3{margin:.6rem 0 1rem;font-size:1.8rem}.team-card>p:last-child{max-width:32ch;font-size:.92rem;color:var(--muted)}
.join{position:relative;background:var(--lilac);overflow:clip;padding-bottom:0}
.join-layout>.eyebrow{margin-bottom:2rem}
.join-main{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem 5rem;align-items:start;min-width:0}
.join-main h2{grid-column:1;font-size:clamp(2.8rem,4.8vw,6rem)}
.join-details{display:contents}.join-details>div:first-child{grid-column:1;grid-row:2;min-width:0}
.join-details>div:first-child>p{max-width:48ch;font-size:1rem}
.contact-button{margin-top:1.7rem}.contact-address{display:block;width:fit-content;min-height:2.75rem;max-width:100%;padding-block:.75rem;font-size:.85rem;overflow-wrap:anywhere}
.join-side{grid-column:2;grid-row:1/span 2;display:grid;gap:2rem;min-width:0}
.launch-note,.support-note{border-top:1px solid #899184;padding-top:1rem;max-width:40ch;font-size:.9rem}
.launch-note{display:flex;gap:.8rem}.launch-note .status-dot{margin-top:.5rem;background:var(--ink)}
.launch-note strong{font-weight:600}.launch-note p,.support-note>p:not(.support-label){margin-top:.5rem}
.support-label{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}
.support-note a{display:inline-flex;gap:1rem;align-items:center;min-height:2.75rem;margin-top:.5rem;font-size:.82rem}
.join-word{display:flex;align-items:center;white-space:nowrap;margin:3rem auto 0;width:calc(100% - var(--gutter)*2);max-width:100rem;font-size:clamp(3.5rem,12vw,15rem);font-weight:500;line-height:1.12;letter-spacing:-.085em;user-select:none}
.join-word>span{display:inline-block}.join-word.reveal-ready .word-first{transform:translateX(-.15em);opacity:0}.join-word.reveal-ready .word-second{transform:translateX(.15em);opacity:0}.join-word.reveal-ready .word-first,.join-word.reveal-ready .word-second{transition:transform 1s var(--ease),opacity .7s var(--ease)}.join-word.is-visible .word-first,.join-word.is-visible .word-second,.motion-paused .join-word .word-first,.motion-paused .join-word .word-second{transform:none;opacity:1}.join-arrow{font-size:.6em;margin-left:.15em;transition:transform .7s var(--ease)}.join:hover .join-arrow{transform:translate(.1em,-.1em)}
.site-footer{background:var(--paper)}.footer-main{display:grid;grid-template-columns:1fr 1fr auto;align-items:start;gap:2rem;padding-block:2.5rem}
.footer-main>p{font-size:.8rem;color:var(--muted)}.footer-links{display:flex;gap:1.3rem;flex-wrap:wrap;font-size:.8rem}.footer-links a{display:inline-flex;align-items:center;min-height:2.75rem}
.footer-bottom{display:flex;justify-content:space-between;gap:1rem;padding-block:1.2rem;border-top:1px solid var(--line);font-size:.72rem;color:var(--muted)}
.legal-page{max-width:65rem;min-height:65vh}.legal-page h1{font-size:clamp(3rem,6vw,6rem);margin-top:2rem}.legal-copy{max-width:65ch;margin-top:2.5rem}.legal-copy h2{font-size:1.5rem;letter-spacing:-.025em;line-height:1.3;margin:2rem 0 .8rem}.legal-copy p+p{margin-top:1.3rem}.legal-copy .button{margin-top:1.5rem}.legal-copy a{overflow-wrap:anywhere}
/* Content is readable before JS and during loading. Animation is an enhancement. */
.reveal-ready.is-visible{animation:arrive .8s var(--ease) both;animation-delay:var(--reveal-delay,0s)}
@keyframes arrive{from{opacity:.55;transform:translateY(1rem)}to{opacity:1;transform:none}}
@keyframes shape-one{0%,100%{transform:translate(-10px,-5px) rotate(-6deg)}50%{transform:translate(20px,12px) rotate(6deg)}}
@keyframes shape-two{0%,100%{transform:translate(10px,5px) scale(1)}50%{transform:translate(-20px,-12px) scale(.94)}}
@keyframes orbit-turn{to{transform:rotate(360deg)}}
@keyframes connection-pulse{0%{transform:scale(1);opacity:.4}80%,100%{transform:scale(2.2);opacity:0}}
@keyframes node-ring{0%{opacity:.9;transform:scale(.8)}100%{opacity:0;transform:scale(1.6)}}
@keyframes neural-flash{0%{stroke:var(--ink);opacity:.45}30%{stroke:var(--orange);opacity:1}100%{stroke:var(--ink);opacity:.45}}
@keyframes center-burst{35%{stroke:var(--orange);stroke-width:4}}
@keyframes wave{0%,100%{transform:scaleY(.4)}50%{transform:scaleY(1)}}
@keyframes meridian{from{transform:scaleX(-1)}to{transform:scaleX(1)}}
.motion-paused *,.motion-paused *::before,.motion-paused *::after,.page-hidden *,.page-hidden *::before,.page-hidden *::after,.is-offscreen *,.is-offscreen *::before,.is-offscreen *::after{animation-play-state:paused!important}
.motion-paused .reveal-ready{animation:none;opacity:1;transform:none}
.motion-paused .connection-diagram{transform:none}.motion-paused{scroll-behavior:auto}
@media (min-width:60.001rem) and (max-height:46rem){
 .hero{padding-top:1.4rem}.hero h1{font-size:clamp(3.4rem,5.4vw,5rem)}.hero .eyebrow{margin-bottom:1.1rem}.hero-location{margin-top:1rem}.hero-lead{margin-top:1rem;line-height:1.6}.hero-actions{margin-top:1.2rem}.hero-bottom{margin-top:1rem;padding-block:.4rem}.connection{width:min(100%,62svh)}.connection-caption{font-size:1.15rem}.connection-hint{display:none}.connection-bottom{justify-content:center}
}
@media (min-width:120rem){.hero h1{font-size:clamp(5rem,min(6vw,11svh),9rem)}.container{max-width:106rem}}
@media (min-width:240rem){.container{max-width:116rem}.hero-grid{gap:5rem}.hero h1{font-size:clamp(4rem,min(5.3vw,11svh),11rem)}.connection{max-width:50rem}}
@media (min-width:60.001rem){.world.section-pad{padding-block:clamp(4.5rem,5.5vw,6rem)}.world .world-grid{margin-top:2.4rem}.world .world-card{padding:1.5rem}.world .world-visual{height:clamp(8rem,10vw,11rem);margin:.6rem -1.5rem 1rem}.world .world-card>p{margin-top:.75rem;min-height:3.5em}.world .world-actions{padding-top:1.2rem}}
@media (max-width:70rem){.site-nav{gap:1rem}.connection-bottom{justify-content:center}.connection-hint{display:none}.hero h1{font-size:5.8vw}.hero-location{flex-wrap:wrap;gap:.3rem .6rem}.hero-location span{display:block}.world-actions{align-items:stretch}.world-actions .text-link{width:100%}}
@media (max-width:60rem){
 :root{--header:4.5rem}.header-inner{flex-wrap:wrap;gap:.5rem}.menu-toggle{display:inline-flex;align-items:center;gap:.7rem;justify-content:center;min-height:2.75rem;padding:.5rem .9rem;border:1px solid var(--ink);border-radius:3rem;background:var(--paper);color:var(--ink);font-size:.8rem}
 .menu-lines{width:.85rem;height:.5rem;border-top:1px solid;border-bottom:1px solid;transition:transform .3s}.menu-toggle[aria-expanded="true"] .menu-lines{transform:rotate(-45deg)}
 .site-header.nav-enhanced .site-nav{display:none}.site-header.nav-enhanced .site-nav.is-open{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;align-items:stretch;gap:.15rem;padding:.8rem var(--gutter) 1rem;background:var(--paper);color:var(--ink);border-block:1px solid var(--line);box-shadow:0 1rem 1.5rem rgba(18,63,54,.1)}
 .site-header.nav-enhanced .site-nav.is-open a{min-height:3rem;color:var(--ink)}.site-header.nav-enhanced .site-nav.is-open .nav-cta{padding:.7rem 1rem;margin-top:.3rem}.site-header.nav-enhanced .site-nav.is-open .nav-cta:hover,.site-header.nav-enhanced .site-nav.is-open .nav-cta:focus-visible,.site-header.nav-enhanced .site-nav.is-open .nav-cta:active{color:var(--paper);background:var(--ink)}
 .site-header:not(.nav-enhanced) .site-nav{flex-wrap:wrap}.hero-grid{grid-template-columns:1fr 1fr;gap:1.5rem}.hero h1{font-size:5.8vw}.hero .eyebrow{font-size:.65rem}.hero-lead{font-size:.92rem}.hero-location{display:none}.connection{width:100%}.connection-caption{font-size:1.15rem}.connection-top{padding-top:1rem}.connection-bottom{padding:.2rem .75rem}.place-label{font-size:.6rem}
 .section-heading>div{grid-template-columns:1fr;gap:1.5rem}.section-heading h2{max-width:24ch}.section-lead{max-width:58ch}.build-grid{grid-template-columns:1fr;gap:2.5rem}.build-heading{position:static}.build-heading h2{max-width:18ch}
 .world-card{padding:1.5rem}.world-visual{margin-inline:-1.5rem}.team-grid{gap:.7rem}.team-card{padding:1.1rem}.team-card h3{font-size:1.5rem}.join-main{gap:2rem 3rem}.footer-main{grid-template-columns:1fr 1fr}.footer-links{grid-column:1/-1}
}
@media (max-width:42rem){
 .hero{padding-top:1.75rem}.hero::after{top:12%;left:8%;font-size:clamp(8rem,31vw,15rem);opacity:.7}.hero-grid{grid-template-columns:1fr;gap:2rem}.hero-copy{padding:0}.hero .eyebrow{margin-bottom:1.2rem;font-size:.65rem}.hero h1{font-size:clamp(2.8rem,10.6vw,4.5rem)}.hero h1 em{font-size:1.04em}.hero-location{display:flex;font-size:.75rem;margin-top:1.1rem}.hero-lead{font-size:1rem;margin-top:1.3rem}.hero-actions{margin-top:1.3rem;gap:1rem}.connection{width:100%;max-width:29rem;justify-self:center;border-radius:.65rem clamp(3rem,13vw,5rem) .65rem .65rem}.connection-top{padding-top:1.5rem}.connection-caption{font-size:clamp(1.05rem,5.1vw,1.6rem);padding:.5rem .5rem 1rem}.connection-bottom{padding:.4rem 1rem}.connection-hint{display:block;font-size:.65rem}.motion-toggle{font-size:.65rem}.place-label{font-size:.66rem}
 .hero-bottom{font-size:.65rem;flex-wrap:wrap;gap:.4rem 1rem;margin-top:1.5rem}.hero-coordinate{display:none}.hero-bottom>a{min-height:2.5rem}.resonance-band{gap:.7rem;justify-content:space-between;padding:1rem var(--gutter)}.resonance-band span{font-size:.85rem}.resonance-band i{font-size:1.15rem}.resonance-band i:last-child{display:none}
 .section-heading{gap:1.5rem}.section-heading>div{gap:1.5rem}h2{font-size:clamp(2.4rem,9vw,3.6rem)}.intro::after,.world::before{display:none}.principle-grid{grid-template-columns:1fr;margin-top:2.5rem}.principle,.principle:first-child,.principle:last-child{padding:1.6rem 0;border:0;border-bottom:1px solid #4e6c5f}.principle:last-child{border-bottom:0;padding-bottom:0}.principle-top{margin-bottom:1rem}.principle p{max-width:46ch;font-size:1rem}.principle-sign{width:3rem;height:3rem;font-size:2.2rem}.sign-diverse{font-size:3.8rem}
 .build-heading h2{margin-top:1.5rem}.build-item{gap:.6rem;grid-template-columns:1.2rem minmax(0,1fr) 1.5rem}.build-item p{font-size:1rem}.build-arrow{font-size:1.5rem}.world-grid{grid-template-columns:1fr;gap:1rem;margin-top:2.5rem}.world-visual{height:12rem}.world-card>p{font-size:1rem;min-height:0}.world-actions .button{width:100%}.world-card h3{font-size:2rem}.world-card:has(.space-panel:not([hidden])){grid-column:auto}
 .team-grid{grid-template-columns:1fr;gap:1rem}.team-card{min-height:0;padding:1.5rem}.team-card-head{margin-bottom:1.7rem}.team-card h3{font-size:1.8rem}.team-card>p:last-child{font-size:1rem;max-width:44ch}.team-note{align-items:start}.team-note p{font-size:.9rem}
 .join-main{grid-template-columns:1fr;gap:1.8rem}.join-main h2{font-size:clamp(2.5rem,9vw,3.6rem)}.join-details>div:first-child,.join-side{grid-column:auto;grid-row:auto}.join-side{gap:1.5rem}.launch-note,.support-note{max-width:none;font-size:1rem}.join-word{font-size:11.7vw;margin-top:2.5rem}.footer-main{grid-template-columns:1fr;gap:1.5rem}.footer-links{gap:.6rem 1.25rem}.footer-bottom{flex-direction:column;gap:.5rem}
}
@media (max-width:23rem){.connection-hint{max-width:20ch}.motion-toggle .motion-label{max-width:11ch}.resonance-band span{font-size:.72rem}.resonance-band{gap:.4rem}.hero-actions{gap:.6rem}.button{gap:.8rem}.hero-location{font-size:.7rem}}
@media (max-width:42rem){.world-card h3{min-height:0}}
@media (prefers-reduced-motion:reduce){html:not(.motion-user-enabled){scroll-behavior:auto}html:not(.motion-user-enabled) *,html:not(.motion-user-enabled) *::before,html:not(.motion-user-enabled) *::after{animation:none!important;transition:none!important}html:not(.motion-user-enabled) .connection-diagram{transform:none!important}}
@media print{html{font-size:11pt}.site-header{position:static}.menu-toggle,.motion-toggle,.hero-bottom,.resonance-band,.world-visual{display:none!important}*{animation:none!important;box-shadow:none!important}.hero-grid,.section-heading>div,.build-grid,.join-main{display:block}.connection{max-width:18rem;margin:1rem auto}.intro,.world,.team,.join{background:white;color:var(--ink)}.intro .section-lead,.world .section-lead,.principle p{color:var(--ink)}.world-card{background:white}.world-card h3,.world-card>p,.world-actions .text-link{color:var(--ink)}.build-heading{position:static}.reveal-ready{opacity:1;transform:none}.section-pad{padding-block:2rem}.hero h1{font-size:3.5rem}.join-side{margin-top:2rem}}
