
:root{
  --paper:#f6f1e7;
  --paper-raised:#fffdf8;
  --paper-sunk:#ece5d7;
  --line:#ddd3c2;
  --line-strong:#8c8070;
  --ink:#1f1b16;
  --ink-muted:#5e5447;
  --terracotta:#a94a22;
  --terracotta-strong:#86391a;
  --terracotta-soft:#f8e7dd;
  --on-terracotta:#fffdf8;
  --sea:#235e6b;
  --sea-soft:#dcebec;
  --ochre:#7a5600;
  --ochre-soft:#f5e8c8;
  --danger:#9b1c2e;
  --danger-soft:#f8e1e1;
  --scrim:#1f1b1666;
  --focus:var(--terracotta);
  --pi-sea:#cfe9e5;
  --pi-wave:#8fcbc2;
  --pi-land:#f6e2bb;
  --pi-coast:#5b3423;
  --pi-neighbor:#f6f0e3;
  --pi-neighbor-line:#d3c5ad;
  --pi-neighbor-label:#a08c70;
  --pi-sea-label:#3f8f86;
  --pi-ink:#4a2a1e;
  --pi-route:#3a2a22;
  --pi-flight:#e2492f;
  --pi-ferry:#2c8c99;
  --pi-marker:#7bae5b;
  --pi-marker-ink:#26341c;
  --pi-paper:#fbf6ec;
  --pi-brick:#9c3d2e;
  --pi-terra:#d0613f;
  --pi-sand:#efc98a;
  --pi-stone:#efe3cf;
  --pi-stone-dk:#a8957c;
  --pi-mustard:#e4a23a;
  --pi-leaf:#7bae5b;
  --pi-pine:#2f6b3f;
  --pi-sky:#6cb4c9;
  --pi-water:#9fd6ce;
  --pi-white:#ffffff;
  --pi-lemon:#f4d24b;
  --pi-rose:#e99a86;
  --pi-sea-line:#7cc3b9;
  --px-sea:#d6f1eb;
  --px-land:#ffffff;
  --px-neighbor:#fffdf6;
  --px-ink:#5e3b2c;
  --px-border:#c9a77e;
  --px-route:#b85a4e;
  --px-marker:#bcd88f;
  --px-decor:#eef0bf;
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:24px;
  --space-6:32px;
  --space-7:48px;
  --radius-xs:4px;
  --radius-sm:8px;
  --radius-md:12px;
  --radius-lg:16px;
  --radius-xl:28px;
  --shadow-poster:0 1px 2px #1f1b161f, 0 8px 24px #1f1b161a;
  --shadow-sheet:0 -4px 24px #1f1b1626;
  --duration-short:150ms;
  --duration-medium:300ms;
  --duration-long:900ms;
  --size-touch-target:48px;
  --size-control:48px;
  --size-field:56px;
  --size-row:56px;
  --size-row-stop:64px;
  --size-badge:24px;
  --size-icon-sm:20px;
  --size-icon:24px;
  --size-stop-number:28px;
  --size-landmark:40px;
  --size-border:1px;
  --size-border-focus:2px;
  --size-focus-offset:2px;
  --size-progress:4px;
  --size-readable:600px;
  --size-fab-clearance:96px;
  --font-serif:Fraunces, Georgia, "Times New Roman", serif;
  --font-sans:"Hanken Grotesk", system-ui, sans-serif;
  --font-poster:Fredoka, "Arial Rounded MT Bold", system-ui, sans-serif;
  --font-hand:"Patrick Hand", "Comic Neue", cursive;
}
.display{font-family:var(--font-serif);font-size:44px;line-height:48px;font-weight:400;letter-spacing:-0.02em;font-variation-settings:'opsz' 144;}
.headline-l{font-family:var(--font-serif);font-size:32px;line-height:38px;font-weight:400;letter-spacing:-0.01em;font-variation-settings:'opsz' 72;}
.headline-m{font-family:var(--font-serif);font-size:26px;line-height:32px;font-weight:450;font-variation-settings:'opsz' 48;}
.title-serif{font-family:var(--font-serif);font-size:20px;line-height:26px;font-weight:500;font-variation-settings:'opsz' 24;}
.quote{font-family:var(--font-serif);font-size:18px;line-height:26px;font-weight:400;font-style:italic;font-variation-settings:'opsz' 18;}
.title-m{font-family:var(--font-sans);font-size:16px;line-height:22px;font-weight:600;}
.body-l{font-family:var(--font-sans);font-size:16px;line-height:24px;font-weight:400;}
.body-m{font-family:var(--font-sans);font-size:14px;line-height:20px;font-weight:400;}
.label-l{font-family:var(--font-sans);font-size:15px;line-height:20px;font-weight:600;letter-spacing:0.01em;}
.label-m{font-family:var(--font-sans);font-size:13px;line-height:18px;font-weight:600;}
.overline{font-family:var(--font-sans);font-size:11px;line-height:16px;font-weight:700;letter-spacing:0.12em;}
.poster-days{font-family:var(--font-poster);font-size:190px;line-height:160px;font-weight:700;letter-spacing:-0.03em;}
.poster-title{font-family:var(--font-poster);font-size:58px;line-height:70px;font-weight:500;}
.poster-label{font-family:var(--font-hand);font-size:30px;line-height:30px;font-weight:400;}
.poster-stat{font-family:var(--font-hand);font-size:30px;line-height:44px;font-weight:400;}
.poster-neighbor{font-family:var(--font-hand);font-size:30px;line-height:30px;font-weight:400;letter-spacing:0.1em;}
.poster-sea{font-family:var(--font-hand);font-size:26px;line-height:26px;font-weight:400;letter-spacing:0.08em;font-style:italic;}
.wordmark{font-family:var(--font-serif);font-size:20px;line-height:24px;font-weight:500;font-variation-settings:'opsz' 36;}
.wordmark i{font-weight:400;color:var(--terracotta);}
@font-face{font-family:'Fraunces';src:url(/assets/fonts/Fraunces-Variable.48642176d9.woff2) format('woff2');font-weight:100 900;font-style:normal;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-display:swap}
@font-face{font-family:'Fraunces';src:url(/assets/fonts/Fraunces-Variable-Italic.b58654dd4f.woff2) format('woff2');font-weight:100 900;font-style:italic;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-display:swap}
@font-face{font-family:'Hanken Grotesk';src:url(/assets/fonts/HankenGrotesk-Variable.38c3847fad.woff2) format('woff2');font-weight:100 900;font-style:normal;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-display:swap}
@font-face{font-family:'Fredoka';src:url(/assets/fonts/Fredoka-Medium.84a3167d81.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Fredoka';src:url(/assets/fonts/Fredoka-Bold.8adf2df55f.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'Patrick Hand';src:url(/assets/fonts/PatrickHand-Regular.2fed351466.woff2) format('woff2');font-weight:400;font-display:swap}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 4.5rem; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 400 1rem/1.55 var(--font-sans);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
:root { --gutter: var(--space-4); }
@media (min-width: 25rem) { :root { --gutter: var(--space-5); } }
html:lang(uk) {
  --font-serif: Georgia, "Noto Serif", "Times New Roman", serif;
  --font-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", sans-serif;
}
img, picture, svg { display: block; max-width: 100%; }
img { height: auto; }
.sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.icon { width: var(--size-icon); height: var(--size-icon); flex: none; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
[hidden] { display: none !important; }
a { color: var(--terracotta); text-underline-offset: 0.18em; }
a:hover { color: var(--terracotta-strong); }
:focus-visible { outline: var(--size-border-focus) solid var(--focus); outline-offset: var(--size-focus-offset); border-radius: var(--radius-xs); }
.skip-link { position: absolute; left: var(--space-3); top: -4rem; z-index: 50; background: var(--paper-raised); padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); border: var(--size-border) solid var(--line-strong); color: var(--ink); }
.skip-link:focus { top: var(--space-3); }
h1, h2, h3 { font-family: var(--font-serif); font-weight: 400; margin: 0; text-wrap: balance; color: var(--ink); }
h1 { font-size: clamp(2.25rem, 1.2rem + 4.6vw, 3.9rem); line-height: 1.07; letter-spacing: -0.02em; font-variation-settings: "opsz" 144; }
h2 { font-size: clamp(1.75rem, 1.2rem + 2.2vw, 2.6rem); line-height: 1.15; letter-spacing: -0.01em; font-variation-settings: "opsz" 72; }
h3 { font-size: 1.25rem; line-height: 1.3; font-weight: 500; font-variation-settings: "opsz" 24; }
p { margin: 0 0 var(--space-3); }
.lead { font-size: 1.125rem; line-height: 1.55; color: var(--ink-muted); max-width: 36rem; }
.muted { color: var(--ink-muted); }
.fine { font-size: 0.875rem; line-height: 1.45; }
.overline { display: block; font: 700 11px/16px var(--font-sans); letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-muted); margin-bottom: var(--space-2); }
.wordmark { font-family: Fraunces, Georgia, serif; font-size: 1.375rem; line-height: 1.5rem; font-weight: 500; font-variation-settings: "opsz" 36; color: var(--ink); text-decoration: none; letter-spacing: 0; }
.wordmark i { font-style: italic; font-weight: 400; color: var(--terracotta); }
.wordmark:hover { color: var(--ink); }
.container { width: 100%; max-width: 72rem; margin-inline: auto; padding-inline: var(--gutter); }
.narrow { max-width: 46rem; }
.narrow-ish { max-width: 56rem; }
.section { padding-block: var(--space-7); }
@media (min-width: 48rem) { .section { padding-block: 6rem; } }
.section-sunk { background: var(--paper-sunk); }
.section h2 { margin-bottom: var(--space-5); }
.section h2:has(+ .lead) { margin-bottom: var(--space-3); }
.section .lead { margin-bottom: var(--space-5); }
.card { background: var(--paper-raised); border: var(--size-border) solid var(--line); border-radius: var(--radius-lg); padding: var(--space-5); }
.note { display: flex; gap: var(--space-3); align-items: flex-start; margin: var(--space-5) 0 0; color: var(--ink-muted); max-width: 44rem; }
.note .icon { color: var(--sea); margin-top: 1px; }
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2);
  min-height: var(--size-control); padding: var(--space-2) var(--space-5);
  border: 2px solid transparent; border-radius: var(--radius-md);
  font: 600 0.9375rem/1.25rem var(--font-sans); letter-spacing: 0.01em; text-decoration: none; cursor: pointer;
  transition: background-color var(--duration-short), border-color var(--duration-short);
}
.btn-primary { background: var(--terracotta); color: var(--on-terracotta); }
.btn-primary:hover { background: var(--terracotta-strong); color: var(--on-terracotta); }
.btn-secondary { background: var(--paper-raised); color: var(--ink); border-color: var(--line-strong); }
.btn-secondary:hover { background: var(--paper-sunk); color: var(--ink); }
.btn-danger { background: var(--danger); color: var(--on-terracotta); }
.btn-danger:hover { background: var(--danger); filter: brightness(0.92); color: var(--on-terracotta); }
.btn[disabled] { background: var(--paper-sunk); color: var(--ink-muted); cursor: not-allowed; border-color: transparent; filter: none; }
.btn-small { min-height: var(--size-touch-target); padding-inline: var(--space-4); }
.button-row { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.site-header { position: sticky; top: 0; z-index: 20; background: var(--paper); border-bottom: var(--size-border) solid var(--line); }
.header-row { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); min-height: 3.5rem; }
.header-actions { display: flex; align-items: center; gap: var(--space-2); }
.lang-menu { position: relative; }
.lang-menu summary {
  display: flex; align-items: center; gap: 6px; min-height: var(--size-touch-target); padding: 0 var(--space-2);
  cursor: pointer; font: 600 0.875rem/1 var(--font-sans); color: var(--ink); list-style: none; border-radius: var(--radius-sm);
}
.lang-menu summary::-webkit-details-marker { display: none; }
.flag { width: 24px; height: 16px; flex: none; border-radius: 2px; overflow: hidden; box-shadow: 0 0 0 var(--size-border) var(--line-strong); }
.lang-menu .chev { transition: transform var(--duration-short); }
.lang-menu[open] .chev { transform: rotate(180deg); }
.lang-menu ul {
  position: absolute; right: 0; top: 100%; z-index: 30; min-width: 15rem; margin: var(--space-1) 0 0; padding: var(--space-2);
  list-style: none; background: var(--paper-raised); border: var(--size-border) solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-sheet);
}
.lang-menu li a { display: flex; align-items: center; gap: var(--space-3); min-height: var(--size-touch-target); padding: 0 var(--space-3); border-radius: var(--radius-sm); color: var(--ink); text-decoration: none; }
.lang-menu li a:hover { background: var(--paper-sunk); }
.lang-menu li a[aria-current] { background: var(--terracotta-soft); font-weight: 600; }
.suggest { background: var(--paper-sunk); text-align: center; padding: var(--space-2) var(--gutter); font-size: 0.875rem; }
.suggest a { font-weight: 600; }
.cta { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); margin-top: var(--space-5); }
.cta-center { align-items: center; }
.play-badge { display: inline-block; padding: 14px; margin: -14px; }   
.play-badge img { height: 56px; width: auto; }
.soon, .ios-note {
  display: inline-flex; align-items: center; gap: 10px; margin: 0; padding: 10px var(--space-4);
  background: var(--paper-raised); border: var(--size-border) solid var(--line); border-radius: 999px; font-weight: 600;
}
.soon-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--sea); }
.testers { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-2); }
.testers p { margin: 0; }
.ios-note { display: none; }
.is-ios .ios-note { display: inline-flex; }
.is-ios .cta-android { display: none !important; }
.print { display: block; }
.print picture, .print img { display: block; width: 100%; height: auto; }
.print img { border-radius: var(--radius-xs); box-shadow: var(--shadow-poster); background: var(--paper-sunk); }
.hero { padding: var(--space-6) 0 var(--space-7); }
.hero-grid { display: grid; gap: var(--space-6); align-items: center; }
.hero-copy { max-width: 36rem; }
.greeting { display: inline-block; margin: 0 0 var(--space-4); padding: var(--space-2) var(--space-3); background: var(--terracotta-soft); border-radius: var(--radius-sm); font-weight: 600; }
.hero h1 { margin-bottom: var(--space-4); }
.hero .fine { margin-top: var(--space-3); }
.hero-print { width: min(72vw, 22rem); margin-inline: auto; }
@media (min-width: 56rem) {
  .hero { padding: 4.5rem 0 6rem; }
  .hero-grid { grid-template-columns: 1.15fr 0.85fr; gap: 4rem; }
  .hero-print { width: 100%; max-width: 26rem; margin-inline: 0 auto; transform: rotate(1.4deg); }
}
.steps { display: grid; gap: var(--space-4); margin: 0; padding: 0; list-style: none; }
@media (min-width: 56rem) { .steps { grid-template-columns: repeat(3, 1fr); } }
.step { display: flex; flex-direction: column; gap: var(--space-2); }
.step h3 { margin-bottom: var(--space-1); }
.step p { color: var(--ink-muted); }
.vignette { padding-top: var(--space-3); }
.v-field, .v-list, .v-styles { background: var(--paper); border: var(--size-border) solid var(--line); border-radius: var(--radius-md); padding: var(--space-4); }
.v-label { margin: 0 0 var(--space-3); font: 500 1.125rem/1.3 var(--font-serif); font-variation-settings: "opsz" 24; }
.v-list .v-label { font: 700 11px/16px var(--font-sans); letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-muted); margin-bottom: var(--space-2); }
.v-input { display: flex; align-items: center; gap: var(--space-2); min-height: var(--size-field); padding: 0 var(--space-3); background: var(--paper-sunk); border-radius: var(--radius-sm); color: var(--ink-muted); font-size: 0.9375rem; overflow: hidden; }
.v-input span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.v-button { display: flex; align-items: center; justify-content: center; margin-top: var(--space-3); min-height: var(--size-control); border: 2px solid var(--line-strong); border-radius: var(--radius-md); background: var(--paper-raised); font: 600 0.9375rem/1.25rem var(--font-sans); }
.v-list ol { margin: 0; padding: 0; list-style: none; }
.v-list li { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-2) 0; border-top: var(--size-border) solid var(--line); }
.v-num { display: grid; place-items: center; flex: none; width: var(--size-stop-number); height: var(--size-stop-number); border: 2px solid var(--terracotta); border-radius: 50%; font: 600 0.8125rem/1 var(--font-sans); color: var(--ink); }
.v-name { display: flex; flex-direction: column; padding-top: 3px; font-weight: 600; line-height: 1.2; }
.v-name small { display: flex; gap: 6px; align-items: flex-start; margin-top: 6px; font-weight: 400; font-size: 0.8125rem; line-height: 1.3; color: var(--ochre); }
.v-name small .icon { width: 16px; height: 16px; margin-top: 1px; }
.v-list li.is-warn { background: var(--ochre-soft); margin-inline: calc(var(--space-2) * -1); padding-inline: var(--space-2); border-radius: var(--radius-sm); border-top-color: transparent; }
.v-styles ul { display: flex; gap: var(--space-2); margin: 0; padding: 0; list-style: none; }
.v-styles li { flex: 1; min-width: 0; padding: 4px; border-radius: var(--radius-sm); }
.v-styles li.is-selected { background: var(--terracotta-soft); outline: 2px solid var(--terracotta); }
.v-styles .print img { box-shadow: none; }
.reveal-grid { display: grid; gap: var(--space-6); align-items: center; }
@media (min-width: 56rem) { .reveal-grid { grid-template-columns: 1fr 24rem; gap: 5rem; } }
.link-card { display: grid; gap: var(--space-1); max-width: 28rem; padding: var(--space-4); background: var(--paper-raised); border: var(--size-border) solid var(--line); border-radius: var(--radius-lg); }
.link-host { font-size: 0.8125rem; color: var(--ink-muted); }
.link-card strong { font: 500 1.25rem/1.3 var(--font-serif); font-variation-settings: "opsz" 24; }
.link-arrow { display: inline-flex; margin: var(--space-3) 0 0 var(--space-4); color: var(--terracotta); transform: rotate(90deg); }
.link-arrow .icon { width: 32px; height: 32px; }
@media (min-width: 56rem) { .link-arrow { transform: none; margin: var(--space-3) 0 0 28rem; position: relative; left: -2rem; } }
.reveal-stage { display: grid; gap: var(--space-3); justify-items: center; }
.reveal-print { width: min(72vw, 24rem); aspect-ratio: 5 / 7; }
.replay { gap: var(--space-2); }
.replay .icon { width: var(--size-icon-sm); height: var(--size-icon-sm); }
.poster-svg { width: 100%; height: auto; border-radius: var(--radius-xs); box-shadow: var(--shadow-poster); }
.poster-svg .mask-line { fill: none; stroke: white; stroke-width: 90; stroke-dasharray: 1; stroke-dashoffset: 1; }
.poster-svg.is-playing .mask-line { animation: draw var(--duration) var(--delay) linear both; }
.poster-svg.is-armed .reveal-pop { transform-box: fill-box; transform-origin: center; transform: scale(0); }
.poster-svg.is-playing .reveal-pop { animation: pop 380ms var(--delay) cubic-bezier(0.34, 1.56, 0.64, 1) both; }
.poster-svg.is-armed .reveal-rise, .poster-svg.is-armed .reveal-plane { opacity: 0; }
.poster-svg.is-playing .reveal-rise, .poster-svg.is-playing .reveal-plane { animation: fade 450ms var(--delay) ease-out both; }
@keyframes draw { to { stroke-dashoffset: 0; } }
@keyframes pop { from { transform: scale(0); } to { transform: scale(1); } }
@keyframes fade { to { opacity: 1; } }
.sources { display: grid; gap: var(--space-3); margin: 0; padding: 0; list-style: none; }
@media (min-width: 40rem) { .sources { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 64rem) { .sources { grid-template-columns: repeat(4, 1fr); } }
.source { display: flex; flex-direction: column; gap: var(--space-2); }
.source-icon { display: grid; place-items: center; width: var(--size-touch-target); height: var(--size-touch-target); background: var(--terracotta-soft); border-radius: var(--radius-md); color: var(--terracotta); margin-bottom: var(--space-2); }
.source p { margin: 0; color: var(--ink-muted); }
.style-row, .shape-row {
  display: grid; grid-auto-flow: column; gap: var(--space-4); margin: 0 calc(var(--gutter) * -1); padding: var(--space-2) var(--gutter) var(--space-4);
  list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--gutter); overscroll-behavior-x: contain;
}
.style-row { grid-auto-columns: min(62vw, 15rem); }
.style { scroll-snap-align: start; }
.style h3 { margin: var(--space-3) 0 var(--space-2); }
.swatches { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: 0; padding: 0; list-style: none; }
.swatch { display: block; width: 22px; height: 22px; border-radius: 50%; border: var(--size-border) solid var(--line-strong); }
.more { margin-top: var(--space-7); }
.more-title { margin-bottom: var(--space-3); }
.shape-row { display: flex; align-items: flex-end; margin-top: var(--space-4); }
.shape { flex: none; height: 16rem; scroll-snap-align: start; }
.shape .print, .shape picture { height: 100%; width: auto; }
.shape img { height: 100%; width: auto; max-width: none; }
@media (min-width: 64rem) {
  .style-row { grid-auto-flow: row; grid-template-columns: repeat(5, 1fr); overflow: visible; margin: 0; padding: var(--space-2) 0 0; }
  .shape-row { margin: var(--space-4) 0 0; padding-inline: 0; justify-content: safe center; }
  .shape { height: 14rem; }
}
.features { display: grid; gap: var(--space-3); margin: 0; padding: 0; list-style: none; }
@media (min-width: 48rem) { .features { grid-template-columns: repeat(2, 1fr); gap: var(--space-4) var(--space-6); } }
.features li { display: flex; gap: var(--space-3); align-items: flex-start; padding-block: var(--space-3); border-top: var(--size-border) solid var(--line); }
.features .icon { color: var(--ink); margin-top: 1px; }
.print-grid { display: grid; gap: var(--space-3); }
@media (min-width: 48rem) { .print-grid { grid-template-columns: repeat(3, 1fr); } }
.print-grid p { color: var(--ink-muted); margin: var(--space-2) 0 0; }
.own { display: grid; gap: var(--space-5); align-items: center; margin-bottom: var(--space-3); }
@media (min-width: 48rem) { .own { grid-template-columns: 1.1fr 0.9fr; padding: var(--space-6); } }
.own p { margin: var(--space-3) 0 0; }
.own .mark-line { font-weight: 600; }
.own-art img { width: 100%; height: auto; border-radius: var(--radius-md); border: var(--size-border) solid var(--line); }
.lang-posters { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-3); max-width: 46rem; margin: 0; padding: 0; list-style: none; }
@media (min-width: 40rem) { .lang-posters { gap: var(--space-5); } }
.lang-posters li { text-align: center; }
.lang-posters span { display: block; margin-top: var(--space-3); font-weight: 600; font-size: 0.875rem; }
.plans { display: grid; gap: var(--space-4); max-width: 52rem; }
@media (min-width: 48rem) { .plans { grid-template-columns: repeat(2, 1fr); } }
.plan { display: flex; flex-direction: column; gap: var(--space-2); }
.plan-pro { border: 2px solid var(--terracotta); }
.price { margin: 0; font: 500 2.25rem/1.1 var(--font-serif); font-variation-settings: "opsz" 72; }
.ticks { display: grid; gap: var(--space-3); margin: var(--space-3) 0 0; padding: 0; list-style: none; }
.ticks li { display: flex; gap: var(--space-3); align-items: flex-start; }
.ticks .icon { color: var(--sea); margin-top: 1px; }
.plan-cta { margin-top: var(--space-4); }
.plans-line { max-width: 44rem; margin: var(--space-5) 0 var(--space-2); font-weight: 600; }
.currency-switch { display: inline-flex; align-items: center; gap: var(--space-1); margin-top: var(--space-3); font-size: 0.875rem; color: var(--ink-muted); }
.currency-switch span { margin-right: var(--space-2); }
.currency-switch button { min-height: var(--size-touch-target); min-width: 3.5rem; padding: 0 var(--space-3); border: var(--size-border) solid var(--line-strong); border-radius: var(--radius-sm); background: var(--paper-raised); color: var(--ink); font: 600 0.8125rem var(--font-sans); cursor: pointer; }
.currency-switch button[aria-pressed="true"] { background: var(--terracotta-soft); border-color: var(--terracotta); }
.trust { display: grid; gap: var(--space-4); margin: 0; padding: 0; list-style: none; max-width: 56rem; }
@media (min-width: 40rem) { .trust { grid-template-columns: repeat(2, 1fr); gap: var(--space-5) var(--space-6); } }
.trust li { display: flex; gap: var(--space-3); align-items: flex-start; font-size: 1.0625rem; }
.trust .icon { color: var(--sea); margin-top: 2px; }
.faq details { border-top: var(--size-border) solid var(--line); }
.faq details:last-child { border-bottom: var(--size-border) solid var(--line); }
.faq summary { display: flex; justify-content: space-between; align-items: center; gap: var(--space-4); min-height: var(--size-touch-target); padding: var(--space-4) 0; cursor: pointer; font-weight: 600; list-style: none; }
.faq summary::-webkit-details-marker { display: none; }
.faq .chev { transition: transform var(--duration-short); color: var(--ink-muted); }
.faq details[open] .chev { transform: rotate(180deg); }
.faq-a { padding-bottom: var(--space-4); color: var(--ink-muted); max-width: 40rem; }
.faq-a p { margin: 0; }
.last { text-align: center; }
.last .container { display: flex; flex-direction: column; align-items: center; }
.last .lead { margin-inline: auto; }
.last h2 { margin-bottom: var(--space-3); }
.stack { display: flex; justify-content: center; align-items: flex-end; margin-bottom: var(--space-6); }
.stack > div { width: 7.5rem; }
.stack-0 { transform: rotate(-7deg) translate(1.25rem, 0.5rem); }
.stack-1 { position: relative; z-index: 1; width: 9rem !important; }
.stack-2 { transform: rotate(7deg) translate(-1.25rem, 0.5rem); }
@media (min-width: 40rem) { .stack > div { width: 9rem; } .stack-1 { width: 11rem !important; } }
.site-footer { border-top: var(--size-border) solid var(--line); padding: var(--space-6) 0 var(--space-7); }
.footer-top { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--space-3) var(--space-5); margin-bottom: var(--space-4); }
.footer-top p { margin: 0; }
.footer-links, .footer-langs { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-1) var(--space-5); margin-bottom: var(--space-3); }
.footer-links a, .footer-langs a { display: inline-flex; align-items: center; gap: var(--space-2); min-height: var(--size-touch-target); color: var(--ink); text-decoration: none; }
.footer-links a:hover, .footer-langs a:hover { color: var(--terracotta); text-decoration: underline; }
.footer-langs a { color: var(--ink-muted); font-size: 0.9375rem; }
.footer-links .tag { margin-left: calc(var(--space-4) * -1); font-size: 0.75rem; color: var(--ink-muted); }
.site-footer .fine p { margin: 0 0 var(--space-1); }
.doc { padding-block: var(--space-6) var(--space-7); }
.doc-body { max-width: 44rem; margin-inline: auto; }
.doc h1 { margin-bottom: var(--space-3); }
.doc h2 { font-size: 1.625rem; margin: var(--space-6) 0 var(--space-3); }
.doc h3 { font-family: var(--font-sans); font-size: 1rem; font-weight: 600; letter-spacing: 0; font-variation-settings: normal; }
.doc ul { padding-left: 1.25rem; }
.doc li { margin-bottom: var(--space-2); }
.doc .meta { color: var(--ink-muted); }
.data-list article { background: var(--paper-raised); border: var(--size-border) solid var(--line); border-radius: var(--radius-lg); padding: var(--space-4) var(--space-5); margin: var(--space-3) 0; }
.data-list dl { display: grid; gap: 0; margin: var(--space-2) 0 0; }
.data-list dt { margin-top: var(--space-3); font-weight: 600; font-size: 0.8125rem; color: var(--ink-muted); }
.data-list dd { margin: 0; }
@media (min-width: 40rem) {
  .data-list dl { grid-template-columns: 6.5rem 1fr; gap: var(--space-2) var(--space-4); }
  .data-list dt { margin-top: 0; }
}
.doc .card { margin: var(--space-4) 0; }
.status { margin-top: var(--space-4); padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); background: var(--paper-sunk); }
.status.error { background: var(--danger-soft); color: var(--danger); }
.check-row { display: flex; gap: var(--space-3); align-items: flex-start; margin: var(--space-4) 0; }
.check-row input { flex: none; width: 1.5rem; height: 1.5rem; margin-top: 0.1rem; accent-color: var(--danger); }
.not-found { text-align: center; padding-block: var(--space-7); }
.not-found .stack-1 { position: static; margin: 0 auto var(--space-5); width: 8rem !important; }
.not-found h1 { margin-bottom: var(--space-3); }
.not-found p { color: var(--ink-muted); }
.not-found .lead { margin-inline: auto; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: 0.01ms !important; }
}
.sw-illustrated-sunny{background:conic-gradient(#cfe9e5 0 33.34%,#f6e2bb 0 66.67%,#3a2a22 0)}
.sw-illustrated-pastel{background:conic-gradient(#e3f1ee 0 33.34%,#fbefd9 0 66.67%,null 0)}
.sw-illustrated-sunset{background:conic-gradient(#f6dccb 0 33.34%,#fbecd2 0 66.67%,null 0)}
.sw-illustrated-night{background:conic-gradient(#1f3346 0 33.34%,#2c4258 0 66.67%,#f1e4c8 0)}
.sw-explorer-sunny{background:conic-gradient(#d6f1eb 0 33.34%,#ffffff 0 66.67%,#b85a4e 0)}
.sw-explorer-pastel{background:conic-gradient(#e6f2ef 0 33.34%,#fffdf8 0 66.67%,#b8665a 0)}
.sw-explorer-sunset{background:conic-gradient(#f6dccb 0 33.34%,#fff8ee 0 66.67%,#c0503a 0)}
.sw-explorer-night{background:conic-gradient(#1f3346 0 33.34%,#2c4258 0 66.67%,#f2b66d 0)}
.sw-minimal-paper{background:conic-gradient(#f7f4ec 0 33.34%,#f7f4ec 0 66.67%,#c4482b 0)}
.sw-minimal-blueprint{background:conic-gradient(#17324d 0 33.34%,#17324d 0 66.67%,#ffc857 0)}
.sw-minimal-sage{background:conic-gradient(#eef2e8 0 33.34%,#eef2e8 0 66.67%,#d2583a 0)}
.sw-minimal-blush{background:conic-gradient(#f8ece7 0 33.34%,#f8ece7 0 66.67%,#1c6c78 0)}
.sw-minimal-ink{background:conic-gradient(#ffffff 0 33.34%,#ffffff 0 66.67%,#111111 0)}
.sw-vintage-teal{background:conic-gradient(#a8d2ca 0 33.34%,#f5e6b8 0 66.67%,#c4432a 0)}
.sw-vintage-sepia{background:conic-gradient(#e6d6b2 0 33.34%,#f6edd6 0 66.67%,#8d2f1a 0)}
.sw-vintage-sunset{background:conic-gradient(#f3cfa6 0 33.34%,#fcf0d4 0 66.67%,#1f5f6e 0)}
.sw-vintage-night{background:conic-gradient(#1b2c47 0 33.34%,#2b4468 0 66.67%,#efb94e 0)}
.sw-watercolor-spring{background:conic-gradient(#d6eae5 0 33.34%,#f7e8c0 0 66.67%,#cf4a30 0)}
.sw-watercolor-coral{background:conic-gradient(#f6dccd 0 33.34%,#fbeed5 0 66.67%,#237a88 0)}
.sw-watercolor-dusk{background:conic-gradient(#dcd6ec 0 33.34%,#f6ebd3 0 66.67%,#c0405f 0)}
.sw-watercolor-meadow{background:conic-gradient(#e0eacf 0 33.34%,#f8ecc6 0 66.67%,#c4523a 0)}