@font-face {
  font-family: "Inter";
  src: url("/fonts/Inter.ttf") format("truetype-variations");
  font-display: swap;
}

@font-face {
  font-family: "Geist";
  src: url("/fonts/Geist.ttf") format("truetype-variations");
  font-display: swap;
}

@font-face {
  font-family: "Geist Mono";
  src: url("/fonts/GeistMono.ttf") format("truetype-variations");
  font-display: swap;
}


@font-face {
  font-family: "Recoleta";
  src: url("/fonts/Recoleta-Thin.ttf") format("truetype");
  font-weight: 100;
  font-display: swap;
}

@font-face {
  font-family: "Recoleta";
  src: url("/fonts/Recoleta-Light.ttf") format("truetype");
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: "Recoleta";
  src: url("/fonts/Recoleta-Regular.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Recoleta";
  src: url("/fonts/Recoleta-Medium.ttf") format("truetype");
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "Recoleta";
  src: url("/fonts/Recoleta-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "Recoleta";
  src: url("/fonts/Recoleta-Bold.ttf") format("truetype");
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Recoleta";
  src: url("/fonts/Recoleta-Black.ttf") format("truetype");
  font-weight: 900;
  font-display: swap;
}

/* Safari font rendering improvements */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* Enhanced font rendering for Safari */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-synthesis: none;
}

/* Specific Safari font smoothing for custom fonts */
.font-sans, 
[class*="font-sans"] {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.font-mono,
[class*="font-mono"] {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.font-serif,
[class*="font-serif"] {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Safari-specific font weight adjustments */
@supports (-webkit-appearance: none) {
  .font-normal {
    font-weight: 400;
  }

  .font-medium {
    font-weight: 500;
  }
  
  .font-semibold {
    font-weight: 600;
  }
  
  .font-bold {
    font-weight: 700;
  }
}

/* Additional Safari font rendering optimizations */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  /* Safari and Chrome specific styles */
  body, html {
    font-kerning: normal;
    font-variant-ligatures: common-ligatures;
    text-rendering: optimizeLegibility;
    -webkit-font-feature-settings: "kern", "liga", "clig", "calt";
    -moz-font-feature-settings: "kern", "liga", "clig", "calt";
    font-feature-settings: "kern", "liga", "clig", "calt";
  }
}

/* Safari text rendering optimizations */
@supports (-webkit-backdrop-filter: blur(1px)) {
  /* Safari specific */
  body {
    -webkit-text-stroke: 0.01em transparent;
    text-shadow: 0 0 0 transparent;
  }
  
  /* Better text rendering for smaller text */
  .text-xs, .text-sm {
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;
  }
  
  /* Ensure headings look crisp */
  h1, h2, h3, h4, h5, h6, 
  .text-lg, .text-xl, .text-2xl, .text-3xl, .text-4xl {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}
