/* ===============================
   GLOBAL
================================ */

#main {
  background: linear-gradient(
    to bottom,
    #02041a 0%,
    #0a0830 40%,
    #1a0f3d 70%,
    #4c2ea7 100%
  ) !important;
  color: #fff;
  overflow-x: hidden;
}

.cinematic-wrapper section {
  padding: 12vh 8vw;
}

/* ===============================
   HERO
================================ */

.hero-ada {
  height: 100vh;
  position: relative;
  overflow: hidden;
}

.hero-bg-text {
  position: fixed;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 28vw;
  color: rgba(255,255,255,0.05);
  pointer-events: none;
  text-align: center;
}

.hero-top-text {
  position: absolute;
  top: 40px;
  left: 60px;
}

.hero-name {
  position: absolute;
  right: 80px;
  bottom: 100px;
}

.hero-avatar {
  margin-top: 10vh;
  text-align: center;
}

.hero-avatar img {
  width: 340px;
  filter: drop-shadow(0 40px 80px rgba(120,0,255,0.5));
}

/* ===============================
   INTRO
================================ */

.intro-section {
  min-height: 120vh;
  display: flex;
  align-items: center;
}

.intro-line {
  font-size: clamp(60px, 8vw, 140px);
  line-height: 1;
}

/* ===============================
   ABOUT
================================ */

.about-section {
  min-height: 80vh;
}

.about-grid {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 80px;
}

/* ===============================
   WORKS
================================ */

.works-section {
  padding-top: 20vh;
}

.work-block {
  margin-bottom: 40vh;
  position: relative;
}

.work-image {
  overflow: hidden;
}

.work-image img {
  width: 100%;
  transform: scale(1.2);
}

.work-block h3 {
  position: sticky;
  top: 20vh;
  font-size: 60px;
  margin-top: 20px;
}

/* ===============================
   CTA
================================ */

.cta-section {
  min-height: 60vh;
  display: flex;
  align-items: center;
}
/* ======================
   LENIS FIX
====================== */
html.lenis {
  height: auto;
}

/* ======================
   SPLIT TEXT
====================== */
.split-char {
  display: inline-block;
  transform: translateY(100%);
}

/* ======================
   HORIZONTAL SCROLL
====================== */
.horizontal-section {
  height: 100vh;
  overflow: hidden;
  position: relative;
}

.horizontal-wrapper {
  display: flex;
  height: 100%;
}

.panel {
  min-width: 100vw;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 80px;
  background: #111;
  border-right: 1px solid rgba(255,255,255,0.1);
}

/* ======================
   CUSTOM CURSOR
====================== */
.custom-cursor {
  width: 20px;
  height: 20px;
  border: 1px solid #fff;
  border-radius: 50%;
  position: fixed;
  pointer-events: none;
  z-index: 9999;
  transform: translate(-50%, -50%);
}

/* ======================
   BLUR TRANSITION
====================== */
.blur-section {
  filter: blur(10px);
  opacity: 0.5;
  transition: all 0.6s ease;
}

/* ======================
   NOISE OVERLAY
====================== */
.noise-overlay {
  position: fixed;
  inset: 0;
  background-image: url("https://grainy-gradients.vercel.app/noise.svg");
  opacity: 0.04;
  pointer-events: none;
  z-index: 999;
}
