/* ==========================================================================
   Self-Hosted Fonts & Icons
   ========================================================================== */

/* Space Grotesk */
@font-face {
  font-display: swap;
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/space/space-grotesk-v22-latin-300.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/space/space-grotesk-v22-latin-regular.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/space/space-grotesk-v22-latin-500.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/space/space-grotesk-v22-latin-600.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/space/space-grotesk-v22-latin-700.woff2') format('woff2');
}

/* Instrument Serif */
@font-face {
  font-display: swap;
  font-family: 'Instrument Serif';
  font-style: normal;
  font-weight: 300 400;
  src: url('../fonts/instrument/instrument-serif-v5-latin-regular.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Instrument Serif';
  font-style: italic;
  font-weight: 300 400;
  src: url('../fonts/instrument/instrument-serif-v5-latin-italic.woff2') format('woff2');
}

/* Material Symbols Outlined */
@font-face {
  font-display: block;
  font-family: 'Material Symbols Outlined';
  font-style: normal;
  font-weight: 100 700;
  src: url('../fonts/material-symbols-outlined.woff2') format('woff2');
}

.material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  width: 1em;
  height: 1em;
  overflow: hidden;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  -webkit-font-feature-settings: 'liga';
}

/* Glass Morphism Effect */
.glass {
  background: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.dark .glass {
  background: rgba(30, 20, 40, 0.4);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

/* Iridescent Background Gradient */
.iridescent-bg {
  background:
    radial-gradient(
      circle at 0% 0%,
      rgba(140, 43, 238, 0.15) 0%,
      transparent 50%
    ),
    radial-gradient(
      circle at 100% 100%,
      rgba(255, 182, 255, 0.2) 0%,
      transparent 50%
    ),
    radial-gradient(
      circle at 50% 50%,
      rgba(140, 43, 238, 0.05) 0%,
      transparent 100%
    );
}

/* Fluid Blob Shapes */
.fluid-shape {
  border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
}
