@tailwind base;
@tailwind components;
@tailwind utilities;

/* Custom styles that complement Tailwind CSS */

/* Smooth scrolling */
html {
  scroll-behavior: smooth;
}

/* Custom animations */
.fade-in {
  animation: fadeIn 0.5s ease-in;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Custom hover effects */
.hover-scale {
  transition: transform 0.3s ease;
}

.hover-scale:hover {
  transform: scale(1.05);
}

/* Header styles */
#main-header {
  background-color: transparent;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

/* Custom components */
@layer components {
  .btn-primary {
    @apply bg-primary text-white px-6 py-2 rounded-lg hover:bg-primary-light transition-colors duration-300;
  }

  .btn-secondary {
    @apply bg-secondary text-white px-6 py-2 rounded-lg hover:bg-secondary-light transition-colors duration-300;
  }

  .container-custom {
    @apply container mx-auto px-4 sm:px-6 lg:px-8;
  }
}

.script-140 {
  font-family: "Mr De Haviland", cursive;
  font-size: 80px;
  line-height: 1;
}

.gold-outline {
  animation: 6s gradient-angle infinite linear;
  border: 3px solid transparent;
  background-image: radial-gradient(#3e555e, #2b393f),
    conic-gradient(
      from var(--gradient-angle),
      #584827 0%,
      #c7a03c 37%,
      #f9de90 30%,
      #c7a03c 33%,
      #584827 40%,
      #584827 50%,
      #c7a03c 77%,
      #f9de90 80%,
      #c7a03c 83%,
      #584827 90%
    );
  background-clip: padding-box, border-box;
  background-origin: padding-box, border-box;
}

@keyframes gradient-angle {
  to {
    --gradient-angle: 1turn;
  }
}
/* end gold outline */

.dk-blu-bg-grad {
  background: radial-gradient(
    farthest-corner at 95% 5%,
    rgb(50, 61, 86),
    rgb(20, 20, 20)
  );
  border-radius: 20px;
  padding: 10px;
}

.blu-bg-grad-rev {
  background: radial-gradient(
    farthest-corner at 5% 95%,
    rgb(69, 89, 106),
    rgb(29, 29, 29)
  );
  border-radius: 20px;
  padding: 10px;
}

/* Custom Styles */
.container-custom {
  max-width: 1280px;
  margin: 0 auto;
}

/* Parallax Background */
.parallax-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  z-index: -1;
}

/* Gold Outline Effect */
.gold-outline {
  position: relative;
  z-index: 1;
}

.gold-outline::before {
  content: "";
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  background: linear-gradient(45deg, #ffd700, #ffa500, #ffd700);
  z-index: -1;
  border-radius: inherit;
  animation: gold-glow 2s linear infinite;
}

@keyframes gold-glow {
  0% {
    opacity: 0.7;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.7;
  }
}

/* Scroll Reveal Animation */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.8s ease;
}

.reveal.active {
  opacity: 1;
  transform: translateY(0);
}
