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

:root {
  font-family: 'Poppins', sans-serif;
}

:host, html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* Force hide default cursor everywhere */
*, body, a, button, input, select, textarea, [role="button"] {
  cursor: none !important;
}

/* Styles for animated section titles and underlines */
.anim-title, .title-underline {
  visibility: hidden; /* Hide until animated in by GSAP to prevent FOUC */
}
.anim-title {
  position: relative; /* Needed for the pseudo-element */
  z-index: 1;
}

/* This pseudo-element creates a blurred, gradient copy behind the text */
.anim-title::after {
  content: attr(data-text);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  color: currentColor; /* Inherit color from the h2 */
  filter: blur(6px); /* The main blur effect */
  opacity: 0.6; /* Make it a bit subtle */
  
  /* The gradient mask: more visible at the bottom, fades out at the top */
  -webkit-mask-image: linear-gradient(to top, black 25%, transparent 100%);
  mask-image: linear-gradient(to top, black 25%, transparent 100%);
}

.title-underline {
  width: 400px;
  height: 3px;
  background-color: rgb(220, 38, 38); /* Solid red */
  margin: 1rem auto 2rem;
  transform-origin: center;
}

.frosted-glass-orb {
  position: absolute;
  transform: translate(-50%, -50%);
  min-width: 500px;
  min-height: 540px;
  border-radius: 50%;
  /* Fix: Standard property should come after vendor prefix */
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  z-index: 0;
  -webkit-mask-image: radial-gradient(circle, black 40%, transparent 70%);
  mask-image: radial-gradient(circle, black 40%, transparent 70%);
}

.orb-team {
  top: 50%;
  left: 50%;
  width: 70vw;
  height: 70vw;
  max-width: 700px;
  max-height: 700px;
  background-color: rgba(212, 213, 240, 0.05);
}

.orb-works {
  top: 50%;
  left: 50%;
  width: 90vw;
  height: 90vw;
  max-width: 940px;
  max-height: 940px;
  background-color: rgba(212, 213, 240, 0.05);
}

.orb-clients {
  top: 50%;
  left: 50%;
  width: 60vw;
  height: 60vw;
  max-width: 600px;
  max-height: 600px;
  background-color: rgba(212, 213, 240, 0.05);
}