@font-face{font-family:'Universal Sans Text';font-style:normal;font-weight:400;font-display:swap;src:url('./assets/universal-sans-text-regular.woff2') format('woff2')}
@font-face{font-family:'Universal Sans Text';font-style:normal;font-weight:500;font-display:swap;src:url('./assets/universal-sans-text-medium.woff2') format('woff2')}

:root{--ink:#090b0d;--paper:#f0f0e9;--text:#f4f4ef;--line:rgba(255,255,255,.22);--gutter:clamp(24px,4.4vw,76px);--font:'Universal Sans Text',-apple-system,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:2px solid currentColor;outline-offset:7px}
::selection{background:#d5d9d5;color:var(--ink)}
.skip-link{position:fixed;z-index:100;top:12px;left:12px;background:var(--paper);color:var(--ink);padding:14px;transform:translateY(-160%)}
.skip-link:focus{transform:none}

.landing{position:relative;isolation:isolate;min-height:max(720px,100svh);overflow:hidden;background:var(--ink)}
.landing-image{position:absolute;z-index:-3;inset:0;background:url('./assets/earth-dawn.jpg') center 56%/cover no-repeat;animation:image-in 1.5s ease-out both}
.landing-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(4,6,8,.43),rgba(4,6,8,.02) 77%),linear-gradient(0deg,rgba(3,5,7,.75),transparent 36%,rgba(3,5,7,.08) 68%,rgba(3,5,7,.45))}
.site-header{position:absolute;top:0;left:0;width:100%;min-height:108px;padding:26px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:block;line-height:0}
.brand img{display:block;width:clamp(180px,15vw,224px);height:auto;filter:invert(1)}
.site-header p{margin:0;font-family:var(--font);font-size:.75rem;letter-spacing:.065em;text-transform:uppercase;color:#d1d5d5}
.landing-content{position:absolute;left:var(--gutter);top:50%;transform:translateY(-50%);max-width:1040px}
h1{margin:0;font-size:clamp(5rem,8.6vw,9.4rem);font-weight:450;line-height:1;letter-spacing:-.067em;animation:text-in 1s .14s both}
h1 em{font-family:inherit;font-style:normal;font-weight:inherit;letter-spacing:inherit}
.landing-description{max-width:520px;margin:30px 0 0;font-size:clamp(1rem,1.18vw,1.125rem);line-height:1.7;color:#e0e4e4;animation:text-in 1s .23s both}
.site-footer{min-height:112px;padding:28px var(--gutter);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:32px;border-top:1px solid rgba(255,255,255,.08);background:var(--ink);font-family:var(--font);font-size:.75rem;letter-spacing:.045em;text-transform:uppercase;color:#969ea0}
.site-footer p{margin:0}
.footer-brand{display:block;line-height:0;justify-self:start}
.footer-brand img{display:block;width:156px;height:auto;filter:invert(1);opacity:.9}
.site-footer p:last-child{text-align:right}

@keyframes text-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes image-in{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}

@media(max-width:700px){
  .landing{min-height:max(690px,100svh)}
  .site-header{min-height:92px;padding-block:22px}
  .brand img{width:162px}
  .site-header p{max-width:110px;text-align:right;font-size:.7rem;line-height:1.45}
  .landing-image{background-position:61% center}
  .landing-shade{background:linear-gradient(0deg,rgba(3,5,7,.87),rgba(3,5,7,.03) 42%,rgba(3,5,7,.42)),linear-gradient(90deg,rgba(3,5,7,.22),transparent)}
  .landing-content{top:49%;right:var(--gutter)}
  h1{font-size:clamp(3.55rem,15vw,5.7rem);line-height:1.015}
  .landing-description{max-width:350px;margin-top:25px;font-size:1rem;line-height:1.65}
  .site-footer{min-height:150px;grid-template-columns:1fr 1fr;gap:22px;padding-block:27px}
  .footer-brand img{width:142px}
  .site-footer p:last-child{text-align:right;font-size:.68rem;line-height:1.5}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
