:root {
  --tuncmatik-orange: var(--brand-primary, #ef4f0c);
  --tuncmatik-orange-dark: var(--brand-primary-dark, #d94500);
  --tuncmatik-dark: #2c3233;
  --tuncmatik-gray: #f8f8f8;
  --tuncmatik-text: #333333;
  --background: 0 0% 100%;
  --foreground: 200 4% 18%;
}

.dark {
  --background: 200 4% 10%;
  --foreground: 0 0% 98%;
}

* {
  border-color: hsl(0 0% 90%);
}

body {
  background-color: hsl(var(--background));
  color: hsl(var(--foreground));
  font-family: 'Poppins', sans-serif;
}

/* Ürün detay ana görsel: dokunmatikte yakınlaştırma beklenmez */
@media (hover: none), (pointer: coarse) {
  .catalog-pdp-zoom-viewport {
    cursor: default !important;
  }
}

/* Ürün galerisi: yatay kaydırma ile sayfa geri / yatay scroll çakışmasını azaltır */
.catalog-pdp-swipe-zone[data-catalog-pdp-swipe] {
  touch-action: pan-y;
  overscroll-behavior-x: contain;
}

::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: var(--brand-primary, #ef4f0c);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--brand-primary-dark, #d94500);
}

.hero-overlay {
  background: linear-gradient(135deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.1) 100%);
}

.orange-glow {
  box-shadow: 0 0 30px color-mix(in srgb, var(--brand-primary, #ef4f0c) 30%, transparent);
}

.service-card {
  transition: all 0.3s ease;
}

.service-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.product-card {
  transition: all 0.3s ease;
}

.product-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}

.animated-underline {
  position: relative;
}

.animated-underline::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 3px;
  background: var(--brand-primary, #ef4f0c);
}

.btn-primary {
  background: var(--brand-primary, #ef4f0c);
  transition: all 0.3s ease;
}

.btn-primary:hover {
  background: var(--brand-primary-dark, #d94500);
  transform: translateY(-2px);
  box-shadow: 0 5px 15px color-mix(in srgb, var(--brand-primary, #ef4f0c) 40%, transparent);
}

.btn-outline-primary {
  border: 2px solid var(--brand-primary, #ef4f0c);
  color: var(--brand-primary, #ef4f0c);
  transition: all 0.3s ease;
}

.btn-outline-primary:hover {
  background: var(--brand-primary, #ef4f0c);
  color: white;
}

.blog-card {
  transition: all 0.3s ease;
}

.blog-card:hover {
  transform: translateY(-5px);
}

.blog-card:hover .blog-image {
  transform: scale(1.05);
}

.nav-dropdown {
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.3s ease;
}

.nav-item:hover .nav-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.animate-fade-in-up {
  animation: fadeInUp 0.6s ease forwards;
}

.stagger-children > * {
  opacity: 0;
  animation: fadeInUp 0.5s ease forwards;
}

.stagger-children > *:nth-child(1) {
  animation-delay: 0.1s;
}
.stagger-children > *:nth-child(2) {
  animation-delay: 0.2s;
}
.stagger-children > *:nth-child(3) {
  animation-delay: 0.3s;
}
.stagger-children > *:nth-child(4) {
  animation-delay: 0.4s;
}
.stagger-children > *:nth-child(5) {
  animation-delay: 0.5s;
}
.stagger-children > *:nth-child(6) {
  animation-delay: 0.6s;
}

@keyframes scroll-x {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.marquee {
  animation: scroll-x 20s linear infinite;
}

.marquee:hover {
  animation-play-state: paused;
}

.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.catalog-detail-prose h2 {
  font-size: 1.375rem;
  font-weight: 700;
  color: #2c3233;
  margin-top: 1.75rem;
  margin-bottom: 0.75rem;
}
.catalog-detail-prose h3 {
  font-size: 1.125rem;
  font-weight: 600;
  color: #2c3233;
  margin-top: 1.25rem;
}
.catalog-detail-prose p,
.catalog-detail-prose li {
  color: #4b5563;
  line-height: 1.7;
}
.catalog-detail-prose ul {
  list-style-type: disc;
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}
.catalog-detail-prose a {
  color: var(--brand-primary, #ef4f0c);
  text-decoration: underline;
}
.catalog-detail-prose a:hover {
  color: var(--brand-primary-dark, #d94500);
}

/* Kurumsal sayfa — görsel kaydırıcı */
.kurumsal-carousel-track {
  scrollbar-width: none;
  -ms-overflow-style: none;
  overscroll-behavior-x: contain;
  touch-action: pan-x pinch-zoom;
}
.kurumsal-carousel-track::-webkit-scrollbar {
  display: none;
}
.kurumsal-carousel-dot--active {
  background-color: var(--brand-primary, #ef4f0c);
}
.kurumsal-carousel-dot--active:hover {
  background-color: var(--brand-primary-dark, #d94500);
}
