:where([class^="ri-"])::before { content: "\f3c2"; }
body {
font-family: 'Poppins', sans-serif;
background-color: #121212;
color: #ffffff;
}
.quote-box {
background-color: rgba(70, 70, 70, 0.3);
backdrop-filter: blur(5px);
}
.carousel-container {
scroll-snap-type: x mandatory;
}
.carousel-slide {
scroll-snap-align: start;
}
.carousel-indicator.active {
background-color: #D5AD2A;
width: 20px;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
-webkit-appearance: none;
margin: 0;
}
.nav-item.active {
color: #D5AD2A;
}
.stock-card {
background-color: #1E1E1E;
transition: transform 0.3s ease;
}
.stock-card:hover {
transform: translateY(-5px);
}
.blog-link.scale-95 {
  transform: scale(0.95);
  transition: transform 0.15s ease;
}

/* Fix carousel aspect ratio to 1.8:1 (width:height) */
.aspect-carousel {
  aspect-ratio: 1.8 / 1;
  width: 100%;
  max-width: 100%;
  display: block;
}
.carousel-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0.5rem;
}

/* Desktop top navbar styles */
@media (min-width: 768px) {
  .md\:hidden { display: none !important; }
  .md\:flex { display: flex !important; }
  .md\:max-w-7xl { max-width: 80rem !important; }
  .md\:w-2\/3 { width: 66.666667% !important; }
  .md\:w-1\/3 { width: 33.333333% !important; }
  .md\:mb-0 { margin-bottom: 0 !important; }
  .md\:mb-8 { margin-bottom: 2rem !important; }
  .md\:space-x-8 > :not([hidden]) ~ :not([hidden]) { margin-left: 2rem !important; }
  .md\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
  .md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .md\:grid-rows-2 { grid-template-rows: repeat(2, minmax(0, 1fr)) !important; }
  .md\:gap-4 { gap: 1rem !important; }
  .md\:space-y-0 > :not([hidden]) ~ :not([hidden]) { margin-top: 0 !important; }
  .md\:mx-auto { margin-left: auto !important; margin-right: auto !important; }
  .md\:pt-20 { padding-top: 5rem !important; }
  .md\:px-0 { padding-left: 0 !important; padding-right: 0 !important; }
}

/* Responsive grid for news and stocks */
@media (min-width: 768px) {
  .grid-cols-2 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}