/* Emissa holding page. Tokens from the Emissa Design System (light / paper). */
@font-face{font-family:'Geist';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/geist-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Geist';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/geist-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Martian Mono';font-style:normal;font-weight:100 800;font-stretch:75% 112.5%;font-display:swap;src:url(fonts/martian-mono-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Martian Mono';font-style:normal;font-weight:100 800;font-stretch:75% 112.5%;font-display:swap;src:url(fonts/martian-mono-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --paper:#F7F7F8;      /* n-50, page + text blocks */
  --ink:#0B0B0E;        /* text-1 (light) */
  --n-600:#5D5D69;      /* text-2 (light) */
  --n-200:#E1E1E6;      /* unlit fan dots */
  --ion-500:#6A47F5;    /* source dot, accent dots, links */
  --ice-700:#0A6E8F;    /* status: scheduled (light) */
  --font-display:"Martian Mono",ui-monospace,monospace;
  --font-ui:"Geist",system-ui,sans-serif;
  --pad-x:clamp(24px,4.4vw,64px);
  --pad-top:clamp(24px,3.3vw,48px);
  --pad-bottom:clamp(24px,4.4vw,64px);
}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:var(--paper);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased}
a{color:var(--ion-500);text-decoration:none}
a:hover{color:var(--ink)}
p,h1{margin:0}

.page{position:relative;width:100%;height:100vh;height:100svh;min-height:560px;overflow:hidden}
.field{position:absolute;inset:0}
.field span{position:absolute;border-radius:50%}

/* Text over the fan field always sits on a solid block of the field colour. No scrims. */
.block{position:absolute;background:var(--paper)}

.logo{left:var(--pad-x);top:var(--pad-top);padding:0 16px 16px 0;display:inline-flex;align-items:center;gap:8px;color:var(--ink)}
.logo:hover{color:var(--ink)}
.logo svg{display:block;flex:none}
.wordmark{font-family:var(--font-display);font-stretch:112.5%;font-weight:500;font-size:21px;line-height:1;letter-spacing:.02em}

.status{right:var(--pad-x);top:var(--pad-top);padding:4px 0 12px 16px;display:inline-flex;align-items:center;gap:8px;
  font-family:var(--font-display);font-stretch:75%;font-weight:600;font-size:12px;line-height:1;letter-spacing:.04em;color:var(--ice-700);white-space:nowrap}
.ring{display:inline-block;width:8px;height:8px;border:2px solid var(--ice-700);border-radius:50%;flex:none}

.hero{left:var(--pad-x);bottom:max(56px,var(--pad-bottom));padding:24px 32px 0 0;display:flex;flex-direction:column;gap:24px}
.eyebrow,.legal{font-family:var(--font-display);font-stretch:75%;font-weight:500;font-size:10.5px;line-height:16px;letter-spacing:.06em;color:var(--n-600)}
h1{font-family:var(--font-display);font-stretch:112.5%;font-weight:500;font-size:clamp(32px,4.45vw,64px);line-height:1.125;letter-spacing:-.01em;color:var(--ink)}

.legal{right:var(--pad-x);bottom:var(--pad-bottom);padding:12px 0 0 16px}

/* Lit dots propagate outward, one column at a time. */
@keyframes emProp{5%{background:var(--lit);transform:scale(1.3)}24%{background:var(--b);transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.field span{animation:none!important}}
