:root { --brand:#0d6efd; }
body { font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
.hover-card { transition: transform .2s ease, box-shadow .2s ease; }
.hover-card:hover { transform: translateY(-4px); box-shadow: 0 0.5rem 1rem rgba(0,0,0,.08); }
.ref-box { background:#fff; border:1px solid #e9ecef; border-radius:.5rem; height:220px; display:flex; align-items:center; justify-content:center; color:#6c757d; overflow:hidden; position:relative; }
.ref-box img { width:100%; height:100%; object-fit:contain; object-position:center; }
#mainNav .nav-link { padding:.75rem 1rem; }
#mainNav .nav-link.active { color: var(--brand); font-weight: 600; }
footer { background:#fff; }

/* Pricing badges */
.price { font-size:1.5rem; font-weight:700; color:#0d6efd; }
.price small { font-size:.9rem; font-weight:500; color:#6c757d; }

/* Anchor offset helper for cards stuck under navbar */
.anchor-offset { scroll-margin-top: 90px; }

/* Contact card visuals */
.card .form-label { font-weight: 500; }
.card .btn { box-shadow: 0 .25rem .5rem rgba(13,110,253,.15); }

/* Hero/banner improvements */
#anasayfa { 
  position: relative; 
  overflow: hidden; 
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
  min-height: 70vh;
  display: flex;
  align-items: center;
}
#anasayfa .container { 
  padding-top: 3rem !important; 
  padding-bottom: 3rem !important; 
  position: relative;
  z-index: 2;
}
@media (min-width: 992px) {
  #anasayfa .container { padding-top: 4rem !important; padding-bottom: 4rem !important; }
}
.hero-figure { 
  position: relative; 
  transform: perspective(1000px) rotateY(-5deg) rotateX(5deg);
  transition: transform 0.3s ease;
}
.hero-figure:hover {
  transform: perspective(1000px) rotateY(0deg) rotateX(0deg);
}
.hero-blob {
  position: absolute;
  inset: -30% -20% auto auto;
  width: 140%;
  height: 140%;
  background: radial-gradient(ellipse at 60% 40%, rgba(13,110,253,.15), rgba(13,110,253,.05), transparent 70%);
  z-index: 0;
  animation: float 6s ease-in-out infinite;
}
@keyframes float {
  0%, 100% { transform: translateY(0px) rotate(0deg); }
  50% { transform: translateY(-20px) rotate(2deg); }
}
.hero-image {
  position: relative;
  z-index: 1;
  border-radius: 1.5rem;
  box-shadow: 
    0 2rem 4rem rgba(0,0,0,.15),
    0 1rem 2rem rgba(13,110,253,.1);
  transition: all 0.3s ease;
  max-width: 100%;
  height: auto;
}
.hero-image:hover {
  transform: scale(1.02);
  box-shadow: 
    0 2.5rem 5rem rgba(0,0,0,.2),
    0 1.5rem 3rem rgba(13,110,253,.15);
}
.section-wave {
  position: absolute;
  left: 0; right: 0; bottom: -1px; height: 60px;
  z-index: 1;
}
.hero-title {
  background: linear-gradient(135deg, #0d6efd, #6ea8fe);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 800;
}
.hero-subtitle {
  font-size: 1.2rem;
  color: #6c757d;
  font-weight: 400;
}

/* Kurumsal styled blocks */
.k-block { background:#fff; border:1px solid #e9ecef; border-radius:1rem; padding:1.5rem; height:100%; }
.k-icon { width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; border-radius:.5rem; background:#e7f1ff; color:#0d6efd; margin-right:.5rem; }
.k-title { display:flex; align-items:center; gap:.5rem; margin-bottom:.5rem; }

/* Product detail cards with image overlay */
.product-card { 
  border: none; 
  box-shadow: 0 0.5rem 1rem rgba(0,0,0,.15);
  transition: all 0.3s ease;
  margin-bottom: 2rem;
}
.product-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 1rem 2rem rgba(0,0,0,.25);
}
.product-header {
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid #e9ecef;
}
.product-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #0d6efd;
  margin: 0;
  display: flex;
  align-items: center;
}
.product-title .bi {
  color: #0d6efd;
  font-size: 1.1rem;
}
.product-image-container {
  position: relative;
  height: 280px;
  overflow: hidden;
}
.product-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.product-card:hover .product-image {
  transform: scale(1.05);
}
.product-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(13,110,253,0.8) 0%, rgba(13,110,253,0.6) 50%, rgba(0,0,0,0.7) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.product-card:hover .product-overlay {
  opacity: 1;
}
.product-content {
  text-align: center;
  padding: 1.5rem;
  color: white;
}
.product-content .card-title {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 1rem;
}
.product-content .bi { 
  color: rgba(255,255,255,0.9); 
  font-size: 1.2rem;
}
.product-content p {
  font-size: 0.95rem;
  line-height: 1.5;
  margin-bottom: 1.5rem;
}
.product-content .btn {
  border-radius: 25px;
  padding: 0.5rem 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
}
.product-content .btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 0.5rem 1rem rgba(0,0,0,.3);
}

/* Press grid cards */
.press-card img { object-fit: cover; height: 140px; }

/* Footer arrow */
.back-to-top { position: fixed; right: 16px; bottom: 16px; z-index: 1030; }
.back-to-top .btn { 
  border-radius: 50%; 
  padding:.6rem .7rem; 
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.2); 
  transition: all 0.3s ease;
  opacity: 0.8;
}
.back-to-top .btn:hover {
  opacity: 1;
  transform: translateY(-2px);
  box-shadow: 0 .75rem 1.5rem rgba(0,0,0,.3);
}

/* Loading states and micro-interactions */
.btn {
  transition: all 0.3s ease;
}
.btn:hover {
  transform: translateY(-1px);
}
.card {
  transition: all 0.3s ease;
}
.card:hover {
  transform: translateY(-2px);
}

/* Smooth scrolling for all browsers */
html {
  scroll-behavior: smooth;
}

/* General spacing improvements */
section {
  padding: 4rem 0 !important;
}
@media (min-width: 992px) {
  section {
    padding: 5rem 0 !important;
  }
}
.container {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
@media (min-width: 1200px) {
  .container {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

/* Card spacing */
.card {
  margin-bottom: 1.5rem;
}
.row.g-4 > * {
  margin-bottom: 2rem;
}

/* Section headers */
.h1, .display-4, .display-5 {
  margin-bottom: 2rem !important;
}

/* Focus states for accessibility */
.btn:focus,
.form-control:focus {
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}


