@font-face{font-family:Rajdhani;src:url("../assets/fonts/Rajdhani-600.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:Inter;src:url("../assets/fonts/InterVariable.woff2") format("woff2");font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--bg:#101713;--panel:#18231c;--line:#344039;--text:#e7ebe2;--muted:#aeb8ac;--green:#add17f;--soft:#1f3023;--amber:#dcba78}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--bg);color:var(--text);font:15px/1.75 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid var(--green);outline-offset:6px}
img{display:block;max-width:100%;height:auto}
figure,p,h1,h2,h3{margin:0}
h1,h2,h3{font-family:Rajdhani,system-ui,sans-serif;font-weight:600;line-height:1.05}
h2{font-size:clamp(32px,3.1vw,47px);letter-spacing:-.025em}
h3{font-size:25px}
.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}
.icon{display:inline-block;width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.icon.small{width:17px;height:17px}
.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:600;line-height:1.5;letter-spacing:.16em;text-transform:uppercase;color:var(--green)}
.status-dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px #add17f0b;flex:none}
.skip-link{position:fixed;top:10px;left:10px;padding:10px 18px;background:var(--green);color:var(--bg);transform:translateY(-160%);z-index:10}
.skip-link:focus{transform:translateY(0)}
.site-header{border-bottom:1px solid #26352c;background:var(--bg)}
.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:flex;align-items:center;min-height:48px}
.brand img{width:164px;height:auto}
.header-inner nav{display:flex;gap:36px;margin-left:auto;margin-right:50px;font-size:12px;color:var(--muted)}
.header-inner nav a,.header-social{min-height:48px;display:flex;align-items:center}
.header-social{gap:10px;font-size:12px}
.header-social .small{margin-left:5px;color:var(--green)}
.hero{display:grid;grid-template-columns:.9fr 1.15fr;align-items:center;gap:16px;padding-top:46px;padding-bottom:50px}
.hero-copy{position:relative;z-index:1;padding:20px 0}
.hero-copy>.eyebrow{text-transform:none}
.hero h1{font-size:clamp(64px,6.5vw,96px);line-height:.89;letter-spacing:-.035em;margin:26px 0}
.hero h1 span{color:var(--green)}
.hero-description{color:var(--muted);font-size:15px;line-height:1.7;margin-bottom:27px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:12px 22px;font-size:12px;font-weight:650;border:1px solid transparent;transition:background .18s ease,transform .18s ease}
.button.primary{background:var(--green);color:#142016}
.button .icon:last-child{width:18px;height:18px;margin-left:7px}
.release{display:flex;align-items:center;gap:10px;margin-top:25px;font:600 16px/1.4 Rajdhani,sans-serif;letter-spacing:.1em}
.release-divider{color:#5c695f;margin:0 3px}
.release-note{color:var(--muted);font:11px Inter,sans-serif;letter-spacing:0}
.hero-visual{position:relative;min-width:0}
.hero-image{height:585px;isolation:isolate}
.hero-image img{width:100%;height:100%;object-fit:cover;object-position:57% center}
.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#1017133b,transparent 20%),linear-gradient(0deg,#10171333,transparent 30%);pointer-events:none}
.image-link{display:block;position:relative;background:#1a241e;overflow:hidden}
.image-link img{transition:filter .25s ease}
.expand-button{position:absolute;bottom:14px;right:14px;display:grid;place-items:center;width:44px;height:44px;background:#101713dc;border:1px solid #b4c4ae4f;color:var(--text);z-index:1}
figcaption{display:flex;align-items:center;gap:10px;font-size:9px;font-weight:550;letter-spacing:.13em;color:var(--muted);margin-top:13px;line-height:1.5}
.caption-line{width:20px;height:1px;background:var(--green)}
.caption-end{margin-left:auto;color:#acbba3}
.intro{display:grid;grid-template-columns:.7fr 1.7fr .8fr;gap:30px;align-items:start;border-top:1px solid var(--line);padding-block:58px 72px}
.intro .section-index{padding-top:7px}
.intro h2{font-size:38px}
.intro p:not(.eyebrow){color:var(--muted);max-width:570px;margin-top:20px;font-size:14px}
.text-link{display:inline-flex;align-items:center;gap:14px;font-size:12px;min-height:48px}
.intro .text-link{align-self:end;justify-self:end;color:var(--green)}
.gameplay{padding-bottom:68px}
.feature{display:grid;grid-template-columns:1.55fr 1fr;gap:64px;align-items:center;margin-bottom:84px}
.feature-build{grid-template-columns:1fr 1.55fr}
.feature-copy p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:370px}
.feature-copy h2{margin:20px 0}
.feature-number{font:600 13px Rajdhani,sans-serif;color:#a0aa9b;border-right:1px solid #55624e;padding-right:12px;margin-right:2px;white-space:nowrap}
.feature-foot{display:flex;align-items:center;gap:10px;margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}
.feature-foot .icon{color:var(--green)}
.feature .image-link{border:1px solid #43513b40}
.feature .image-link img{width:100%}
.preparation{border-top:1px solid var(--line);padding-top:44px}
.preparation-heading{display:flex;justify-content:space-between;align-items:start;gap:30px;margin-bottom:34px}
.preparation-heading .eyebrow{padding-top:5px}
.preparation-heading h2{font-size:40px;width:62%}
.preparation-grid{display:grid;grid-template-columns:1.55fr 1fr;align-items:center;gap:64px}
.preparation-copy>div+div{margin-top:29px;padding-top:27px;border-top:1px solid var(--line)}
.preparation-copy p{color:var(--muted);font-size:14px;margin-top:12px}
.equipment-image{background:#1b231e}
.equipment-image img{width:100%}
.risk{display:grid;grid-template-columns:1.55fr 1fr;gap:64px;margin-top:66px;padding:36px;border-left:2px solid var(--amber);background:linear-gradient(110deg,#20291f,#16211b)}
.risk .eyebrow{color:var(--amber)}
.risk h2{font-size:36px;margin:18px 0}
.risk-copy>p:last-child,.recovery p{color:var(--muted);font-size:14px}
.recovery{border-left:1px solid #485040;padding-left:32px;align-self:center}
.recovery>.icon{color:var(--amber);margin-bottom:14px}
.recovery h3{font-size:24px;margin-bottom:10px}
.loop{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:36px 0 40px;background:#152019}
.loop .eyebrow{font-family:Inter,sans-serif;font-size:10px;color:var(--muted)}
.loop ol{display:flex;justify-content:space-between;list-style:none;padding:0;margin:24px 0 0;gap:25px}
.loop li{font:600 31px/1.3 Rajdhani,sans-serif;display:flex;align-items:center;gap:12px;position:relative;flex:1}
.loop li span{color:var(--green);font-size:12px}
.loop li:not(:last-child):after{content:"→";position:absolute;right:0;color:#7b8c74;font-size:24px}
.future{padding-block:72px;border-bottom:1px solid var(--line)}
.future-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:64px;margin-bottom:42px}
.future-status{color:var(--amber)}
.future-status .status-dot{background:var(--amber);box-shadow:none}
.future-heading h2{margin-top:18px}
.future-heading>p{max-width:490px;color:var(--muted);font-size:14px}
.future-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px}
.future-concept{border-top:1px solid #485040;padding-top:24px}
.future-concept>.icon{width:28px;height:28px;color:var(--amber);margin-bottom:24px}
.future-concept h3{font-size:29px;line-height:1.12;margin-bottom:17px}
.future-concept p{color:var(--muted);font-size:14px;max-width:350px}
.development{display:grid;grid-template-columns:100px 1.3fr 1fr;align-items:center;gap:38px;padding-block:88px}
.development-symbol{width:95px;height:95px;object-fit:contain;opacity:.7}
.development h2{margin:18px 0;font-size:42px}
.development-copy>p:not(.eyebrow){max-width:430px;color:var(--muted);font-size:14px;margin-bottom:25px}
.coming-soon{font:600 clamp(32px,3.5vw,52px)/1 Rajdhani,sans-serif;letter-spacing:-.035em;justify-self:end;color:#d7dfcf}
.coming-soon span{color:var(--green)}
.site-footer{border-top:1px solid var(--line)}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:102px}
.footer-inner .brand img{width:130px;opacity:.8}
.footer-inner p{font-size:10px;color:var(--muted)}
.footer-inner .text-link{font-size:11px;color:var(--muted)}
dialog{width:min(1500px,calc(100% - 40px));max-height:calc(100dvh - 40px);padding:18px 22px 20px;border:1px solid #61705a;background:#101713;color:var(--text)}
dialog::backdrop{background:#060b08eb}
.lightbox-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:15px}
.lightbox-top p{font:600 20px Rajdhani,sans-serif}
.lightbox-top p span{font:10px Inter,sans-serif;color:var(--muted);letter-spacing:.12em;margin-left:12px}
.close-button{display:grid;place-items:center;width:48px;height:48px;border:1px solid #536049;background:#253225;color:var(--text);cursor:pointer}
#lightbox-image{max-height:calc(100dvh - 190px);width:100%;object-fit:contain}
#lightbox-caption,#lightbox-error{font-size:12px;color:var(--muted);margin-top:14px}
@media(hover:hover){
  .button:hover{background:#bfdc99;transform:translateY(-2px)}
  nav a:hover,.text-link:hover,.header-social:hover{color:var(--green)}
  .image-link:hover img{filter:brightness(1.06)}
}
@media(min-width:1600px){.hero-image{height:625px}}
@media(max-width:1100px){
  .wrap{width:calc(100% - 64px)}
  .header-inner nav{margin-right:12px;gap:22px}
  .hero{grid-template-columns:.95fr 1fr;gap:20px}
  .hero h1{font-size:68px}
  .hero-image{height:440px}
  .hero-image img{object-position:38% center}
  .feature,.preparation-grid,.risk{gap:32px}
  .intro{grid-template-columns:.7fr 1.6fr}
  .intro .text-link{grid-column:2;justify-self:start}
  .loop li{font-size:25px;gap:7px}
  .loop li:not(:last-child):after{right:-10px;font-size:18px}
  .development{grid-template-columns:1.3fr .7fr}
  .development-symbol{display:none}
  .future-heading{gap:32px}
  .future-grid{gap:24px}
  .future-concept h3{font-size:25px}
}
@media(max-width:760px){
  .wrap{width:calc(100% - 40px)}
  .header-inner{min-height:68px;gap:16px}
  .brand img{width:133px}
  .header-inner nav{display:none}
  .header-social{gap:8px;font-size:11px}
  .header-social .small{display:none}
  .hero{display:flex;flex-direction:column;align-items:stretch;padding-top:25px;padding-bottom:33px;gap:24px}
  .hero-copy{padding:0}
  .hero .eyebrow{font-size:9px;letter-spacing:.13em;gap:8px}
  .hero h1{font-size:clamp(48px,12.5vw,76px);line-height:.9;margin:19px 0}
  .hero-description{font-size:13px;line-height:1.65;margin-bottom:20px}
  .button{min-height:50px;padding:11px 18px;font-size:11px}
  .release{font-size:14px;margin-top:18px}
  .release-note{font-size:10px}
  .hero-visual{margin-inline:-20px}
  .hero-image{height:auto;aspect-ratio:1.5}
  .hero-image img{object-position:57% 70%}
  .hero-visual figcaption{margin-inline:20px;font-size:8px}
  .caption-end{display:none}
  .intro{display:block;padding-block:34px 38px}
  .intro h2{font-size:33px;margin-top:18px}
  .intro p:not(.eyebrow){font-size:13px;margin-top:15px}
  .intro .text-link{margin-top:17px}
  .gameplay{padding-bottom:34px}
  .feature,.feature-build{display:flex;flex-direction:column;gap:24px;margin-bottom:48px;align-items:stretch}
  .feature .feature-copy{order:0}
  .feature figure{order:1}
  .feature-copy h2{font-size:36px;margin:16px 0}
  .feature-copy p:not(.eyebrow){font-size:13px;max-width:100%}
  .feature-foot{margin-top:18px;padding-top:16px}
  .feature-foot .icon{width:18px;height:18px}
  .eyebrow{font-size:10px}
  figcaption{font-size:8px;margin-top:11px}
  .expand-button{width:40px;height:40px;bottom:8px;right:8px}
  .preparation{padding-top:28px}
  .preparation-heading{display:block;margin-bottom:24px}
  .preparation-heading h2{width:auto;font-size:34px;margin-top:18px}
  .preparation-grid{display:flex;flex-direction:column;gap:25px;align-items:stretch}
  .equipment-image img{aspect-ratio:16/9;height:auto;object-fit:contain}
  .preparation-copy{display:grid;grid-template-columns:1fr;gap:22px}
  .preparation-copy>div+div{margin:0;padding-top:22px}
  .preparation-copy h3{font-size:24px}
  .preparation-copy p{font-size:13px;margin-top:9px}
  .risk{display:block;margin-top:34px;padding:26px 22px}
  .risk h2{font-size:30px;line-height:1.08}
  .risk h2 br{display:none}
  .risk-copy>p:last-child,.recovery p{font-size:13px}
  .recovery{border-left:0;border-top:1px solid #485040;padding:24px 0 0;margin-top:24px}
  .recovery h3{font-size:23px}
  .recovery>.icon{margin-bottom:10px}
  .loop{padding:30px 0}
  .loop .eyebrow{font-size:9px;line-height:1.8}
  .loop ol{flex-direction:column;gap:0;margin-top:18px}
  .loop li{font-size:25px;padding:11px 0;border-bottom:1px solid #3440398a;gap:17px}
  .loop li:last-child{border-bottom:0}
  .loop li:not(:last-child):after{content:"↓";right:5px}
  .loop li span{font-size:11px}
  .future{padding-block:42px}
  .future-heading{display:block;margin-bottom:30px}
  .future-heading h2{font-size:36px;margin-top:16px}
  .future-heading>p{font-size:13px;margin-top:20px}
  .future-grid{display:block}
  .future-concept{padding-top:24px}
  .future-concept+.future-concept{margin-top:28px}
  .future-concept>.icon{margin-bottom:16px}
  .future-concept h3{font-size:28px;margin-bottom:13px}
  .future-concept h3 br{display:none}
  .future-concept p{font-size:13px;max-width:100%}
  .development{display:flex;flex-direction:column;align-items:start;gap:36px;padding-block:46px}
  .development h2{font-size:37px;margin:16px 0}
  .development-copy>p:not(.eyebrow){font-size:13px}
  .coming-soon{font-size:clamp(36px,10vw,62px)}
  .footer-inner{flex-wrap:wrap;gap:5px 20px;padding:22px 0}
  .footer-inner .brand{order:0}
  .footer-inner .text-link{order:1;margin-left:auto}
  .footer-inner p{order:2;width:100%;font-size:9px}
  dialog{width:calc(100% - 20px);padding:12px;max-height:calc(100dvh - 20px)}
  #lightbox-caption{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation:none!important;transition:none!important}
}
