 @font-face {
      font-family: 'Graphik';
      src: url('GraphikRegular.otf') format('opentype');
      font-weight: normal;
      font-style: normal;
    }

    @font-face {
      font-family: 'Graphik';
      src: url('GraphikBold.otf') format('opentype');
      font-weight: bold;
      font-style: normal;
    }

    :root {
      --bg: #ffffff;
      --text: #19190B;
      --accent: #19190B;
      --font-main: 'Graphik', sans-serif;
    }

    * {
      box-sizing: border-box;
    }

    body {
      margin: 0;
      padding: 0;
      background: var(--bg);
      color: var(--text);
      font-family: var(--font-main);
      height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .container {
      text-align: center;
      padding: 2rem;
      max-width: 600px;
    }

    h1 {
      font-size: 2.5rem;
      margin-bottom: 1rem;
      color: var(--text);
    }

    p {
      font-size: 1.2rem;
      margin-bottom: 1.5rem;
      line-height: 1.6;
    }

    .countdown {
      font-size: 1.5rem;
      font-weight: bold;
      margin-bottom: 2rem;
      color: var(--text);
    }

    a.button {
      display: inline-block;
      padding: 0.75rem 1.5rem;
      background: var(--bg);
      color: var(--text);
      text-decoration: none;
      border: 2px solid var(--text);
      border-radius: 8px;
      transition: background 0.3s, color 0.3s;
      margin: 0.5rem;
    }

    a.button:hover {
      background: var(--text);
      color: var(--bg);
    }

/* special button styling */
a.button.special {
  position: relative;
  overflow: hidden;
  border-color: gold;
  color: #19190B;
  background: #fff8dc; /* subtle warm bg */
  font-weight: bold;
  box-shadow: 0 0 10px rgba(255, 215, 0, 0.4);
  animation: glow 2s infinite alternate;
}

@keyframes glow {
  from {
    box-shadow: 0 0 5px rgba(255, 215, 0, 0.3), 0 0 10px rgba(255, 215, 0, 0.2);
  }
  to {
    box-shadow: 0 0 20px rgba(255, 215, 0, 0.8), 0 0 30px rgba(255, 215, 0, 0.5);
  }
}

a.button.special::before {
  content: "✨";
  position: absolute;
  top: -10px;
  left: -10px;
  font-size: 1.2rem;
  animation: sparkle 3s infinite linear;
}

@keyframes sparkle {
  0%   { transform: translate(0, 0) rotate(0deg); opacity: 0; }
  25%  { transform: translate(120%, 50%) rotate(45deg); opacity: 1; }
  50%  { transform: translate(220%, -20%) rotate(90deg); opacity: 0; }
  75%  { transform: translate(320%, 60%) rotate(135deg); opacity: 1; }
  100% { transform: translate(420%, 0) rotate(180deg); opacity: 0; }
}
