:root{--ink:#06282b;--deep:#031e21;--paper:#e8f6f2;--mint:#91e6dc;--text:#edf7f5;--muted:#b8cecd;--line:rgba(137,215,209,.28);--container:1280px;color-scheme:light;font-family:Arial,Helvetica,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--deep);color:var(--text);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}svg{display:block}button:focus-visible,a:focus-visible{outline:2px solid #22a89f;outline-offset:6px}.container{width:min(var(--container),calc(100% - 112px));margin-inline:auto}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.skip-link{position:fixed;z-index:100;top:10px;left:10px;padding:10px 20px;background:var(--mint);color:var(--ink);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{position:absolute;inset:0 0 auto;z-index:30;color:var(--ink);height:96px;background:linear-gradient(180deg,#ecf9f5e8,#ecf9f59c 65%,#ecf9f500)}.header-inner{display:flex;align-items:center;height:100%;gap:34px}.brand{display:inline-flex;align-items:center;gap:16px;white-space:nowrap}.brand span{font-size:18px;font-weight:700;letter-spacing:.2em}.brand-mark{width:44px;height:40px;fill:currentColor}.desktop-nav{display:flex;gap:32px;align-items:center;margin-left:auto;font-size:14px}.desktop-nav a{position:relative;padding-block:10px}.desktop-nav a:after{content:"";position:absolute;bottom:3px;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}.desktop-nav a:hover:after{transform:scaleX(1)}.header-contact{font-size:14px;padding:12px 19px;border:1px solid #31565a;display:flex;gap:20px;align-items:center;transition:background .2s,color .2s}.header-contact .icon{width:16px;height:16px}.header-contact:hover{background:var(--ink);color:var(--paper)}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.hero{position:relative;isolation:isolate;background:#ddf2ef;color:var(--ink);min-height:810px;overflow:hidden;display:flex;align-items:center}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;z-index:-3}.hero-veil{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(235,249,244,.97) 0%,rgba(232,248,243,.93) 23%,rgba(228,246,241,.65) 45%,rgba(223,245,240,0) 70%)}.hero-content{padding-block:157px 92px}.eyebrow,.section-label{margin:0 0 20px;font-size:12px;line-height:1.5;letter-spacing:.19em;text-transform:uppercase;font-weight:600}.eyebrow{color:#466f75;letter-spacing:.23em;margin-bottom:22px}.eyebrow span{margin-inline:9px;color:#698e91}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,4.75vw,72px);line-height:1.02;font-weight:700;letter-spacing:-.053em;margin-bottom:24px;max-width:880px}h2{font-size:clamp(34px,3.55vw,52px);line-height:1.04;letter-spacing:-.035em;font-weight:600;margin-bottom:18px}h3{font-size:23px;line-height:1.15;font-weight:600;letter-spacing:-.025em;margin-bottom:13px}.hero-lead,.hero-description{max-width:520px;font-size:17px;line-height:1.4;letter-spacing:-.012em;margin-bottom:16px}.hero-description{max-width:540px}.hero-actions{display:flex;gap:32px;align-items:center;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 22px;min-height:50px;border:1px solid transparent;font-size:16px;font-weight:600;line-height:1.25;transition:background .2s,color .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:#f3fffc}.button-dark:hover{background:#14474c}.button-mint{background:var(--mint);color:var(--ink);min-width:188px}.button-mint:hover{background:#bdfff4}.text-link{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.6}.text-link:before{display:none}.text-link:hover{color:#13867f}.text-link{border-bottom:1px solid #638285;padding-bottom:3px}.text-link .icon{width:18px;height:18px}.vertical-note{position:absolute;right:56px;top:155px;font-size:12px;line-height:2.7;letter-spacing:.32em;text-transform:uppercase;padding-left:26px;border-left:1px solid #64898a;color:#224e52}.hero-scroll{position:absolute;right:56px;bottom:32px;display:flex;align-items:center;gap:25px;color:#d3f3ee;font-size:12px;letter-spacing:.08em;text-shadow:0 1px 4px #012f33}.hero-scroll span:last-child{font-size:22px}.dark-world{position:relative;isolation:isolate;background:radial-gradient(ellipse at 12% 38%,#0c3a3c99,transparent 38%),radial-gradient(ellipse at 95% 28%,#0a3d4166,transparent 36%),#031e21}.dark-world:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(90deg,transparent 98.5%,#5eacac0b 98.5%),linear-gradient(0deg,transparent 98.5%,#5eacac0b 98.5%);background-size:97px 97px;mask-image:linear-gradient(90deg,transparent 35%,black)}.section{padding-block:60px;border-bottom:1px solid var(--line);scroll-margin-top:0}.section-label{color:var(--mint);letter-spacing:.12em;margin-bottom:17px}.section-label span{margin-inline:9px;color:#64a4a5}.section-intro{font-size:18px;line-height:1.4;letter-spacing:-.008em;color:#d0e2df;margin-bottom:30px;max-width:1050px}.world-preview{margin:0}.world-image{position:relative;border:1px solid #80b7b484;overflow:hidden;background:#143a3e}.world-image img{width:100%;height:300px;object-fit:cover;transition:transform 1.2s ease;object-position:50% 53%}.world-image:hover img{transform:scale(1.025)}.image-label{position:absolute;right:15px;top:13px;padding:5px 9px;background:#05272cb3;color:#dbf4ef;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.image-label span{margin:0 6px}figcaption{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:15px}figcaption>span:first-child{font-size:28px;letter-spacing:-.025em}.availability{font-size:13px;color:#c3dcda;display:flex;align-items:center;gap:20px}.availability:before{content:"";display:block;width:42px;height:1px;background:#8bb8b4}.tech-grid{margin-top:35px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.tech-item{display:grid;grid-template-columns:38% 1fr;gap:25px;padding:28px 30px 30px 0;align-items:center;border-bottom:1px solid var(--line)}.tech-item:nth-child(even){border-left:1px solid var(--line);padding:28px 0 30px 30px}.tech-item:nth-last-child(-n+2){border-bottom:0;padding-bottom:0}.tech-item p{font-size:16px;line-height:1.45;color:#c9ddda;max-width:360px;margin-bottom:0}.tech-diagram{aspect-ratio:1.1;display:grid;place-items:center}.tech-diagram svg{width:100%;max-width:230px;overflow:visible;fill:none;stroke-width:1}.diagram-grid{stroke:#378785;opacity:.24;stroke-width:.7}.diagram-main{stroke:#b1ddd9;stroke-width:1.1}.diagram-fill{fill:#649a9d20}.diagram-accent{fill:#77e3d950;stroke:#9cffef}.trajectory{stroke:#96eadd;stroke-dasharray:2.3 3}.technology-section{padding-bottom:45px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:30px}.side-note{font-size:12px;color:#83c2bf;line-height:2.5;letter-spacing:.27em;text-transform:uppercase;border-left:1px solid #5b9f9c;padding-left:30px;margin:0 8px 12px 0;min-width:148px}.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:21px}.principle{padding-right:30px;border-right:1px solid var(--line)}.principle:last-child{padding-right:0;border-right:0}.principle-number{font-size:38px;color:var(--mint);letter-spacing:-.045em;display:flex;align-items:center;gap:22px;margin-bottom:5px;line-height:1.3}.principle-number span{height:1px;flex:1;background:linear-gradient(90deg,#76bab4,transparent)}.principle h3{font-size:24px;margin-bottom:14px}.principle p{color:#c9ddda;font-size:16px;line-height:1.5;margin:0}.approach-source{margin:30px 0 0;font-size:12px;color:#92b6b3;line-height:1.6;max-width:850px}.platforms-section{color:var(--ink);background:radial-gradient(ellipse at 97% 10%,#b9e8e3 0,transparent 40%),#e9f8f3;position:relative}.platforms-section .section-label{color:#218e8b}.platforms-section h2{font-size:clamp(34px,3.3vw,48px)}.platforms-section .section-intro{color:#375c62}.platforms-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px;gap:42px}.platforms-grid article{border-right:1px solid #99c1bd8c;padding-right:42px}.platforms-grid article:last-child{border-right:0;padding-right:0}.platform-icon{height:69px;width:auto;max-width:110px;stroke:#143e44;stroke-width:1.8;margin-bottom:16px}.platforms-grid h3{font-size:24px;margin-bottom:10px}.platforms-grid p{font-size:16px;line-height:1.45;margin-bottom:20px;color:#3b6065}.platform-tag{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:#3d7f7e}.contact-section{position:relative;isolation:isolate;overflow:hidden;border:0;padding-bottom:24px}.contact-art{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:center 64%;filter:brightness(.62) saturate(.85)}.contact-section:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#021d22 3%,#021d22ee 36%,#04282f66 72%,#021d2277),linear-gradient(0deg,#021d2277,transparent)}.contact-content>p:not(.section-label){font-size:16px;line-height:1.5;color:#c7dddd;margin-bottom:21px}.contact-content h2{max-width:770px;font-size:clamp(36px,3.6vw,54px)}.contact-content .contact-caption{font-size:12px;letter-spacing:.06em;color:#a0c5c0;margin:14px 0 32px}.site-footer{border-top:1px solid #7ca7a47d;display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:23px;position:relative;padding-bottom:35px}.site-footer .brand-mark{width:32px;height:29px}.site-footer .brand span{font-size:13px;letter-spacing:.19em}.site-footer .brand{gap:14px}.footer-right{display:flex;gap:20px;color:#c7dbd9;font-size:13px}.footer-right span+span{border-left:1px solid #70938f;padding-left:20px}.footer-signature{position:absolute;right:0;bottom:0;margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.24em;color:#9dc0bf}.contact-dialog{background:#e9f8f3;color:var(--ink);padding:48px;border:1px solid #98c9c2;max-width:520px;width:calc(100% - 32px)}.contact-dialog::backdrop{background:#001619c9;backdrop-filter:blur(6px)}.contact-dialog .section-label{color:#367c7b;font-size:12px;margin-bottom:20px}.contact-dialog h2{font-size:36px;margin-bottom:20px}.contact-dialog p{font-size:16px;line-height:1.55}.contact-dialog .dialog-note{font-size:12px;color:#476e71;margin-bottom:26px}.dialog-close{position:absolute;right:12px;top:8px;width:36px;height:36px;border:0;background:none;color:var(--ink);font-size:30px}.contact-dialog .button{width:100%;margin-top:3px}
@media(min-width:1600px){.hero{min-height:900px}.hero-art{object-position:center 50%}.hero-content{padding-top:180px}.hero-veil{background:linear-gradient(90deg,#ebf9f4fa 0%,#e8f8f3e8 24%,#e4f6f1a1 42%,transparent 68%)}}
@media(max-width:1150px){.container{width:calc(100% - 72px)}.header-inner{gap:25px}.desktop-nav{gap:23px}.brand span{font-size:15px}.brand-mark{width:35px;height:32px}.hero{min-height:760px}.hero-content{padding-top:140px}.hero-lead,.hero-description{max-width:470px}.vertical-note{right:36px}.hero-scroll{right:36px}.hero-veil{background:linear-gradient(90deg,#ebf9f4fa 0%,#e8f8f3eb 27%,#e4f6f1aa 46%,transparent 80%)}.tech-item{gap:19px;padding-right:25px;grid-template-columns:33% 1fr}.tech-item:nth-child(even){padding-left:25px}.tech-item h3{font-size:22px}.availability{max-width:280px;font-size:12px}.availability:before{width:25px;flex-shrink:0}.platforms-grid{gap:28px}.platforms-grid article{padding-right:28px}}
@media(max-width:900px){.container{width:calc(100% - 56px)}.desktop-nav{gap:20px}.header-inner{gap:20px}.header-contact{display:none}.hero{min-height:790px}.hero-art{object-position:60% center}.hero h1{font-size:58px}.hero-lead,.hero-description{max-width:450px}.vertical-note{display:none}.hero-actions{gap:25px}.tech-grid{gap:0}.tech-item,.tech-item:nth-child(even){grid-template-columns:1fr;gap:15px;align-items:start;padding-top:22px}.tech-diagram{aspect-ratio:auto;height:145px;justify-content:start}.tech-diagram svg{height:150px;width:180px}.tech-item h3 br{display:none}.tech-item:nth-last-child(-n+2){padding-top:28px}.section{padding-block:48px}.world-image img{height:260px}figcaption>span:first-child{font-size:24px}.availability{max-width:230px}.section-intro{font-size:17px}.principles-grid{gap:23px}.principle{padding-right:23px}.principle h3{font-size:22px}.platforms-grid{gap:23px}.platforms-grid article{padding-right:23px}.platforms-grid h3{font-size:22px}.side-note{min-width:125px}.hero-scroll{display:none}}
@media(max-width:680px){html{scroll-padding-top:20px}.container{width:calc(100% - 40px)}.site-header{height:80px}.header-inner{justify-content:space-between}.brand{gap:12px}.brand span{font-size:14px;letter-spacing:.17em}.brand-mark{width:31px;height:29px}.desktop-nav{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;align-items:center;width:44px;height:44px;border:1px solid #3a656566;background:#e7f7f166;color:var(--ink)}.menu-toggle span{width:19px;height:1px;background:currentColor;transition:transform .2s}.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)}.mobile-nav{position:absolute;top:79px;left:0;right:0;height:calc(100dvh - 79px);background:#e9f8f3;padding:25px 25px 60px;display:flex;flex-direction:column;gap:0;overflow:auto}.mobile-nav a{font-size:30px;line-height:1.3;padding:20px 0;border-bottom:1px solid #aac9c5}.site-header:has(.menu-toggle[aria-expanded=true]){background:#e9f8f3}.hero{min-height:910px;align-items:flex-start}.hero-content{padding-block:118px 320px}.eyebrow{font-size:12px;letter-spacing:.18em;margin-bottom:20px}.eyebrow span{margin-inline:5px}.hero h1{font-size:clamp(37px,8.6vw,56px);line-height:1.04;letter-spacing:-.052em;margin-bottom:24px}.hero-lead,.hero-description{font-size:16px;max-width:470px;line-height:1.45;margin-bottom:14px}.hero-actions{flex-direction:column;align-items:flex-start;gap:19px;margin-top:25px}.button{font-size:15px;min-height:48px;padding:13px 20px}.text-link{font-size:14px}.hero-art{height:57%;top:auto;bottom:0;object-position:66% 58%}.hero-veil{background:linear-gradient(180deg,#eaf8f4 0%,#eaf8f4 45%,#eaf8f4f0 51%,#eaf8f466 68%,transparent 83%)}h2{font-size:35px;line-height:1.06;letter-spacing:-.04em}.section-label{font-size:12px;margin-bottom:16px}.section{padding-block:38px}.section-intro{font-size:16px;line-height:1.5;margin-bottom:22px}.desktop-break{display:none}.world-image img{height:235px;object-position:60% center}.image-label{font-size:12px;left:9px;right:auto;top:9px;padding:5px 7px;letter-spacing:.06em}figcaption{flex-direction:column;align-items:flex-start;gap:10px;margin-top:15px}figcaption>span:first-child{font-size:22px;line-height:1.2}.availability{max-width:none;font-size:12px;gap:12px}.availability:before{width:26px}.tech-grid{grid-template-columns:1fr;margin-top:28px}.tech-item,.tech-item:nth-child(even),.tech-item:nth-last-child(-n+2){display:grid;grid-template-columns:115px 1fr;gap:17px;padding:26px 0;border:0;border-bottom:1px solid var(--line)}.tech-item:last-child{border-bottom:0;padding-bottom:0}.tech-diagram{height:130px;margin-top:3px}.tech-diagram svg{width:115px;height:120px}.tech-item h3{font-size:21px;line-height:1.15;margin-bottom:10px}.tech-item h3 br{display:none}.tech-item p{font-size:15px;line-height:1.45}.section-heading{display:block}.side-note{display:none}.principles-grid{grid-template-columns:1fr;gap:25px;margin-top:23px}.principle{padding:0 0 25px;border-right:0;border-bottom:1px solid var(--line)}.principle:last-child{padding-bottom:0;border-bottom:0}.principle-number{font-size:35px;margin-bottom:8px;gap:20px}.principle h3{font-size:24px;margin-bottom:11px}.principle p{font-size:16px}.approach-source{font-size:12px;margin-top:25px}.platforms-section h2{font-size:35px}.platforms-grid{grid-template-columns:1fr;gap:25px;margin-top:25px}.platforms-grid article{position:relative;border-right:0;border-bottom:1px solid #99c1bd8c;padding:0 0 25px 104px;min-height:130px}.platforms-grid article:last-child{padding:0 0 0 104px;border:0}.platform-icon{position:absolute;left:0;top:2px;width:78px;height:58px;margin:0}.platforms-grid h3{font-size:23px}.platforms-grid p{font-size:16px;margin-bottom:14px}.platform-tag{font-size:12px}.contact-content h2{font-size:35px}.contact-content>p:not(.section-label){font-size:15px;line-height:1.5}.contact-art{object-position:65% center}.contact-section:before{background:linear-gradient(90deg,#021d22fa,#021d22db 60%,#021d2299)}.contact-content .contact-caption{font-size:12px}.site-footer{flex-wrap:wrap;gap:20px;padding-top:22px;padding-bottom:29px;margin-top:20px}.site-footer .brand span{font-size:12px}.site-footer .brand-mark{width:27px;height:26px}.footer-right{font-size:12px;gap:13px;flex-basis:100%}.footer-right span+span{padding-left:13px}.footer-signature{left:0;right:auto;font-size:12px}.contact-dialog{padding:42px 25px 28px}.contact-dialog h2{font-size:32px}}
@media(max-width:370px){.container{width:calc(100% - 32px)}.brand span{font-size:12px}.hero h1{font-size:35px}.eyebrow{font-size:12px}.hero{min-height:980px}.hero-content{padding-bottom:330px}.tech-item,.tech-item:nth-child(even),.tech-item:nth-last-child(-n+2){grid-template-columns:85px 1fr;gap:14px}.tech-diagram svg{width:85px}.tech-item h3{font-size:20px}.platforms-grid article,.platforms-grid article:last-child{padding-left:88px}.platform-icon{width:65px}h2,.platforms-section h2,.contact-content h2{font-size:31px}}

/* Full-screen sections on desktops and larger tablets; content may grow naturally. */
@media (min-width: 768px) {
  html { scroll-padding-top: 0; }
  .hero,
  .section.games-section,
  .section.technology-section,
  .section.approach-section,
  .section.platforms-section,
  .section.contact-section {
    min-height: 100vh;
    min-height: 100dvh;
  }

  .section.games-section,
  .section.technology-section,
  .section.approach-section,
  .section.platforms-section,
  .section.contact-section {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
