:root{--f-text:#edeae2;--f-muted:#9a958b;--f-ember:#e89b5a}html[data-theme=light]{--page-base:#fbfaf7;--bg-1:#fff;--bg-2:#fbfaf7;--bg-3:#f2eee4;--text:#3c3719;--muted:#878475;--sub:#5a5440;--line:#3c3719;--line-op:.16;--node-op:.5;--star-display:none;--star-color:#3c3719;--ember:#c0682b;--ember-bloom:#ce7a3a;--vignette-edge:#3c37191a;--nebula-op:.08;--flash-core:#ce7a346b;--footer-bg:#2d2c2a;--footer-border:transparent;--loader-bg:radial-gradient(800px 600px at 50% 50%, #fff0, #fbfaf7 92%)}html[data-theme=dark]{--page-base:#1b1a17;--bg-1:#34322a;--bg-2:#26251f;--bg-3:#1b1a17;--text:#f2efe7;--muted:#8e8a7c;--sub:#c9c4b4;--line:#f2efe7;--line-op:.18;--node-op:.55;--star-display:block;--star-color:#f2efe7;--ember:#cb7434;--ember-bloom:#e89b5a;--vignette-edge:#0a09088c;--nebula-op:.13;--flash-core:#fffaf580;--footer-bg:transparent;--footer-border:#f2efe714;--loader-bg:radial-gradient(800px 600px at 50% 50%, #26251f00, #1b1a17 90%)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--page-base);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;flex-direction:column;min-height:100vh;font-family:Switzer,system-ui,sans-serif;line-height:1.5;transition:background-color .6s,color .6s;display:flex;overflow-x:hidden}#__next{flex-direction:column;min-height:100vh;display:flex}a{color:inherit}.eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:600}body:before{content:"";z-index:-3;background:radial-gradient(1200px 800px at 50% 38%, var(--bg-1) 0%, var(--bg-2) 42%, var(--bg-3) 100%);transition:opacity .6s;position:fixed;inset:0}.nebula{z-index:-2;width:60vw;height:60vw;opacity:var(--nebula-op);filter:blur(20px);pointer-events:none;background:radial-gradient(circle,#cb7434e6 0%,#cb743400 62%);animation:38s ease-in-out infinite alternate drift;position:fixed;top:18%;left:20%}@keyframes drift{0%{transform:translate(-4%,-3%)scale(1)}to{transform:translate(6%,4%)scale(1.12)}}.vignette{z-index:-1;pointer-events:none;background:radial-gradient(120% 120% at 50% 45%, transparent 55%, var(--vignette-edge) 100%);position:fixed;inset:0}.starfield{z-index:-1;pointer-events:none;display:var(--star-display);position:fixed;inset:0}.starfield .layer{will-change:transform;position:absolute;inset:0}.layer.far{animation:150s linear infinite pan}.layer.near{animation:90s linear infinite reverse pan}@keyframes pan{0%{transform:translate(0)}to{transform:translate(-40px,-26px)}}.star{background:var(--star-color);opacity:0;border-radius:50%;position:absolute}.cinematic .star{animation:ignite .9s ease forwards var(--d), twinkle var(--t) ease-in-out infinite var(--d2)}.star.lit{opacity:var(--o)}@keyframes ignite{0%{opacity:0;transform:scale(.2)}to{opacity:var(--o);transform:scale(1)}}@keyframes twinkle{0%,to{opacity:var(--o)}50%{opacity:calc(var(--o) * .35)}}.loader{display:none}.cinematic .loader{z-index:50;background:var(--loader-bg);flex-direction:column;justify-content:center;align-items:center;gap:26px;transition:opacity .9s,visibility .9s;display:flex;position:fixed;inset:0}.loader.done{opacity:0;visibility:hidden;pointer-events:none}.logo-img{filter:none;height:auto;display:block}html[data-theme=light] .logo-img{filter:invert()}.loader-logo{opacity:0;width:150px;animation:1s .2s forwards logoReveal}@keyframes logoReveal{0%{opacity:0;transform:translateY(4px)scale(.96)}to{opacity:1;transform:none}}.loader .bar{background:color-mix(in srgb, var(--text) 16%, transparent);width:150px;height:1px;position:relative;overflow:hidden}.loader .bar i{background:var(--text);width:0;position:absolute;inset:0}.loader .count{letter-spacing:.26em;color:var(--muted);font-size:.68rem;font-weight:600}.flash{z-index:49;pointer-events:none;opacity:0;background:radial-gradient(closest-side, var(--flash-core), transparent 70%);position:fixed;inset:0}.flash.fire{animation:.8s forwards flash}@keyframes flash{0%{opacity:0;transform:scale(.4)}22%{opacity:1}to{opacity:0;transform:scale(1.7)}}header{z-index:5;color:var(--text);justify-content:space-between;align-items:flex-start;gap:24px;padding:34px clamp(24px,5vw,72px);display:flex;position:relative}.cinematic header{opacity:0;transition:opacity 1s 1.7s,transform 1s 1.7s;transform:translateY(-10px)}.revealed header{opacity:1;transform:none}.brand{align-items:center;text-decoration:none;display:flex}.brand-logo{width:clamp(142px,13vw,186px)}.nav{align-items:center;gap:clamp(14px,2.2vw,28px);padding-top:2px;display:flex}.visit{border-bottom:1px solid color-mix(in srgb, var(--text) 34%, transparent);white-space:nowrap;padding-bottom:2px;font-size:.8rem;font-weight:600;text-decoration:none;transition:border-color .25s,color .25s}.visit:hover{border-color:var(--ember);color:var(--ember)}.visit .arrow{transition:transform .25s;display:inline-block}.visit:hover .arrow{transform:translate(2px,-2px)}.theme-btn{cursor:pointer;color:var(--text);opacity:.8;background:0 0;border:0;padding:2px;line-height:0;transition:opacity .2s,transform .4s}.theme-btn:hover{opacity:1;transform:rotate(18deg)}.theme-btn .ic-sun{display:none}.theme-btn .ic-moon,html[data-theme=dark] .theme-btn .ic-sun{display:block}html[data-theme=dark] .theme-btn .ic-moon{display:none}.lang{align-items:center;gap:9px;font-size:.8rem;font-weight:600;display:flex}.lang button{cursor:pointer;font:inherit;color:var(--muted);letter-spacing:.04em;background:0 0;border:0;padding:0;line-height:1;transition:color .2s}.lang button:hover,.lang button[aria-pressed=true]{color:var(--text)}.lang .sep{color:color-mix(in srgb, var(--text) 28%, transparent)}main{flex:1;justify-content:center;align-items:center;padding:30px 24px 64px;display:flex;position:relative}.constellation{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.constellation path{stroke:var(--line);stroke-width:1px;fill:none;opacity:0;stroke-dasharray:1;stroke-dashoffset:1px}.cinematic .constellation path{animation:1.4s 1.1s forwards trace}@keyframes trace{0%{opacity:0}10%{opacity:var(--line-op)}to{opacity:var(--line-op);stroke-dashoffset:0}}.constellation .node{fill:var(--line);opacity:0}.cinematic .constellation .node{animation:.6s 1.4s forwards nodeIn}@keyframes nodeIn{to{opacity:var(--node-op)}}.ember-star{fill:var(--ember);transform-origin:50%;transform-box:fill-box;opacity:0}.cinematic .ember-star{animation:.9s cubic-bezier(.2,.8,.2,1) 2s forwards emberFire,4.5s ease-in-out 2.9s infinite breathe}@keyframes emberFire{0%{opacity:0;transform:scale(.2)}60%{opacity:1;transform:scale(1.9)}to{opacity:1;transform:scale(1)}}@keyframes breathe{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.stage{text-align:center;width:min(720px,100%);padding:clamp(40px,7vw,80px) clamp(28px,6vw,72px);position:relative}.stage:before,.stage:after{content:"";border-color:var(--text);opacity:0;width:46px;height:46px;position:absolute}.stage:before{border-top:2px solid;border-left:2px solid;top:0;left:0}.stage:after{border-bottom:2px solid;border-right:2px solid;bottom:0;right:0}.cinematic .stage:before{animation:.7s 2.2s forwards cornerIn}.cinematic .stage:after{animation:.7s 2.35s forwards cornerIn}@keyframes cornerIn{0%{opacity:0;transform:translate(6px,6px)}to{opacity:.85;transform:none}}html:not(.cinematic) .stage:before,html:not(.cinematic) .stage:after{opacity:.85}.reveal{opacity:1;transform:none}.cinematic .reveal{opacity:0;filter:blur(10px);transition:opacity 1s,filter 1s,transform 1s;transform:translateY(20px)}.revealed .reveal{opacity:1;filter:blur();transform:none}.revealed .reveal.d1{transition-delay:2.25s}.revealed .reveal.d2{transition-delay:2.5s}.revealed .reveal.d3{transition-delay:2.75s}.stage .eyebrow{margin-bottom:26px;display:block}.headline{letter-spacing:-.035em;color:var(--text);font-size:clamp(3.4rem,11.5vw,7rem);font-weight:700;line-height:.9}.headline .dot{color:var(--ember)}.revealed .headline .dot{animation:2s 3s forwards dotGlow}@keyframes dotGlow{0%{text-shadow:0 0 #0000}30%{text-shadow:0 0 28px var(--ember-bloom)}to{text-shadow:0 0 14px color-mix(in srgb, var(--ember) 60%, transparent)}}.sub{max-width:36ch;color:var(--sub);margin:26px auto 0;font-size:clamp(1rem,1.4vw,1.14rem);font-weight:400;line-height:1.55}.meta{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);justify-content:center;align-items:center;gap:14px;margin-top:34px;font-size:.72rem;font-weight:600;display:flex}.meta .rule{background:color-mix(in srgb, var(--text) 28%, transparent);width:30px;height:1px}.cta-row{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:34px;display:flex}.btn{letter-spacing:.1em;text-transform:uppercase;border:1px solid;border-radius:0;align-items:center;gap:9px;padding:14px 24px;font-family:inherit;font-size:.76rem;font-weight:600;text-decoration:none;transition:background-color .25s,color .25s,border-color .25s;display:inline-flex}.btn .arrow{transition:transform .25s;display:inline-block}.btn:hover .arrow{transform:translate(2px,-2px)}.btn-primary{border-color:var(--ember);color:var(--ember)}.btn-primary:hover{background:var(--ember);color:#fff;border-color:var(--ember)}.btn-ghost{border-color:color-mix(in srgb, var(--text) 32%, transparent);color:var(--text)}.btn-ghost:hover{border-color:var(--text)}footer{background:var(--footer-bg);color:var(--f-text);border-top:1px solid var(--footer-border);z-index:5;padding:clamp(48px,6vw,72px) clamp(24px,5vw,72px) 30px;transition:background-color .6s;position:relative}.cinematic footer{opacity:0;transition:opacity 1.2s 2.6s,background-color .6s}.revealed footer{opacity:1}.fgrid{grid-template-columns:1.6fr 1fr 1fr;gap:clamp(32px,5vw,72px);width:100%;display:grid}.fgrid .fcol:last-child{justify-self:end}.fcol h4,.flabel{letter-spacing:.2em;text-transform:uppercase;color:var(--f-muted);margin-bottom:20px;font-size:.66rem;font-weight:600}.institutional{color:var(--f-text);max-width:46ch;font-size:.95rem;font-weight:400;line-height:1.62}.institutional .glow{color:var(--f-ember)}.seal{align-items:center;margin-top:30px;display:flex}.republic-logo{filter:none;width:clamp(150px,13vw,210px);height:auto;display:block}.on-light-bg .republic-logo{filter:invert()}.fcol address{color:var(--f-text);font-size:.92rem;font-style:normal;line-height:1.7}.fcol address .dim{color:var(--f-muted);font-size:.82rem}a.flink{border-bottom:1px solid #edeae242;padding-bottom:1px;text-decoration:none;transition:border-color .25s,color .25s;display:inline-block}a.flink:hover{border-color:var(--ember);color:var(--f-ember)}.social{flex-direction:column;gap:13px;font-size:.92rem;display:flex}.social a{color:var(--f-text);align-items:center;gap:11px;width:max-content;text-decoration:none;transition:color .25s;display:inline-flex}.social a:hover{color:var(--f-ember)}.social svg{opacity:.85}.legal{width:100%;color:var(--f-muted);border-top:1px solid #edeae21f;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:clamp(40px,5vw,60px) 0 0;padding-top:22px;font-size:.74rem;display:flex}.legal a{color:var(--f-muted);text-decoration:none;transition:color .25s}.legal a:hover{color:var(--f-text)}.legal .spacer{flex:1}@media (max-width:880px){.fgrid{grid-template-columns:1fr 1fr}.fgrid .fcol:last-child{justify-self:start}.fcol.institutional-col{grid-column:1/-1}}@media (max-width:620px){header{flex-wrap:wrap;gap:16px}.nav{order:3;justify-content:space-between;width:100%}.fgrid{grid-template-columns:1fr}.stage{padding:48px 26px}.legal .spacer{width:100%;display:none}}@media (prefers-reduced-motion:reduce){.nebula,.layer{animation:none}.ember-star{opacity:.85}.constellation .node{opacity:var(--node-op)}.constellation path{opacity:var(--line-op);stroke-dashoffset:0}}
