:root{color-scheme:dark;--bg:#090b10;--fg:#ecede8;--muted:#969ba5;--accent:#c9f782;--line:#24282e;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--fg)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.page{max-width:1680px;margin:auto;padding:calc(28px + env(safe-area-inset-top) + var(--tg-content-safe-area-inset-top,0px)) max(5vw,24px) calc(24px + env(safe-area-inset-bottom) + var(--tg-content-safe-area-inset-bottom,0px));min-height:100svh;display:flex;flex-direction:column}header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:36px}.wordmark{font-size:21px;font-weight:700;letter-spacing:-1px}.wordmark span{color:var(--accent);margin:0 5px}.header-note{font-size:13px;color:var(--muted)}.top-link{font-size:14px;border-bottom:1px solid #62686d;padding:7px 0}.top-link:hover{color:var(--accent)}main{position:relative;flex:1;display:grid;grid-template-columns:1fr 1.1fr;align-items:center;min-height:680px}.intro{z-index:1;padding:80px 0 130px;pointer-events:none}.intro a{pointer-events:auto}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:2px;color:var(--accent);margin:0 0 30px}h1{font-size:clamp(64px,8.7vw,136px);line-height:1.04;letter-spacing:-.07em;font-weight:500;margin:0 0 33px}h1 span{display:block;font-weight:400;color:#646b77}.subtitle{font-size:clamp(20px,2vw,28px);line-height:1.5;letter-spacing:-.02em;margin:0;color:#b0b5bc}.contact{display:inline-flex;align-items:center;gap:12px;margin-top:42px;min-height:48px;padding:12px 20px;border:1px solid #414a3d;border-radius:50px;background:#c9f7820a;font-size:15px;transition:background .2s,border-color .2s}.contact:hover{background:#c9f78218;border-color:var(--accent)}.handle{color:var(--muted)}.art{position:absolute;right:-2vw;top:4%;width:65%;height:84%;min-height:460px;overflow:hidden}canvas{display:block;width:100%;height:100%;touch-action:pan-y}.art-label,.art-caption{position:absolute;display:flex;gap:15px;color:var(--muted);font:12px monospace;pointer-events:none}.art-label{top:20px;right:6%;align-items:center}.cross{color:var(--accent);font-size:24px}.art-caption{bottom:12px;left:23%;right:6%;justify-content:space-between}.coordinates{color:#626b76}.controls{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;width:100%;position:absolute;bottom:32px;border-top:1px solid var(--line);padding-top:22px;gap:20px}.control-label{font-size:13px;color:var(--muted)}.buttons{display:flex;gap:12px}button{cursor:pointer;color:#c6c9cd;border:1px solid #30363d;background:transparent;border-radius:24px;padding:11px 17px;min-height:44px;font-size:14px;display:flex;align-items:center;gap:15px}button:hover{border-color:var(--accent);color:var(--accent)}button span{color:var(--accent);font-size:18px}footer{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#858d98;font-size:12px;padding-top:18px;border-top:1px solid var(--line)}.footer-mark{font-size:18px;color:var(--accent)}@media(min-width:1600px){main{min-height:780px}}@media(max-width:700px){.page{padding-left:24px;padding-right:24px}.header-note{display:none}main{display:flex;flex-direction:column;align-items:stretch;min-height:0}.intro{padding:60px 0 0}.eyebrow{font-size:11px;letter-spacing:1.5px;margin-bottom:24px}h1{font-size:clamp(62px,17vw,108px);margin-bottom:22px}h1 span{display:inline;color:#707887}.subtitle{font-size:20px}.contact{margin-top:24px}.art{position:relative;width:calc(100% + 48px);height:370px;min-height:0;right:auto;top:auto;margin:-15px -24px 0}.art-label{right:8%;top:24px}.art-caption{left:8%;right:8%;bottom:16px}.controls{position:relative;bottom:auto;flex-direction:column;align-items:flex-start;padding:20px 0 26px;gap:15px}.buttons{width:100%}.buttons button:first-child{flex:1;justify-content:space-between}footer{font-size:12px;align-items:flex-start}footer span:nth-child(2){max-width:145px;text-align:right;line-height:1.5}.footer-mark{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media(max-width:360px){h1{font-size:56px}.handle{font-size:13px}.buttons{gap:6px}button{padding:10px 12px}}
