@font-face { font-family: "Playfair Display"; font-weight: 700; src: url("fonts/PlayfairDisplay-Bold.ttf") format("truetype"); font-display: swap; }
@font-face { font-family: "Manrope"; font-weight: 400; src: url("fonts/Manrope-Regular.ttf") format("truetype"); font-display: swap; }
@font-face { font-family: "Manrope"; font-weight: 700; src: url("fonts/Manrope-Bold.ttf") format("truetype"); font-display: swap; }

/* Mediterraneo palette, like the app. */
:root { --bg: #F7F8FA; --tile: #E3E9F2; --ink: #10223F; --muted: #4F5D75; --accent: #1E5AA8; --selection: #F2C14E; }
@media (prefers-color-scheme: dark) {
  :root { --bg: #0D1626; --tile: #1B2842; --ink: #E8EEF7; --muted: #9AA8BF; --accent: #7FB0F5; }
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink); font: 17px/1.6 "Manrope", system-ui, sans-serif; }
main { max-width: 720px; margin: 0 auto; padding: 48px 20px 64px; }
h1, h2 { font-family: "Playfair Display", Georgia, serif; line-height: 1.2; }
h1 { font-size: 2.4rem; margin: 0.4em 0 0.2em; }
h2 { font-size: 1.4rem; margin-top: 2em; }
a { color: var(--accent); }
.muted { color: var(--muted); }
.logo { width: 96px; height: 96px; border-radius: 24px; display: block; }
.hero { text-align: center; padding-top: 10vh; }
.hero .logo { margin: 0 auto; }
.tagline { font-size: 1.2rem; color: var(--muted); }
.badge { display: inline-block; margin-top: 24px; padding: 12px 22px; border-radius: 22px; background: var(--tile); font-weight: 700; }
.badge::after { content: ""; display: block; height: 3px; margin-top: 4px; border-radius: 2px; background: var(--selection); }
a.page { text-decoration: none; color: inherit; }
header.page { display: flex; align-items: center; gap: 12px; text-decoration: none; color: inherit; }
header.page .logo { width: 44px; height: 44px; border-radius: 11px; }
header.page span { font-family: "Playfair Display", Georgia, serif; font-weight: 700; font-size: 1.4rem; }
footer { margin-top: 64px; font-size: 0.9rem; color: var(--muted); text-align: center; }
