/* Locally bundled open-source type. Licenses live in assets/fonts. */
@font-face{font-family:Syne;src:url("assets/fonts/syne.woff2") format("woff2");font-style:normal;font-weight:400 800;font-display:swap}
@font-face{font-family:Manrope;src:url("assets/fonts/manrope.woff2") format("woff2");font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:"Chakra Petch";src:url("assets/fonts/chakra-petch.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Fraunces;src:url("assets/fonts/fraunces.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
:root{--body:Manrope,"Segoe UI",sans-serif;--display:Syne,"Trebuchet MS",sans-serif}
body{--heading-weight:700;--hero-weight:700;--hero-scale:15.4cqw;--heading-tracking:-.045em;--hero-tracking:-.055em;font-family:var(--body)}
body[data-type=orbital]{--display:"Chakra Petch","Trebuchet MS",sans-serif;--heading-weight:700;--hero-weight:700;--hero-scale:18.4cqw;--heading-tracking:-.025em;--hero-tracking:-.045em}
body[data-type=mythic]{--display:Fraunces,Georgia,serif;--heading-weight:600;--hero-weight:650;--hero-scale:19.2cqw;--heading-tracking:-.035em;--hero-tracking:-.03em}
h1,h2,h3{font-weight:var(--heading-weight);letter-spacing:var(--heading-tracking);font-optical-sizing:auto;text-wrap:balance}
body[data-type=mythic] :is(h1,h2,h3,.ribbon-track span){font-variation-settings:"SOFT" 35,"WONK" 1}
.brand{font-family:Syne,"Trebuchet MS",sans-serif;font-weight:700;font-size:20px;letter-spacing:-.06em}
.hero-copy{container-type:inline-size;min-width:0}
.hero-copy h1{font-family:var(--display);font-size:clamp(48px,var(--hero-scale),107px);font-weight:var(--hero-weight);line-height:1.04;letter-spacing:var(--hero-tracking);margin-left:-.035em}
.headline-line{max-width:none;white-space:nowrap}
.headline-outline{-webkit-text-stroke:1px #d5a4ff}
.hero-description{font-size:15px;line-height:1.85;max-width:430px}
.hero-actions{column-gap:22px;flex-wrap:wrap}
.studio-note{font-size:12px;letter-spacing:.005em}
.artifact-caption strong{font-size:13px}
.section-intro{font-size:12px;letter-spacing:.005em}
.project-info h3{font-size:27px;font-weight:var(--heading-weight);line-height:1.13;letter-spacing:-.035em;overflow-wrap:anywhere;text-wrap:pretty}
.project-summary{font-size:13px;line-height:1.8}
.project-open{font-size:12px}
.world-explorer .we-heading-row h2{font-family:var(--display);font-weight:var(--heading-weight);letter-spacing:var(--heading-tracking);font-size:clamp(36px,4.4vw,63px);line-height:1.08}
.world-explorer .we-project-title{font-family:var(--display);font-weight:var(--heading-weight);font-size:35px;line-height:1.1;letter-spacing:-.035em;overflow-wrap:anywhere;text-wrap:pretty}
.world-explorer .we-intent strong{font-family:var(--body);font-weight:700;font-size:15px;letter-spacing:-.035em}
.world-explorer .we-project-description{font-size:13px;line-height:1.8}
.story-copy h2{line-height:1.12}
.story-copy>p.story-lead{font-family:Fraunces,Georgia,serif;font-size:24px;font-weight:450;line-height:1.45;letter-spacing:-.02em;font-variation-settings:"SOFT" 35,"WONK" 1}
.beyond-info h3{font-size:28px;line-height:1.13}
.newsletter h2{font-size:clamp(38px,4.3vw,62px);line-height:1.08;letter-spacing:var(--heading-tracking)}
.dialog-info h2{line-height:1.1;overflow-wrap:anywhere;font-weight:var(--heading-weight);letter-spacing:var(--heading-tracking)}
.universe-header h2{font-weight:var(--heading-weight);letter-spacing:var(--heading-tracking)}
.universe-title{font-size:clamp(35px,4.6vw,65px);line-height:1.03;font-weight:var(--heading-weight);letter-spacing:var(--heading-tracking);overflow-wrap:anywhere;text-wrap:pretty}
.ribbon-track span{font-weight:var(--heading-weight);letter-spacing:var(--heading-tracking)}

/* A visitor control for choosing the Forge typography. */
.type-studio{position:fixed;bottom:20px;left:22px;z-index:41;width:max-content;max-width:calc(100vw - 36px);font-family:Manrope,"Segoe UI",sans-serif;font-size:12px;line-height:1.5;color:#eee6ff}
.type-studio summary{display:flex;align-items:center;gap:9px;min-height:42px;width:max-content;border:1px solid #8f6daf7a;border-radius:100px;background:#201632ed;padding:9px 15px;box-shadow:0 5px 25px #08031033;backdrop-filter:blur(15px);cursor:pointer;list-style:none;user-select:none}
.type-studio summary::-webkit-details-marker{display:none}
.type-studio summary:focus-visible{outline:3px solid var(--aqua);outline-offset:4px}
.type-studio summary:hover,.type-studio[open] summary{border-color:#ca9df7;background:#2c1d40}
.type-studio summary>span:first-child{font-family:Syne,sans-serif;font-weight:700;font-size:16px;color:#eac9ff;letter-spacing:-.06em}
.type-studio summary svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .2s}
.type-studio[open] summary svg{transform:rotate(180deg)}
.type-panel{position:absolute;bottom:54px;left:0;width:310px;max-width:calc(100vw - 36px);padding:21px;border:1px solid #9774bb8c;border-radius:15px;background:#1b152bee;backdrop-filter:blur(24px);box-shadow:0 20px 65px #0803118c}
.type-panel h2{font-family:Manrope,sans-serif;font-weight:700;font-size:15px;letter-spacing:-.02em;line-height:1.4;margin-bottom:5px}
.type-panel>p{font-size:11px;color:#bbaacb;line-height:1.6;margin-bottom:17px}
.type-options{display:grid;gap:8px}
.type-choice{display:grid;grid-template-columns:66px 1fr 16px;align-items:center;gap:12px;width:100%;min-height:69px;padding:11px 13px;border-radius:8px;border:1px solid #a780bd30;background:#ffffff03;text-align:left;transition:background .15s,border-color .15s}
.type-choice:hover{background:#9464bb1c;border-color:#c79deb80}
.type-choice[aria-pressed=true]{border-color:#c693f0;background:#8e53bd28}
.type-choice .type-sample{font-size:31px;line-height:1.2;letter-spacing:-.07em;white-space:nowrap;color:#f2d8ff}
.type-choice[data-type-choice=cosmic] .type-sample{font-family:Syne,sans-serif;font-weight:700}
.type-choice[data-type-choice=orbital] .type-sample{font-family:"Chakra Petch",sans-serif;font-weight:700;letter-spacing:-.04em}
.type-choice[data-type-choice=mythic] .type-sample{font-family:Fraunces,serif;font-weight:600;font-variation-settings:"SOFT" 35,"WONK" 1}
.type-choice strong{display:block;font-size:12px;font-weight:700;letter-spacing:-.015em}
.type-choice small{display:block;font-size:10px;font-weight:400;color:#bca8cd;margin-top:3px}
.type-choice .type-check{width:7px;height:7px;border:1px solid #af8ec9;border-radius:50%;margin-left:auto}
.type-choice[aria-pressed=true] .type-check{background:#ddb1ff;border-color:#ddb1ff;box-shadow:0 0 10px #c895ff70}
.type-panel .type-note{margin:15px 0 0;font-size:10px;line-height:1.7;color:#ad9cbb}

@media(min-width:701px) and (max-width:960px){.hero-copy h1{font-size:var(--hero-scale)}.brand{font-size:18px}.project-info h3{font-size:23px}.world-explorer .we-project-title{font-size:29px}.beyond-info h3{font-size:25px}.newsletter h2{font-size:43px}}
@media(max-width:700px){.hero-copy h1{font-size:var(--hero-scale);line-height:1.06}.brand{font-size:18px}.hero-description{font-size:14px;line-height:1.85}.studio-note{font-size:11px}.world-explorer .we-heading-row h2{font-size:36px}.world-explorer .we-project-title{font-size:31px}.project-info h3{font-size:22px;line-height:1.15}.project-summary{font-size:12px}.project-open{font-size:11px}.story-copy h2{font-size:36px}.story-copy>p.story-lead{font-size:23px}.beyond-info h3{font-size:24px}.newsletter h2{font-size:42px}.universe-title{font-size:43px}.universe-header h2{font-size:23px}.type-studio{bottom:14px;left:14px}.type-studio summary{padding:8px 12px;min-height:39px;font-size:11px}.type-panel{width:300px;padding:18px;max-height:calc(100dvh - 100px);overflow-y:auto}.type-panel h2{font-size:15px}.type-choice .type-sample{font-size:29px}}
@media(max-width:700px){body[data-type=mythic]{--hero-scale:18cqw}}
@media(max-width:520px){.project-grid{grid-template-columns:1fr;gap:36px}.project-art{height:300px;padding:30px}.project-info h3{font-size:28px;overflow-wrap:normal}.project-summary{font-size:13px;max-width:44ch}.project-open{font-size:12px;min-height:44px}.project-category{display:flex;align-items:center;gap:10px}.project-category small{margin-top:0}.project-info{padding-top:17px}}
@media(max-width:380px){.filters button{padding-inline:6px;gap:4px}.project-info h3{font-size:20px}.world-explorer .we-heading-row h2{font-size:32px}.newsletter h2{font-size:35px}.beyond-info h3{font-size:22px}.universe-title{font-size:37px}}
@media(max-width:380px){.project-art{height:260px}.project-info h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.type-studio *{transition:none!important}}
