@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Inter:wght@400;500;600;700;800&display=swap');

:root { color-scheme: dark; --ink:#080808; --paper:#f3eee7; --red:#ec3f1f; --muted:#a9a39b; }
* { box-sizing:border-box; }
html, body { margin:0; min-height:100%; background:var(--ink); }
body { color:var(--paper); font-family:Inter,system-ui,sans-serif; }
a { color:inherit; }
.scene { min-height:calc(100svh + 7rem); overflow:hidden; position:relative; isolation:isolate; background:radial-gradient(circle at 78% 48%, #32130d 0, #080808 38%), #080808; display:flex; flex-direction:column; padding:clamp(1.3rem,3vw,2.8rem) clamp(1.3rem,6vw,7rem) 1.5rem; }
.scene::before { content:""; position:absolute; z-index:-2; inset:0; opacity:.72; background:linear-gradient(115deg, transparent 20%, rgba(236,63,31,.07) 42%, transparent 64%), repeating-linear-gradient(90deg, transparent 0 9rem, rgba(243,238,231,.025) 9rem 9.05rem); }
.scene__grain { position:absolute; inset:-50%; z-index:-1; opacity:.08; pointer-events:none; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E"); transform:rotate(8deg); }
.scene__orb { position:absolute; z-index:-1; width:42vw; aspect-ratio:1; border-radius:50%; filter:blur(3px); pointer-events:none; }
.scene__orb--one { right:-18vw; top:15vh; background:radial-gradient(circle at 35% 35%, rgba(236,63,31,.35), rgba(236,63,31,0) 67%); animation:drift 12s ease-in-out infinite alternate; }
.scene__orb--two { left:-26vw; bottom:-35vw; background:radial-gradient(circle, rgba(208,91,37,.14), transparent 65%); }
.site-header,.site-footer { display:flex; justify-content:space-between; align-items:center; position:relative; z-index:2; text-transform:uppercase; letter-spacing:.08em; font:500 .64rem/1.4 'DM Mono',monospace; }
.brand { display:flex; align-items:center; gap:.75rem; text-decoration:none; letter-spacing:.02em; font:700 .88rem/1 Inter,sans-serif; text-transform:none; }
.brand img { width:2.65rem; height:2.65rem; }
.brand em { color:var(--red); font-style:normal; font-weight:500; }
.header-note { color:var(--muted); }
.hero { max-width:62rem; margin:auto 0; padding:clamp(4rem,12vh,10rem) 0; animation:rise 1.1s cubic-bezier(.2,.8,.2,1) both; }
.eyebrow { display:flex; align-items:center; gap:.8rem; color:var(--red); text-transform:uppercase; letter-spacing:.12em; font:500 .66rem/1 'DM Mono',monospace; }
.eyebrow__line { display:inline-block; width:3rem; height:1px; background:var(--red); }
h1 { max-width:12ch; margin:2.2rem 0 1.8rem; font-size:clamp(3.4rem,9vw,9rem); line-height:.88; letter-spacing:-.075em; font-weight:700; }
h1 span { color:transparent; -webkit-text-stroke:1px rgba(243,238,231,.78); }
.hero__copy { max-width:28rem; margin:0 0 2.3rem; color:#c6c0b8; font-size:clamp(1rem,1.4vw,1.22rem); line-height:1.6; }
.hero__link { display:inline-flex; gap:.8rem; align-items:center; color:var(--paper); text-decoration:none; border-bottom:1px solid var(--red); padding:0 0 .65rem; font-weight:600; }
.hero__link span { color:var(--red); font-size:1.2em; transition:transform .25s ease; }
.hero__link:hover span,.hero__link:focus-visible span { transform:translate(3px,-3px); }
.coordinate { position:absolute; right:clamp(1.3rem,6vw,7rem); top:52%; display:flex; flex-direction:column; gap:.55rem; color:#6e6963; writing-mode:vertical-rl; font:500 .58rem/1 'DM Mono',monospace; letter-spacing:.12em; }
.site-footer { color:#716c66; flex-direction:column; align-items:stretch; gap:2.8rem; padding-top:2rem; }
.site-footer__base { display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.site-footer__partner { display:flex; align-items:center; justify-content:center; gap:1.45rem; padding-top:1.45rem; border-top:1px solid rgba(243,238,231,.18); text-align:right; }
.site-footer__partner-copy { display:grid; gap:.35rem; min-width:22rem; }
.site-footer__label,.site-footer__description { margin:0; }
.site-footer__label,.site-footer__description { text-transform:uppercase; }
.site-footer__label { color:#a8a197; font-size:.7rem; font-weight:800; letter-spacing:.18em; line-height:1.2; }
.site-footer__description { max-width:22rem; color:#d8d1c3; font-size:.88rem; letter-spacing:.07em; line-height:1.45; }
.site-footer__partner-link { display:inline-flex; align-items:center; justify-content:center; opacity:.9; transition:opacity 180ms ease,transform 180ms ease; }
.site-footer__partner-link:hover,.site-footer__partner-link:focus-visible { opacity:1; transform:translateY(-2px); }
.site-footer__partner-link img { height:4.5rem; width:auto; }
.status { display:flex; gap:.55rem; align-items:center; }
.status i { display:inline-block; width:.42rem; height:.42rem; border-radius:50%; background:var(--red); box-shadow:0 0 14px var(--red); animation:pulse 2.2s ease-in-out infinite; }
@keyframes rise { from { opacity:0; transform:translateY(2rem); } to { opacity:1; transform:none; } }
@keyframes drift { from { transform:translate(-3vw,-2vh) scale(.94); } to { transform:translate(3vw,2vh) scale(1.06); } }
@keyframes pulse { 50% { opacity:.35; transform:scale(.75); } }
@media (max-width:650px) { .header-note { display:none; } .hero { padding:5rem 0 7rem; } h1 { font-size:clamp(3.3rem,16vw,6rem); } .coordinate { display:none; } .site-footer { gap:2.2rem; } .site-footer__base { align-items:flex-start; flex-direction:column; } .site-footer__partner { align-items:center; flex-direction:column; gap:.8rem; text-align:center; } .site-footer__partner-copy { min-width:0; } .site-footer__description { max-width:18rem; } .site-footer__partner-link img { height:3.5rem; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; scroll-behavior:auto!important; } }
