/* ═══════════════════════════════════════════════════════════════
   brasa — coming-soon.css
   Standalone landing for the pre-launch phase.
   Cream canvas, royal-blue type, very minimal.
   ═══════════════════════════════════════════════════════════════ */

@font-face {
  font-family: 'The Seasons';
  src: url('../fonts/TheSeasons.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --cs-cream:      #EFE6D3;
  --cs-royal-blue: #0039A6;
  --cs-blue-soft:  rgba(0, 57, 166, 0.55);
  --cs-ease:       cubic-bezier(0.16, 1, 0.3, 1);
}

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html, body {
  height: 100%;
  background: var(--cs-cream);
}

body {
  font-family: 'Poppins', -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif;
  color: var(--cs-royal-blue);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow: hidden;
}

/* ── Page shell ── */
.coming-soon {
  position: relative;
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  padding: clamp(20px, 4vw, 32px);
}

.coming-soon__inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: clamp(14px, 2.4vh, 22px);
}

/* ── Big brasa wordmark (no faux-bold: not an h1, weight 400, synthesis off) ── */
.coming-soon__logo {
  font-family: 'The Seasons', Georgia, 'Times New Roman', serif;
  font-size: clamp(72px, 18vw, 220px);
  font-weight: 400;
  font-style: normal;
  font-synthesis: none;
  letter-spacing: -0.04em;
  line-height: 0.85;
  color: var(--cs-royal-blue);
  margin: 0;

  opacity: 0;
  transform: translateY(8px);
  animation: cs-rise 1.2s var(--cs-ease) 0.05s forwards;
}

/* ── Hint ── */
.coming-soon__hint {
  font-size: clamp(10px, 1vw, 11.5px);
  font-weight: 500;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: var(--cs-royal-blue);

  opacity: 0;
  transform: translateY(8px);
  animation: cs-rise 1.2s var(--cs-ease) 0.4s forwards;
}

/* ── Tagline ── */
.coming-soon__tagline {
  font-size: clamp(13px, 1.5vw, 16px);
  font-weight: 300;
  letter-spacing: 0.02em;
  color: var(--cs-royal-blue);
  max-width: 32ch;

  opacity: 0;
  transform: translateY(8px);
  animation: cs-rise 1.2s var(--cs-ease) 0.7s forwards;
}

/* ── Footer ── */
.coming-soon__footer {
  display: flex;
  justify-content: center;
  padding-top: clamp(16px, 2.5vw, 22px);

  opacity: 0;
  animation: cs-fade 1.2s var(--cs-ease) 1s forwards;
}

.coming-soon__footer p {
  font-size: 10.5px;
  font-weight: 300;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--cs-blue-soft);
}

/* ── Animations ── */
@keyframes cs-rise {
  to { opacity: 1; transform: translateY(0); }
}

@keyframes cs-fade {
  to { opacity: 1; }
}

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
  .coming-soon__logo,
  .coming-soon__hint,
  .coming-soon__tagline,
  .coming-soon__footer {
    opacity: 1;
    transform: none;
    animation: none;
  }
}

/* ── Selection ── */
::selection { background: var(--cs-royal-blue); color: var(--cs-cream); }
