/* ===================================================================
   extremo10-visual.css (Küçültülmüş Versiyon)
   EXTREMO755 – Gri Premium Tonlar, Swiper Slider ve Çerçevesiz Görseller
   =================================================================== */
/* ==========================================================================
   ANİMASYONLU CATALOG IMAGE BLOKLARI – TEK DÜZEN, MOBİLDE DE AYNI GÖRÜNÜM
   ========================================================================== */
/* ========================================================================== */
/* ===== CATALOG IMAGE BLOCK (PREMIUM, PARALLAX, SİYAH-BEYAZ, RESPONSIVE) === */
/* ========================================================================== */

.catalog-image-block {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 60px 40px;
  margin-bottom: 80px;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  background-attachment: fixed; /* Parallax efekt */
  border-radius: 0; /* Köşeler tamamen sivri */
  box-shadow: 0 12px 32px rgba(0,0,0,0.20);
  max-width: 1400px;
  height: 400px;
  margin-left: auto;
  margin-right: auto;
}



/* Bir siyah bir beyaz arkaplan (alternatifli parallax resimlerle) */
.catalog-image-block:nth-child(odd) {
  background-color: #fff;
  background-image: url('parallax-1.jpg'); /* Açık tonda arkaplan (değiştirilebilir) */
  color: #181818;
}
.catalog-image-block:nth-child(even) {
  background-color: #111;
  background-image: url('p2.jpg'); /* Koyu tonda arkaplan (değiştirilebilir) */
  color: #fff;
}

/* Koyu bloklarda beyaz, açık bloklarda siyah yazı */
.catalog-image-block .text h3,
.catalog-image-block .text p {
  color: inherit !important;
}

/* Parallax overlay: kontrastı güçlendirmek için */
.catalog-image-block::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    120deg,
    rgba(0,0,0,0.08) 0%,
    rgba(0,0,0,0.08) 100%
  );
  pointer-events: none;
}
.catalog-image-block:nth-child(even)::before {
  background: linear-gradient(
    120deg,
    rgba(0,0,0,0.45) 0%,
    rgba(0,0,0,0.38) 100%
  );
}

/* ===== GÖRSEL ALANI (Çerçevesiz, Premium) ===== */
.catalog-image-block img {
  position: relative;
  z-index: 2;
  flex: 0 0 50%;
  max-width: 440px;
  max-height: 440px;
  width: 100%;
  height: auto;
  border-radius: 16px;
  object-fit: contain;
  opacity: 0;
  /* Sadece hafif shadow, border yok */
  box-shadow: 0 8px 32px rgba(0,0,0,0.16);
  border: none;
}

/* ===== METİN ALANI (Şeffaf Arkasız, Premium) ===== */
.catalog-image-block .text {
  position: relative;
  z-index: 2;
  flex: 0 0 46%;
  max-width: 46%;
  padding: 10px 0 10px 0;
  opacity: 0;
}

.catalog-image-block .text h3 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 2.3rem;
  margin-bottom: 18px;
  letter-spacing: 1px;
  text-shadow: 0 2px 8px rgba(0,0,0,0.14);
}

.catalog-image-block .text p {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  font-size: 1.18rem;
  line-height: 1.8;
  letter-spacing: 0.6px;
  text-shadow: 0 1px 4px rgba(0,0,0,0.10);
  margin-bottom: 0;
}

/* ===== YAN BLOK SIRALAMASI ===== */
.catalog-image-block:nth-child(odd) { flex-direction: row; }
.catalog-image-block:nth-child(even) { flex-direction: row-reverse; }
@keyframes slideInFromLeft {
  from {
    opacity: 0;
    transform: translateX(-80px) scale(0.96);
    filter: blur(7px);
  }
  80% {
    filter: blur(0.7px);
    transform: translateX(4px) scale(1.01);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: none;
  }
}
@keyframes slideInFromRight {
  from {
    opacity: 0;
    transform: translateX(80px) scale(0.96);
    filter: blur(7px);
  }
  80% {
    filter: blur(0.7px);
    transform: translateX(-4px) scale(1.01);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: none;
  }
}

.catalog-image-block:nth-child(odd) img {
  animation: slideInFromLeft 1.25s cubic-bezier(.33,1.22,.47,1) forwards;
}
.catalog-image-block:nth-child(even) img {
  animation: slideInFromRight 1.25s cubic-bezier(.33,1.22,.47,1) forwards;
}
.catalog-image-block:nth-child(odd) .text {
  animation: slideInFromRight 1.25s cubic-bezier(.33,1.22,.47,1) forwards;
  animation-delay: 2s;
}
.catalog-image-block:nth-child(even) .text {
  animation: slideInFromLeft 1.25s cubic-bezier(.33,1.22,.47,1) forwards;
  animation-delay: 2s;
}

@media (max-width: 900px) {
  .catalog-image-block {
    flex-direction: column !important;
    align-items: center;
    justify-content: center;
    padding: 18vw 0 13vw 0;
    gap: 20px;
    min-height: unset;
    border-radius: 0;
    box-shadow: 0 6px 24px rgba(0,0,0,0.10);
    text-align: center;
  }

  /* Standart: önce img, sonra metin */
  .catalog-image-block img { order: 1; }
  .catalog-image-block .text { order: 2; }

  /* Sıra ters olsun isteyen bloklar için (örn: even) */
  .catalog-image-block.even img { order: 2; }
  .catalog-image-block.even .text { order: 1; }

  .catalog-image-block img {
    max-width: 94vw !important;
    width: 88vw !important;
    max-height: 64vw;
    min-height: 32vw;
    margin: 0 auto 12px auto;
    border-radius: 14px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.14);
    opacity: 1;
  }
  .catalog-image-block .text {
    max-width: 96vw !important;
    width: 93vw !important;
    margin: 0 auto;
    padding: 0;
    opacity: 1;
  }
  .catalog-image-block .text h3 {
    font-size: 1.38rem;
    margin-bottom: 12px;
    text-shadow: none;
    line-height: 1.25;
  }
  .catalog-image-block .text p {
    font-size: 1.07rem;
    line-height: 1.6;
    text-shadow: none;
  }
}



/* ===== 6. RESPONSIVE AYARLAR KALDIRILDI ===== */
/* Mobilde de aynı satır düzeni korunur; gerektiğinde yatayda kaydırma oluşur. */

/* ===== 1. RESET ===== */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  scroll-behavior: smooth;
}

html {
  font-size: 16px;
}

body {
font-family: 'Montserrat', sans-serif;
  background-color: #ffffff; /* Hafif kırık beyaz */
  color: var(--text-muted);
  line-height: 1.6;
  overflow-x: hidden;
}

/* ===== 2. RENKLER VE DEĞİŞKENLER ===== */
:root {
  --accent-red:   #e30613;
  --bg-white:     #ffffff;
  --bg-light:     #fafafa;
  --bg-dark:      #1b1b1b;
  --text-light:   #f0f0f0;
  --text-muted:   #6b6b6b;
  --overlay-dark: rgba(0, 0, 0, 0.6);
  --overlay-light: rgba(255, 255, 255, 0.3);
}

/* ===== 3. GENEL KURALLAR ===== */
.container {
  width: 100%;
  max-width: 1000px; /* 1200 → 1000 */
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;  /* 20 → 16 */
  padding-right: 16px;
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -12px;  /* 15 → 12 */
  margin-right: -12px;
}

[class*="col-"] {
  padding-left: 12px;
  padding-right: 12px;
}

.col-sm-12 { width: 100%; }
@media (min-width: 576px) {
  .col-md-2  { flex: 0 0 16.666667%; max-width: 16.666667%; }
  .col-md-6  { flex: 0 0 50%;       max-width: 50%;        }
  .col-md-10 { flex: 0 0 83.333333%; max-width: 83.333333%; }
  .col-md-12 { flex: 0 0 100%;      max-width: 100%;       }
}
@media (min-width: 992px) {
  .col-lg-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
  .col-lg-6 { flex: 0 0 50%;        max-width: 50%;        }
  .col-lg-12{ flex: 0 0 100%;       max-width: 100%;       }
}

/* ===== 4. ANİMASYONLAR ===== */
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes zoomOut {
  0% {
    opacity: 0;
    transform: scale(0.7);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.animate-fadeup {
  opacity: 0;
  animation: fadeInUp 0.8s ease-in-out forwards;
}
.animate-zoomout {
  opacity: 0;
  animation: zoomOut 0.8s ease-in-out forwards;
}
.delay-1 { animation-delay: 0.3s !important; }
.delay-2 { animation-delay: 0.6s !important; }
.delay-3 { animation-delay: 0.9s !important; }
.delay-4 { animation-delay: 1.2s !important; }

/* ===== 5. OVERLAY KATMANLARI ===== */
.overlay-dark {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--overlay-dark);
  z-index: 1;
}
.overlay-light {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--overlay-light);
  z-index: 1;
}

/* ===========================
   6. HERO BÖLÜMÜ GÜNCELLEMELER
   =========================== */

/* 6.1. Bölüm Konteyneri */
.hero-section {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  height: 50vh;       /* %50’ye çekildi */
  min-height: 300px;  /* minimum 300px’e indirildi */
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  background-color: transparent;
  border-radius: 0;
}

/* 6.2. Arka Plan Resmi */
.hero-background {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background-image: url('images/extremo/bg2.jpg');
  background-position: center; /* En üst hizadan görünmesi için */
  background-size: cover;
  background-repeat: no-repeat;
  z-index: -1;
  filter: none;     /* Bulanıklık kesinlikle yok */
  border-radius: 0; /* Keskin köşe */
}

/* 6.3. İçerik Kutusu */
.hero-content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1200px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;  /* hero-box’u alta yasla */
  padding: 10px 8px 0 8px;     /* Üst padding biraz azaltıldı */
}

/* 6.4. Siyah‐Şeffaf Kutunun (hero-box) “boyu daha kısa, eni daha geniş” ayarları */
.hero-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 410px;
  background-color: rgba(0, 0, 0, 0.705);
  border-radius: 0;       /* Keskin köşe */
  padding: 4px 24px;      /* Dikey padding: 4px, Yatay padding: 24px */
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  margin-top: auto;       /* Flex-end hizalama */
}

/* Mobil uyarlamalar: hero-box daha kompakt olsun */
@media (max-width: 992px) {
  .hero-box {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 2px 16px;
  }
}
@media (max-width: 768px) {
  .hero-box {
    padding: 2px 8px;
  }
}

/* 6.5. Sol Kısım */
.hero-left {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start; /* Yukarı hizalama */
  gap: 8px;                     /* Aradaki boşluk biraz daha kısaldı */
  align-items: center;          /* İçerikleri yatayda ortala */
  text-align: center;
  padding-top: 0px;             /* Cihaz ismi biraz yukarda dursun diye ekstra boşluk */
}

/* 6.5.a. Cihaz Başlık (daha yukarıda gözüksün) */
.hero-title {
  font-size: 5rem;
  color: #ffffff;
  font-weight: 900;
  margin: 0;
  line-height: 1.1;
  text-shadow: 1px 1px 6px rgba(0, 0, 0, 0.4);
  opacity: 0;
  animation: fadeInUp 0.8s ease-in-out 0.3s forwards;
}

/* Responsive: Başlık boyutları */
@media (max-width: 768px) {
  .hero-title {
    font-size: 3rem;
  }
}
@media (max-width: 576px) {
  .hero-title {
    font-size: 2.2rem;
  }
}

/* 6.5.b. PDF Butonu (küçük, ortalı, siyah‐şeffaf arka plana uyumlu) */
.hero-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.10); /* %10 opak beyaz, siyah üstüne kontrast */
  color: #ffffff;                              /* Beyaz yazı */
  font-size: 0.85rem;                          /* Biraz daha küçük yazı */
  font-weight: 600;
  padding: 6px 16px;                           /* 6px dikey, 16px yatay */
  border: 1px solid #ffffff;                   /* İnce beyaz çerçeve */
  border-radius: 0;                            /* Keskin köşe */
  text-decoration: none;
  transition: background-color 0.3s ease, transform 0.2s ease;
  opacity: 0;
  animation: fadeInUp 0.8s ease-in-out 0.7s forwards;
  margin: 0 auto;                              /* Ortalamak için */
}

/* Buton içindeki ikon ile yazı arası mesafe */
.hero-button i {
  margin-right: 6px;
  font-size: 1rem;
}
.hero-button:hover {
  background-color: rgba(255, 255, 255, 0.20);
  transform: translateY(-1px);
}

/* 6.6. Sağ Kısım: Cihaz Görseli */
.hero-right {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.hero-device {
  width: 40%;
  max-width: 500px;
  object-fit: contain;
  opacity: 0;
  animation: slideInRight 0.8s ease-out 1s forwards;
  border-radius: 0;
}

/* ===== 6.7. ANİMASYON TANIMLARI ===== */
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideInRight {
  0% {
    opacity: 0;
    transform: translateX(150px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

/* ===== 6.8. RESPONSIVE KÜÇÜLTMELER ===== */
@media (max-width: 992px) {
  .hero-section {
    height: 45vh;      /* Mobilde biraz daha kısaltabilirsiniz */
    min-height: 250px;
  }
  .hero-content {
    max-width: 100%;
    padding: 0 8px;
  }
  .hero-title {
    font-size: 4rem;
  }
  .hero-button {
    font-size: 0.8rem;
    padding: 6px 12px;
  }
  .hero-device {
    width: 70%;
    max-width: 500px;
    margin-left: 16px;
  }
}
@media (max-width: 768px) {
  .hero-content {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 12px 8px;
  }
  .hero-box {
    padding: 4px 8px; /* Daha kompakt kutu */
  }
  .hero-title {
    font-size: 3rem;
  }
  .hero-button {
    font-size: 0.75rem;
    padding: 4px 12px;
  }
  .hero-device {
    width: 85%;
    max-width: 350px;
    margin: 20px auto 0;
  }
}
@media (max-width: 576px) {
  .hero-section {
    height: auto;
    padding: 16px 8px;
  }
  .hero-box {
    flex-direction: column;
    padding: 4px 4px; /* En kompakt kutu */
  }
  .hero-title {
    font-size: 2rem;
  }
  .hero-button {
    font-size: 0.7rem;
    padding: 4px 10px;
  }
  .hero-device {
    width: 100%;
    max-width: 300px;
    margin: 16px auto 0;
  }
}

/* ===================================================================
   7. PARALLAX BÖLÜMÜ – PREMIUM GÖRÜNÜM
   =================================================================== */
.parallax-section {
  position: relative;
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
  min-height: 250px;
  background-size: cover;
  background-position: center;
  background-attachment: fixed;   /* Parallax efekti için sabit arka plan */
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 30px 16px;
  background-repeat: no-repeat;
}

/* ===================================================================
   OPACITY KATMANI – Premium görünüm için koyu overlay
   =================================================================== */
.parallax-section::before {
  content: '';
  position: absolute;
  top: 10%; 
  left: 5%; 
  right: 5%; 
  bottom: 5%;
  background-color: rgba(0, 0, 0, 0.45); /* %45 opak siyah overlay */
  z-index: 1;
}

/* içerik (yazı, buton, vb.) overlay üstüne geleceği için z-index:2 veriyoruz */
.parallax-content {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 700px;
  width: 100%;
  padding: 0 16px;
}

/* ===================================================================
   PARALLAX METİN STİLİ – PREMIUM TEMAYA UYGUN
   =================================================================== */
.parallax-subtitle {
  display: block;
  font-size: 0.9rem;
  font-weight: 500;
  color: #ffffff;              /* Beyaz metin */
  opacity: 0.8;                /* Hafif transparan alt başlık */
  margin-bottom: 6px;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.parallax-title {
  font-size: 2rem;             /* Biraz daha büyük başlık */
  font-weight: 700;
  margin: 0 0 12px 0;          
  color: #ffffff;              /* Beyaz metin */
  text-shadow: 0 2px 6px rgba(0,0,0,0.5); /* Hafif gölge ile okunabilirlik artar */
  line-height: 1.2;
}

.parallax-text {
  font-size: 1rem;
  font-weight: 400;
  color: #f0f0f0;              /* Çok hafif gri-beyaz metin */
  line-height: 1.6;
  margin: 0;
}

/* ===================================================================
   RESPONSIVE AYARLAR
   =================================================================== */
@media (max-width: 992px) {
  .parallax-section {
    max-width: 100%;
    min-height: 200px;
    padding: 25px 12px;
  }
  .parallax-title {
    font-size: 1.6rem;
  }
  .parallax-text {
    font-size: 0.9rem;
  }
}

@media (max-width: 576px) {
  .parallax-section {
    min-height: 150px;
    padding: 20px 8px;
  }
  .parallax-title {
    font-size: 1.4rem;
  }
  .parallax-text {
    font-size: 0.85rem;
  }
}


/* ==========================================================================
   SPECIAL SECTION – ÜÇ SÜTUN: (1,2,3) SOLDA, CİHAZ ORTADA, (4,5,6) SAĞDA
   + FADE-IN-UP & SLIDE-IN-UP ANİMASYONLARI
   ========================================================================== */

/* ===== 2.1. SPECIAL SECTION GENEL AYARLARI ===== */
.special-section {
  background-color: var(--bg-light);  /* Örn: #fafafa */
  padding: 60px 16px;
}
@media (max-width: 768px) {
  .special-section {
    padding: 40px 12px;
  }
}
@media (max-width: 576px) {
  .special-section {
    padding: 24px 8px;
  }
}

/* ===== 2.2. FLEX KONTEYNER: SOL – ORTA – SAĞ SÜTUNLAR ===== */
.special-container {
  display: flex;
  align-items: center;     /* Cihaz görselini soldaki ve sağdaki ile dikeyde ortala */
  justify-content: center;
  flex-wrap: nowrap;       /* Desktop’ta üç sütun **asla** alt alta inmesin */
  max-width: 1200px;
  margin: 0 auto;
}

/* ===== 2.3. SOL VE SAĞ TIMELINE İÇİN ORTA YÜKSEKLİĞE UYUM ===== */
.timeline {
  display: flex;
  flex-direction: column;
  justify-content: space-around; /* 3 öğeyi eşit aralıkla dikeyde dağıtır */
  position: relative;
  flex: 0 0 500px;         /* Tamamen 300px genişlik, esnemesin */
  max-width: 500px;        /* Geniş ekranda 300px’i geçmesin */
  margin: 0 16px;          /* Orta görsel’den yatayda 16px boşluk */
  min-height: 400px;       /* Orta görselin yüksekliğine yakın tut */
}

/* ===== 2.4. ORTA GÖRSEL SÜTUNU ===== */
.special-center {
  flex: 0 0 auto;          /* Kendi içeriğine göre genişlik alsın */
  margin: 0 32px;          /* Soldan/Sağdan timeline’lara 32px geniş boşluk */
}
.special-center .central-image {
  display: block;
  max-width: 400px;        /* Cihaz görseli en fazla 300px geniş */
  width: 100%;
  height: auto;
}
@media (max-width: 992px) {
  .special-center {
    margin: 0 16px;        /* Tablet ve küçük ekranlarda boşluk azalt */
  }
}

/* ===== 2.5. RESPONSIVE AYAR: 992px ALTINDA KESİN ALT ALTA ===== */
@media (max-width: 992px) {
  .special-container {
    flex-wrap: wrap;       /* Alt alta geçmeyi tekrar aktif et */
  }
  .special-container > * {
    flex: 1 1 100%;        /* Her sütun tam genişlik alsın */
    max-width: 100%;
    margin: 16px 0;        /* Üst üste gelince biraz margin */
  }
  .timeline {
    min-height: auto;      /* Cihaz yüksekliğine odaklanma */
    justify-content: flex-start; 
  }
  .timeline + .special-center,
  .special-center + .timeline {
    margin-top: 32px;      /* Alt alta geçişte boşluk */
  }
}

/* ===== 2.6. Küçük Ekran: 576px ALTINDA ===== */
@media (max-width: 576px) {
  .special-center {
    margin: 32px 0;        /* Timeline’lardan yeterince ayrışsın */
  }
}

/* ==========================================================================
   2.7. SOL TIMELINE – 1, 2, 3 BAŞLANGIÇ
   ========================================================================== */
.left-timeline {
  padding-right: 20px;     /* Dikey çizgi ile metin arasında 20px */
}
.left-timeline::before {
  content: "";
  position: absolute;
  right: 5px;             /* Timeline’ın içinde 10px içeride */
  top: 0;
  bottom: 0;
  width: 2px;
  background-color: #dddddd;
}

/* 2.7.1. SOL .timeline-item (1, 2, 3) */
.left-timeline .timeline-item {
  position: relative;
}

/* 2.7.2. SOL NUMARALI DAİRE */
.left-timeline .timeline-item::before {
  content: attr(data-number);
  position: absolute;
  right: 0;                       
  top: 50%;
  transform: translate(90%, -50%); /* Daire merkezini çizginin üzerine getir */
  width: 36px;
  height: 36px;
  border: 2px solid #cccccc;
  background-color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9rem;
  color: #777777;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* 2.7.3. SOL METİN STİLİ */
.left-timeline .timeline-title {
  font-size: 1.25rem;       
  font-weight: 600;
  color: #333333;
  margin: 0 0 6px 0;
}
.left-timeline .timeline-text {
  font-size: 0.95rem;       
  color: #555555;
  line-height: 1.6;
  margin: 0;
}

/* ==========================================================================
   2.8. SAĞ TIMELINE – 4, 5, 6 BAŞLANGIÇ
   ========================================================================== */
.right-timeline {
  padding-left: 20px;      
}
.right-timeline::before {
  content: "";
  position: absolute;
  left: 5px;              
  top: 0;
  bottom: 0;
  width: 2px;
  background-color: #dddddd;
}

/* 2.8.1. SAĞ .timeline-item (4, 5, 6) */
.right-timeline .timeline-item {
  position: relative;
}

/* 2.8.2. SAĞ NUMARALI DAİRE */
.right-timeline .timeline-item::before {
  content: attr(data-number);
  position: absolute;
  left: 0;                    
  top: 50%;
  transform: translate(-100%, -70%); /* Daire merkezini çizginin üzerine getir */
  width: 36px;
  height: 36px;
  border: 2px solid #cccccc;
  background-color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9rem;
  color: #777777;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* 2.8.3. SAĞ METİN STİLİ */
.right-timeline .timeline-title {
  font-size: 1.25rem;
  font-weight: 600;
  color: #333333;
  margin: 0 0 6px 0;
}
.right-timeline .timeline-text {
  font-size: 0.95rem;
  color: #555555;
  line-height: 1.6;
  margin: 0;
}

/* ==========================================================================
   2.9. ANİMASYON KURALLARI: fadeInUp & slideInUp
   ========================================================================== */

/* 2.9.1. fadeInUp – Hafif şeffaf + aşağıdan yukarı doğru */
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* 2.9.2. slideInUp – Görselin altından yukarı doğru */
@keyframes slideInUp {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* 2.9.3. Animasyon Sınıfları */
.animate-fadeup {
  opacity: 0;
  animation-name: fadeInUp;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

.animate-slideup {
  opacity: 0;
  animation-name: slideInUp;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

/* 2.9.4. Delay Sınıfları (saniye cinsinden) */
.delay-1       { animation-delay: 0.3s !important; }
.delay-2       { animation-delay: 0.6s !important; }
.delay-3       { animation-delay: 0.9s !important; }
.delay-4       { animation-delay: 1.2s !important; }
.delay-5       { animation-delay: 1.5s !important; }
.delay-6       { animation-delay: 1.8s !important; }
/* Orta görsel için yarım adım gecikme (0.75s gibi) */
.delay-2half   { animation-delay: 0.75s !important; }

/* ==========================================================================
   9. FEATURES (PARALLAX LIGHT BLOK) – ARKA PLAN GÖRSELLERİ 3× BÜYÜK
   ========================================================================== */
.features-section {
  position: relative;
  background-color: var(--bg-light);
  padding: 100px 16px;   /* Dikeye geniş verildi */
  overflow: hidden;
}

.features-section .feature-bg {
  position: absolute;
  top: 0;
  left: 50%;
  width: 300%;           /* 120% → 300% */
  height: 300%;          /* 120% → 300% */
  background-size: cover;
  background-position: center;
  filter: brightness(0.6);
  z-index: 1;
  opacity: 0.5;
  transform: translateX(-50%); /* Ortalamak için yatayda -50% */
}

.feature-bg-1 {
  background-image: url('images/extremo/bg1.jpg');
}
.feature-bg-2 {
  background-image: url('images/extremo/bg2.jpg');
}
.feature-bg-3 {
  background-image: url('images/extremo/bg1.jpg');
  opacity: 0.3;
}

.features-section .container {
  position: relative;
  z-index: 2;
}

.section-title {
  font-size: 2.5rem;
  color: var(--accent-red);
  text-align: center;
  margin-bottom: 50px;
}

/* Her feature-item */
.feature-item {
  background-color: rgba(255, 255, 255, 0.90);
  padding: 48px 24px;
  margin-bottom: 32px;
  text-align: center;
  z-index: 3;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.feature-icon {
  width: 80px;
  height: 80px;
  background-color: var(--accent-red);
  border-radius: 50%;
  margin: 0 auto 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bg-white);
  font-size: 36px;
}

.feature-title {
  font-size: 1.75rem;
  color: var(--text-muted);
  margin-bottom: 16px;
}

.feature-text {
  font-size: 1.1rem;
  color: var(--text-muted);
  line-height: 1.8;
  margin: 0;
}

@media (min-width: 576px) {
  .feature-item {
    flex: 0 0 48%;
    max-width: 48%;
  }
}

@media (min-width: 992px) {
  .feature-item {
    flex: 0 0 32%;
    max-width: 32%;
  }
}

@media (max-width: 576px) {
  .feature-item {
    padding: 36px 16px;
  }
  .feature-icon {
    width: 64px;
    height: 64px;
    font-size: 28px;
    margin-bottom: 16px;
  }
  .feature-title {
    font-size: 1.5rem;
    margin-bottom: 12px;
  }
  .feature-text {
    font-size: 1rem;
    line-height: 1.6;
  }
}


/* ===================================================================
   10. GALLERY (SWIPER SLIDER) – KÜÇÜLTÜLMÜŞ
   =================================================================== */
.gallery-section.section-light {
  background-color: var(--bg-white);
  padding: 80px 16px;  /* 100×20 → 80×16 */
}

.gallery-section .container {
  position: relative;
  z-index: 2;
}

.gallery-section .section-title {
  font-size: 2rem;     /* 2.5rem → 2rem */
  color: var(--accent-red);
  text-align: center;
  margin-bottom: 40px; /* 60 → 40 */
}

/* Swiper Container */
.gallery-swiper {
  width: 100%;
  padding-bottom: 40px; /* 50 → 40 */
}

/* Her bir slide */
.gallery-swiper .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Slide Görseli Sarıcı */
.slide-image-wrapper {
  position: relative;
  overflow: hidden;
  border-radius: 0;
  box-shadow: none;
  width: 100%;
  height: 0;
  padding-bottom: 60%; /* 66.66% → 60% */
}

/* Slide içindeki resim */
.slide-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

/* Hover’da hafif zoom */
.slide-image-wrapper:hover .slide-image {
  transform: scale(1.05);
}

/* Alt yazı (caption) */
.slide-caption {
  position: absolute;
  bottom: 10px;  /* 12 → 10 */
  left: 10px;    /* 12 → 10 */
  background-color: rgba(0, 0, 0, 0.5);
  color: var(--bg-white);
  padding: 4px 10px; /* 6×12 → 4×10 */
  font-size: 0.8rem; /* 0.9rem → 0.8rem */
  border-radius: 4px;
}

/* Navigasyon okları */
.gallery-swiper .swiper-button-next,
.gallery-swiper .swiper-button-prev {
  color: var(--accent-red);
  top: auto;
  bottom: 8px;    /* 10 → 8 */
  width: 32px;    /* 36 → 32 */
  height: 32px;   /* 36 → 32 */
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.9);
  opacity: 0.8;
  transition: opacity 0.3s;
}
.gallery-swiper .swiper-button-next:hover,
.gallery-swiper .swiper-button-prev:hover {
  opacity: 1;
}

/* Pagination noktaları */
.gallery-swiper .swiper-pagination-bullet {
  background: var(--text-muted);
  opacity: 0.7;
}
.gallery-swiper .swiper-pagination-bullet-active {
  background: var(--accent-red);
  opacity: 1;
}

/* Responsive ayarlar */
@media (max-width: 576px) {
  .gallery-swiper {
    padding-bottom: 30px; /* 40 → 30 */
  }
  .slide-caption {
    font-size: 0.75rem; /* 0.8rem → 0.75rem */
    bottom: 6px;        /* 8 → 6 */
    left: 6px;          /* 8 → 6 */
  }
}

/* ==========================================================================
   9. ÖZELLİKLER (YENİ) – 5× BÜYÜTME İPTAL EDİLDİ, GÖRSEL ORİJİNAL ÖLÇÜLERİNE DÖNDÜ
   ========================================================================== */

/* 9.1. Bölüm Konteyneri */
.features-section.section-light {
  background-color: var(--bg-light);
  padding: 80px 16px;
  position: relative;
  overflow: hidden;
  color: var(--text-muted);
}

.features-section .container {
  max-width: 1000px;
  margin: 0 auto;
}

/* Başlık */
.features-section .section-title {
  font-size: 2rem;
  color: var(--accent-red);
  text-align: center;
  margin-bottom: 40px;
}

/* 9.2. Satır ve Sütun Düzeni */
.features-section .row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

/* -- Sol Sütun: Cihaz Görseli -- */
.features-image-col {
  flex: 0 0 50%;
  max-width: 50%;
  text-align: center;
  margin-bottom: 32px;
}

.features-device-img {

  width: 100%;
  max-width: 400px;  /* Eski sınır geri getirildi */
  height: auto;
  object-fit: contain;
  border: none;
  box-shadow: none;
  transform: none;   /* 5× büyütme iptal edildi */
}

/* 9.3. Dikey Timeline (Liste) */
.features-timeline-col {
  flex: 0 0 50%;
  max-width: 50%;
  position: relative;
  padding-left: 40px;
}

/* Mobilde her iki sütun da %100 */
@media (max-width: 768px) {
  .features-image-col,
  .features-timeline-col {
    flex: 0 0 100%;
    max-width: 100%;
    padding-left: 0;
    margin-bottom: 24px;
  }
}

/* 9.4. Dikey Timeline Stilleri */
.features-timeline {
  list-style: none;
  position: relative;
  margin: 0;
  padding: 0;
}

.features-timeline::before {
  content: '';
  position: absolute;
  top: 0;
  left: 18px;
  width: 2px;
  height: 100%;
  background-color: var(--text-muted);
}

.features-timeline li {
  position: relative;
  margin-bottom: 32px;
  padding-left: 36px;
  display: flex;
  align-items: center;
  cursor: default;
  transition: color 0.3s ease;
}

.features-timeline .timeline-icon {
  position: absolute;
  left: 0;
  top: 0;
  width: 28px;
  height: 28px;
  background-color: var(--bg-white);
  border: 2px solid var(--text-muted);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-muted);
  font-size: 14px;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.features-timeline li p {
  margin: 0;
  font-size: 0.95rem;
  color: var(--text-muted);
  line-height: 1.5;
  transition: color 0.3s ease;
}

.features-timeline li:hover .timeline-icon {
  background-color: var(--text-muted);
  color: var(--bg-white);
}

.features-timeline li:hover p {
  color: var(--text-light);
}

.features-timeline li:last-child {
  margin-bottom: 0;
}

/* ===== 12. CTA (VISUAL) BÖLÜMÜ – KÜÇÜLTÜLMÜŞ ===== */
.cta-section.visual-cta {
  position: relative;
  width: 100%;
  height: 60vh;       /* 80vh → 60vh */
  min-height: 400px;  /* 600px → 400px */
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cta-video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 140vh;      /* 177.77vh → 140vh */
  height: 100vh;
  object-fit: cover;
  transform: translate(-50%, -50%);
  z-index: 0;
}

.cta-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--overlay-dark);
  z-index: 1;
}

.cta-content {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 600px; /* 700 → 600 */
  padding: 0 16px;  /* 20 → 16 */
  color: var(--text-light);
}

.cta-title {
  font-size: 2rem; /* 2.5rem → 2rem */
  font-weight: 700;
  margin-bottom: 16px; /* 20 → 16 */
  color: var(--text-light);
}

.cta-text {
  font-size: 1rem;  /* 1.125rem → 1rem */
  margin-bottom: 24px; /* 30 → 24 */
  color: var(--text-light);
}

.cta-button {
  display: inline-block;
  background-color: var(--accent-red);
  color: var(--bg-white);
  font-size: 0.95rem; /* 1rem → 0.95rem */
  font-weight: 600;
  padding: 12px 28px; /* 14×32 → 12×28 */
  border-radius: 4px;
  text-decoration: none;
  transition: background-color 0.3s ease;
}
.cta-button:hover {
  background-color: #b2040f;
}

/* ===== 13. DİĞER GENEL KURALLAR ===== */
a {
  color: var(--accent-red);
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

/* section-title alt çizgi */
.section-title::after {
  content: '';
  display: block;
  width: 50px;  /* 60 → 50 */
  height: 4px;
  background-color: var(--accent-red);
  margin: 8px auto 0; /* 10 → 8 */
}

/* Mobil düzenlemeler */
@media (max-width: 768px) {
  .section-title {
    font-size: 1.8rem; /* 2rem → 1.8rem */
    color: var(--accent-red);
  }
}

@media (max-width: 576px) {
  body {
    padding-top: 16px; /* 20 → 16 */
  }
  .section-title {
    font-size: 1.5rem; /* 1.75rem → 1.5rem */
    color: var(--accent-red);
  }
  .hero-title {
    font-size: 1.8rem; /* 2rem → 1.8rem */
    color: var(--accent-red);
  }
}
