@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url('/fonts/fraunces-latin-full-normal.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url('/fonts/fraunces-latin-ext-full-normal.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Nunito';font-style:normal;font-weight:200 1000;font-display:swap;src:url('/fonts/nunito-latin-wght-normal.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Nunito';font-style:normal;font-weight:200 1000;font-display:swap;src:url('/fonts/nunito-latin-ext-wght-normal.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Nunito';font-style:normal;font-weight:200 1000;font-display:swap;src:url('/fonts/nunito-cyrillic-wght-normal.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Nunito';font-style:normal;font-weight:200 1000;font-display:swap;src:url('/fonts/nunito-cyrillic-ext-wght-normal.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
:root{--bg:#f3ecdf;--surface:#fff9ee;--surface-2:#eae0cf;--text:#30271f;--muted:#706252;--border:#dcd0bb;--primary:#93482d;--tint:#f1decb;--on-primary:#ffffff;--steam:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%20900%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M-288%20180%20C%20403.20000000000005%20-18%2C%201036.8%20378%2C%201728%20180%22%20stroke%3D%22rgb(196%20132%2084%20%2F%200.13)%22%20stroke-width%3D%22144%22%20stroke-linecap%3D%22round%22%20fill%3D%22none%22%20opacity%3D%221%22%2F%3E%3Cpath%20d%3D%22M-288%20522%20C%20403.20000000000005%20684%2C%201036.8%20360%2C%201728%20522%22%20stroke%3D%22rgb(206%20140%20132%20%2F%200.12)%22%20stroke-width%3D%22180%22%20stroke-linecap%3D%22round%22%20fill%3D%22none%22%20opacity%3D%221%22%2F%3E%3Cpath%20d%3D%22M-288%20828%20C%20403.20000000000005%20693%2C%201036.8%20963%2C%201728%20828%22%20stroke%3D%22rgb(138%20156%20116%20%2F%200.12)%22%20stroke-width%3D%22162%22%20stroke-linecap%3D%22round%22%20fill%3D%22none%22%20opacity%3D%221%22%2F%3E%3C%2Fsvg%3E");--display:'Fraunces',Georgia,serif;--ui:'Nunito',system-ui,sans-serif;color-scheme:light dark}
@media (prefers-color-scheme:dark){:root{--bg:#211d19;--surface:#2b2620;--surface-2:#352e26;--text:#f4e9d5;--muted:#c4b6a2;--border:#4b4135;--primary:#f3b382;--tint:#4b3427;--on-primary:#241b15;--steam:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%20900%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M-288%20180%20C%20403.20000000000005%20-18%2C%201036.8%20378%2C%201728%20180%22%20stroke%3D%22rgb(246%20194%20138%20%2F%200.14)%22%20stroke-width%3D%22144%22%20stroke-linecap%3D%22round%22%20fill%3D%22none%22%20opacity%3D%221%22%2F%3E%3Cpath%20d%3D%22M-288%20522%20C%20403.20000000000005%20684%2C%201036.8%20360%2C%201728%20522%22%20stroke%3D%22rgb(240%20166%20156%20%2F%200.13)%22%20stroke-width%3D%22180%22%20stroke-linecap%3D%22round%22%20fill%3D%22none%22%20opacity%3D%221%22%2F%3E%3Cpath%20d%3D%22M-288%20828%20C%20403.20000000000005%20693%2C%201036.8%20963%2C%201728%20828%22%20stroke%3D%22rgb(196%20214%20168%20%2F%200.11)%22%20stroke-width%3D%22162%22%20stroke-linecap%3D%22round%22%20fill%3D%22none%22%20opacity%3D%221%22%2F%3E%3C%2Fsvg%3E")}}
:lang(ru){--display:Georgia,serif}
:lang(ja),:lang(ko),:lang(zh-Hans){--display:system-ui,sans-serif;--ui:system-ui,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;min-height:100dvh;background:var(--bg) var(--steam) center/cover fixed no-repeat;color:var(--text);font:17px/1.6 var(--ui);-webkit-font-smoothing:antialiased}
a{color:var(--primary);text-underline-offset:3px}
a:focus-visible,button:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:6px}
h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.15;margin:0}
.wrap{width:100%;max-width:980px;margin:0 auto;padding:0 16px}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;padding-bottom:16px}
.studio{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-weight:700;text-decoration:none;font-size:15px}
.studio img{width:28px;height:28px;border-radius:7px}
.langs{position:relative}
.langs summary{list-style:none;cursor:pointer;padding:6px 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface);font-size:14px;font-weight:700;color:var(--muted)}
.langs summary::-webkit-details-marker{display:none}
.langs ul{position:absolute;right:0;z-index:2;margin:6px 0 0;padding:6px;list-style:none;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 12px 32px rgb(46 38 30/.16);min-width:160px}
.langs li a{display:block;padding:6px 10px;border-radius:8px;color:var(--text);text-decoration:none}
.langs li a[aria-current]{background:var(--tint);color:var(--primary);font-weight:700}
.hero{display:grid;gap:28px;align-items:center;padding:24px 0 8px}
@media (min-width:820px){.hero{grid-template-columns:1.1fr .9fr}}
.app-id{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.app-id img{width:88px;height:88px;border-radius:22px;box-shadow:0 8px 20px rgb(46 38 30/.18)}
/* The name is always set in Fraunces, the brand's type, whatever the page language. */
.wordmark small{display:block;color:var(--muted);font:600 18px/1 'Fraunces',Georgia,serif}
.wordmark span{display:block;color:var(--primary);font:600 44px/1.05 'Fraunces',Georgia,serif}
.lead{font-size:20px;line-height:1.5;margin:0 0 20px}
.badge img{display:block;height:64px;width:auto}
.note{margin:10px 0 0;color:var(--muted);font-size:15px}
@media (max-width:819px){.phone{display:none}}
.phone{justify-self:center;width:min(300px,78vw);border-radius:28px;border:8px solid var(--text);box-shadow:0 24px 48px rgb(46 38 30/.22);background:var(--surface);overflow:hidden;rotate:2deg}
.phone img{display:block;width:100%;height:auto}
.screens{margin:40px 0 0}
.screens ol{display:flex;gap:16px;margin:16px -16px 0;padding:4px 16px 20px;list-style:none;overflow-x:auto;scroll-snap-type:x mandatory}
.screens li{flex:none;scroll-snap-align:center}
.screens img{display:block;width:216px;height:auto;border-radius:18px;border:1px solid var(--border);box-shadow:0 10px 24px rgb(46 38 30/.14)}
.paper{margin:32px 0;padding:28px 24px;border:1px solid var(--border);border-radius:20px;background:var(--surface);box-shadow:0 2px 3px rgb(54 39 20/.04),0 14px 30px rgb(54 39 20/.07)}
.paper h2.eyebrow{margin:28px 0 6px;color:var(--primary);font:800 14px/1.3 var(--ui);letter-spacing:.08em}
.paper h2.eyebrow:first-child{margin-top:0}
.paper p{margin:0 0 12px}
.paper ul{margin:0 0 12px;padding-left:20px}
.paper li{margin:4px 0}
.paper h1{color:var(--primary);font-size:34px;margin-bottom:8px}
.paper h3{margin:24px 0 4px;font-size:20px}
.muted{color:var(--muted)}
.site-footer{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;padding-top:24px;padding-bottom:48px;color:var(--muted);font-size:15px}
.card{width:100%;max-width:440px;margin:24px auto;padding:28px 24px;border:1px solid var(--border);border-radius:20px;background:var(--surface);box-shadow:0 14px 34px rgb(46 38 30/.12);text-align:center}
.card .app-id{justify-content:center;margin-bottom:18px}
.card .app-id img{width:52px;height:52px;border-radius:13px}
.card .wordmark span{font-size:30px}
.card h1{color:var(--primary);font-size:28px;margin-bottom:6px}
.intro{margin:0 0 18px;color:var(--muted)}
.challenge{margin:0 0 20px;padding:14px;border:1.5px dashed var(--border);border-radius:14px}
.kind{margin:0;font-weight:800}
.label{margin:0;color:var(--muted);font-size:14px}
.time{margin:2px 0 0;font:600 44px/1.1 var(--display);font-variant-numeric:tabular-nums}
.actions{display:grid;gap:12px;justify-items:center}
.button{display:block;width:100%;padding:14px 16px;border:0;border-radius:14px;background:var(--primary);color:var(--on-primary);font:800 17px/1.2 var(--ui);text-decoration:none;cursor:pointer}
.code{margin:22px 0 0;font-size:15px;color:var(--muted)}
.code strong{display:inline-block;margin:6px 0;padding:6px 12px;border-radius:8px;background:var(--bg);color:var(--text);font:700 18px/1.3 ui-monospace,monospace;letter-spacing:.04em;user-select:all}
.copy{margin-left:6px;padding:6px 10px;border:0;background:transparent;color:var(--primary);font:700 15px var(--ui);cursor:pointer}
.studio-hero{padding:56px 0 8px}
.studio-hero h1{color:var(--primary);font-size:52px}
.app-card{display:flex;gap:20px;align-items:center;margin:32px 0;padding:20px;border:1px solid var(--border);border-radius:20px;background:var(--surface);color:var(--text);text-decoration:none;box-shadow:0 14px 30px rgb(54 39 20/.07);transition:transform .2s}
.app-card:active{transform:scale(.98)}
.app-card img{width:84px;height:84px;border-radius:20px}
.app-card h2{color:var(--primary);font-size:28px}
.app-card p{margin:4px 0 0;color:var(--muted)}
[hidden]{display:none!important}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
