:root {
    color-scheme: dark;
    --bg: #101216;
    --surface: #191d23;
    --surface-raised: #20252b;
    --green: #55c957;
    --green-bright: #8be36a;
    --text: #fff;
    --muted: #b9c0ca;
    --dim: #828b96;
    --line: #303640;
    --earth: #59483a;
    --content: 1160px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 92px; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: "Bahnschrift", "Segoe UI Variable", "Segoe UI", sans-serif; font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
a { color: inherit; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--green-bright); outline-offset: 4px; }
.wrap { width: min(var(--content), calc(100% - 64px)); margin-inline: auto; }
.skip-link { position: absolute; z-index: 20; top: 8px; left: 8px; padding: 10px 14px; transform: translateY(-150%); background: var(--green-bright); color: var(--bg); font-weight: 700; }
.skip-link:focus { transform: translateY(0); }

.site-header { position: absolute; z-index: 10; inset: 0 0 auto; border-bottom: 1px solid rgb(255 255 255 / 8%); }
.header-inner { width: min(1320px, calc(100% - 64px)); min-height: 82px; margin: auto; display: flex; align-items: center; gap: 35px; }
.brand { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; white-space: nowrap; }
.brand-name { font-size: 19px; font-weight: 750; letter-spacing: 0; }
.brand-name span { color: var(--green-bright); }
.brand-mark { position: relative; display: block; width: 34px; height: 34px; transform: rotate(-45deg); }
.brand-mark::before, .brand-mark::after, .brand-mark span { position: absolute; content: ""; display: block; background: var(--green-bright); }
.brand-mark::before { width: 26px; height: 6px; left: 3px; top: 5px; }
.brand-mark::after { width: 6px; height: 26px; left: 13px; top: 5px; }
.brand-mark span { width: 19px; height: 5px; left: 7px; top: 14px; background: #d9f5ad; }
.main-nav { display: flex; align-items: center; gap: clamp(18px, 2.5vw, 36px); margin-left: auto; }
.main-nav a, .footer-nav a, .footer-legal a { color: #d1d5db; text-decoration: none; font-size: 13px; transition: color .2s ease; }
.main-nav a:hover, .footer-nav a:hover, .footer-legal a:hover { color: var(--green-bright); }
.project-status { display: inline-flex; align-items: center; gap: 9px; padding: 8px 12px; border: 1px solid #384338; background: rgb(24 34 25 / 72%); color: #d2e8cc; font-size: 11px; white-space: nowrap; }
.status-dot { display: inline-block; width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: var(--green-bright); box-shadow: 0 0 11px rgb(139 227 106 / 45%); }
.menu-toggle { display: none; }

.hero { position: relative; min-height: 760px; min-height: min(880px, 100svh); overflow: hidden; isolation: isolate; background: #12171b; }
.hero::before { position: absolute; z-index: -1; inset: 0; content: ""; background: linear-gradient(90deg, rgb(12 15 18 / 94%) 0%, rgb(12 15 18 / 77%) 43%, rgb(12 15 18 / 23%) 100%), linear-gradient(0deg, #101216 0%, transparent 44%, rgb(9 12 15 / 30%) 100%); }
.hero-sky { position: absolute; z-index: -2; inset: 0; overflow: hidden; background: radial-gradient(ellipse at 76% 37%, #32423b 0, #222e2f 20%, #1b252a 47%, #15191e 76%); }
.hero-sky::after { position: absolute; right: 0; bottom: 0; left: 0; height: 50%; content: ""; background: linear-gradient(180deg, transparent, rgb(16 18 22 / 45%)); }
.hero-content { position: relative; z-index: 2; padding-top: clamp(185px, 23vh, 230px); padding-bottom: 155px; }
.eyebrow { display: flex; align-items: center; gap: 11px; margin: 0 0 22px; color: #c0d4bd; font-size: 11px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; }
.eyebrow-mark { display: inline-block; width: 17px; height: 4px; background: var(--green); box-shadow: 4px 4px 0 #324c32; }
h1, h2, h3, p { margin-top: 0; }
.hero h1 { max-width: 840px; margin-bottom: 22px; font-size: clamp(46px, 6.1vw, 78px); line-height: 1.03; letter-spacing: 0; font-weight: 720; }
.hero h1 span, .section-heading h2 span, .charity-copy h2 span, .status-intro h2 span, .contact-inner h2 span { color: var(--green-bright); }
.hero-copy { max-width: 560px; margin-bottom: 30px; color: #c2c8cc; font-size: 16px; line-height: 1.8; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 13px; }
.button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: 20px; padding: 0 19px; border: 1px solid transparent; text-decoration: none; font-size: 13px; font-weight: 700; transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--green); color: #101610; }
.button-primary:hover { background: var(--green-bright); }
.button-quiet { border-color: #68716e; background: rgb(16 18 22 / 30%); color: #eef1ed; }
.button-quiet:hover { border-color: var(--green-bright); }
.hero-note { display: flex; align-items: center; gap: 10px; margin: 30px 0 0; color: #c7d0c5; font-family: "Consolas", "Courier New", monospace; font-size: 10px; letter-spacing: 1.25px; }
.hero-note .status-dot { width: 6px; height: 6px; flex-basis: 6px; }
.note-divider { color: var(--green); }
.hero-moon { position: absolute; top: 22%; right: 20%; width: 66px; aspect-ratio: 1; background: #b3c58d; box-shadow: 0 0 70px 22px rgb(153 185 125 / 14%); opacity: .72; }
.ridge { position: absolute; bottom: 26%; width: 130%; height: 29%; clip-path: polygon(0 77%, 8% 60%, 13% 67%, 23% 25%, 31% 52%, 39% 15%, 48% 61%, 58% 27%, 66% 57%, 73% 33%, 80% 62%, 88% 18%, 94% 49%, 100% 30%, 100% 100%, 0 100%); }
.ridge-back { right: -10%; background: #263334; opacity: .75; }
.ridge-front { right: -20%; bottom: 18%; height: 25%; background: #202d2b; opacity: .84; transform: scaleX(-1); }
.hero-landscape { position: absolute; right: 0; bottom: 0; left: 0; height: 23%; background: repeating-linear-gradient(90deg, transparent 0 8%, rgb(255 255 255 / 2%) 8% 8.2%), linear-gradient(180deg, #425d3f 0 13%, #59483a 13% 62%, #393a37 62%); image-rendering: pixelated; }
.hero-landscape::before { position: absolute; top: -6px; right: 0; left: 0; height: 10px; content: ""; background: repeating-linear-gradient(90deg, #6da653 0 48px, #5c9149 48px 96px); }
.land-block { position: absolute; top: 30%; width: 10%; height: 70%; border-left: 1px solid rgb(0 0 0 / 14%); background: linear-gradient(90deg, rgb(0 0 0 / 13%), transparent 27%); }
.land-one { left: 12%; }.land-two { left: 44%; }.land-three { right: 22%; }.land-four { right: 3%; }
.tree { position: absolute; z-index: 2; bottom: 100%; width: 16px; height: 66px; background: #493b2d; }
.tree::before { position: absolute; bottom: 35px; left: -26px; width: 68px; height: 48px; content: ""; background: #3e6038; box-shadow: 0 -20px 0 -5px #4a7041, -12px 8px 0 -2px #4b7541, 16px 20px 0 -4px #365532; }
.tree-left { left: 15%; }.tree-right { right: 17%; transform: scale(.8); }
.pixel { position: absolute; z-index: 1; width: 5px; height: 5px; background: #b0c598; opacity: .55; animation: pixel-drift 7s ease-in-out infinite alternate; }
.pixel-one { top: 28%; left: 61%; }.pixel-two { top: 19%; left: 82%; animation-delay: -2s; }.pixel-three { top: 51%; left: 77%; animation-delay: -4s; }.pixel-four { top: 36%; left: 92%; animation-delay: -1s; }
.scroll-cue { position: absolute; z-index: 3; right: max(32px, calc((100vw - 1160px) / 2)); bottom: 40px; width: 24px; height: 38px; border: 1px solid rgb(255 255 255 / 45%); }
.scroll-cue span { position: absolute; top: 8px; left: 10px; width: 2px; height: 8px; background: var(--green-bright); animation: scroll-pulse 1.5s ease-in-out infinite; }

.section-pad { padding-block: 116px; }
.intro-section { position: relative; background: var(--bg); }
.intro-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 10%; align-items: start; }
.section-heading h2, .charity-copy h2, .status-intro h2 { margin-bottom: 23px; font-size: clamp(43px, 5vw, 62px); line-height: 1.04; font-weight: 680; }
.heading-rule { display: block; width: 58px; height: 4px; background: var(--green); }
.intro-copy { max-width: 600px; padding-top: 20px; color: var(--muted); font-size: 14px; }
.intro-copy p { margin-bottom: 18px; }
.intro-copy .lead { color: var(--text); font-size: 19px; line-height: 1.6; }
.muted { color: #929aa4 !important; }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 75px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.feature-item { min-height: 264px; padding: 32px 32px 30px 0; }
.feature-item + .feature-item { padding-left: 32px; border-left: 1px solid var(--line); }
.feature-icon { position: relative; display: block; width: 47px; height: 47px; margin-bottom: 24px; background: #26352a; border: 1px solid #3c5940; }
.feature-icon::before, .feature-icon::after, .feature-icon i { position: absolute; content: ""; display: block; }
.icon-pickaxe::before { top: 14px; left: 7px; width: 30px; height: 6px; background: var(--green-bright); transform: rotate(-35deg); }
.icon-pickaxe::after { top: 11px; left: 19px; width: 5px; height: 28px; background: #b5d99c; transform: rotate(-35deg); }
.icon-heart::before { top: 14px; left: 14px; width: 17px; height: 17px; background: #83d873; transform: rotate(45deg); }
.icon-heart::after { top: 10px; left: 10px; width: 15px; height: 15px; background: #83d873; box-shadow: 9px 0 #83d873; }
.icon-community::before { top: 10px; left: 17px; width: 10px; height: 10px; background: var(--green-bright); box-shadow: -11px 7px 0 -1px #82b971, 11px 7px 0 -1px #82b971; }
.icon-community::after { bottom: 8px; left: 11px; width: 23px; height: 10px; border-top: 4px solid #82b971; }
.feature-index { color: #82927f; font-family: Consolas, monospace; font-size: 9px; letter-spacing: 1px; }
.feature-item h3 { margin: 8px 0 7px; font-size: 20px; font-weight: 650; }
.feature-item p { max-width: 300px; margin-bottom: 0; color: var(--muted); font-size: 13px; }

.charity-section { background: #171b1f; border-block: 1px solid #252b2e; }
.charity-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12%; align-items: center; }
.charity-copy h2 { font-size: clamp(39px, 4.3vw, 53px); }
.charity-copy > p:not(.eyebrow) { max-width: 530px; color: var(--muted); font-size: 14px; }
.planning-label { display: inline-flex; align-items: center; gap: 9px; margin-top: 14px; color: #d9e5d3; font-size: 11px; }
.planning-label .status-dot { width: 6px; height: 6px; flex-basis: 6px; }
.steps { border-top: 1px solid #373e41; }
.step-item { display: grid; grid-template-columns: 44px 1fr auto; gap: 14px; align-items: start; padding: 24px 0; border-bottom: 1px solid #373e41; }
.step-number { color: var(--green-bright); font-family: Consolas, monospace; font-size: 12px; }
.step-item h3 { margin: -4px 0 4px; font-size: 17px; }
.step-item p { max-width: 290px; margin-bottom: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.step-state { margin-top: 2px; color: #99a39c; font-size: 10px; white-space: nowrap; }

.status-section { background: var(--bg); }
.status-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: 10%; align-items: center; }
.status-intro h2 { font-size: clamp(39px, 4.4vw, 54px); }
.status-intro > p:last-child { max-width: 390px; color: var(--muted); font-size: 13px; }
.status-board { border: 1px solid var(--line); background: #171b20; }
.status-board-head { display: flex; min-height: 61px; align-items: center; justify-content: space-between; gap: 20px; padding: 0 23px; border-bottom: 1px solid var(--line); color: #e4e7e8; font-size: 13px; }
.status-board-head strong { display: flex; align-items: center; gap: 9px; color: #cae3c2; font-size: 11px; font-weight: 600; }
.status-list { margin: 0; padding: 0 23px; list-style: none; }
.status-list li { display: flex; min-height: 52px; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid #282e34; font-size: 12px; }
.status-list li:last-child { border-bottom: 0; }
.status-list li span:last-child { color: #9da79e; text-align: right; font-size: 11px; }
.status-board-foot { display: flex; min-height: 43px; align-items: center; gap: 8px; padding: 0 23px; border-top: 1px solid var(--line); color: #8f989f; font-size: 10px; }
.status-pip { width: 5px; height: 5px; background: #89938d; }

.contact-section { position: relative; min-height: 565px; overflow: hidden; isolation: isolate; background: #18211d; }
.contact-section::before { position: absolute; z-index: -1; inset: 0; content: ""; background: radial-gradient(ellipse at 51% 53%, rgb(57 82 51 / 27%), transparent 49%), linear-gradient(180deg, #171d1d, #1a241f 74%, #263328); }
.contact-inner { position: relative; z-index: 2; padding-block: 100px 195px; text-align: center; }
.contact-inner .eyebrow { justify-content: center; }
.contact-inner h2 { margin-bottom: 18px; font-size: clamp(43px, 5.3vw, 64px); line-height: 1.05; }
.contact-inner > p:not(.eyebrow) { max-width: 540px; margin: 0 auto 25px; color: #c0c8c2; font-size: 14px; }
.contact-grid { position: absolute; inset: 0; display: grid; grid-template-columns: repeat(8, 1fr); opacity: .18; }
.contact-grid span { border-right: 1px solid #8a9b83; }
.contact-grid span:nth-child(odd) { background: linear-gradient(180deg, transparent 50%, rgb(180 205 161 / 10%)); }
.bottom-landscape { position: absolute; right: 0; bottom: 0; left: 0; height: 136px; background: linear-gradient(180deg, transparent 0 14%, #59483a 14% 100%); }
.bottom-landscape::before { position: absolute; top: 10px; right: 0; left: 0; height: 15px; content: ""; background: repeating-linear-gradient(90deg, #628f4d 0 45px, #719d59 45px 90px); }
.bottom-hill { position: absolute; bottom: 70px; width: 36%; height: 100px; background: #294032; clip-path: polygon(0 100%, 0 65%, 25% 65%, 25% 37%, 50% 37%, 50% 16%, 74% 16%, 74% 0, 100% 0, 100% 100%); }
.bottom-hill-a { left: 0; opacity: .8; }.bottom-hill-b { right: 0; transform: scaleX(-1); opacity: .9; }
.bottom-tree { position: absolute; z-index: 2; bottom: 69px; width: 12px; height: 63px; background: #493b2d; }
.bottom-tree::before { position: absolute; bottom: 32px; left: -24px; width: 60px; height: 42px; content: ""; background: #426542; box-shadow: 0 -17px 0 -4px #52794b; }
.bottom-tree-a { left: 22%; }.bottom-tree-b { right: 20%; transform: scale(.8); }
.ground-block { position: absolute; top: 30px; bottom: 0; width: 12.5%; background: repeating-linear-gradient(0deg, transparent 0 34px, rgb(0 0 0 / 13%) 34px 36px), linear-gradient(90deg, rgb(0 0 0 / 9%), transparent 25%); border-right: 1px solid rgb(0 0 0 / 12%); }
.ground-a { left: 0; }.ground-b { left: 25%; }.ground-c { right: 25%; }.ground-d { right: 0; }
.floating-gem { position: absolute; z-index: 3; right: 32%; bottom: 100px; width: 14px; height: 18px; background: #80d9bf; clip-path: polygon(25% 0, 75% 0, 100% 45%, 50% 100%, 0 45%); box-shadow: 0 0 18px #7bdfbd; }

.site-footer { padding: 37px max(32px, calc((100vw - 1160px) / 2)) 20px; background: #101216; }
.footer-main { display: grid; grid-template-columns: 1fr auto auto; gap: 70px; align-items: start; padding-bottom: 31px; border-bottom: 1px solid var(--line); }
.footer-brand { font-size: 18px; font-weight: 720; text-decoration: none; }
.footer-brand-block p { margin: 3px 0 0; color: #939ba4; font-size: 12px; }
.footer-nav, .footer-legal { display: flex; gap: 24px; padding-top: 5px; }
.footer-nav a, .footer-legal a { font-size: 11px; }
.footer-bottom { display: flex; min-height: 93px; align-items: center; justify-content: space-between; gap: 22px; }
.copyright { margin: 0; color: #838b94; font-size: 10px; }
.studio-credit { display: flex; align-items: center; gap: 13px; color: #a3abb1; font-size: 10px; }
.studio-credit a { color: #d9dfe0; text-decoration: none; }
.studio-credit a:hover { color: var(--green-bright); }
.studio-logo-link { display: inline-flex; align-items: center; }
.studio-logo-link img { display: block; width: auto; max-width: 160px; height: auto; max-height: 52px; object-fit: contain; }
.studio-wordmark { color: #dce2de; font-size: 14px; font-weight: 700; }

.legal-page { min-height: calc(100vh - 330px); padding-top: 150px; padding-bottom: 105px; }
.legal-page > h1 { margin-bottom: 40px; font-size: clamp(44px, 5vw, 60px); line-height: 1.1; }
.legal-content { max-width: 780px; }
.legal-content section { padding: 24px 0; border-top: 1px solid var(--line); }
.legal-content h2 { margin-bottom: 10px; font-size: 18px; }
.legal-content p { margin-bottom: 10px; color: #c0c6cc; font-size: 14px; }
.legal-content a { color: var(--green-bright); text-underline-offset: 3px; }
.review-notice { max-width: 780px; margin: -15px 0 30px; padding: 17px 20px; border-left: 3px solid #d3a361; background: #25231f; color: #d5d0c7; font-size: 13px; }
.review-notice strong { color: #f0d6ad; }

@keyframes pixel-drift { from { transform: translateY(0); } to { transform: translateY(-15px); } }
@keyframes scroll-pulse { 0%, 100% { transform: translateY(0); opacity: .45; } 50% { transform: translateY(10px); opacity: 1; } }

@media (max-width: 900px) {
    .header-inner { gap: 20px; }
    .main-nav { gap: 17px; }
    .main-nav a { font-size: 12px; }
    .project-status { padding: 7px 9px; font-size: 10px; }
    .intro-grid, .status-layout { gap: 7%; }
    .charity-grid { gap: 7%; }
    .footer-main { gap: 32px; }
    .footer-nav, .footer-legal { gap: 15px; }
}

@media (max-width: 700px) {
    html { scroll-padding-top: 75px; }
    .wrap { width: min(100% - 40px, var(--content)); }
    .site-header { position: absolute; }
    .header-inner { width: calc(100% - 40px); min-height: 72px; justify-content: space-between; gap: 10px; }
    .brand-name { font-size: 17px; }
    .brand-mark { transform: scale(.88) rotate(-45deg); }
    .project-status { margin-left: auto; font-size: 9px; }
    .menu-toggle { display: flex; width: 42px; height: 42px; flex: 0 0 42px; flex-direction: column; align-items: center; justify-content: center; gap: 6px; border: 1px solid #465047; background: #171d1a; color: white; cursor: pointer; }
    .menu-toggle span { width: 17px; height: 2px; background: var(--green-bright); transition: transform .2s ease; }
    .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(4px) rotate(45deg); }
    .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-4px) rotate(-45deg); }
    .main-nav { position: absolute; top: calc(100% - 1px); right: 0; left: 0; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 8px 20px 15px; border-bottom: 1px solid var(--line); background: #14181c; }
    .main-nav.is-open { display: flex; }
    .main-nav a { padding: 11px 0; border-bottom: 1px solid #272d32; font-size: 14px; }
    .main-nav a:last-child { border-bottom: 0; }
    .hero { min-height: 760px; min-height: 100svh; }
    .hero::before { background: linear-gradient(90deg, rgb(12 15 18 / 88%), rgb(12 15 18 / 40%)), linear-gradient(0deg, #101216 0%, transparent 56%, rgb(9 12 15 / 42%)); }
    .hero-content { padding-top: 180px; padding-bottom: 170px; }
    .hero h1 { font-size: clamp(42px, 11vw, 62px); }
    .hero-copy { max-width: 480px; font-size: 14px; }
    .hero-moon { top: 25%; right: 13%; width: 42px; }
    .ridge { bottom: 25%; height: 23%; }
    .ridge-front { bottom: 18%; height: 20%; }
    .hero-landscape { height: 18%; }
    .tree { transform: scale(.75); transform-origin: bottom; }
    .tree-right { transform: scale(.62); }
    .scroll-cue { right: 21px; bottom: 25px; }
    .section-pad { padding-block: 78px; }
    .intro-grid, .charity-grid, .status-layout { grid-template-columns: 1fr; gap: 30px; }
    .section-heading h2, .charity-copy h2, .status-intro h2 { font-size: clamp(40px, 10vw, 54px); }
    .intro-copy { padding-top: 0; }
    .feature-grid { grid-template-columns: 1fr; margin-top: 44px; }
    .feature-item { min-height: auto; padding: 25px 0; }
    .feature-item + .feature-item { padding-left: 0; border-top: 1px solid var(--line); border-left: 0; }
    .feature-icon { margin-bottom: 15px; }
    .feature-item p { max-width: 440px; }
    .charity-grid { gap: 37px; }
    .steps { margin-top: 0; }
    .step-item { grid-template-columns: 34px 1fr; gap: 10px; }
    .step-state { grid-column: 2; margin-top: -4px; }
    .status-layout { gap: 26px; }
    .status-board-head, .status-list { padding-inline: 15px; }
    .status-board-foot { padding-inline: 15px; }
    .status-list li { font-size: 11px; }
    .status-list li span:last-child { max-width: 47%; font-size: 10px; }
    .contact-section { min-height: 540px; }
    .contact-inner { padding-block: 78px 185px; }
    .contact-inner h2 { font-size: clamp(42px, 10.5vw, 58px); }
    .bottom-landscape { height: 115px; }
    .bottom-hill { bottom: 59px; height: 72px; }
    .bottom-tree { bottom: 58px; transform: scale(.78); transform-origin: bottom; }
    .bottom-tree-b { transform: scale(.65); }
    .floating-gem { right: 21%; bottom: 86px; }
    .site-footer { padding: 29px 20px 17px; }
    .footer-main { grid-template-columns: 1fr 1fr; gap: 23px 15px; }
    .footer-brand-block { grid-column: 1 / -1; }
    .footer-nav, .footer-legal { flex-direction: column; align-items: flex-start; gap: 10px; }
    .footer-nav a, .footer-legal a { font-size: 12px; }
    .footer-bottom { align-items: flex-start; flex-direction: column-reverse; gap: 16px; padding-top: 21px; }
    .studio-credit { flex-wrap: wrap; gap: 10px; }
    .studio-logo-link img { max-width: 135px; }
    .legal-page { padding-top: 125px; padding-bottom: 70px; }
    .legal-page > h1 { margin-bottom: 28px; }
    .legal-content section { padding: 20px 0; }
}

@media (max-width: 390px) {
    .header-inner { flex-wrap: wrap; padding-block: 8px; }
    .menu-toggle { order: 2; }
    .project-status { order: 3; margin: 0 0 2px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

body { min-width: 320px; min-height: 100svh; overflow-x: hidden; }
.coming-main { min-height: 100svh; }
.coming-hero { display: grid; min-height: 100svh; height: 100svh; place-items: center; }
.coming-hero::before { background: linear-gradient(180deg, rgb(9 12 15 / 45%), transparent 35%, rgb(9 12 15 / 12%) 65%, rgb(16 18 22 / 72%)); }
.coming-hero .hero-sky { background: radial-gradient(ellipse at 50% 40%, #293a35 0, #1d292a 32%, #151a1e 75%); }
.coming-hero .hero-moon { top: 19%; right: 19%; width: 48px; opacity: .45; }
.coming-hero .ridge { bottom: 22%; height: 34%; }
.coming-hero .ridge-front { bottom: 15%; height: 27%; }
.coming-hero .hero-landscape { height: 24%; }
.coming-hero .pixel { width: 4px; height: 4px; }
.pixel-five { top: 32%; left: 23%; animation-delay: -3s; }
.pixel-six { top: 43%; left: 72%; animation-delay: -5s; }
.landing-message { position: relative; z-index: 2; width: min(720px, calc(100% - 40px)); margin-top: -28px; padding-bottom: 90px; text-align: center; animation: message-arrive .8s ease-out both; }
.landing-message .eyebrow { justify-content: center; margin-bottom: 20px; }
.landing-message h1 { margin-bottom: 13px; font-size: clamp(44px, 7vw, 76px); line-height: 1.02; font-weight: 750; text-wrap: balance; }
.landing-message h1 span { color: var(--green-bright); }
.landing-copy { max-width: 610px; margin: 0 auto 25px; color: #c1c8c7; font-size: clamp(14px, 1.7vw, 17px); line-height: 1.75; text-wrap: pretty; }
.work-status { display: inline-flex; min-height: 36px; align-items: center; gap: 10px; margin: 0; padding: 0 13px; border: 1px solid #435246; background: rgb(18 25 21 / 72%); color: #dce8d8; font-family: Consolas, monospace; font-size: 10px; letter-spacing: 1.2px; }
.work-status .status-dot { width: 6px; height: 6px; flex-basis: 6px; }
.site-footer { position: relative; display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 24px 20px 18px; background: var(--bg); text-align: center; }
.site-footer-home { position: absolute; z-index: 4; right: 0; bottom: 0; left: 0; background: linear-gradient(0deg, #101216 0%, rgb(16 18 22 / 82%) 58%, transparent 100%); }
.legal-links { display: flex; justify-content: center; gap: 23px; }
.legal-links a { color: #c2c9c8; font-size: 11px; text-decoration: none; text-underline-offset: 3px; }
.legal-links a:hover, .studio-credit a:hover { color: var(--green-bright); }
.studio-credit { display: flex; flex-direction: column; align-items: center; gap: 4px; color: #929a9d; font-size: 10px; }
.studio-credit a { color: #d7dddd; text-decoration: none; }
.studio-logo-link img { display: block; width: auto; max-width: 200px; max-height: 58px; height: auto; object-fit: contain; }
.studio-wordmark { color: #dce2de; font-size: 14px; font-weight: 700; }
.legal-page { padding-top: 120px; }

@keyframes message-arrive {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 600px) {
    .coming-hero .hero-moon { top: 16%; right: 12%; width: 34px; }
    .coming-hero .hero-landscape { height: 20%; }
    .coming-hero .tree { transform: scale(.72); transform-origin: bottom; }
    .coming-hero .tree-right { transform: scale(.58); }
    .landing-message { margin-top: -12px; padding-bottom: 75px; }
    .landing-message h1 { font-size: clamp(42px, 11vw, 59px); }
    .landing-copy { max-width: 440px; font-size: 14px; }
    .site-footer-home { padding-bottom: 13px; }
    .studio-logo-link img { max-width: 180px; }
}

@media (max-height: 660px) and (min-width: 601px) {
    .landing-message { margin-top: -8px; padding-bottom: 60px; }
    .landing-message h1 { font-size: 54px; }
    .landing-copy { margin-bottom: 15px; font-size: 14px; }
    .coming-hero .hero-landscape { height: 18%; }
}

@media (max-height: 660px) and (max-width: 600px) {
    .landing-message { margin-top: 0; padding-bottom: 0; }
    .landing-message .eyebrow { margin-bottom: 12px; }
    .landing-message h1 { margin-bottom: 10px; font-size: clamp(36px, 10vw, 48px); }
    .landing-copy { margin-bottom: 14px; font-size: 13px; line-height: 1.55; }
    .work-status { min-height: 32px; }
    .coming-hero .hero-landscape { height: 17%; }
}

@media (prefers-reduced-motion: reduce) {
    .landing-message { animation: none; }
}