/* =====================================================================
   ÇETİNKAYA HURDACILIK — Profesyonel UI/UX Yenileme Katmanı
   Mevcut Elementor/JupiterX yapısının üzerine uygulanır.
   Geri almak için: mu-plugins/cetinkaya-design.php dosyasını silin.
   ===================================================================== */

:root {
  --ck-green-950: #052e16;
  --ck-green-900: #14532d;
  --ck-green-700: #15803d;
  --ck-green-600: #16a34a;
  --ck-green-100: #dcfce7;
  --ck-green-50:  #f0fdf4;
  --ck-ink:       #0f172a;
  --ck-slate-700: #334155;
  --ck-slate-600: #475569;
  --ck-slate-400: #94a3b8;
  --ck-slate-200: #e2e8f0;
  --ck-slate-100: #f1f5f9;
  --ck-slate-50:  #f8fafc;
  --ck-radius:    18px;
  --ck-shadow-sm: 0 1px 2px rgba(15, 23, 42, .06), 0 1px 3px rgba(15, 23, 42, .08);
  --ck-shadow-lg: 0 18px 44px -14px rgba(15, 23, 42, .22);
  --ck-font-head: 'Archivo', 'Oswald', sans-serif;
  --ck-font-body: 'Source Sans 3', 'Open Sans', sans-serif;
}

/* ---------- Temel tipografi ---------- */
body {
  font-family: var(--ck-font-body) !important;
  color: var(--ck-slate-600);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6,
.raven-heading,
.elementor-image-box-title,
.elementor-icon-box-title,
.raven-button,
.mae-el-heading {
  font-family: var(--ck-font-head) !important;
}

.elementor-widget-text-editor p { line-height: 1.7; font-size: 1.05rem; }

::selection { background: var(--ck-green-100); color: var(--ck-green-950); }

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

a:focus-visible, button:focus-visible, .raven-button:focus-visible {
  outline: 3px solid var(--ck-green-600) !important;
  outline-offset: 2px;
  border-radius: 6px;
}

/* ---------- Üst bilgi çubuğu (topbar) ---------- */
.elementor-11 .elementor-element.elementor-element-5f355cd5 {
  background: var(--ck-ink) !important;
  padding: 9px 0 !important;
}
.elementor-11 .elementor-element.elementor-element-5f355cd5,
.elementor-11 .elementor-element.elementor-element-5f355cd5 a,
.elementor-11 .elementor-element.elementor-element-5f355cd5 .elementor-icon-list-text {
  color: rgba(255, 255, 255, .88) !important;
  font-size: 13.5px !important;
  letter-spacing: .02em;
}
.elementor-11 .elementor-element.elementor-element-5f355cd5 .elementor-icon-list-icon i,
.elementor-11 .elementor-element.elementor-element-5f355cd5 svg {
  color: var(--ck-green-600) !important;
  fill: var(--ck-green-600) !important;
}
.elementor-11 .elementor-element.elementor-element-5f355cd5 a:hover .elementor-icon-list-text {
  color: #fff !important;
}

/* ---------- Header / navigasyon ---------- */
.elementor-11 .elementor-element.elementor-element-f87e76f {
  background: rgba(255, 255, 255, .96) !important;
  backdrop-filter: blur(10px);
  box-shadow: 0 1px 0 var(--ck-slate-200), 0 8px 24px -18px rgba(15, 23, 42, .25);
  padding: 6px 0 !important;
}
.elementor-11 .raven-nav-menu a,
.elementor-11 .raven-nav-menu .raven-menu-item {
  font-family: var(--ck-font-head) !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  letter-spacing: .03em;
  color: var(--ck-ink) !important;
  transition: color .2s ease;
}
.elementor-11 .raven-nav-menu a:hover,
.elementor-11 .raven-nav-menu .raven-menu-item:hover {
  color: var(--ck-green-700) !important;
}

/* ---------- Rozet / etiket (chip) stilleri ---------- */
.elementor-1124 .elementor-element-4c49e38 > .elementor-widget-container,
.elementor-1124 .elementor-element-42eb137 > .elementor-widget-container {
  background: var(--ck-green-100) !important;
  border-radius: 999px !important;
  padding: 7px 20px !important;
}
.elementor-1124 .elementor-element-4c49e38 .raven-heading,
.elementor-1124 .elementor-element-42eb137 .raven-heading,
.elementor-1124 .elementor-element.elementor-element-4c49e38 .raven-heading-title,
.elementor-1124 .elementor-element.elementor-element-42eb137 .raven-heading-title {
  color: var(--ck-green-900) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  text-shadow: none !important;
}

/* ---------- HERO ---------- */
.elementor-1124 .elementor-element.elementor-element-c3bf362 {
  margin-bottom: 0 !important;
  position: relative;
}
.elementor-1124 .elementor-element.elementor-element-c3bf362 > .elementor-background-overlay {
  opacity: .5 !important;
}
/* Okunabilirlik için koyu degrade katman */
.elementor-1124 .elementor-element.elementor-element-c3bf362::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(100deg, rgba(3, 25, 12, .93) 0%, rgba(4, 28, 14, .72) 45%, rgba(6, 30, 16, .35) 100%);
  z-index: 1;
  pointer-events: none;
}
.elementor-1124 .elementor-element.elementor-element-c3bf362 > .elementor-container {
  position: relative;
  z-index: 2;
  padding-top: 90px;
  padding-bottom: 100px;
}
/* Kolon arka plan katmanını kaldır */
.elementor-1124 .elementor-element.elementor-element-c3bf362 .elementor-widget-wrap > .elementor-background-overlay {
  display: none !important;
}
/* Hero rozeti */
.elementor-1124 .elementor-element-9429bdf > .elementor-widget-container {
  background: rgba(255, 255, 255, .1) !important;
  border: 1px solid rgba(255, 255, 255, .32);
  border-radius: 999px !important;
  padding: 8px 20px !important;
  backdrop-filter: blur(6px);
}
.elementor-1124 .elementor-element-9429bdf .raven-heading {
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  text-shadow: none !important;
}
/* Hero başlığı: giriş animasyonunu kaldır (LCP + görünürlük garantisi) */
.elementor-1124 .elementor-element-0d7525c {
  visibility: visible !important;
  opacity: 1 !important;
  animation: none !important;
  transform: none !important;
}
.elementor-1124 .elementor-element-0d7525c .raven-heading-title {
  color: #fff !important;
  font-size: clamp(2.1rem, 4.6vw, 3.5rem) !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
  letter-spacing: -.01em !important;
  text-shadow: 0 2px 24px rgba(0, 0, 0, .35);
}
/* Hero açıklaması */
.elementor-1124 .elementor-element-6940401 p {
  color: rgba(255, 255, 255, .92) !important;
  font-size: 1.2rem !important;
  max-width: 560px;
  line-height: 1.65;
}

/* ---------- Butonlar (genel) ---------- */
.raven-button {
  border-radius: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease !important;
  cursor: pointer;
  white-space: nowrap;
}
.raven-button .raven-button-text { white-space: nowrap; }
.raven-button:hover { transform: translateY(-2px); }

/* Hero birincil buton */
.elementor-1124 .elementor-element-9a8f553 .raven-button {
  background: var(--ck-green-600) !important;
  color: #fff !important;
  padding: 16px 34px !important;
  font-size: 15px !important;
  box-shadow: 0 10px 26px -8px rgba(22, 163, 74, .55);
  border: none !important;
}
.elementor-1124 .elementor-element-9a8f553 .raven-button:hover {
  background: var(--ck-green-700) !important;
  box-shadow: 0 14px 30px -8px rgba(22, 163, 74, .65);
}
/* Hero ikincil buton */
.elementor-1124 .elementor-element-25ca0ea .raven-button {
  background: transparent !important;
  color: #fff !important;
  border: 2px solid rgba(255, 255, 255, .55) !important;
  padding: 14px 30px !important;
  font-size: 15px !important;
}
.elementor-1124 .elementor-element-25ca0ea .raven-button:hover {
  background: rgba(255, 255, 255, .12) !important;
  border-color: #fff !important;
}

/* ---------- HİZMETLER bölümü ---------- */
.elementor-1124 .elementor-element.elementor-element-f852ef0,
.elementor-1124 .elementor-element.elementor-element-f852ef0:not(.elementor-motion-effects-element-type-background) {
  background-color: #ffffff !important;
  background-image: linear-gradient(180deg, var(--ck-green-50) 0%, #ffffff 46%) !important;
  margin-top: 0 !important;
  padding-top: 84px !important;
}
/* Bölüm başlıkları */
.elementor-1124 .elementor-element.elementor-element-f852ef0 h2 .raven-heading-title,
.elementor-1124 .elementor-element.elementor-element-f852ef0 h2.raven-heading .raven-heading-title,
.elementor-1124 .mae-el-heading {
  color: var(--ck-ink) !important;
  font-weight: 800 !important;
  letter-spacing: -.01em !important;
}

/* Hizmet kartları (yalnızca içinde kart içeriği olan kolonlar) */
.elementor-1124 .elementor-element-f852ef0 .elementor-inner-column > .elementor-widget-wrap:not(:has(.elementor-widget-image-box)) {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.elementor-1124 .elementor-element-f852ef0 .elementor-inner-column > .elementor-widget-wrap {
  background: #fff !important;
  border: 1px solid var(--ck-slate-200) !important;
  border-radius: var(--ck-radius) !important;
  box-shadow: var(--ck-shadow-sm) !important;
  padding: 34px 22px 28px !important;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.elementor-1124 .elementor-element-f852ef0 .elementor-inner-column > .elementor-widget-wrap:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 44px -16px rgba(21, 128, 61, .28) !important;
  border-color: #bbf7d0 !important;
}
/* Kart görselleri */
.elementor-1124 .elementor-element-f852ef0 .elementor-image-box-img img {
  border-radius: 50% !important;
  border: 6px solid var(--ck-green-50);
  box-shadow: 0 8px 22px -8px rgba(15, 23, 42, .3);
}
/* Kart başlıkları */
.elementor-1124 .elementor-element-f852ef0 .elementor-image-box-title {
  color: var(--ck-ink) !important;
  font-size: 1.08rem !important;
  font-weight: 700 !important;
  letter-spacing: .07em !important;
  position: relative;
  padding-bottom: 12px;
  margin-bottom: 10px !important;
}
.elementor-1124 .elementor-element-f852ef0 .elementor-image-box-title::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 34px;
  height: 3px;
  border-radius: 2px;
  background: var(--ck-green-600);
}
/* Kart açıklamaları */
.elementor-1124 .elementor-element-f852ef0 .elementor-image-box-description {
  color: var(--ck-slate-600) !important;
  font-size: .98rem !important;
  line-height: 1.65 !important;
}

/* Hakkımızda görseli */
.elementor-1124 .elementor-widget-raven-image img {
  border-radius: 20px !important;
  box-shadow: var(--ck-shadow-lg);
}

/* ---------- Hakkımızda bölümü ---------- */
.elementor-1124 .elementor-element.elementor-element-bc32e3a {
  background: var(--ck-slate-50) !important;
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}
.elementor-1124 .elementor-element-bc32e3a .elementor-widget-text-editor p {
  font-size: 1.08rem !important;
  color: var(--ck-slate-600) !important;
  line-height: 1.7 !important;
  font-family: var(--ck-font-body) !important;
}
.elementor-1124 .elementor-element-bc32e3a h2,
.elementor-1124 .elementor-element-bc32e3a .mae-heading {
  color: var(--ck-ink) !important;
  font-weight: 800 !important;
}
.elementor-1124 .jet-testimonials__item .jet-testimonials__content {
  background: #fff !important;
  border: 1px solid var(--ck-slate-200) !important;
  border-radius: var(--ck-radius) !important;
  box-shadow: var(--ck-shadow-sm) !important;
  padding: 30px 26px !important;
}
.elementor-1124 .jet-testimonials__comment { color: var(--ck-slate-600) !important; line-height: 1.7 !important; }
.elementor-1124 .jet-testimonials__name { color: var(--ck-ink) !important; font-weight: 700 !important; }

/* ---------- CTA bölümü (Hemen Arayın) ---------- */
.elementor-1124 .elementor-element.elementor-element-e8d07a9,
.elementor-1124 .elementor-element.elementor-element-e8d07a9:not(.elementor-motion-effects-element-type-background) {
  background-color: var(--ck-green-900) !important;
  background-image: linear-gradient(120deg, var(--ck-green-950) 0%, var(--ck-green-900) 45%, var(--ck-green-700) 100%) !important;
  padding-top: 90px !important;
  padding-bottom: 90px !important;
}
.elementor-1124 .elementor-element-f49619a p {
  color: #fff !important;
  font-family: var(--ck-font-head) !important;
  font-size: clamp(1.6rem, 3.2vw, 2.5rem) !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  letter-spacing: -.01em;
}
.elementor-1124 .elementor-element-f49619a span,
.elementor-1124 .elementor-element-f49619a a {
  color: #bbf7d0 !important;
}
/* CTA telefon butonu */
.elementor-1124 .elementor-element-96d525d .raven-button {
  background: #fff !important;
  color: var(--ck-green-900) !important;
  border-radius: 999px !important;
  padding: 20px 48px !important;
  font-size: 1.35rem !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
  box-shadow: 0 18px 44px -12px rgba(0, 0, 0, .45);
  border: none !important;
}
.elementor-1124 .elementor-element-96d525d .raven-button:hover {
  background: var(--ck-green-50) !important;
  transform: translateY(-3px) scale(1.02);
}

/* ---------- İletişim bölümü ---------- */
.elementor-1124 .elementor-element.elementor-element-57eca4e {
  padding-top: 90px !important;
  padding-bottom: 90px !important;
}
.elementor-1124 .elementor-element-57eca4e h2 .raven-heading-title,
.elementor-1124 .elementor-element-57eca4e .raven-heading-h2 .raven-heading-title {
  color: var(--ck-ink) !important;
  font-weight: 800 !important;
}
.elementor-1124 .elementor-element-57eca4e .elementor-icon-box-icon .elementor-icon {
  background: var(--ck-green-100) !important;
  color: var(--ck-green-700) !important;
  fill: var(--ck-green-700) !important;
  border-radius: 14px !important;
  padding: 14px !important;
  font-size: 22px !important;
  transition: transform .2s ease;
}
.elementor-1124 .elementor-element-57eca4e .elementor-icon-box-wrapper:hover .elementor-icon {
  transform: scale(1.08);
}
.elementor-1124 .elementor-element-57eca4e .elementor-icon-box-title {
  color: var(--ck-ink) !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
}
.elementor-1124 .elementor-element-57eca4e .elementor-icon-box-description {
  color: var(--ck-slate-600) !important;
  font-size: 1.02rem !important;
}

/* ---------- Footer ---------- */
.elementor-39 .elementor-element.elementor-element-21d1aa4,
.elementor-39 > section:first-child {
  border-top: 1px solid var(--ck-slate-200);
}
.elementor-39 { background: #fff; }
.elementor-39 .elementor-widget-text-editor p {
  color: var(--ck-slate-400) !important;
  font-size: .86rem !important;
  letter-spacing: .06em;
}
/* Footer telefon butonu: mavi -> marka yeşili */
.elementor-39 .raven-button {
  background: var(--ck-green-700) !important;
  color: #fff !important;
  border-radius: 10px !important;
  padding: 13px 26px !important;
  font-size: 14.5px !important;
  box-shadow: 0 8px 20px -8px rgba(21, 128, 61, .5);
}
.elementor-39 .raven-button:hover { background: var(--ck-green-900) !important; }

/* Mobil menü (hamburger) rengi */
.elementor-11 .raven-nav-menu-toggle,
.elementor-11 .raven-nav-menu-toggle-button {
  color: var(--ck-ink) !important;
}
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  background-color: var(--ck-ink) !important;
}

/* ---------- Mobil iyileştirmeler ---------- */
@media (max-width: 767px) {
  .elementor-1124 .elementor-element.elementor-element-c3bf362 > .elementor-container {
    padding-top: 64px;
    padding-bottom: 72px;
  }
  .elementor-1124 .elementor-element-0d7525c .raven-heading-title {
    font-size: 1.9rem !important;
  }
  .elementor-1124 .elementor-element-6940401 p { font-size: 1.05rem !important; }
  .elementor-1124 .elementor-element.elementor-element-f852ef0 { padding-top: 64px !important; }
  .elementor-1124 .elementor-element-f852ef0 .elementor-inner-column > .elementor-widget-wrap {
    padding: 28px 18px 24px !important;
    margin-bottom: 8px;
  }
  .elementor-1124 .elementor-element-96d525d .raven-button {
    font-size: 1.1rem !important;
    padding: 16px 34px !important;
  }
}

/* Dokunmatik hedefler: bağlantı ve butonlar min 44px */
.raven-button, .elementor-icon-list-item a { min-height: 44px; }
