
:root {
  --color-bg: #0c0c0c;
  --color-text: #f5f5f5;
  --color-primary: #fedb27;
  --color-secondary: #9d4454;
  --color-accent: #fadf6f;
  --color-muted: #c99ca4;
  --max-w: 1100px;
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; background: var(--color-bg); color: var(--color-text); font-family: system-ui, -apple-system, Segoe UI, Roboto, Inter, Arial, sans-serif; line-height: 1.5; }
a { color: var(--color-accent); text-decoration: none; }
a:hover { text-decoration: underline; }

.header { position: sticky; top: 0; z-index: 20; backdrop-filter: blur(6px); background: color-mix(in srgb, var(--color-bg) 85%, transparent); border-bottom: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); }
.nav { max-width: var(--max-w); margin: 0 auto; display: flex; align-items: center; gap: 16px; padding: 12px 20px; }
.nav .logo-title { display: flex; align-items: center; gap: 12px; font-weight: 800; letter-spacing: 0.5px; }
.nav img { height: 36px; width: auto; display: block; }
.nav .spacer { flex: 1; }
.nav a { color: var(--color-text); opacity: 0.9; padding: 6px 10px; border-radius: 6px; }
.nav a:hover { background: color-mix(in srgb, var(--color-primary) 14%, transparent); }

.hero { display: grid; place-items: center; min-height: 72vh; padding: 80px 20px 40px; background: radial-gradient(1000px 600px at 50% 10%, color-mix(in srgb, var(--color-primary) 18%, transparent), transparent),
          linear-gradient(180deg, color-mix(in srgb, var(--color-primary) 10%, transparent), transparent 50%); }
.hero img { max-width: 680px; width: min(72vw, 680px); height: auto; filter: drop-shadow(0 10px 30px color-mix(in srgb, var(--color-primary) 40%, black)); }
.hero h1 { margin: 22px 0 0; font-size: clamp(1.6rem, 3.4vw, 2.2rem); text-align: center; color: var(--color-muted); font-weight: 600; }

.section { max-width: var(--max-w); margin: 0 auto; padding: 56px 20px; border-top: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); }
.section h2 { margin: 0 0 16px; font-size: clamp(1.4rem, 3vw, 1.8rem); }
.grid { display: grid; gap: 18px; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.card { background: color-mix(in srgb, var(--color-bg) 70%, #000); border: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent); border-radius: 10px; padding: 16px; }
.btn { display: inline-block; padding: 10px 14px; border-radius: 8px; background: var(--color-accent); color: #111; font-weight: 700; }
.btn:hover { filter: brightness(1.05); }

.footer { border-top: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); padding: 28px 20px; color: color-mix(in srgb, var(--color-text) 70%, transparent); }
.footer-inner { max-width: var(--max-w); margin: 0 auto; display: flex; flex-wrap: wrap; gap: 16px; align-items: center; justify-content: space-between; }
.socials a { margin-right: 10px; opacity: 0.9; }

/* Accessibility helpers */
.skip-link { position: absolute; left: -999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.skip-link:focus { position: static; width: auto; height: auto; padding: 8px 12px; background: var(--color-accent); color: #111; }
