:root {
    --paper: #fff7ea; --paper-2: #f6e6cb; --paper-edge: #e3c597; --ink: #3b2414; --ink-2: #7a5a40; --gold: #ffc93c; --gold-d: #d99a00; --white: #ffffff; --sea-top: #1b6f8a; --sea: #072b40;
    color-scheme: light;
    font: 400 1.0625rem/1.6 system-ui, -apple-system, "Segoe UI", sans-serif;
    --rounded: ui-rounded, "SF Pro Rounded", "Arial Rounded MT Bold", system-ui, sans-serif;
}
body { margin: 0; min-height: 100vh; background: radial-gradient(120% 80% at 50% 0%, var(--sea-top) 0%, var(--sea) 70%) fixed, var(--sea); color: var(--white); }
header, main, footer { max-width: 46rem; margin: 0 auto; padding-inline: 16px; }
header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.5rem 1.5rem; padding-block: 1.1rem; }
.name { font: 800 1.4rem/1 var(--rounded); color: var(--white); text-decoration: none; letter-spacing: -0.01em; }
.name span, .logo span { color: var(--gold); }
nav { display: flex; flex-wrap: wrap; gap: 0.25rem 1.1rem; font-weight: 700; font-size: 0.95rem; }
nav a { color: var(--white); text-decoration: none; text-underline-offset: 0.3em; text-decoration-thickness: 2px; }
nav a:hover, nav a[aria-current="page"] { text-decoration: underline; }
main { padding-block: 0.5rem 2.5rem; }
.hero { text-align: center; padding-block: 1.5rem 1rem; }
.icon { display: block; margin: 0 auto 1rem; border-radius: 22px; }
.logo { margin: 0; font: 800 clamp(2.6rem, 2rem + 4vw, 3.8rem)/0.95 var(--rounded); letter-spacing: -0.01em; text-shadow: 0 4px 0 var(--sea); }
.lead { font-size: 1.15rem; margin: 0.9rem auto 0; max-width: 32rem; }
.store { display: inline-block; margin: 1.25rem 0 0; padding: 0.75rem 1.5rem; border-radius: 999px; background: var(--gold); color: var(--ink); font: 800 1.05rem/1.3 var(--rounded); text-decoration: none; box-shadow: 0 4px 0 var(--gold-d); }
.store.soon { background: var(--paper); box-shadow: 0 4px 0 var(--paper-edge); }
.art { display: block; width: 100%; height: auto; margin: 1.5rem 0; border-radius: 24px; box-shadow: 0 18px 40px var(--sea); }
.paper { margin-top: 1rem; padding: 1.5rem 1.4rem; border-radius: 28px; border: 4px solid var(--paper-edge); background: linear-gradient(180deg, var(--paper) 0%, var(--paper-2) 100%); color: var(--ink); box-shadow: 0 18px 40px var(--sea); }
.paper .lead { margin: 0.25rem 0 0; font-size: 1.05rem; }
h1 { margin: 0 0 0.4rem; font: 800 clamp(1.9rem, 1.5rem + 2vw, 2.5rem)/1.1 var(--rounded); }
h2 { margin: 0 0 0.35rem; font: 800 1.2rem/1.25 var(--rounded); }
p { margin: 0.5rem 0; }
.paper section { border-top: 2px dashed var(--paper-edge); margin-top: 1.25rem; padding-top: 1.1rem; }
.paper a { color: var(--ink); font-weight: 700; text-underline-offset: 0.15em; overflow-wrap: anywhere; }
.updated { color: var(--ink-2); font-size: 0.8rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
a:focus-visible { outline: 3px solid var(--gold); outline-offset: 2px; border-radius: 4px; }
footer { padding-block: 0 2.5rem; font-size: 0.95rem; }
footer a { color: var(--white); font-weight: 700; }
