:root {
    /* Brand colors */
    --ift-blue: #0b72ff;
    --ift-orange: #ff9b00;
  
    --ift-bg: #020617;           /* Very dark backdrop */
    --ift-card-bg: rgba(15, 23, 42, 0.9);
    --ift-text-main: #e5e7eb;    /* Light gray text */
    --ift-text-muted: #9ca3af;
    --ift-focus-ring: #ff9b00;   /* Accessible focus outline in orange */
  }
  
  body {
    min-height: 100vh;
    background: radial-gradient(circle at top, #1f2937 0, var(--ift-bg) 50%);
    color: var(--ift-text-main);
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  }
  
  a.skip-link {
    position: absolute;
    left: -999px;
    top: 0.5rem;
    padding: 0.5rem 1rem;
    background-color: #ffffff;
    color: #000000;
    border-radius: 0.25rem;
    z-index: 1000;
  }
  
  a.skip-link:focus {
    left: 0.5rem;
  }
  
  .coming-soon-wrapper {
    min-height: 100vh;
  }
  
  .ift-card {
    background-color: var(--ift-card-bg);
    border-radius: 1.5rem;
    border: 1px solid rgba(148, 163, 184, 0.4);
    box-shadow: 0 20px 40px rgba(15, 23, 42, 0.8);
    padding: 2.5rem 2rem;
    max-width: 540px;
    width: 100%;
  }
  
  @media (min-width: 576px) {
    .ift-card {
      padding: 3rem;
    }
  }
  
  /* Logo image */
  .logo-img {
    max-width: 230px;
    filter: drop-shadow(0 0 25px rgba(11, 114, 255, 0.65));
  }
  
  /* Typography & brand text */
  
  .brand-name {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--ift-text-main);
    margin-bottom: 0.5rem;
  }
  
  .brand-subtitle {
    text-align: center;
    font-size: 0.9rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--ift-blue);
    margin-bottom: 2rem;
  }
  
  /* Language toggle */
  
  .language-toggle .btn {
    border-radius: 999px;
    padding-inline: 1.1rem;
    font-size: 0.85rem;
  }
  
  .language-toggle .btn[aria-pressed="true"] {
    background: linear-gradient(135deg, var(--ift-blue), var(--ift-orange));
    border-color: transparent;
    color: #020617;
    font-weight: 600;
  }
  
  .language-toggle .btn[aria-pressed="false"] {
    background-color: transparent;
    border-color: rgba(148, 163, 184, 0.7);
    color: var(--ift-text-muted);
  }
  
  .language-toggle .btn:focus-visible {
    outline: 3px solid var(--ift-focus-ring);
    outline-offset: 2px;
  }
  
  /* Headings & body text */
  
  h1,
  h2 {
    color: var(--ift-text-main);
  }
  
  .ift-highlight {
    color: var(--ift-orange);
  }
  
  .ift-body {
    font-size: 0.98rem;
    color: var(--ift-text-main);
  }
  
  /* Badge */
  
  .ift-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.3rem 0.7rem;
    border-radius: 999px;
    background: linear-gradient(
      135deg,
      rgba(11, 114, 255, 0.15),
      rgba(255, 155, 0, 0.18)
    );
    border: 1px solid rgba(148, 163, 184, 0.6);
    color: #f9fafb;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 1.25rem;
  }
  
  .ift-badge span {
    display: inline-block;
  }
  
  .ift-badge-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background-color: #22c55e;
    box-shadow: 0 0 10px rgba(34, 197, 94, 0.9);
  }
  
  /* Footer */
  
  .ift-footer {
    font-size: 0.8rem;
    color: var(--ift-text-muted);
    margin-top: 2rem;
  }
  
  /* Reduced motion preference */
  
  @media (prefers-reduced-motion: reduce) {
    * {
      scroll-behavior: auto !important;
      animation-duration: 0.001ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.001ms !important;
    }
  }
  