/* SPDX-License-Identifier: MIT */
@layer reset, base, layout, components, responsive;
@layer reset {
  *, *::before, *::after { box-sizing: border-box; }
  body, h1, h2, h3, p { margin: 0; }
  button, input { font: inherit; }
  button, a, input { -webkit-tap-highlight-color: transparent; }
  button { cursor: pointer; }
  a { color: inherit; text-decoration: none; }
  button { color: inherit; }
  img, svg, canvas { display: block; }
  button { border: 0; background: none; }
}
@layer base {
  :root { color-scheme: light; --paper:#f3f3e9; --ink:#253e31; --muted:#647064; --line:#d5d9ca; --surface:#fafbf5; --accent:#d1df9d; --green:#416343; --soft:#e9eddf; --forest:#213e32; --font: 'Segoe UI Variable', 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif; --mono: 'Cascadia Code', Consolas, monospace; }
  :root[data-theme='dark'] { color-scheme:dark; --paper:#192a24; --ink:#e2e9d6; --muted:#abbba7; --line:#3b5043; --surface:#23372d; --accent:#d1df9d; --green:#b8cf8e; --soft:#2c4134; --forest:#14251e; }
  html { scroll-behavior:smooth; scroll-padding-top:100px; }
  body { background:var(--paper); color:var(--ink); font-family:var(--font); font-size:15px; line-height:1.7; -webkit-font-smoothing:antialiased; }
  ::selection { background:#c3d78f; color:#203d2d; }
  :focus-visible { outline:2px solid var(--green); outline-offset:5px; }
  .icon { width:20px; height:20px; flex:none; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
  .mono, .edition, .section-index, .terrain-topline, .terrain-foot, .scroll-cue, .tag, kbd { font-family:var(--mono); font-size:11px; letter-spacing:.035em; }
  .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
  .skip-link { position:fixed; top:8px; left:8px; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); background:var(--ink); color:var(--paper); z-index:100; }
  .skip-link:focus { width:auto; height:auto; padding:8px 20px; clip-path:none; }
  h1, h2, h3 { font-weight:550; }
  h1 { font-size:clamp(42px,5.1vw,76px); letter-spacing:-.065em; line-height:1.28; }
  h2 { font-size:clamp(32px,3.6vw,52px); letter-spacing:-.055em; line-height:1.3; }
  h3 { font-size:21px; letter-spacing:-.025em; }
  p { text-wrap:pretty; }
  button, a { touch-action:manipulation; }
  .button { display:inline-flex; align-items:center; justify-content:center; gap:28px; padding:15px 23px; background:var(--ink); color:var(--paper); border:1px solid transparent; border-radius:5px; font-size:14px; font-weight:550; white-space:nowrap; transition:background .2s, transform .2s; }
  .button:hover { background:var(--green); transform:translateY(-2px); }
  .button.small { padding:9px 16px; gap:16px; font-size:13px; }
  .text-link { display:inline-flex; align-items:center; gap:12px; font-size:14px; padding:8px 0; }
  .text-link:hover .icon, a:hover > .icon { transform:translate(2px,-2px); }
  .icon { transition:transform .2s; }
  .icon-button { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; }
  .icon-button:hover { background:var(--soft); }
  .status-dot { display:inline-block; height:6px; width:6px; border-radius:50%; background:#739562; flex:none; }
  .tag { display:inline-block; border:1px solid var(--line); border-radius:3px; padding:1px 7px; font-size:10px; vertical-align:middle; font-weight:400; }
  .section-index { letter-spacing:.1em; margin-bottom:22px; color:var(--muted); }
}
@layer layout {
  .site-header, .hero, .section, .site-footer { width:min(1360px, calc(100% - 112px)); margin-inline:auto; }
  .site-header { height:94px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); gap:24px; }
  .brand { display:flex; align-items:center; gap:11px; }
  .brand > span { font-size:25px; letter-spacing:-1.2px; font-weight:750; display:flex; align-items:center; gap:14px; }
  .brand-cn { font-size:12px; letter-spacing:1px; font-weight:450; border-left:1px solid var(--line); padding-left:14px; }
  .site-header nav { display:flex; gap:32px; font-size:13px; margin-left:auto; margin-right:32px; }
  .site-header nav a { display:flex; gap:3px; align-items:center; }
  .site-header nav .icon { width:14px; height:14px; }
  .site-header nav a:hover { color:var(--green); }
  .header-actions { display:flex; align-items:center; gap:8px; }
  .language { font-family:var(--mono); font-size:12px; padding:10px; }
  .hero { min-height:710px; display:grid; grid-template-columns:1fr 1.13fr; position:relative; align-items:center; }
  .hero-copy { min-width:0; padding-top:30px; padding-bottom:70px; position:relative; z-index:1; }
  .edition { display:flex; align-items:center; gap:10px; font-size:10px; letter-spacing:.08em; margin-bottom:35px; white-space:nowrap; }
  .edition-line { width:24px; height:1px; background:var(--line); }
  .quiet { color:var(--green); }
  .title-square { display:inline-block; width:10px; height:10px; background:var(--accent); border:1px solid #a4b478; margin-left:14px; vertical-align:middle; transform:rotate(-12deg); }
  .hero-intro { margin-top:27px; color:var(--muted); font-size:16px; line-height:1.9; }
  .hero-actions { display:flex; gap:28px; align-items:center; margin-top:32px; }
  .hero-note { font-size:11px; color:var(--muted); margin-top:26px; letter-spacing:.03em; }
  .hero-bottom { position:absolute; bottom:0; display:flex; align-items:center; justify-content:space-between; width:100%; border-top:1px solid var(--line); padding:23px 0; font-size:11px; color:var(--muted); }
  .scroll-cue { display:flex; align-items:center; gap:20px; font-size:9px; }
  .scroll-cue .icon { width:15px; height:15px; }
  .section { padding-block:106px; }
  .section-heading { display:flex; justify-content:space-between; gap:40px; align-items:flex-end; margin-bottom:48px; }
  .section-aside { color:var(--muted); padding-bottom:5px; font-size:14px; line-height:1.9; max-width:330px; }
  .experience-layout { display:grid; grid-template-columns:.7fr 1.3fr; gap:65px; align-items:center; }
  .under-the-hood { margin-top:44px; padding-top:26px; border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:18px; color:var(--muted); font-size:12px; }
  .under-the-hood > span { display:flex; align-items:center; gap:10px; }
  .under-the-hood .icon { width:17px; height:17px; }
  .workshop { background:var(--forest); color:#e4edda; position:relative; }
  .workshop .section-index, .workshop .section-aside { color:#acbba7; }
  .workshop .section { padding-block:86px 36px; }
  .workshop a:hover { color:#d1df9d; }
  .workshop-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:30px; font-size:12px; color:#c0cdba; }
  .workshop-bottom > *, .workshop-bottom a { display:flex; align-items:center; gap:10px; }
  .workshop-bottom .icon { width:17px; height:17px; }
  .principle-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:48px; }
  .principle-grid article { border-top:1px solid var(--line); padding-top:24px; }
  .principle-grid article > .icon { margin-bottom:27px; width:26px; height:26px; }
  .principle-grid p { color:var(--muted); margin-top:14px; font-size:14px; max-width:330px; line-height:1.9; }
  .large-asterisk { font-size:110px; font-family:Georgia,serif; line-height:1; color:#b8c799; }
  .mesh-note { margin-top:65px; border-block:1px solid var(--line); display:flex; align-items:center; gap:28px; padding:28px 0; }
  .mesh-note h3 { font-size:17px; display:flex; align-items:center; gap:10px; }
  .mesh-note p { color:var(--muted); font-size:13px; margin-top:5px; }
  .mesh-note > a { margin-left:auto; flex:none; }
  .mesh-diagram { display:flex; align-items:center; width:110px; flex:none; }
  .mesh-diagram span { width:14px; height:14px; border:1px solid var(--green); transform:rotate(45deg); }
  .mesh-diagram span:nth-of-type(2) { background:var(--accent); width:20px; height:20px; }
  .mesh-diagram i { flex:1; border-top:1px dashed var(--muted); }
  .closing { padding-top:8px; padding-bottom:0; overflow:hidden; }
  .closing-row { display:flex; align-items:center; justify-content:space-between; }
  .closing-row h2 { font-size:clamp(40px,5vw,70px); }
  .closing-row p { font-size:12px; color:var(--muted); margin-top:18px; }
  .wordmark { font-size:clamp(90px,24vw,350px); letter-spacing:-.09em; font-weight:800; line-height:1; margin-top:52px; margin-left:-.035em; color:var(--ink); display:flex; justify-content:space-between; user-select:none; }
  .wordmark span { font-size:.58em; line-height:1.55; font-weight:300; color:var(--green); }
  .site-footer { display:flex; justify-content:space-between; gap:30px; padding-block:40px; border-top:1px solid var(--line); }
  .site-footer p { color:var(--muted); font-size:11px; margin-top:8px; }
  .footer-brand > span { font-size:13px; font-weight:500; letter-spacing:.02em; }
  .footer-links { display:grid; grid-template-columns:auto auto; gap:10px 24px; align-content:center; font-size:12px; }
  .footer-links span { font-family:var(--mono); font-size:10px; color:var(--muted); }
}
@layer components {
  .terrain-stage { position:relative; min-width:0; height:565px; margin-bottom:46px; }
  .terrain-grid { position:absolute; inset:7% 0 17%; background-image:radial-gradient(var(--muted) .6px,transparent .6px); background-size:22px 22px; opacity:.18; mask-image:radial-gradient(ellipse,black 20%,transparent 70%); }
  #terrain { width:100%; height:100%; position:relative; z-index:1; }
  .terrain-topline { position:absolute; inset:28px 8px auto 22px; display:flex; justify-content:space-between; font-size:9px; color:var(--muted); }
  .crosshair { font-size:24px; line-height:12px; }
  .terrain-label { position:absolute; z-index:2; top:93px; right:12px; font-size:11px; background:var(--surface); border:1px solid var(--line); padding:7px 12px; display:flex; align-items:center; gap:8px; transform:rotate(2deg); box-shadow:2px 3px 0 var(--line); pointer-events:none; }
  .terrain-controls { position:absolute; z-index:2; bottom:52px; left:50%; transform:translateX(-50%); display:flex; gap:8px; align-items:center; white-space:nowrap; }
  .biome-switch { display:flex; padding:4px; border:1px solid var(--line); border-radius:6px; background:var(--paper); }
  .biome-switch button { display:flex; gap:7px; align-items:center; padding:7px 10px; border-radius:3px; font-size:11px; }
  .biome-switch button[aria-pressed='true'] { background:var(--surface); box-shadow:0 1px 4px #243d2912; }
  .swatch { width:8px; height:8px; border-radius:2px; }
  .swatch.meadow { background:#7e9b60; }.swatch.autumn { background:#bf8153; }.swatch.snow { background:#bacfd0; }
  .terrain-foot { position:absolute; bottom:27px; width:100%; display:flex; justify-content:space-between; padding-inline:20px; font-size:9px; color:var(--muted); }
  .feature-tabs { display:grid; }
  .feature-tabs button { display:flex; width:100%; gap:18px; text-align:left; padding:24px 0; border-bottom:1px solid var(--line); align-items:center; opacity:.7; transition:opacity .2s; position:relative; }
  .feature-tabs button:first-child { border-top:1px solid var(--line); }
  .feature-tabs button[aria-selected='true'] { opacity:1; }
  .feature-tabs button[aria-selected='true']::before { content:''; position:absolute; left:-18px; width:4px; height:37px; background:var(--green); }
  .feature-tabs button:hover { opacity:1; }
  .feature-tabs strong { display:block; font-size:18px; font-weight:550; }
  .feature-tabs small { display:block; margin-top:5px; font-size:12px; color:var(--muted); }
  .feature-tabs .icon { margin-left:auto; width:17px; height:17px; opacity:0; }
  .feature-tabs [aria-selected='true'] .icon { opacity:1; }
  .tab-number { font:11px var(--mono); color:var(--muted); align-self:flex-start; padding-top:7px; }
  .product-window { border:1px solid var(--line); border-radius:10px; background:var(--surface); box-shadow:0 15px 45px #2836280b, 5px 5px 0 var(--soft); overflow:hidden; transform:rotate(-.6deg); }
  .window-chrome { padding:13px 20px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
  .window-brand { display:flex; align-items:center; gap:7px; font-weight:700; font-size:13px; letter-spacing:-.5px; }
  .demo-label { font-size:10px; color:var(--muted); border:1px solid var(--line); border-radius:3px; padding:1px 6px; }
  .window-dots { color:var(--muted); font-size:18px; letter-spacing:3px; line-height:1; }
  #product-content { min-height:320px; padding:25px; }
  .window-bottom { display:flex; justify-content:space-between; gap:8px; padding:10px 20px; border-top:1px solid var(--line); font-size:9px; color:var(--muted); }
  .window-bottom > span { display:flex; align-items:center; gap:5px; }
  kbd { font-size:9px; padding:0 3px; border:1px solid var(--line); border-radius:3px; }
  .demo-greeting { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:7px 14px; font-size:11px; color:var(--muted); margin-bottom:19px; }
  .demo-greeting strong { font-size:18px; font-weight:550; color:var(--ink); }
  .game-cover { background:#cee0b9; height:172px; border-radius:6px; position:relative; overflow:hidden; color:#203c29; }
  .cover-land { position:absolute; width:100%; height:100%; inset:0; }
  .game-caption { position:absolute; left:20px; bottom:20px; }
  .game-caption h3 { font-size:23px; font-weight:650; }
  .game-caption p { font-size:11px; margin-top:5px; }
  .demo-play { position:absolute; right:19px; bottom:22px; border-radius:4px; color:#f3f7e9; background:#264934; display:flex; align-items:center; gap:8px; padding:10px 16px; font-size:12px; }
  .demo-play .icon { width:14px; height:14px; }
  .mini-games { display:flex; gap:13px; margin-top:17px; }
  .mini-game { display:flex; align-items:center; gap:9px; flex:1; font-size:11px; }
  .mini-game small { font-size:9px; color:var(--muted); display:block; }
  .game-icon { width:35px; height:35px; display:grid; place-items:center; background:var(--soft); color:var(--green); border-radius:5px; }
  .game-icon .icon { width:20px; height:20px; }
  .mod-row { display:flex; align-items:center; gap:12px; padding:14px 0; border-bottom:1px solid var(--line); font-size:12px; }
  .mod-row small { display:block; color:var(--muted); font-size:10px; }
  .mod-status { margin-left:auto; font-size:10px; background:var(--soft); padding:3px 7px; border-radius:3px; }
  .demo-footnote { font-size:11px; color:var(--muted); margin-top:18px; display:flex; align-items:center; gap:8px; }
  .snapshot-row { display:flex; align-items:center; gap:15px; margin:20px 0; font-size:12px; }
  .snapshot-row > .icon { width:16px; height:16px; color:var(--green); }
  .snapshot-row small { color:var(--muted); display:block; font-size:10px; }
  .snapshot-row > span:last-child { margin-left:auto; font:11px var(--mono); color:var(--muted); }
  .tool-selector { display:flex; gap:28px; border-bottom:1px solid #52654c; }
  .tool-selector button { padding:15px 0; display:flex; gap:10px; align-items:center; color:#a9baa4; font-size:13px; border-bottom:2px solid transparent; margin-bottom:-1px; }
  .tool-selector button[aria-selected='true'] { color:#e5efcf; border-color:#cddd9a; }
  .tool-selector .icon { width:18px; height:18px; }
  .tool-panel { display:grid; grid-template-columns:1.12fr 1fr; min-height:365px; border-bottom:1px solid #52654c; }
  .tool-visual { min-height:365px; position:relative; border-right:1px solid #52654c; display:flex; align-items:center; justify-content:center; padding:30px; overflow:hidden; background-image:radial-gradient(#b0c28c26 .7px,transparent .7px); background-size:17px 17px; }
  .tool-copy { padding:45px 12px 38px 54px; display:flex; flex-direction:column; justify-content:center; }
  .tool-copy .section-index { font-size:10px; margin-bottom:15px; }
  .tool-copy h3 { font-size:29px; font-weight:500; letter-spacing:-.045em; }
  .tool-copy p { color:#acbea5; font-size:13px; line-height:1.9; margin-top:13px; max-width:350px; }
  .tool-copy .tag { border-color:#617153; color:#c3d3ad; margin-top:26px; align-self:flex-start; }
  #geometry-canvas { width:min(260px,100%); height:auto; aspect-ratio:1; }
  .visual-label { position:absolute; top:20px; left:22px; font:10px var(--mono); letter-spacing:.04em; color:#a9bfa0; }
  .visual-measure { position:absolute; right:22px; bottom:18px; font:10px var(--mono); color:#bccdaa; }
  .range-control { display:flex; align-items:center; gap:16px; margin-top:28px; font-size:12px; }
  .range-control input { min-width:0; width:150px; accent-color:#cddd9a; cursor:pointer; }
  .range-control output { font-family:var(--mono); color:#d9e8b1; }
  .compass-map { width:min(290px,100%); height:auto; aspect-ratio:300/280; transform:rotate(-5deg); border:5px solid #d6e0bf; background:#aebc7e; box-shadow:8px 10px 0 #12271e55; }
  .compass-map rect, .compass-map path { shape-rendering:crispEdges; }
  .compass-map .map-pin { fill:#233c2b; stroke:#f0f4d9; stroke-width:3; }
  .map-buttons { display:flex; gap:10px; flex-wrap:wrap; margin-top:23px; }
  .map-buttons button { border:1px solid #617655; color:#d6e4c6; border-radius:4px; font-size:12px; padding:7px 13px; }
  .map-buttons button[aria-pressed='true'] { background:#d5e1ae; border-color:#d5e1ae; color:#29402c; }
  .diagnosis { width:100%; max-width:350px; padding:22px; background:#1a3027; border:1px solid #52654c; font-size:12px; }
  .diagnosis header { display:flex; gap:8px; color:#dbe8bd; margin-bottom:22px; align-items:center; }
  .diagnosis ul { list-style:none; padding:0; margin:0; }
  .diagnosis li { padding:11px 0; border-top:1px solid #3b5340; display:flex; justify-content:space-between; gap:12px; }
  .diagnosis li span:last-child { color:#c4c8a1; font-family:var(--mono); font-size:11px; }
  .diagnosis .changed { color:#e9c48a; }.diagnosis .unchanged { color:#9eb394; }
  dialog { border:1px solid var(--line); background:var(--paper); color:var(--ink); border-radius:10px; width:min(480px,calc(100% - 32px)); padding:32px; box-shadow:0 24px 100px #15271d40; }
  dialog::backdrop { background:#14251d85; backdrop-filter:blur(5px); }
  .dialog-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:28px; }
  dialog h2 { font-size:30px; }
  dialog p:not(.section-index) { color:var(--muted); font-size:14px; margin-top:17px; }
  dialog .button { width:100%; margin-top:25px; }
  dialog > .text-link { display:flex; justify-content:center; margin-top:9px; }
  .reveal.visible { animation:arrive .55s ease both; }
  @keyframes arrive { from { opacity:.65; transform:translateY(14px); } to { opacity:1; transform:none; } }
  @media (prefers-reduced-motion:reduce) { *, *::before, *::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; } .reveal.pending { opacity:1; transform:none; } }
}
@layer responsive {
  @media(min-width:1600px) { .hero { min-height:780px; }.terrain-stage { height:630px; } }
  @media(max-width:1100px) {
    .site-header, .hero, .section, .site-footer { width:calc(100% - 64px); }
    .brand-cn { display:none; }.site-header nav { gap:22px; margin-right:12px; }
    .hero { min-height:650px; }.hero-copy { padding-bottom:65px; }.terrain-stage { height:490px; }
    h1 { font-size:clamp(38px,5.2vw,60px); }.edition { font-size:8px; gap:7px; }
    .terrain-label { top:65px; right:0; font-size:10px; }.terrain-topline { font-size:8px; }
    .experience-layout { gap:40px; grid-template-columns:.8fr 1.2fr; }
    .feature-tabs strong { font-size:16px; }.feature-tabs small { font-size:11px; }
    .feature-tabs button { gap:12px; }.under-the-hood > .mono { display:none; }
    .tool-copy { padding-left:34px; }.principle-grid { gap:28px; }
  }
  @media(max-width:760px) {
    .site-header, .hero, .section, .site-footer { width:calc(100% - 40px); }
    .site-header { height:76px; gap:12px; }.brand > span { font-size:23px; }.brand img { width:29px; height:29px; }.site-header nav { display:none; }.header-actions { gap:0; }.header-actions .button { margin-left:6px; padding:8px 12px; gap:8px; }
    .hero { grid-template-columns:1fr; min-height:0; }.hero-copy { padding:55px 0 0; }.edition { font-size:9px; margin-bottom:24px; }h1 { font-size:clamp(43px,8vw,62px); }.hero-intro { font-size:14px; margin-top:23px; }.hero-note { font-size:10px; margin-top:20px; }
    .hero-actions { margin-top:25px; }.terrain-stage { height:445px; width:100%; max-width:540px; margin:0 auto 68px; }.terrain-topline { top:25px; }.terrain-label { top:55px; }.terrain-controls { bottom:34px; }.terrain-foot { bottom:9px; }.hero-bottom { padding:19px 0; }.hero-bottom > .mono { display:none; }.scroll-cue { font-size:8px; gap:8px; }
    .section { padding-block:65px; }.section-heading { gap:20px; margin-bottom:32px; }.section-aside { font-size:12px; max-width:180px; }.section-index { font-size:9px; margin-bottom:16px; }
    .experience-layout { grid-template-columns:1fr; gap:30px; }.feature-tabs { display:flex; gap:18px; }.feature-tabs button { display:block; padding:14px 0; border-top:1px solid var(--line); }.feature-tabs button[aria-selected='true']::before { left:0; top:-1px; width:100%; height:2px; }.feature-tabs .tab-number { display:block; padding-top:0; margin-bottom:7px; }.feature-tabs .icon { display:none; }.feature-tabs strong { font-size:13px; }.feature-tabs small { font-size:10px; margin-top:5px; }
    .product-window { transform:none; }.game-caption { top:20px; bottom:auto; }.demo-play { bottom:16px; }.footer-brand > span { font-size:13px; letter-spacing:0; }.under-the-hood { flex-wrap:wrap; justify-content:flex-start; gap:14px 24px; font-size:11px; margin-top:30px; }
    .workshop .section { padding-block:60px 28px; }.tool-selector { gap:22px; }.tool-selector button { font-size:12px; gap:6px; }.tool-selector .icon { width:16px; height:16px; }.tool-panel { grid-template-columns:1fr; }.tool-visual { border-right:0; border-bottom:1px solid #52654c; min-height:325px; }.tool-copy { padding:28px 0 32px; }.tool-copy h3 { font-size:26px; }.tool-copy p { max-width:none; }.tool-copy .tag { margin-top:18px; }.range-control { margin-top:20px; }.workshop-bottom { font-size:10px; align-items:center; }.workshop-bottom > * { gap:6px; }
    .principle-grid { grid-template-columns:1fr; gap:28px; }.principle-grid article { display:grid; grid-template-columns:34px 1fr; column-gap:18px; padding-top:24px; }.principle-grid article > .icon { grid-row:1/3; margin-bottom:0; margin-top:3px; }.principle-grid h3 { font-size:19px; }.principle-grid p { margin-top:7px; font-size:13px; max-width:none; }.large-asterisk { font-size:75px; }.mesh-note { flex-wrap:wrap; gap:18px; margin-top:38px; }.mesh-diagram { width:75px; }.mesh-note > div:nth-child(2) { flex:1; }.mesh-note > a { margin-left:93px; font-size:12px; padding:0; }.mesh-note p { font-size:12px; }.closing { padding-top:5px; padding-bottom:0; }.closing-row h2 { font-size:36px; }.closing-row { gap:18px; }.closing-row .button { padding:12px 15px; gap:15px; }.closing-row p { font-size:10px; }.wordmark { font-size:25vw; margin-top:34px; }.site-footer { flex-direction:column; gap:24px; padding-block:30px; }.footer-links { grid-template-columns:repeat(2,1fr); font-size:11px; }.site-footer p { font-size:10px; }
    html[lang='en'] .section-heading { flex-direction:column; align-items:flex-start; }html[lang='en'] .section-aside { max-width:100%; }html[lang='en'] .feature-tabs strong { font-size:12px; }html[lang='en'] .feature-tabs small { display:none; }html[lang='en'] .closing-row { flex-wrap:wrap; }html[lang='en'] .terrain-label { font-size:9px; }
  }
  @media(max-width:380px) { .language { padding:8px 6px; }.header-actions .icon-button { width:32px; }.brand { gap:7px; }.brand > span { font-size:21px; }.brand img { width:26px; height:26px; }.header-actions .button { font-size:11px; }.hero-bottom > span { font-size:10px; }.tool-selector { gap:14px; }.tool-selector .icon { display:none; }.game-caption h3 { font-size:19px; }.demo-play { right:12px; padding:9px 11px; }.game-caption { left:14px; } }
  @media(max-width:600px) {
    .section-heading { flex-direction:column; align-items:flex-start; gap:20px; }.section-aside { max-width:100%; }.large-asterisk { display:none; }
    .feature-tabs button { align-content:start; }.feature-tabs strong { min-height:2.8em; }.feature-tabs small { display:none; }
    .closing-row { flex-direction:column; align-items:flex-start; gap:28px; }.closing-row > div { display:flex; align-items:center; gap:22px; }.closing-row p { margin-top:0; }.closing-row h2 { font-size:clamp(30px,8vw,40px); }
    .title-square { width:8px; height:8px; margin-left:7px; }.footer-brand > span { font-size:13px; }
  }
  @media(max-width:380px) {
    .hero { grid-template-columns:minmax(0,1fr); }.hero-actions { flex-wrap:wrap; gap:14px 20px; }.hero-actions .button { padding:13px 16px; gap:18px; }.hero-actions .text-link { font-size:12px; gap:7px; }
    .edition { font-size:8px; }.edition-line { width:15px; }.biome-switch button { font-size:10px; padding:7px 6px; }.terrain-controls { gap:3px; }.terrain-foot { padding-inline:0; font-size:8px; }
  }
}
