@import url('/assets/fonts.css');

:root{color-scheme:light;--paper:#fff;--ink:#272727;--muted:#5f5f5f;--soft:#f6f8f9}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Geist Variable',sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.page{max-width:1440px;min-height:100svh;margin:auto;padding:42px 64px 30px;display:flex;flex-direction:column;overflow:hidden}
header{display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:2}
.logo{width:138px;height:36px;display:block}
nav{display:flex;gap:6px;align-items:center}
nav a{font-size:14px;padding:11px 14px;border-radius:24px;line-height:1.3}
nav a:hover{background:var(--soft)}
nav a[aria-current=page]{background:var(--ink);color:white}
.header-actions{display:flex;align-items:center;gap:6px}
.login{font-size:14px;font-weight:500;line-height:1.3;padding:7px 16px;border:1px solid var(--ink);border-radius:24px;white-space:nowrap}
.login:hover{background:var(--soft)}
.lang{position:relative;margin-right:-14px}
.lang summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:7px;font-size:14px;font-weight:500;line-height:1.3;padding:7px 13px;border:1px solid transparent;border-radius:24px;user-select:none}
.lang summary::-webkit-details-marker{display:none}
.lang summary:hover,.lang[open] summary{background:var(--soft);border-color:#d5d8dc}
.lang summary:focus-visible{outline:2px solid var(--ink);outline-offset:0}
.lang summary::after{content:'';width:6px;height:6px;border-right:1.5px solid;border-bottom:1.5px solid;transform:translateY(-2px) rotate(45deg)}
.lang[open] summary::after{transform:translateY(2px) rotate(-135deg)}
.lang nav{position:absolute;right:0;top:calc(100% + 8px);flex-direction:column;align-items:stretch;gap:2px;min-width:160px;padding:6px;background:var(--paper);border:1px solid #e7e9ec;border-radius:18px;box-shadow:0 12px 32px rgba(39,39,39,.1);z-index:10}
.lang nav a{padding:10px 14px;border-radius:12px;font-size:14px}
.lang nav a[aria-current=page]{background:var(--soft);color:var(--ink);font-weight:600}
main{flex:1;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;min-height:630px;gap:24px;padding:72px 0 88px}
.copy{position:relative;z-index:1;max-width:670px}
h1{font-size:clamp(52px,5.1vw,74px);line-height:1.04;font-weight:530;letter-spacing:-.055em;margin:0 0 28px;text-wrap:balance}
.intro{font-size:21px;line-height:1.55;font-weight:350;color:var(--muted);max-width:470px;margin:0}
.launch{margin:32px 0 0;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:15px 24px;border-radius:999px;background:var(--ink);color:#fff;font-size:16px;font-weight:600;line-height:1.3}
.launch:hover{background:#414141}
.art{margin:0;min-width:0;display:grid;place-items:center}
.hero-art{width:100%;max-width:580px;height:auto;display:block;object-fit:contain;user-select:none}
footer{display:flex;justify-content:space-between;gap:24px;font-size:13px;line-height:1.5;color:var(--muted)}
footer p{margin:0}
.legal-links{flex-wrap:wrap;gap:12px}.legal-links a{padding:0;font-size:inherit;border-radius:0;text-decoration:underline;text-underline-offset:3px}
.legal-document{display:block;min-height:0;max-width:760px;width:100%;margin:0 auto;padding:72px 0;line-height:1.7;overflow-wrap:anywhere}
.legal-document h1{font-size:clamp(36px,6vw,54px);letter-spacing:-.035em;margin-bottom:12px}
.legal-document h2{font-size:23px;line-height:1.35;letter-spacing:-.02em;margin:40px 0 12px}
.legal-document p,.legal-document ul{margin:16px 0}.legal-document li{margin:8px 0}.legal-document ul{padding-left:24px}
.legal-document a{text-decoration:underline;text-underline-offset:3px}.legal-date{color:var(--muted);font-size:14px}
@media(max-width:900px){footer{flex-wrap:wrap}.legal-links{order:3;width:100%}}
.error{display:block;min-height:70vh;max-width:780px;padding-top:120px}.error a{text-decoration:underline;text-underline-offset:4px}
@media(min-width:1600px){main{min-height:720px}}
@media(max-width:1050px){.page{padding:32px}main{min-height:620px}h1{font-size:60px}.intro{font-size:19px}}
@media(min-width:741px) and (max-height:880px){
  .home-main{min-height:0;padding-block:clamp(24px,4vh,72px)}
  .hero-art{max-height:clamp(220px,calc(100svh - 220px),580px)}
}
@media(max-width:740px){
  .page{padding:25px 24px 24px}header{gap:16px;padding-top:5px}.logo{width:115px;height:30px}
  nav{gap:0}nav a{padding:11px 9px;font-size:12px}
  .header-actions{gap:2px}.login{font-size:13px;padding:6px 14px}.lang summary{font-size:13px;padding:6px 11px}.lang{margin-right:-12px}
  main{grid-template-columns:1fr;gap:12px;padding:65px 0 44px;min-height:0}
  h1{font-size:clamp(42px,9.5vw,64px);letter-spacing:-.047em;max-width:600px;margin-bottom:23px}
  .intro{font-size:18px;max-width:520px}.launch{margin-top:24px;font-size:14px}
  .art{width:100%;max-width:400px;margin:10px auto 0}.hero-art{width:100%}
  footer{font-size:12px;gap:16px}
  .error{padding-top:80px}
  .legal-document h1{font-size:clamp(28px,8.4vw,36px);hyphens:auto}
}
@media(max-width:360px){.page{padding-left:18px;padding-right:18px}.logo{width:98px}nav a{padding:10px 7px}h1{font-size:40px}}
.nowrap{white-space:nowrap}
