[data-surface="public"] {
  --fc-bg: #0b0c0d;
  --fc-fg: #f5f6f2;
  --fc-muted: #b9c0bb;
  --fc-accent: #c0ff32;
  --fc-red: #ff4351;
  --fc-line: #393f3e;
  --fc-paper: #edf0ec;
  --fc-ink: #121615;
  --fc-font-display: "Space Grotesk", sans-serif;
  --fc-font-body: "Manrope", sans-serif;
  background: var(--fc-bg);
  color: var(--fc-fg);
  font-family: var(--fc-font-body);
}
[data-surface="public"] h1,
[data-surface="public"] h2,
[data-surface="public"] h3,
[data-surface="public"] .fc-display { font-family: var(--fc-font-display); font-weight: 500; letter-spacing: 0; }
[data-surface="public"] body, [data-surface="public"] { font-size: 16px; line-height: 1.5; }
.site-header { position: sticky; top: 0; z-index: 20; background: #0b0c0d; border-bottom: 1px solid var(--fc-line); }
.ticker { display: flex; align-items: center; gap: 12px; overflow: hidden; background: var(--fc-red); color: #fff; }
.ticker-track { display: flex; gap: 2rem; white-space: nowrap; animation: ticker 22s linear infinite; }
.ticker.is-paused .ticker-track { animation-play-state: paused; }
.ticker button { background: transparent; color: #fff; border: 0; padding: 8px 12px; }
@keyframes ticker { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  .ticker-track { animation: none; }
}
.intro, .toni, .ibiza-call, .manifesto, .artists, .partners, .andorra, .case-study, .gallery-entry, .services, .method, .faq, .contact, .newsletter {
  padding: 64px 24px; max-width: 1120px; margin: 0 auto;
}
.intro h1 { font-size: 56px; line-height: 1; margin: 0 0 12px; }
.toni-grid, .andorra-photos, .artist-list { display: grid; gap: 16px; }
.toni-grid { grid-template-columns: repeat(3, 1fr); }
.toni-grid img, .andorra-photos img, .artist-card img { width: 100%; height: auto; object-fit: contain; background: #111; }
.ibiza-call { background: var(--fc-red); color: #fff; max-width: none; }
.ibiza-call .ibiza-inner { max-width: 1120px; margin: 0 auto; }
.button, .fc-button { display: inline-flex; align-items: center; gap: 8px; border: 1px solid currentColor; background: transparent; color: inherit; padding: 12px 16px; text-decoration: none; }
.button-neon, .neon-button { background: var(--fc-accent); color: #111; border-color: var(--fc-accent); }
.service-list article { display: grid; grid-template-columns: auto 1fr auto; gap: 16px; padding: 16px 0; border-top: 1px solid var(--fc-line); }
#main-nav { display: flex; flex-wrap: wrap; gap: 12px 18px; }
#main-nav a { color: inherit; text-decoration: none; }
.menu-button { display: none; }
.pending-note { border: 1px solid var(--fc-line); padding: 16px; }
footer { display: flex; flex-wrap: wrap; gap: 16px; justify-content: space-between; padding: 32px 24px; border-top: 1px solid var(--fc-line); }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.hp { position: absolute; left: -9999px; height: 0; width: 0; opacity: 0; }
@media (min-width: 901px) {
  .site-header nav#main-nav { display: flex; }
  .site-header .menu-button { display: none; }
}
@media (max-width: 900px) {
  .menu-button { display: inline-flex; }
  #main-nav { display: none; }
  #main-nav.open { display: flex; flex-direction: column; }
  .toni-grid, .andorra-photos { grid-template-columns: 1fr; }
  .intro h1 { font-size: 36px; }
  .service-list article { grid-template-columns: 1fr auto; }
}
