  :root {
      --primary-blue: #3b82f6;
      --primary-emerald: #10b981;
      --dark-space: #03050a;
      --dark-card: #080d19;
      --light-bg: #f8fafc;
      --slate-400: #94a3b8;
      --slate-500: #64748b;
      --slate-900: #0f172a;
  }

  body {
      font-family: 'Plus Jakarta Sans', sans-serif;
      background-color: #ffffff;
      color: #0f172a;
      overflow-x: hidden;
  }

  .main-logo {
      max-width: 200px;
      height: auto;
  }

  @media (max-width:996px) {
      .main-logo {
          max-width: 160px;
      }
  }

  /* ana menü */
  /* Dropdown Şıklığı */
  .dropdown-menu {
      border-radius: 16px !important;
      border: 1px solid rgba(255, 255, 255, 0.1) !important;
      padding: 10px !important;
      margin-top: 10px !important;
      transition: all 0.3s ease;
      opacity: 0;
      display: block;
      /* JS ile görünürlüğü yöneteceğiz */
      visibility: hidden;
      transform: translateY(10px);
  }

  .dropdown-menu.show {
      opacity: 1;
      visibility: visible;
      transform: translateY(0);
  }

  .dropdown-item {
      border-radius: 8px;
      padding: 8px 16px !important;
      transition: all 0.2s ease;
  }

  .dropdown-item:hover {
      background: rgba(59, 130, 246, 0.2) !important;
      color: var(--primary-blue) !important;
      padding-left: 20px !important;
  }

  /* Mobil menüdeki Dropdown boşluğunu ve çakışan stilleri temizle */
  @media (max-width: 991px) {
      #mobileNav .dropdown-menu {
          display: none !important;
          position: static !important;
          float: none !important;
          width: 100% !important;
          background: transparent !important;
          border: none !important;
          box-shadow: none !important;
          transform: none !important;
          /* Bootstrap'in zorunlu transform'unu iptal et */
          margin: 0 !important;
          padding-left: 20px !important;
      }

      #mobileNav .dropdown.show .dropdown-menu {
          display: block !important;
      }

      /* Accordion Button Stilleri */
      #mobileMenuAccordion .accordion-button {
          padding-left: 0;
          padding-right: 0;
          font-size: 1rem;
          font-weight: 500;
      }

      #mobileMenuAccordion .accordion-button::after {
          filter: invert(1) grayscale(100%) brightness(200%);
          width: 1rem;
          height: 1rem;
          background-size: 1rem;
      }

      #mobileMenuAccordion .accordion-button:not(.collapsed)::after {
          transform: rotate(-180deg);
      }

      #mobileMenuAccordion .accordion-button:focus {
          box-shadow: none;
          border-color: transparent;
      }

      #mobileMenuAccordion .accordion-body {
          background: transparent;
      }

      #mobileMenuAccordion .accordion-item {
          border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
      }

      #mobileMenuAccordion a:hover {
          color: #fff !important;
          transition: color 0.2s ease;
      }
  }

  /* Masaüstü: Aktif ana menü ve dropdown toggle */
  .active-nav {
      color: #4fa0ff !important;
      opacity: 1 !important;
  }

  /* Mobil: Aktif menü öğeleri */
  .active-mobile {
      color: #4fa0ff !important;
      font-weight: 700;
  }

  /* Yumuşak Cam Panel Efekti (Glassmorphism) */
  .glass-header {
      background: rgba(3, 5, 10, 0.85);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  }

  /* PREMIUM HERO SLIDER STYLES */
  .premium-hero-bg {
      position: relative;
      min-height: 72vh;
      background-color: #090e1a;
      overflow: hidden;
      display: flex;
      align-items: center;
  }

  /* Full-Bleed Arka Plan Slaytları */
  .hero-slide-bg {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-position: center;
      opacity: 0;
      transition: opacity 1.2s cubic-bezier(0.4, 0, 0.2, 1);
      z-index: 1;
      transform: scale(1);
  }

  .hero-slide-bg.active {
      opacity: 0.45;
      animation: heroPanZoom 7s infinite alternate ease-in-out;
  }

  @keyframes heroPanZoom {
      0% {
          transform: scale(1.02);
      }

      100% {
          transform: scale(1.07);
      }
  }

  /* Taramalı dikey animasyon */
  @keyframes scanAnim {
      0% {
          top: 0%;
          opacity: 0.1;
      }

      50% {
          opacity: 0.8;
      }

      100% {
          top: 100%;
          opacity: 0.1;
      }
  }

  /* Başlık Yumuşak Slayt Geçişi */
  #heroTitle,
  #heroDesc {
      transition:
          opacity .45s ease,
          transform .45s ease;
      will-change: opacity, transform;
  }

  .hero-hidden {
      opacity: 0;
      transform: scale(.98);
  }

  .hero-visible {
      opacity: 1;
      transform: scale(1);
  }

  .showcase-inner-media {
      position: absolute;
      inset: 0;
      background-size: cover;
      background-position: center;
      opacity: 0;
      transform: scale(1);
      transition:
          opacity .8s cubic-bezier(.4, 0, .2, 1),
          transform 6s ease;
  }

  .showcase-inner-media.active {
      opacity: 1;
      transform: scale(1.04);
  }

  #heroTitle {
      line-height: 1.3;
      font-size: 2.8rem;
  }

  #heroDesc {
      color: #cbd5e1 !important;
      font-weight: 300;
      line-height: 1.6;
      font-size: 1.2rem;
  }

  /* Derinlik ve Işık Maskesi */
  .hero-gradient-overlay {
      position: absolute;
      inset: 0;
      background: linear-gradient(180deg, rgba(3, 5, 10, 0.6) 0%, rgba(3, 5, 10, 0.3) 50%, rgba(3, 5, 10, 0.7) 100%);
      z-index: 2;
  }

  /* Lüks Cam Kapsül */
  .premium-glass-card {
      background: rgba(15, 23, 42, 0.45);
      border: 1px solid rgba(255, 255, 255, 0.1);
      backdrop-filter: blur(20px);
      -webkit-backdrop-filter: blur(20px);
      border-radius: 32px;
      padding: 40px;
      box-shadow: 0 30px 60px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.1);
      transition: all 0.5s ease;
  }

  /* Dynamic Visual Showcase Box */
  .showcase-bezel-frame {
      position: relative;
      background: #03050a;
      border: 6px solid #1e293b;
      border-radius: 28px;
      overflow: hidden;
      box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.7), 0 0 40px rgba(59, 130, 246, 0.15);
      aspect-ratio: 16 / 10;
      width: 100%;
  }

  /* Story Progress Controller */
  .story-controller-wrapper {
      position: relative;
      z-index: 10;
  }

  .story-indicator-item {
      cursor: pointer;
      padding-bottom: 12px;
      transition: all 0.3s ease;
  }

  .story-indicator-bar {
      height: 3px;
      background: rgba(255, 255, 255, 0.15);
      border-radius: 4px;
      overflow: hidden;
      position: relative;
  }

  .story-indicator-fill {
      position: absolute;
      left: 0;
      top: 0;
      height: 100%;
      width: 0%;
      background: linear-gradient(90deg, var(--primary-blue), #60a5fa);
      border-radius: 4px;
  }

  .story-indicator-item:hover .story-indicator-bar {
      background: rgba(255, 255, 255, 0.3);
  }

  .story-indicator-item.active .story-indicator-title {
      color: #ffffff !important;
  }

  @media (max-width: 996px) {
      #heroTitle {
          font-size: 1.8rem;
      }

      #heroDesc {
          font-size: 0.9rem;
      }

      .premium-glass-card {
          padding: 15px;
      }

      #hesaplayici h2,
      #hesaplayici h4,
      #teklif h2,
      #teklif h4 {
          font-size: 1.2rem !important;
      }

      #hesaplayici p,
      #teklif p {
          font-size: .9rem !important;
      }

      #hesaplayici .form-label {
          font-size: 0.7rem;
      }
  }

  @media (min-width:997px) and (max-width:1200px) {
      #heroTitle {
          font-size: 1.8rem;
      }

      #heroDesc {
          font-size: 0.9rem;
      }

      .premium-glass-card {
          padding: 15px;
      }
  }

  /* Lüks Kart ve Div Tasarımları */
  .premium-card {
      border: 1px solid #e2e8f0;
      background: #ffffff;
      border-radius: 24px;
      overflow: hidden;
      transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
      box-shadow: 0 4px 30px rgba(0, 0, 0, 0.02);
  }

  .premium-card:hover {
      transform: translateY(-8px);
      border-color: rgba(59, 130, 246, 0.25);
      box-shadow: 0 30px 60px -15px rgba(59, 130, 246, 0.12);
  }

  /* Süreç Kartları İçin Özel Tasarım */
  .process-card {
      border: 1px solid #e2e8f0;
      background: #ffffff;
      border-radius: 24px;
      position: relative;
      overflow: hidden;
      transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
      box-shadow: 0 10px 40px rgba(0, 0, 0, 0.02);
      height: 100%;
  }

  .process-card:hover {
      transform: translateY(-6px);
      border-color: rgba(59, 130, 246, 0.3);
      box-shadow: 0 25px 50px -12px rgba(59, 130, 246, 0.08);
  }

  /* Görsel Hover Büyüme Efekti */
  .zoom-img-container {
      position: relative;
      overflow: hidden;
  }

  .zoom-img-container img {
      transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
  }

  .premium-card:hover .zoom-img-container img,
  .project-card:hover .zoom-img-container img {
      transform: scale(1.08);
  }

  /* Yumuşak Kozmik Geçiş Işığı */
  .ambient-glow {
      filter: blur(130px);
      background: radial-gradient(circle, rgba(59, 130, 246, 0.06) 0%, rgba(59, 130, 246, 0) 70%);
  }

  /* Özel Kaydırma Çubuğu */
  ::-webkit-scrollbar {
      width: 8px;
  }

  ::-webkit-scrollbar-track {
      background: #f8fafc;
  }

  ::-webkit-scrollbar-thumb {
      background: #cbd5e1;
      border-radius: 8px;
  }

  ::-webkit-scrollbar-thumb:hover {
      background: #3b82f6;
  }

  /* PC'de Süreç Adımları Arası Dinamik Bağlantı Çizgisi */
  @media (min-width: 768px) {
      .process-row {
          position: relative;
      }

      .process-step-line {
          position: absolute;
          top: 30%;
          left: 20%;
          width: 60%;
          height: 2px;
          background: linear-gradient(90deg, rgba(59, 130, 246, 0.3) 0%, rgba(16, 185, 129, 0.3) 50%, rgba(99, 102, 241, 0.3) 100%);
          z-index: 0;
      }
  }

  /* PREMİUM "EASE-IN-OUT" REVEAL ANIMASYONU */
  .reveal {
      opacity: 0;
      transform: translateY(35px);
      transition: opacity 1s cubic-bezier(0.25, 1, 0.5, 1), transform 1s cubic-bezier(0.25, 1, 0.5, 1);
      will-change: transform, opacity;
  }

  .reveal.active {
      opacity: 1;
      transform: translateY(0);
  }

  /* Gecikmeli girişler */
  .reveal-delay-200 {
      transition-delay: 0.2s;
  }

  .reveal-delay-400 {
      transition-delay: 0.4s;
  }

  /* Büyük Ekranlar İçin Tipografi Dengeleme */
  @media (min-width: 1200px) {
      h1.display-large {
          font-size: 3.75rem !important;
          line-height: 1.15 !important;
      }

      p.lead-large {
          font-size: 1.25rem !important;
      }

      .tech-panel-results p {
          font-size: 1.75rem !important;
      }
  }

  /* Dil Değiştirici Hap */
  .lang-switch {
      font-size: 0.75rem;
      border: 1px solid rgba(255, 255, 255, 0.1);
      background-color: rgba(3, 5, 10, 0.9);
  }

  /* Form Özelleştirmeleri */
  .form-control-premium {
      background-color: #ffffff;
      border: 1px solid #e2e8f0;
      padding: 0.85rem 1.1rem;
      border-radius: 12px;
      color: #0f172a;
      transition: all 0.3s ease;
  }

  .form-control-premium:focus {
      border-color: var(--primary-blue);
      box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.1);
      outline: none;
  }

  .form-control-dark {
      background-color: #0f172a;
      border: 1px solid rgba(255, 255, 255, 0.1);
      padding: 0.85rem 1.1rem;
      border-radius: 12px;
      color: #ffffff;
      transition: all 0.3s ease;
  }

  .form-control-dark:focus {
      border-color: var(--primary-blue);
      box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.25);
      outline: none;
      background-color: #0f172a;
      color: #ffffff;
  }

  /* Proje Kartı Stil Tasarımları */
  .project-card {
      border: 1px solid #e2e8f0;
      background: #ffffff;
      border-radius: 24px;
      overflow: hidden;
      transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
      height: 100%;
  }

  .project-card:hover {
      transform: translateY(-8px);
      border-color: rgba(59, 130, 246, 0.25);
      box-shadow: 0 25px 50px -12px rgba(59, 130, 246, 0.15);
  }

  /* Blog Kartı Tasarımları */
  .blog-card {
      border: 1px solid #e2e8f0;
      background: #ffffff;
      border-radius: 20px;
      overflow: hidden;
      transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
      height: 100%;
  }

  .blog-card:hover {
      transform: translateY(-6px);
      border-color: rgba(16, 185, 129, 0.25);
      box-shadow: 0 20px 40px -10px rgba(16, 185, 129, 0.1);
  }

  /* Scroll to Top Butonu */
  #scrollTopBtn {
      position: fixed;
      bottom: 30px;
      right: 20px;
      width: 48px;
      height: 48px;
      border-radius: 50%;
      background-color: var(--primary-blue);
      color: white;
      border: none;
      outline: none;
      cursor: pointer;
      z-index: 999;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 24px;
      box-shadow: 0 10px 25px rgba(59, 130, 246, 0.4);
      opacity: 0;
      visibility: hidden;
      transition: all 0.4s ease-in-out;
  }

  #scrollTopBtn.show {
      opacity: 1;
      visibility: visible;
  }

  #scrollTopBtn:hover {
      background-color: #2563eb;
      transform: translateY(-4px);
      box-shadow: 0 15px 30px rgba(59, 130, 246, 0.6);
  }

  /* Çerez Barı Modernize */
  #cookie-consent-bar {
      position: fixed;
      bottom: 20px;
      left: 20px;
      right: 20px;
      background: #fff;
      z-index: 999;
      padding: 25px;
      border-radius: 15px;
      box-shadow: 0 15px 50px rgba(0, 0, 0, 0.2);
      display: none;
      max-width: 500px;
  }

  .cc-content h4 {
      font-size: 18px;
      font-weight: 700;
      margin-bottom: 10px;
      color: #111;
  }

  .cc-content p {
      font-size: 14px;
      color: #666;
      margin-bottom: 20px;
  }

  .cc-buttons {
      display: flex;
      gap: 10px;
  }

  .cc-btn {
      padding: 10px 20px;
      border-radius: 8px;
      border: none;
      font-weight: 600;
      font-size: 14px;
      cursor: pointer;
      transition: 0.3s;
  }

  .cc-accept {
      background: #ffc107;
      color: #fff;
  }

  .cc-reject {
      background: #f1f1f1;
      color: #666;
  }

  .cc-accept:hover {
      background: #ffc107;
  }

  /* --- FLOAT CONTACT --- */
  .float-contact {
      position: fixed;
      bottom: 30px;
      right: 30px;
      z-index: 1000;
  }

  .btn-float {
      width: 60px;
      height: 60px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 10px;
      box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
      color: white;
      text-decoration: none;
      font-size: 24px;
  }

  /* fixed contact butonlar */
  .fixed-contact-wrapper {
      position: fixed;
      bottom: 10%;
      right: 20px;
      z-index: 99;
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      gap: 5px;
  }

  .c-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      text-decoration: none;
      border-radius: 10px;
      box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
      transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      position: relative;
      height: 50px;
      width: 50px;
      overflow: hidden;
      color: #fff !important;
      border: 2px solid #64ff00;
  }

  .c-btn i {
      font-size: 22px;
      min-width: 55px;
      text-align: center;
  }

  .c-btn span {
      max-width: 0;
      overflow: hidden;
      white-space: nowrap;
      transition: max-width 0.4s ease, padding 0.4s ease, opacity 0.3s;
      font-weight: 600;
      font-size: 15px;
      opacity: 0;
  }

  /* hizmetler tablo */
  /* =========================
   Hizmet İçerik Tabloları
========================= */

  .hizmet-icerik figure.table {
      margin: 2rem 0;
      overflow-x: auto;
  }

  .hizmet-icerik table {
      width: 100%;
      border-collapse: collapse;
      background: #fff;
      border-radius: 14px;
      overflow: hidden;
      box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
  }

  .hizmet-icerik thead {
      background: #0f172a;
  }

  .hizmet-icerik thead th {
      color: #fff;
      font-size: .95rem;
      font-weight: 700;
      padding: 16px 20px;
      text-align: left;
  }

  .hizmet-icerik tbody td {
      padding: 15px;
      border-bottom: 1px solid #9c9fa3;
      vertical-align: top;
      line-height: 1.7;
  }

  .hizmet-icerik tbody tr:hover {
      background: #eef6ff;
      transition: .25s;
  }

  .hizmet-icerik tbody td:first-child {
      width: 34%;
      font-weight: 600;
      color: #0f172a;
  }

  .hizmet-icerik tbody td:last-child {
      color: #475569;
  }

  @media (max-width:768px) {

      .hizmet-icerik table {
          min-width: 650px;
      }

      .hizmet-icerik tbody td,
      .hizmet-icerik thead th {
          padding: 12px 14px;
      }

  }

  @media (max-width:996px) {
      .fixed-contact-wrapper {
          bottom: 15%;
      }
  }

  /* Hover Durumu */
  @media (min-width: 992px) {
      .c-btn:hover {
          width: 200px;
          justify-content: flex-start;
      }

      .c-btn:hover span {
          max-width: 140px;
          opacity: 1;
          padding-left: 5px;
      }
  }

  /* Buton Renkleri */
  .btn-offer {
      background: linear-gradient(135deg, #0763db 0%, #0549a3 100%);
  }

  .btn-offer i {
      min-width: 65px;
  }

  .btn-whatsapp {
      background: #25d366;
  }

  .btn-phone {
      background: #168099;
  }