/* Arcade Môn — compiled CSS (committed for no-build-step deployment)
   Regenerate: composer build (requires ./tailwindcss binary)
   This file includes all custom styles. Tailwind base/utilities are added on rebuild. */

:root{--c-bg:#08080f;--c-surface:#111120;--c-border:#1e1e3a;--c-cyan:#c2ff00;--c-magenta:#ff0055;--c-yellow:#f5e642;--c-green:#39ff14;--c-white:#f0f0f0;--c-muted:#6b7280;--font-body:'Segoe UI',system-ui,-apple-system,sans-serif;--font-mono:'Courier New',Courier,monospace;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--container:72rem;--header-h:4rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:1rem;--trans-fast:150ms ease;--trans-base:250ms ease}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);background-color:var(--c-bg);color:var(--c-white);line-height:1.7;min-height:100dvh;display:flex;flex-direction:column}
img,video,svg{display:block;max-width:100%}
a{color:var(--c-cyan);text-decoration:none;transition:color var(--trans-fast)}
a:hover{color:var(--c-white)}
a:focus-visible{outline:2px solid var(--c-cyan);outline-offset:3px;border-radius:2px}
ul,ol{list-style:none}
button{cursor:pointer;font-family:inherit}
.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}
.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--space-lg)}
.site-body{display:flex;flex-direction:column;min-height:100dvh}
.site-main{flex:1}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(8,8,15,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--c-border)}
.site-header__inner{display:flex;align-items:center;gap:var(--space-lg);max-width:var(--container);margin-inline:auto;padding-inline:var(--space-lg);height:var(--header-h)}
.brand-logo{position:relative;display:inline-block;text-decoration:none;flex-shrink:0}
.brand-logo__text{position:relative;display:flex;flex-direction:column;line-height:1;font-weight:900;text-transform:uppercase}
.brand-logo__line1{position:relative;display:block;font-size:1.1rem;letter-spacing:-.02em}
.brand-logo__layer{display:block;position:absolute;top:0;left:0;white-space:nowrap;user-select:none}
.brand-logo__layer--r{color:var(--c-magenta);transform:translate(-1.5px,0);opacity:.85}
.brand-logo__layer--b{color:var(--c-cyan);transform:translate(1.5px,0);opacity:.85}
.brand-logo__layer--g{color:var(--c-white);position:relative}
.brand-logo__line2{display:block;font-size:.55rem;letter-spacing:.25em;color:var(--c-cyan);margin-top:.15rem;white-space:nowrap}
.brand-logo:hover .brand-logo__layer--r{transform:translate(-3px,0)}
.brand-logo:hover .brand-logo__layer--b{transform:translate(3px,0)}
.site-nav{flex:1}
.site-nav__list{display:flex;gap:var(--space-xs);align-items:center}
.site-nav__link{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;color:var(--c-muted);text-decoration:none;transition:color var(--trans-fast),background var(--trans-fast)}
.site-nav__link:hover,.site-nav__link--active{color:var(--c-white);background:var(--c-border)}
.locale-switch{padding:var(--space-xs) var(--space-md);border:1px solid var(--c-border);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;color:var(--c-muted);white-space:nowrap;transition:all var(--trans-fast);text-decoration:none}
.locale-switch:hover{border-color:var(--c-cyan);color:var(--c-cyan)}
.nav-toggle{display:none;flex-direction:column;gap:5px;padding:var(--space-xs);background:transparent;border:none;margin-left:auto}
.nav-toggle__bar{display:block;width:24px;height:2px;background:var(--c-white);border-radius:2px;transition:transform var(--trans-fast)}
.mobile-nav{display:none;background:var(--c-surface);border-top:1px solid var(--c-border)}
.mobile-nav__list{padding:var(--space-md) var(--space-lg)}
.mobile-nav__link{display:block;padding:var(--space-sm) 0;font-size:1rem;color:var(--c-white);border-bottom:1px solid var(--c-border);text-decoration:none}
.mobile-nav__link--locale{color:var(--c-cyan)}
.mobile-nav__link:last-child{border-bottom:none}
@media(max-width:768px){.site-nav{display:none}.locale-switch{display:none}.nav-toggle{display:flex}.mobile-nav{display:block}}

/* Hero */
.hero{position:relative;overflow:hidden;padding:var(--space-3xl) 0 var(--space-2xl);text-align:center;background:radial-gradient(ellipse at 50% 0%,rgba(194,255,0,.07) 0%,transparent 60%)}
.hero__inner{position:relative;z-index:1;max-width:48rem;margin-inline:auto;padding-inline:var(--space-lg)}
@keyframes glitch-r{0%,13%,18%,42%,48%,77%,83%,100%{transform:translate(-3px,0);clip-path:none;opacity:.8}14%{transform:translate(-10px,0);clip-path:polygon(0 30%,100% 30%,100% 50%,0 50%);opacity:1}16%{transform:translate(14px,2px);clip-path:polygon(0 5%,100% 5%,100% 20%,0 20%);opacity:.6}17%{transform:translate(-3px,0);clip-path:none;opacity:.8}43%{transform:translate(-24px,0);clip-path:polygon(0 0%,100% 0%,100% 35%,0 35%);opacity:1}44%{transform:translate(16px,5px);clip-path:polygon(0 58%,100% 58%,100% 85%,0 85%);opacity:.4}45%{transform:translate(-20px,-3px);clip-path:polygon(0 22%,100% 22%,100% 52%,0 52%);opacity:1}46%{transform:translate(8px,1px);clip-path:polygon(0 70%,100% 70%,100% 100%,0 100%);opacity:.7}47%{transform:translate(-3px,0);clip-path:none;opacity:.8}78%{transform:translate(-6px,-6px);clip-path:polygon(0 42%,100% 42%,100% 68%,0 68%);opacity:1}79%{transform:translate(20px,3px);clip-path:polygon(0 12%,100% 12%,100% 32%,0 32%);opacity:.5}80%{transform:translate(-14px,0);clip-path:polygon(0 60%,100% 60%,100% 90%,0 90%);opacity:.9}82%{transform:translate(-3px,0);clip-path:none;opacity:.8}}
@keyframes glitch-b{0%,13%,18%,42%,48%,77%,83%,100%{transform:translate(3px,0);clip-path:none;opacity:.8}14%{transform:translate(10px,0);clip-path:polygon(0 50%,100% 50%,100% 72%,0 72%);opacity:1}16%{transform:translate(-14px,-2px);clip-path:polygon(0 78%,100% 78%,100% 95%,0 95%);opacity:.6}17%{transform:translate(3px,0);clip-path:none;opacity:.8}43%{transform:translate(24px,0);clip-path:polygon(0 38%,100% 38%,100% 72%,0 72%);opacity:1}44%{transform:translate(-16px,-5px);clip-path:polygon(0 8%,100% 8%,100% 28%,0 28%);opacity:.4}45%{transform:translate(22px,3px);clip-path:polygon(0 52%,100% 52%,100% 80%,0 80%);opacity:1}46%{transform:translate(-7px,0);clip-path:polygon(0 18%,100% 18%,100% 44%,0 44%);opacity:.7}47%{transform:translate(3px,0);clip-path:none;opacity:.8}78%{transform:translate(6px,6px);clip-path:polygon(0 20%,100% 20%,100% 48%,0 48%);opacity:1}79%{transform:translate(-20px,-3px);clip-path:polygon(0 65%,100% 65%,100% 88%,0 88%);opacity:.5}80%{transform:translate(14px,0);clip-path:polygon(0 5%,100% 5%,100% 28%,0 28%);opacity:.9}82%{transform:translate(3px,0);clip-path:none;opacity:.8}}
@keyframes blink-cursor{50%{opacity:0}}
.brand-cursor{display:inline-block;animation:blink-cursor 1s step-end infinite;margin-right:-.2em}
.brand-title{position:relative;display:block;text-align:center;text-transform:uppercase;line-height:1;margin-bottom:var(--space-lg)}
.brand-title__line1{position:relative;display:block;font-size:clamp(3.5rem,18vw,8rem);font-weight:900;letter-spacing:-.03em;line-height:1}
.brand-title__line2{display:block;font-size:clamp(1.1rem,5vw,2.75rem);font-weight:900;letter-spacing:.35em;color:var(--c-cyan);margin-top:.2em;padding-left:.35em}
.brand-title__layer{display:block;position:absolute;top:0;left:0;right:0;user-select:none}
.brand-title__layer--r{color:var(--c-magenta);transform:translate(-3px,0);opacity:.8;animation:glitch-r 10s infinite}
.brand-title__layer--b{color:var(--c-cyan);transform:translate(3px,0);opacity:.8;animation:glitch-b 10s infinite .25s}
.brand-title__layer--g{color:var(--c-white);position:relative}
.hero__tagline{font-size:.875rem;color:var(--c-cyan);margin-bottom:var(--space-md);font-weight:500;letter-spacing:.05em;text-transform:uppercase}
.hero__sub{font-size:1.125rem;color:var(--c-muted);max-width:36rem;margin-inline:auto;margin-bottom:var(--space-xl)}
.hero__ctas{display:flex;gap:var(--space-md);justify-content:center;flex-wrap:wrap}
.hero__scanlines{position:absolute;inset:0;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 3px,rgba(0,0,0,.08) 3px,rgba(0,0,0,.08) 4px);pointer-events:none;z-index:1}
.hero__grid{position:absolute;bottom:0;left:50%;width:260%;height:62%;transform:translateX(-50%);pointer-events:none;z-index:0;perspective:260px}
@keyframes grid-scroll{from{background-position:0 0}to{background-position:0 65px}}
.hero__grid::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(194,255,0,.45) 1.5px,transparent 1.5px),linear-gradient(90deg,rgba(194,255,0,.2) 1px,transparent 1px);background-size:80px 65px;transform:rotateX(56deg);transform-origin:center bottom;animation:grid-scroll 1.4s linear infinite;-webkit-mask-image:linear-gradient(to top,rgba(0,0,0,.75) 0%,rgba(0,0,0,.2) 55%,transparent 88%);mask-image:linear-gradient(to top,rgba(0,0,0,.75) 0%,rgba(0,0,0,.2) 55%,transparent 88%)}
.hero__grid::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(255,0,85,.06) 0%,transparent 50%)}
.hero__grid-plane{position:absolute;inset:0;transform:rotateX(56deg);transform-origin:center bottom}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:var(--space-sm);padding:.625rem 1.5rem;font-size:.9375rem;font-weight:700;border-radius:var(--radius-sm);text-decoration:none;transition:all var(--trans-fast);border:2px solid transparent;letter-spacing:.02em;white-space:nowrap;cursor:pointer}
.btn--primary{background:var(--c-cyan);color:var(--c-bg);border-color:var(--c-cyan)}
.btn--primary:hover{background:transparent;color:var(--c-cyan)}
.btn--ghost{background:transparent;border-color:var(--c-border);color:var(--c-white)}
.btn--ghost:hover{border-color:var(--c-cyan);color:var(--c-cyan)}
.btn--sm{padding:.375rem 1rem;font-size:.8125rem}

/* Vision strip */
.vision-strip{padding:var(--space-3xl) 0;border-top:1px solid var(--c-border)}
.vision-strip__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-xl)}
.vision-card{padding:var(--space-xl);background:linear-gradient(160deg,rgba(10,10,28,1) 0%,var(--c-surface) 100%);border:1px solid rgba(194,255,0,.2);border-top:2px solid var(--c-cyan);border-radius:0;position:relative;overflow:hidden;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%);transition:filter var(--trans-base),transform var(--trans-base)}
.vision-card::before{content:'';position:absolute;top:0;right:0;width:0;height:0;border-style:solid;border-width:0 16px 16px 0;border-color:transparent rgba(194,255,0,.35) transparent transparent}
.vision-card::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--c-cyan),var(--c-magenta));transition:width .45s ease}
.vision-card:hover{filter:drop-shadow(0 0 14px rgba(194,255,0,.35));transform:translateY(-3px)}
.vision-card:hover::after{width:100%}
.vision-card__icon{font-size:1.75rem;margin-bottom:var(--space-md);display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;background:rgba(194,255,0,.06);border:1px solid rgba(194,255,0,.2)}
.vision-card__title{font-size:1.125rem;font-weight:700;color:var(--c-white);margin-bottom:var(--space-sm)}
.vision-card__body{font-size:.9375rem;color:var(--c-muted);line-height:1.6}

/* Section title */
.section-title{font-size:clamp(1.5rem,4vw,2.25rem);font-weight:800;color:var(--c-white);margin-bottom:var(--space-xl);letter-spacing:-.02em}

/* Milestones */
.progress-section{padding:var(--space-3xl) 0;background:var(--c-surface);border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border)}
.milestone-list{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-xl)}
.milestone-item{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);border:1px solid var(--c-border);background:var(--c-bg);transition:border-color var(--trans-base)}
.milestone-item--full{padding:var(--space-lg) var(--space-xl)}
.milestone-item--achieved{border-color:var(--c-green)}
.milestone-item--achieved .milestone-item__marker{color:var(--c-green)}
.milestone-item__marker{flex-shrink:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:1rem;color:var(--c-muted);font-weight:700;border:1px solid currentColor;border-radius:var(--radius-sm)}
.milestone-item__content{flex:1;min-width:0}
.milestone-item__title{font-weight:600;color:var(--c-white);display:block;font-size:.9375rem}
.milestone-item--full .milestone-item__title{font-size:1.125rem;margin-bottom:var(--space-xs)}
.milestone-item__desc{color:var(--c-muted);font-size:.9375rem;margin-top:var(--space-sm)}
.milestone-item__date{color:var(--c-muted);font-size:.8125rem;margin-top:var(--space-sm);font-family:var(--font-mono)}
.milestone-item__progress-wrap{display:flex;align-items:center;gap:var(--space-md);margin-top:var(--space-sm)}
.milestone-item__progress-bar{flex:1;height:4px;background:var(--c-border);border-radius:2px;overflow:hidden}
.milestone-item__progress-bar--lg{height:8px}
.milestone-item__progress-fill{height:100%;background:linear-gradient(90deg,var(--c-cyan),var(--c-magenta));border-radius:2px;transition:width .4s ease}
.milestone-item__progress-label{font-size:.8125rem;color:var(--c-muted);white-space:nowrap;font-family:var(--font-mono)}
.progress-section__cta{text-align:center}
.progress-newsletter{display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-xl);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-md);margin-top:var(--space-3xl);flex-wrap:wrap}
.progress-newsletter p{color:var(--c-muted);flex:1;min-width:200px}

/* Newsletter */
.newsletter-section{padding:var(--space-3xl) 0;background:radial-gradient(ellipse at 50% 100%,rgba(255,0,85,.05) 0%,transparent 60%)}
.newsletter-box{max-width:36rem;margin-inline:auto;text-align:center}
.newsletter-box__title{font-size:clamp(1.5rem,4vw,2rem);font-weight:800;color:var(--c-white);margin-bottom:var(--space-md)}
.newsletter-box__body{color:var(--c-muted);margin-bottom:var(--space-xl)}
.newsletter-box__success{padding:var(--space-md) var(--space-lg);background:rgba(57,255,20,.1);border:1px solid var(--c-green);color:var(--c-green);border-radius:var(--radius-md);font-weight:600}
.newsletter-form__fields{display:flex;gap:var(--space-sm);max-width:28rem;margin-inline:auto}
.newsletter-form__input{flex:1;padding:.625rem 1rem;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);color:var(--c-white);font-size:.9375rem;font-family:inherit;transition:border-color var(--trans-fast);min-width:0}
.newsletter-form__input::placeholder{color:var(--c-muted)}
.newsletter-form__input:focus{outline:none;border-color:var(--c-cyan)}
.newsletter-form__input--error{border-color:var(--c-magenta)}
.newsletter-form__error{color:var(--c-magenta);font-size:.8125rem;margin-top:var(--space-sm)}
.newsletter-form--inline{display:flex;gap:var(--space-sm);align-items:center;flex-wrap:wrap}
.newsletter-form--inline .newsletter-form__input{min-width:200px}

/* Page hero */
.page-hero{padding:var(--space-3xl) 0 var(--space-2xl);border-bottom:1px solid var(--c-border);background:linear-gradient(to bottom,var(--c-surface),transparent)}
.page-hero--slim{padding:var(--space-2xl) 0 var(--space-lg)}
.page-hero__title{font-size:clamp(2rem,5vw,3.5rem);font-weight:900;color:var(--c-white);letter-spacing:-.03em;margin-bottom:var(--space-md);line-height:1.1}
.page-hero__sub{font-size:1.125rem;color:var(--c-muted);max-width:40rem}

/* Prose */
.prose{max-width:48rem;margin-inline:auto;padding:var(--space-3xl) 0;font-size:1.0625rem;line-height:1.8;color:var(--c-white)}
.prose__lead{font-size:1.25rem;color:var(--c-white);margin-bottom:var(--space-2xl);line-height:1.7}
.prose h2{font-size:1.5rem;font-weight:700;color:var(--c-white);margin-top:var(--space-3xl);margin-bottom:var(--space-md);letter-spacing:-.02em}
.prose h3{font-size:1.25rem;font-weight:600;color:var(--c-white);margin-top:var(--space-2xl);margin-bottom:var(--space-md)}
.prose p{margin-bottom:var(--space-lg);color:var(--c-muted)}
.prose p:first-child{color:var(--c-white)}
.prose a{color:var(--c-cyan);text-decoration:underline;text-underline-offset:3px}
.prose a:hover{color:var(--c-white)}
.prose ul,.prose ol{padding-left:var(--space-xl);margin-bottom:var(--space-lg);list-style:disc}
.prose li{margin-bottom:var(--space-xs);color:var(--c-muted)}
.prose blockquote{border-left:3px solid var(--c-cyan);padding-left:var(--space-lg);margin:var(--space-xl) 0;color:var(--c-muted);font-style:italic}
.prose strong{color:var(--c-white);font-weight:700}
.prose code{font-family:var(--font-mono);font-size:.875em;background:var(--c-surface);padding:.1em .4em;border-radius:3px}

/* Blog */
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-xl);padding:var(--space-3xl) 0}
.blog-empty{padding:var(--space-3xl) 0;text-align:center;color:var(--c-muted);font-size:1.0625rem}
.post-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-md);overflow:hidden;transition:border-color var(--trans-base),transform var(--trans-base)}
.post-card:hover{border-color:var(--c-cyan);transform:translateY(-2px)}
.post-card__body{padding:var(--space-xl)}
.post-card__date{font-size:.8125rem;color:var(--c-muted);font-family:var(--font-mono);display:block;margin-bottom:var(--space-sm)}
.post-card__title{font-size:1.125rem;font-weight:700;margin-bottom:var(--space-md);line-height:1.3}
.post-card__title a{color:var(--c-white);text-decoration:none}
.post-card__title a:hover{color:var(--c-cyan)}
.post-card__excerpt{color:var(--c-muted);font-size:.9375rem;margin-bottom:var(--space-md)}
.post-card__read-more{font-size:.875rem;color:var(--c-cyan);font-weight:600}
.post-meta{display:flex;gap:var(--space-md);align-items:center;font-size:.875rem;color:var(--c-muted);margin-top:var(--space-sm);font-family:var(--font-mono)}
.breadcrumb{font-size:.875rem;color:var(--c-muted);margin-bottom:var(--space-md)}
.breadcrumb a{color:var(--c-muted)}
.breadcrumb a:hover{color:var(--c-cyan)}
.post-footer{padding-bottom:var(--space-3xl)}
.pagination-wrap{padding-bottom:var(--space-3xl)}

/* About */
.about-ctas{display:flex;gap:var(--space-md);padding-bottom:var(--space-3xl);flex-wrap:wrap}

/* Error */
.error-page{display:flex;align-items:center;justify-content:center;min-height:70vh;text-align:center;padding:var(--space-3xl) var(--space-lg)}
.error-page__glitch{font-size:clamp(4rem,15vw,10rem);font-weight:900;font-family:var(--font-mono);color:var(--c-border);line-height:1;margin-bottom:var(--space-lg);text-shadow:-3px 0 var(--c-magenta),3px 0 var(--c-cyan)}
.error-page__title{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:800;color:var(--c-white);margin-bottom:var(--space-md)}
.error-page__body{color:var(--c-muted);margin-bottom:var(--space-xl);font-size:1.0625rem}

/* Footer */
.site-footer{margin-top:auto;background:var(--c-surface);border-top:1px solid var(--c-border);padding:var(--space-3xl) 0 var(--space-2xl)}
.site-footer__inner{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-2xl);max-width:var(--container);margin-inline:auto;padding-inline:var(--space-lg)}
.site-footer__brand-name{font-size:1.125rem;font-weight:800;color:var(--c-white);margin-bottom:var(--space-xs)}
.site-footer__tagline{font-size:.875rem;color:var(--c-muted);font-style:italic}
.site-footer__nav ul{display:flex;flex-direction:column;gap:var(--space-sm)}
.site-footer__nav a{font-size:.9375rem;color:var(--c-muted);transition:color var(--trans-fast)}
.site-footer__nav a:hover{color:var(--c-cyan)}
.site-footer__meta{font-size:.8125rem;color:var(--c-muted);display:flex;flex-direction:column;gap:var(--space-sm);text-align:right}
.site-footer__credit a{color:var(--c-muted);text-decoration:underline}
.site-footer__credit a:hover{color:var(--c-cyan)}
@media(max-width:768px){.site-footer__inner{grid-template-columns:1fr;gap:var(--space-xl)}.site-footer__meta{text-align:left}}

/* Entrance, reveal, light cycles */
@keyframes slide-down{from{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}
.site-header{animation:slide-down .45s cubic-bezier(.22,1,.36,1) backwards}
@keyframes fade-up{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hero__inner .brand-title{animation:fade-up .8s cubic-bezier(.22,1,.36,1) backwards .1s}
.hero__inner .hero__tagline{animation:fade-up .7s cubic-bezier(.22,1,.36,1) backwards .4s}
.hero__inner .hero__sub{animation:fade-up .7s cubic-bezier(.22,1,.36,1) backwards .6s}
.hero__inner .hero__ctas{animation:fade-up .7s cubic-bezier(.22,1,.36,1) backwards .85s}
.reveal{opacity:0}.reveal.visible{opacity:1}
.reveal-up{opacity:0;transform:translateY(22px)}.reveal-up.visible{opacity:1;transform:none}
.reveal-d1{transition-delay:.12s}.reveal-d2{transition-delay:.24s}.reveal-d3{transition-delay:.36s}
.vision-card{transition:filter var(--trans-base),transform var(--trans-base),opacity .7s ease}
.section-title{transition:opacity .7s ease,transform .7s ease}
.milestone-item{transition:border-color var(--trans-base),opacity .6s ease,transform .6s ease}
.newsletter-box{transition:opacity .7s ease,transform .7s ease}
.btn--primary:hover{box-shadow:0 0 28px rgba(194,255,0,.55)}
.btn--ghost:hover{box-shadow:0 0 18px rgba(194,255,0,.25)}
.site-nav__link{position:relative}
.site-nav__link::after{content:'';position:absolute;bottom:1px;left:50%;width:0;height:1.5px;background:var(--c-cyan);box-shadow:0 0 6px var(--c-cyan);transition:width .22s ease,left .22s ease}
.site-nav__link:hover::after,.site-nav__link--active::after{width:calc(100% - 10px);left:5px}
@keyframes lc-right{from{transform:translateX(-300px)}to{transform:translateX(200vw)}}
@keyframes lc-left{from{transform:translateX(200vw)}to{transform:translateX(-300px)}}
@keyframes lc-forward{from{transform:translateY(0);opacity:0}8%{opacity:1}85%{opacity:1}to{transform:translateY(50vh);opacity:0}}
.lc{position:absolute;pointer-events:none;z-index:1;will-change:transform}
.lc--1{left:0;bottom:20%;height:2px;width:150px;background:linear-gradient(90deg,transparent,rgba(194,255,0,.4) 20%,var(--c-cyan) 80%,#fff 97%,transparent);box-shadow:0 0 7px var(--c-cyan),0 0 22px rgba(194,255,0,.4);animation:lc-right 4.2s linear infinite;animation-fill-mode:backwards}
.lc--2{left:0;bottom:38%;height:1.5px;width:100px;background:linear-gradient(90deg,#fff 3%,var(--c-magenta) 15%,rgba(255,0,85,.3) 70%,transparent);box-shadow:0 0 6px var(--c-magenta),0 0 16px rgba(255,0,85,.4);animation:lc-left 5.8s linear infinite 1.6s;animation-fill-mode:backwards}
.lc--3{left:0;bottom:8%;height:3px;width:200px;background:linear-gradient(90deg,transparent,rgba(194,255,0,.3) 15%,var(--c-cyan) 75%,#fff 97%,transparent);box-shadow:0 0 10px var(--c-cyan),0 0 30px rgba(194,255,0,.35);animation:lc-right 6.8s linear infinite 3.1s;animation-fill-mode:backwards}
.lc--4{left:0;bottom:55%;height:1px;width:70px;background:linear-gradient(90deg,#fff 5%,var(--c-magenta) 25%,transparent);box-shadow:0 0 4px var(--c-magenta);animation:lc-left 3.8s linear infinite .5s;animation-fill-mode:backwards}
.lc--5{top:10%;left:44%;height:2px;width:100px;background:linear-gradient(90deg,transparent,rgba(194,255,0,.5) 30%,var(--c-cyan) 70%,transparent);box-shadow:0 0 8px var(--c-cyan),0 0 20px rgba(194,255,0,.4);animation:lc-forward 8s linear infinite 4.5s;animation-fill-mode:backwards}
.lc--6{top:10%;left:56%;height:1.5px;width:80px;background:linear-gradient(90deg,transparent,var(--c-magenta) 40%,rgba(255,0,85,.4) 70%,transparent);box-shadow:0 0 6px var(--c-magenta),0 0 16px rgba(255,0,85,.35);animation:lc-forward 6.5s linear infinite 1.2s;animation-fill-mode:backwards}
/* Focus */
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--c-cyan);outline-offset:2px}
