/* The landing page is static; the Three.js engine starts only for playing or a saved login. */
#home.landing{padding:0;display:block;gap:0;background:#f5f3ec;color:#112f3b;scroll-behavior:smooth;scroll-padding-top:88px;font-family:NHText,ui-sans-serif,system-ui,sans-serif}#home-art,#shade{display:none!important}
.landing *{box-sizing:border-box}.landing a{color:inherit;text-decoration:none}.landing button{font:inherit}.landing button:disabled{cursor:progress}.landing [id]{scroll-margin-top:90px}.landing-nav{height:86px;padding:0 clamp(22px,5vw,86px);display:flex;align-items:center;gap:35px;background:#0b2531;color:#f5f3ec;position:relative;z-index:2}.landing-brand{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:15px;font-weight:900;letter-spacing:.07em}.landing-brand img{border-radius:11px}.landing-brand b{color:#71e8d0}.landing-nav nav{display:flex;gap:28px;margin:auto;font-size:13px;font-weight:750}.landing-nav nav a{padding:12px 0;border-bottom:2px solid transparent}.landing-nav nav a:hover{border-color:#70ead0}.landing-login{background:transparent;color:#f6f4eb;border:1px solid #ffffff35;border-radius:9px;padding:12px 20px;font-size:13px;font-weight:850;white-space:nowrap}.landing-login span{margin-left:16px;color:#70ead0}
.landing-hero{position:relative;min-height:620px;height:min(750px,calc(100svh - 86px));overflow:hidden;color:#f6f4eb;background:#203c49}.landing-hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 52%}.landing-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,24,34,.95),rgba(6,24,34,.80) 30%,rgba(6,24,34,.15) 72%),linear-gradient(0deg,rgba(6,24,34,.45),transparent 60%)}.landing-hero-content{position:relative;padding:75px clamp(22px,5vw,86px) 90px;max-width:850px}.landing-eyebrow{font-size:11px;font-weight:850;letter-spacing:.12em;display:flex;align-items:center;gap:10px}.landing-eyebrow span{width:7px;height:7px;background:#70ead0;border-radius:50%;box-shadow:0 0 0 5px #70ead017}.landing #landing-title{font-family:NHDisplay,Impact,sans-serif;font-size:clamp(78px,8.4vw,132px);line-height:.86;letter-spacing:-.015em;margin:32px 0 27px;font-weight:900;color:#fffbed}.landing #landing-title em{font-style:normal;color:#70ead0}.landing-hero-intro{font-size:clamp(17px,1.5vw,21px);line-height:1.65;font-weight:600;max-width:550px;color:#e0e9e8;margin:0 0 30px}.landing-hero-actions{display:flex;align-items:center;gap:27px;flex-wrap:wrap}.landing-primary{display:inline-flex;justify-content:center;align-items:center;gap:36px;padding:18px 28px;background:#70ead0;color:#092b36;font-size:16px;font-weight:950;border-radius:10px;box-shadow:0 7px 22px #06151b35;transition:background .18s,transform .18s}.landing-primary:hover{background:#a0ffe6;transform:translateY(-2px)}.landing-primary span{font-size:24px;line-height:1}.landing-tour{font-size:13px;font-weight:850;border-bottom:1px solid #ffffff80;padding:8px 0}.landing-tour span{margin-left:14px}.landing-free{font-size:11px;color:#bed1d3;margin-top:18px}.landing #landing-status{font-size:13px;color:#ffcd72;max-width:470px;min-height:20px}.landing-hero-caption{position:absolute;bottom:22px;left:5vw;font-size:8px;font-weight:900;letter-spacing:.16em;color:#e3edecaa}.landing-ribbon{padding:23px 5vw;display:flex;justify-content:center;gap:38px;align-items:center;background:#70ead0;font-size:13px;font-weight:850}.landing-ribbon i{font-style:normal;font-size:17px;color:#23756d}
.landing-section{max-width:1440px;margin:auto;padding:83px clamp(22px,5vw,86px)}.landing-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:34px}.landing-kicker{font-size:10px;font-weight:950;letter-spacing:.15em;color:#367b77;margin:0 0 14px}.landing h2{font-family:NHText,system-ui,sans-serif;font-size:clamp(30px,3.15vw,47px);line-height:1.1;letter-spacing:-.04em;margin:0;font-weight:950}.landing-section-head>p{font-size:14px;line-height:1.7;color:#536b71;max-width:350px;margin:0}.landing-role-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.landing-role{background:#fffdf7;border:1px solid #d8dfd9;border-radius:15px;overflow:hidden;box-shadow:0 5px 14px #18332c06}.landing-role img{display:block;width:100%;height:auto;aspect-ratio:1.3;object-fit:cover}.landing-role>div{padding:20px 17px 22px}.landing-role small{font-size:8px;letter-spacing:.05em;font-weight:950;color:#437772;display:block;min-height:17px}.landing-role h3{font-size:23px;letter-spacing:-.035em;margin:5px 0 11px;font-weight:950}.landing-role p{font-size:13px;line-height:1.65;color:#5a6d70;margin:0}.landing-role-hero{border-color:#cfb67a;background:#fff8e7}.landing-role-hero small{color:#8a6820}
.landing-world{padding-top:40px}.landing-place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.landing-place{border-radius:17px;overflow:hidden;background:#0e2e3c;color:#f8f6ec}.landing-place>img{display:block;aspect-ratio:1.65;width:100%;height:auto;object-fit:cover}.landing-place>div{padding:27px 31px 30px}.landing-place span{font-size:9px;font-weight:900;letter-spacing:.16em;color:#70ead0}.landing-place h3{font-size:32px;font-weight:950;letter-spacing:-.035em;margin:9px 0 13px}.landing-place p{font-size:14px;line-height:1.7;color:#bfd2d5;margin:0;max-width:470px}.landing-bridge{margin:24px 0 0;position:relative;height:310px;border-radius:17px;overflow:hidden;background:#173d4d;color:white}.landing-bridge img{width:100%;height:100%;object-fit:cover;object-position:center 50%}.landing-bridge:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#062534d9,#06253466 40%,transparent 75%)}.landing-bridge figcaption{position:absolute;left:32px;top:50%;transform:translateY(-50%);z-index:1;display:flex;flex-direction:column;max-width:360px;gap:14px}.landing-bridge small{color:#80ecda;letter-spacing:.13em;font-weight:900;font-size:9px}.landing-bridge b{font-size:32px;font-weight:950;line-height:1.1;letter-spacing:-.04em}.landing-bridge span{font-size:12px;color:#d3e3e7;line-height:1.6}
.landing-progress{padding-top:30px}.landing-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;list-style:none;margin:0;padding:0}.landing-steps li{padding:26px 0;border-top:2px solid #b7cec4}.landing-steps li>span{font-family:NHDisplay,Impact,sans-serif;font-size:47px;color:#569c8d}.landing-steps h3{font-size:24px;font-weight:950;margin:15px 0 10px;letter-spacing:-.025em}.landing-steps p{font-size:14px;line-height:1.75;max-width:290px;color:#536b71;margin:0}.landing-together{display:grid;grid-template-columns:1fr 1fr;background:#0e2c39;color:#f6f4eb;max-width:1440px;margin:0 auto;overflow:hidden}.landing-together>div{padding:65px clamp(22px,5vw,86px)}.landing-together .landing-kicker{color:#70ead0}.landing-together h2{font-size:clamp(30px,3.15vw,45px)}.landing-together p:not(.landing-kicker){font-size:14px;line-height:1.8;color:#c0d2d4;margin:24px 0 28px;max-width:430px}.landing-together>img{width:100%;height:100%;object-fit:cover}.landing-faq{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;align-items:start}.landing-faq details{padding:22px 0;border-bottom:1px solid #cbd6cf}.landing-faq summary{cursor:pointer;list-style:none;font-weight:850;font-size:15px;padding-right:30px;position:relative}.landing-faq summary::-webkit-details-marker{display:none}.landing-faq summary:after{content:'+';position:absolute;right:0;font-size:23px;top:-5px;color:#3f8479}.landing-faq details[open] summary:after{content:'−'}.landing-faq p{font-size:14px;line-height:1.8;color:#536b71;margin:17px 0 0}.landing-last{background:#dfebe3;text-align:center;padding:64px 22px}.landing-last h2{font-size:clamp(36px,4vw,56px);margin:0 0 29px}.landing-last>p:last-child{font-size:11px;color:#536b71;margin-top:20px}.landing-footer{background:#0b2531;color:#a9c4ca;padding:35px 5vw;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;line-height:1.8;text-align:left;letter-spacing:0;max-width:none}.landing-footer strong{color:#e0e9e8}.landing-footer a{font-weight:850;color:#70ead0}.landing-footer #release-version{font-size:10px}
#landing-account{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #527379;border-radius:20px;padding:28px;background:#0d2b38;color:#f6f4eb;box-shadow:0 25px 100px #05161aa0}#landing-account::backdrop{background:#041821c9;backdrop-filter:blur(5px)}.landing-account-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.landing-account-heading small{font-size:9px;font-weight:900;letter-spacing:.12em;color:#70ead0}.landing-account-heading h2{font-size:27px;margin-top:8px}#landing-account-close{background:#ffffff0c;border:1px solid #ffffff25;border-radius:9px;color:#d6e9e9;width:38px;height:38px;font-size:26px;flex-shrink:0}#landing-account .auth-panel{margin:0;max-width:none;border:0;background:none;box-shadow:none;padding:0}#landing-account #auth-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}#landing-account #auth-name-wrap,#landing-account #auth-password-hint,#landing-account #auth-submit,#landing-account #auth-status{grid-column:1/-1}#landing-account label{display:block;font-size:11px;color:#c4d9db}#landing-account input{display:block;width:100%;margin-top:8px;background:#071f2c;border:1px solid #527179;border-radius:9px;color:#fff;padding:14px;font-size:15px;height:48px}#landing-account .auth-tabs button{font-size:13px;padding:10px 15px}#landing-account .auth-intro{font-size:13px;line-height:1.6;margin:20px 0}#landing-account #auth-submit{width:100%;padding:15px;font-size:15px;margin:0}#landing-account #auth-password-hint{font-size:11px;color:#ffcd72;margin:0}#landing-account #auth-status,#landing-account #home-status{font-size:12px;line-height:1.7;margin:0}#landing-account #home-status{margin-top:16px;color:#ffcd72}#landing-account .account-ready{padding:15px;margin-bottom:15px}#landing-account .join{display:flex;flex-direction:column;margin:0}#landing-account .join label,#landing-account .join button{width:100%;max-width:none}body.auth-editing #home.landing{padding:0;height:100dvh;top:0}body.auth-editing #landing-account{position:fixed;top:var(--auth-viewport-top,0px);bottom:auto;margin:8px auto;max-height:calc(var(--auth-viewport-height,100dvh) - 16px);padding:19px}body.auth-editing .landing-account-heading{margin-bottom:15px}body.auth-editing #landing-account .auth-panel{display:block!important}
@media(min-width:1600px){.landing-hero-content{padding-top:90px}}@media(max-width:1100px){.landing-nav nav{gap:16px;font-size:12px}.landing-nav{gap:20px}.landing-hero-content{padding-top:63px;max-width:690px}.landing-role-grid{gap:10px}.landing-role>div{padding:16px 12px}.landing-role h3{font-size:21px}.landing-role p{font-size:12px}.landing-ribbon{gap:23px}.landing-section-head>p{max-width:275px}.landing-section{padding-top:62px;padding-bottom:62px}}
@media(max-width:850px){.landing-nav{height:76px;padding:0 24px}.landing-nav nav{display:none}.landing-login{margin-left:auto}.landing-hero{min-height:650px;height:auto}.landing-hero-content{padding:65px 24px 105px;max-width:620px}.landing #landing-title{font-size:100px}.landing-hero-intro{max-width:420px}.landing-ribbon{gap:16px;font-size:11px;padding:19px 20px}.landing-ribbon i{font-size:12px}.landing-section-head>p br{display:none}.landing-section-head>p{max-width:240px;font-size:13px}.landing-role-grid{grid-template-columns:repeat(3,1fr);gap:16px}.landing-role>div{padding:20px 17px}.landing-role h3{font-size:24px}.landing-role p{font-size:13px}.landing-place>div{padding:24px}.landing-place p{font-size:13px}.landing-together>div{padding:43px 24px}.landing-together>img{object-position:60% center}.landing-steps{gap:22px}.landing-steps h3{font-size:21px}.landing-faq{gap:0 24px}.landing-footer{padding:28px 24px}}
@media(max-width:580px){.landing-nav{height:70px;padding:0 18px}.landing-brand{font-size:12px;gap:9px;letter-spacing:.025em}.landing-brand img{width:33px;height:33px}.landing-login{padding:10px 12px;font-size:12px}.landing-login span{margin-left:9px}.landing-hero{min-height:640px}.landing-hero-image{object-position:62% center}.landing-hero-shade{background:linear-gradient(90deg,#061d2ae8,#061d2a75),linear-gradient(0deg,#061d2ab0,transparent)}.landing-hero-content{padding:49px 22px 50px;max-width:100%}.landing-eyebrow{font-size:8px;letter-spacing:.08em}.landing #landing-title{font-size:clamp(69px,17.9vw,100px);margin:35px 0 27px;line-height:.93}.landing-hero-intro{font-size:16px;line-height:1.7}.landing-hero-intro br{display:none}.landing-hero-actions{gap:18px}.landing-primary{padding:16px 24px;font-size:15px;gap:28px}.landing-tour{font-size:11px}.landing-free{font-size:9px;line-height:1.8;max-width:270px}.landing-hero-caption{bottom:18px;left:22px;font-size:7px}.landing-ribbon{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;text-align:center;padding:19px}.landing-ribbon i{display:none}.landing-ribbon span{font-size:10px}.landing-section{padding:49px 22px}.landing-section-head{display:block;margin-bottom:26px}.landing-section-head>p{margin-top:18px;max-width:none}.landing-section-head>p br{display:none}.landing h2{font-size:32px}.landing-kicker{font-size:8px;line-height:1.7}.landing-role-grid{grid-template-columns:1fr 1fr;gap:12px}.landing-role h3{font-size:21px}.landing-role>div{padding:17px 13px}.landing-role small{font-size:7px;min-height:22px;line-height:1.6}.landing-role p{font-size:12px}.landing-role-hero{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.landing-role-hero img{height:100%;aspect-ratio:auto;object-fit:cover}.landing-role-hero>div{padding:20px 15px}.landing-place-grid{grid-template-columns:1fr;gap:18px}.landing-place>div{padding:24px}.landing-bridge{height:300px;margin-top:18px}.landing-bridge img{object-position:59% center}.landing-bridge figcaption{left:24px;right:24px;top:auto;bottom:27px;transform:none}.landing-bridge b{font-size:28px}.landing-bridge:after{background:linear-gradient(0deg,#062534f5,transparent)}.landing-steps{grid-template-columns:1fr;gap:4px}.landing-steps li{position:relative;padding:25px 0 24px 60px}.landing-steps li>span{position:absolute;left:0;top:23px;font-size:35px}.landing-steps h3{margin:0 0 10px;font-size:23px}.landing-steps p{max-width:none;font-size:13px}.landing-together{grid-template-columns:1fr}.landing-together>div{padding:44px 22px}.landing-together>img{height:245px;order:-1}.landing-faq{grid-template-columns:1fr}.landing-faq summary{font-size:14px}.landing-faq p{font-size:13px}.landing-last{padding:49px 22px}.landing-last h2{font-size:35px}.landing-footer{flex-direction:column;align-items:flex-start;gap:17px;padding:30px 22px;font-size:10px}#landing-account{padding:23px 20px}#landing-account #auth-form{grid-template-columns:1fr}#landing-account .landing-account-heading h2{font-size:25px}#landing-account #auth-submit{min-height:50px}}
@media(prefers-reduced-motion:reduce){#home.landing{scroll-behavior:auto}.landing-primary{transition:none}.landing-primary:hover{transform:none}}

.landing .landing-primary{font-weight:950}.landing .landing-login{font-weight:850}

/* Keep the key art visible above the copy on narrow screens. */
@media(max-width:850px){.landing-hero{min-height:0;background:#0a2633}.landing-hero-image{height:420px;object-position:73% center}.landing-hero-shade{background:linear-gradient(0deg,#0a2633 0,#0a2633 27%,transparent 70%)}.landing-hero-content{padding-top:380px;padding-bottom:48px;max-width:100%}.landing #landing-title{margin-top:24px}.landing-hero-intro{max-width:550px}}
@media(max-width:580px){.landing-hero-image{height:310px;object-position:73% center}.landing-hero-shade{background:linear-gradient(0deg,#0a2633 0,#0a2633 55%,transparent 79%)}.landing-hero-content{padding-top:290px;padding-bottom:26px}.landing #landing-title{margin-top:24px;font-size:clamp(65px,17.9vw,100px)}.landing-hero-intro{font-size:15px}}

@media(min-width:851px){.landing-role-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.landing-role h3{font-size:28px}.landing-role>div{padding:22px 20px}}

.landing-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.landing-feature-grid article{padding:28px;border-radius:17px;background:#e4eee7}.landing-feature-grid article>span{display:block;font-size:29px;color:#397e71;margin-bottom:19px}.landing-feature-grid h3{font-size:23px;letter-spacing:-.035em;margin:0 0 13px}.landing-feature-grid p{font-size:14px;line-height:1.75;color:#536b71;margin:0}.landing-tunnel img{object-position:65% center}@media(max-width:850px){.landing-place-grid{grid-template-columns:1fr 1fr}.landing-place-grid .landing-place:last-child{grid-column:1/-1}.landing-feature-grid{gap:16px}.landing-feature-grid article{padding:22px 18px}.landing-feature-grid h3{font-size:20px}}@media(max-width:580px){.landing-place-grid,.landing-feature-grid{grid-template-columns:1fr}.landing-place-grid .landing-place:last-child{grid-column:auto}.landing-feature-grid article{padding:24px}.landing-feature-grid article>span{margin-bottom:12px}.landing-feature-grid h3{font-size:23px}}
