/* ==========================================================================
   Turink Home - Base & Custom Styles
   ========================================================================== */

/* Remix Icon 기본값 */
:where([class^="ri-"])::before {
  content: "\f3c2";
}

/* 본문 기본 폰트 및 가로 스크롤 방지 */
body {
  font-family: 'Noto Sans KR', sans-serif;
  overflow-x: hidden;
}

/* 텍스트 그라디언트 */
.text-gradient {
  background: linear-gradient(90deg, #3B82F6, #10B981);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Hero 미학적 앰비언트 배경 & 미세 테크니컬 그리드 */
.hero-atmosphere {
  position: relative;
  background: radial-gradient(circle at 50% -20%, rgba(59, 130, 246, 0.08) 0%, rgba(255, 255, 255, 0) 70%),
              radial-gradient(circle at 90% 20%, rgba(16, 185, 129, 0.04) 0%, rgba(255, 255, 255, 0) 50%);
}

.hero-grid-pattern {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.03) 1px, transparent 1px),
                    linear-gradient(to bottom, rgba(0, 0, 0, 0.03) 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: radial-gradient(ellipse at 50% 30%, black 30%, transparent 75%);
  -webkit-mask-image: radial-gradient(ellipse at 50% 30%, black 30%, transparent 75%);
}

/* 섀도우 효과 */
.card-shadow {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.nav-shadow {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

/* 가로 스크롤 스냅 (출판물 & Labs) */
.publication-card {
  scroll-snap-align: start;
}

.publication-container {
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.lab-card {
  scroll-snap-align: start;
}

.labs-container {
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}
