@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}:root{--bg:#060a0c;--bg-soft:#0a1013;--panel:#0d1518;--panel-border:#ffffff14;--panel-border-hover:#2de8cf59;--text:#eef4f4;--text-muted:#93a3a5;--text-faint:#5c6c6e;--accent:#2fe6c9;--accent-soft:#2fe6c91f;--accent-glow:#2fe6c959;--font-heading:"Space Grotesk", "Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--container:1180px;--radius-lg:18px;--radius-md:12px;--radius-sm:8px;--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.01em;margin:0 0 .5em;font-weight:700;line-height:1.12}p{margin:0 0 1em}button{cursor:pointer;font-family:inherit}.bg-grid{pointer-events:none;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 50% at 50% 30%,#000 40%,#0000 90%);mask-image:radial-gradient(60% 50% at 50% 30%,#000 40%,#0000 90%)}.bg-glow{pointer-events:none;background:radial-gradient(55% 45% at 50% 20%,#145a5559,#0000 70%);position:absolute;inset:0}.highlight{color:var(--accent);font-family:var(--font-mono);font-weight:600}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:24px}section{position:relative}.section-pad{padding-block:110px}@media (width<=720px){.section-pad{padding-block:70px}}.eyebrow{font-family:var(--font-mono);letter-spacing:.14em;color:var(--accent);text-transform:uppercase;align-items:center;gap:8px;margin-bottom:14px;font-size:12.5px;display:inline-flex}.section-title{max-width:760px;font-size:clamp(28px,4vw,44px)}.section-intro{color:var(--text-muted);max-width:620px;font-size:17px}.site-nav{z-index:100;-webkit-backdrop-filter:blur(14px);border:1px solid var(--panel-border);background:#080e10b8;border-radius:100px;justify-content:space-between;align-items:center;gap:16px;width:min(92vw,860px);padding:10px 12px 10px 14px;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%)}.nav-brand{font-family:var(--font-mono);color:var(--text);white-space:nowrap;align-items:center;gap:10px;font-size:14px;display:flex}.nav-mark{background:var(--accent);color:#04211d;width:30px;height:30px;font-family:var(--font-mono);border-radius:9px;place-items:center;font-size:13px;font-weight:700;display:grid}.nav-links{align-items:center;gap:26px;display:flex}.nav-links a{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);transition:color .2s var(--ease-out);padding:4px 0;font-size:12.5px;position:relative}.nav-links a:hover{color:var(--text)}.nav-links a[aria-current=page]{color:var(--accent)}.nav-cta{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:var(--accent);color:#04211d;white-space:nowrap;transition:transform .25s var(--ease-bounce), box-shadow .25s var(--ease-out);border-radius:100px;align-items:center;gap:6px;padding:9px 16px;font-size:12px;font-weight:700;display:inline-flex}.nav-cta:hover{box-shadow:0 8px 22px var(--accent-glow);transform:translateY(-2px)scale(1.03)}.nav-toggle{display:none}@media (width<=680px){.site-nav{padding:8px 8px 8px 12px}.nav-links,.nav-cta span.cta-label{display:none}}.ticker{border-top:1px solid var(--panel-border);border-bottom:1px solid var(--panel-border);background:var(--bg-soft);padding-block:18px;position:relative;overflow:hidden}.ticker-track{gap:48px;width:max-content;animation:32s linear infinite ticker-scroll;display:flex}.ticker-item{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;align-items:center;gap:48px;font-size:13px;display:flex}.ticker-item .dot{color:var(--accent)}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.hero{padding-top:220px;padding-bottom:60px;position:relative;overflow:hidden}.hero-snippets span{font-family:var(--font-mono);color:#2fe6c966;font-size:13px;position:absolute}.hero-inner{text-align:center;position:relative}.hero-kicker{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;font-size:13px}.hero h1{max-width:900px;margin-inline:auto;font-size:clamp(34px,6vw,68px)}.hero-sub{max-width:560px;color:var(--text-muted);margin:18px auto 0;font-size:18px}.info-box{margin:auto;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);grid-template-columns:repeat(4,1fr);width:75%;margin:40px auto;display:grid}.info-box>div:not(:last-child){border-right:1px solid var(--panel-border)}.info-box>div{padding:28px}.info-box .info-box-data{color:var(--accent);margin-bottom:0;font-size:40px;font-weight:600}.info-box .info-box-desc{color:var(--text-muted);font-weight:400}@media (width<=768px){.info-box{grid-template-columns:repeat(2,1fr)}}.card-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:48px;display:grid}@media (width<=780px){.card-grid{grid-template-columns:1fr}}.card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);transition:border-color .3s var(--ease-out), transform .3s var(--ease-out);padding:28px}.card:hover{border-color:var(--panel-border-hover);transform:translateY(-3px)}.card-index{font-family:var(--font-mono);color:var(--text-faint);font-size:13px}.card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card h3{margin-bottom:8px;font-size:20px}.card p{color:var(--text-muted);margin-bottom:18px;font-size:15px}.tag-row{flex-wrap:wrap;gap:8px;display:flex}.tag{font-family:var(--font-mono);color:var(--text-muted);border:1px solid var(--panel-border);background:#ffffff05;border-radius:100px;padding:6px 12px;font-size:12.5px}.icon-badge{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:10px;place-items:center;margin-bottom:16px;display:grid}.btn{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;transition:transform .3s var(--ease-bounce), box-shadow .3s var(--ease-out), background .2s;border:1px solid #0000;border-radius:100px;align-items:center;gap:8px;padding:14px 26px;font-size:13px;font-weight:700;display:inline-flex}.btn-primary{background:var(--accent);color:#04211d}.btn-primary:hover{box-shadow:0 10px 30px var(--accent-glow);transform:translateY(-3px)scale(1.03)}.btn-ghost{border-color:var(--panel-border);color:var(--text)}.btn-ghost:hover{border-color:var(--panel-border-hover);color:var(--accent)}.timeline{margin-top:56px;padding-left:28px;position:relative}.timeline:before{content:"";background:linear-gradient(var(--panel-border), var(--panel-border));width:1px;position:absolute;top:6px;bottom:6px;left:5px}.timeline-item{padding-bottom:52px;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-dot{border:2px solid var(--accent);background:var(--bg);border-radius:50%;width:12px;height:12px;position:absolute;top:4px;left:-28px}.timeline-date{font-family:var(--font-mono);color:var(--accent);letter-spacing:.08em;font-size:13px}.timeline-item h3{margin:6px 0 2px;font-size:21px}.timeline-org{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin-bottom:14px;font-size:12.5px}.timeline-item ul{flex-direction:column;gap:10px;display:flex}.timeline-item li{color:var(--text-muted);gap:12px;font-size:15px;display:flex}.timeline-item li:before{content:"";background:var(--accent);flex-shrink:0;width:14px;height:2px;margin-top:10px}.gallery{grid-template-columns:repeat(3,1fr);grid-auto-rows:140px;gap:18px;margin-top:44px;display:grid}.gallery-item{border-radius:var(--radius-md);border:1px solid var(--panel-border);position:relative;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%}.gallery-item.tall{grid-row:span 4}.gallery-item.mid{grid-row:span 3}.gallery-item.placeholder{background:repeating-linear-gradient(45deg, #ffffff04 0 10px, transparent 10px 20px), var(--panel);border:1px dashed var(--panel-border);place-items:center;display:grid}.gallery-caption{justify-content:space-between;align-items:flex-end;gap:10px;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.gallery-caption span.label{color:#fff;text-shadow:0 2px 10px #0009;font-size:14px;font-weight:600}.gallery-item:after{content:"";opacity:0;background:linear-gradient(#0000 45%,#000000a6);transition:opacity .3s;position:absolute;inset:0}.gallery-item:has(.gallery-caption):after{opacity:1}.pill-tag{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--panel-border-hover);color:var(--accent);white-space:nowrap;backdrop-filter:blur(6px);background:#060a0cbf;border-radius:100px;padding:5px 10px;font-size:10.5px}.gallery-video{flex-direction:column;justify-content:space-between;width:100%;height:100%;display:flex;position:relative}.gallery-video video{width:100%;height:100%;position:absolute;inset:0}.gallery-video .play{background:var(--accent-soft);border:1px solid var(--panel-border-hover);width:46px;height:46px;color:var(--accent);border-radius:50%;align-self:center;place-items:center;margin:auto;display:grid}.gallery-video small{color:var(--text-faint);font-size:12.5px;font-family:var(--font-mono)}.gallery-video .filename{font-family:var(--font-mono);color:var(--text-faint);text-align:right;font-size:11px}@media (width<=900px){.gallery{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.gallery{grid-template-columns:1fr;grid-auto-rows:220px}.gallery-item.tall,.gallery-item.mid{grid-row:span 1}}.side-panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);padding:26px}.side-panel h4{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;font-size:12px}.side-panel+.side-panel{margin-top:20px}.side-entry{margin-bottom:16px}.side-entry:last-child{margin-bottom:0}.side-entry .title{font-size:15px;font-weight:600}.side-entry .meta{color:var(--text-faint);margin-top:2px;font-size:13px}.cert-list li{color:var(--text-muted);margin-bottom:8px;padding-left:16px;font-size:13.5px;position:relative}.cert-list li:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:0}.two-col{grid-template-columns:1.6fr 1fr;align-items:start;gap:48px;margin-top:48px;display:grid}@media (width<=880px){.two-col{grid-template-columns:1fr}}.manifesto-body p{color:var(--text-muted);font-size:16.5px}.manifesto-body p:first-child{color:var(--text);font-size:18px}.contact-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:40px;display:grid}@media (width<=640px){.contact-grid{grid-template-columns:1fr}}.contact-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-md);transition:border-color .25s, transform .25s var(--ease-bounce);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.contact-card:hover{border-color:var(--panel-border-hover);transform:translateY(-2px)}.contact-left{align-items:center;gap:14px;display:flex}.contact-icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.contact-card .title{font-size:15px;font-weight:600}.contact-card .value{color:var(--text-faint);font-family:var(--font-mono);margin-top:2px;font-size:13px}.cta-band{text-align:center;padding-block:120px 90px}.cta-band h2{font-size:clamp(28px,5vw,46px)}.cta-band p{color:var(--text-muted);max-width:480px;margin-inline:auto}.cta-band .btn{margin-top:26px}.site-footer{border-top:1px solid var(--panel-border);background:var(--bg-soft);padding-block:70px 30px}.footer-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.footer-brand .eyebrow{margin-bottom:8px}.footer-wordmark{font-family:var(--font-heading);color:#0000;-webkit-text-stroke:1px var(--panel-border-hover);letter-spacing:.02em;margin:10px 0 0;font-size:clamp(38px,8vw,96px);font-weight:700;line-height:1}.footer-links{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;flex-direction:column;gap:10px;font-size:13px;display:flex}.footer-links a{color:var(--text-muted);transition:color .2s}.footer-links a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid var(--panel-border);font-family:var(--font-mono);color:var(--text-faint);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:50px;padding-top:24px;font-size:12px;display:flex}.reveal{opacity:0;transition:opacity .6s var(--ease-out), transform .6s var(--ease-bounce);transform:translateY(18px)scale(.985)}.reveal.is-visible{opacity:1;transform:translateY(0)scale(1)}@keyframes page-bounce-in{0%{opacity:0;transform:translateY(28px)scale(.97)}55%{opacity:1}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes page-bounce-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-18px)scale(.98)}}::view-transition-old(page){animation:page-bounce-out .32s var(--ease-out) forwards}::view-transition-new(page){animation:page-bounce-in .55s var(--ease-bounce) forwards}@media (prefers-reduced-motion:reduce){::view-transition-old(page),::view-transition-new(page){animation:none}.reveal{opacity:1;transition:none;transform:none}}
