/* =================================================
   Mizan Sigorta - Public Theme (Red/Black)
   /assets/css/style.css  (v1.0.1)
   ================================================= */
:root {
  --mz-red:        #e30b30;
  --mz-red-2:      #c00824;
  --mz-red-soft:   #fee2e6;
  --mz-red-glow:   rgba(227, 11, 48, .25);

  --mz-navy:       #0f1e37;
  --mz-navy-2:     #1a2a47;
  --mz-navy-deep:  #061224;
  --mz-dark:       #1a2a47;
  --mz-dark-2:     #2a3a57;
  --mz-dark-3:     #3a4a67;

  --mz-text:       #1f1f1f;
  --mz-muted:      #6b7280;
  --mz-border:     #e5e7eb;
  --mz-bg:         #f7f7f7;
}

html, body { font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; color: var(--mz-text); background: #fff; }
.mz-public { min-height: 100vh; display: flex; flex-direction: column; }
main { flex: 1; }

/* ---------- TopBar ---------- */
.mz-topbar { background: var(--mz-navy); color: #fff; font-size: .82rem; padding: .35rem 0; }
.mz-topbar a { color: #fff; text-decoration: none; opacity: .9; }
.mz-topbar a:hover { opacity: 1; color: var(--mz-red); }

/* ---------- Navbar ---------- */
.mz-navbar { background: var(--mz-dark); border-bottom: 3px solid var(--mz-red); padding: .55rem 0; }
.mz-navbar .navbar-brand { color: #fff !important; padding: 0; display: inline-flex; align-items: center; }
.mz-navbar .navbar-brand img { display: block; height: 55px; width: auto; }
.mz-navbar .nav-link { color: rgba(255,255,255,.85) !important; font-weight: 500; padding: .5rem 1rem !important; border-radius: 6px; transition: all .15s; }
.mz-navbar .nav-link:hover, .mz-navbar .nav-link.active { color: var(--mz-red) !important; background: rgba(255,255,255,.05); }
.mz-navbar .navbar-toggler { border-color: rgba(255,255,255,.3); }
.mz-navbar .navbar-toggler-icon { filter: invert(1) brightness(2); }

/* Mega menu */
.mz-mega { padding: 1rem; min-width: 280px; border: 0; box-shadow: 0 12px 40px rgba(0,0,0,.18); border-radius: 10px; border-top: 3px solid var(--mz-red); }
.mz-mega .dropdown-item { padding: .6rem .75rem; border-radius: 6px; }
.mz-mega .dropdown-item:hover { background: var(--mz-red-soft); color: var(--mz-navy); }
.mz-mega .dropdown-item i { color: var(--mz-red); margin-right: .5rem; }

/* Yeni temiz mega menu */
.mz-mega-clean { border-top: 3px solid var(--mz-red) !important; }
.mz-mega-item { display: flex; align-items: center; gap: .6rem; padding: .65rem .75rem; border-radius: 8px; text-decoration: none; color: var(--mz-navy); font-weight: 500; font-size: .92rem; transition: background .15s, transform .15s; border: 1px solid transparent; }
.mz-mega-item:hover { background: rgba(227,11,48,.06); color: var(--mz-red); border-color: rgba(227,11,48,.15); }
.mz-mega-icon { width: 32px; height: 32px; border-radius: 8px; background: rgba(227,11,48,.08); color: var(--mz-red); display: inline-flex; align-items: center; justify-content: center; font-size: 1rem; flex-shrink: 0; }
.mz-mega-item:hover .mz-mega-icon { background: var(--mz-red); color: #fff; }
.mz-mega-item .mz-mega-text { flex: 1; }

/* ---------- Hero ---------- */
.mz-hero { background: linear-gradient(135deg, var(--mz-navy) 0%, var(--mz-dark-2) 100%); color: #fff; padding: 4rem 0 5rem; position: relative; overflow: hidden; }
.mz-hero::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at top right, rgba(227,11,48,.18), transparent 55%); pointer-events: none; }
.mz-hero h1 { font-size: 2.6rem; font-weight: 800; line-height: 1.15; margin-bottom: 1rem; }
.mz-hero h1 .text-warning, .mz-hero .text-warning { color: var(--mz-red) !important; }
.mz-hero .lead { font-size: 1.15rem; opacity: .92; margin-bottom: 1.75rem; }
.mz-hero .btn-warning { background: var(--mz-red); border: 0; color: #fff; font-weight: 700; padding: .75rem 1.75rem; border-radius: 8px; box-shadow: 0 6px 20px var(--mz-red-glow); }
.mz-hero .btn-warning:hover { background: var(--mz-red-2); transform: translateY(-2px); color: #fff; }
.mz-hero .btn-outline-light { border-width: 2px; padding: .75rem 1.75rem; font-weight: 600; border-radius: 8px; }
.mz-hero-stats strong { color: var(--mz-red) !important; }
.mz-hero-stats li span { opacity: .85; font-size: .9rem; }
.mz-hero-overlay { position: absolute; inset: 0; pointer-events: none; }

@media (max-width: 768px) {
  .mz-hero { padding: 2.5rem 0 3rem; }
  .mz-hero h1 { font-size: 1.85rem; }
  .mz-navbar .navbar-brand img { height: 36px; }
}

/* ---------- Bands & Sections ---------- */
.mz-band { padding: 4rem 0; }
.mz-band.bg-light { background: var(--mz-bg) !important; }
.mz-page-head { background: linear-gradient(135deg, var(--mz-navy) 0%, var(--mz-dark-2) 100%); color: #fff; padding: 1.75rem 0 1.25rem; border-bottom: 3px solid var(--mz-red); }
.mz-page-head h1 { font-weight: 800; margin: 0; font-size: 1.85rem; }
.mz-page-head .lead { font-size: 1rem; margin-bottom: .5rem !important; }
.mz-page-head .breadcrumb { background: transparent; padding: 0; margin: .35rem 0 0; font-size: .85rem; }
.mz-page-head .breadcrumb-item, .mz-page-head .breadcrumb-item a { color: rgba(255,255,255,.85); text-decoration: none; }
.mz-page-head .breadcrumb-item.active { color: var(--mz-red); }
.mz-page-head .display-5, .mz-page-head .display-6 { font-size: 1.85rem; font-weight: 800; }
.mz-page-head .mz-trust-badge { font-size: .75rem; padding: .35rem .75rem; }

/* ---------- Product Cards ---------- */
.mz-prod-card { background: #fff; border: 1px solid var(--mz-border); border-radius: 12px; padding: 1.75rem 1.25rem; transition: all .25s; height: 100%; text-align: center; text-decoration: none; color: inherit; display: block; }
.mz-prod-card:hover { transform: translateY(-6px); box-shadow: 0 16px 40px rgba(10,10,10,.12); border-color: var(--mz-red); color: inherit; }
.mz-prod-icon { width: 64px; height: 64px; border-radius: 50%; background: linear-gradient(135deg, var(--mz-red), var(--mz-red-2)); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 1.75rem; margin-bottom: 1rem; }
.mz-prod-card h5 { color: var(--mz-navy); font-weight: 700; margin-bottom: .5rem; }
.mz-prod-card p { color: var(--mz-muted); font-size: .9rem; margin: 0; }

/* ---------- Quote / Form Cards ---------- */
.mz-form-card { background: #fff; border: 1px solid var(--mz-border); border-radius: 12px; padding: 2rem; box-shadow: 0 4px 20px rgba(0,0,0,.04); }
.mz-side-card { background: var(--mz-navy); color: #fff; border-radius: 12px; padding: 1.75rem; }
.mz-side-card h5, .mz-side-card h6 { color: var(--mz-red); font-weight: 700; }
.mz-side-card hr { border-color: rgba(255,255,255,.2); }
.mz-quick-card { background: #fff; border: 1px solid var(--mz-border); border-radius: 10px; padding: 1.25rem; transition: all .2s; }
.mz-quick-card:hover { border-color: var(--mz-red); }
.mz-quick-card i.text-warning { color: var(--mz-red) !important; }

/* Multi-step quote radios */
.mz-prod-radio { cursor: pointer; }
.mz-prod-radio input { position: absolute; opacity: 0; }
.mz-prod-radio .mz-prod-card { border-width: 2px; }
.mz-prod-radio input:checked + .mz-prod-card { border-color: var(--mz-red); background: var(--mz-red-soft); box-shadow: 0 8px 24px var(--mz-red-glow); }

/* ---------- Features ---------- */
.mz-feat { display: flex; gap: 1rem; padding: 1.5rem; background: #fff; border-radius: 10px; transition: all .2s; height: 100%; border: 1px solid var(--mz-border); }
.mz-feat:hover { box-shadow: 0 8px 24px rgba(0,0,0,.07); border-color: transparent; }
.mz-feat i { color: var(--mz-red); font-size: 2rem; flex-shrink: 0; }
.mz-feat h6 { color: var(--mz-navy); font-weight: 700; margin-bottom: .25rem; }
.mz-feat p { color: var(--mz-muted); font-size: .9rem; margin: 0; }

/* ---------- Testimonials ---------- */
.mz-testimonial { background: #fff; padding: 1.75rem; border-radius: 12px; border: 1px solid var(--mz-border); height: 100%; }
.mz-testimonial .stars { color: var(--mz-red); margin-bottom: .75rem; }
.mz-testimonial p { font-style: italic; color: #4b5563; margin-bottom: 1rem; }
.mz-testimonial .name { font-weight: 700; color: var(--mz-navy); }
.mz-testimonial .role { color: var(--mz-muted); font-size: .85rem; }

/* ---------- Partners ---------- */
.mz-partner-logo { display: flex; width: 100%; align-items: center; justify-content: center; padding: .85rem; background: #fff; border: 1px solid var(--mz-border); border-radius: 10px; height: 90px; transition: all .2s; }
.mz-partner-logo:hover { border-color: var(--mz-red); transform: translateY(-3px); box-shadow: 0 6px 18px rgba(0,0,0,.06); }
.mz-partner-logo img { max-height: 56px; max-width: 100%; object-fit: contain; }
.mz-partner-text { display: flex; align-items: center; justify-content: center; width: 100%; height: 90px; font-weight: 700; color: var(--mz-navy); font-size: .9rem; padding: .85rem; background: #fff; border: 1px solid var(--mz-border); border-radius: 10px; text-align: center; transition: all .2s; }
.mz-partner-text:hover { border-color: var(--mz-red); transform: translateY(-3px); }

/* ---------- Blog Cards ---------- */
.mz-blog-card { background: #fff; border-radius: 12px; overflow: hidden; border: 1px solid var(--mz-border); transition: all .25s; height: 100%; display: flex; flex-direction: column; }
.mz-blog-card:hover { transform: translateY(-4px); box-shadow: 0 14px 36px rgba(0,0,0,.1); }
.mz-blog-card .body { padding: 1.25rem; flex: 1; display: flex; flex-direction: column; }
.mz-blog-card a.title { color: var(--mz-navy); font-weight: 700; text-decoration: none; }
.mz-blog-card a.title:hover { color: var(--mz-red); }
.mz-blog-img { width: 100%; height: 200px; object-fit: cover; }
.mz-blog-img-ph { width: 100%; height: 200px; background: linear-gradient(135deg, var(--mz-navy), var(--mz-dark-2)); display: flex; align-items: center; justify-content: center; color: var(--mz-red); font-size: 3rem; }

/* ---------- CTA ---------- */
.mz-cta { background: linear-gradient(135deg, var(--mz-navy), var(--mz-dark-2)); color: #fff; padding: 4rem 0; }
.mz-cta-box {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(227,11,48,.45);
  border-radius: 16px;
  padding: 3rem 2.5rem;
  text-align: center;
  position: relative;
  box-shadow: 0 18px 56px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.06);
}
.mz-cta-box::before {
  content: '';
  position: absolute; top: -1px; left: 50%; transform: translateX(-50%);
  width: 120px; height: 3px;
  background: linear-gradient(90deg, transparent, var(--mz-red), transparent);
  border-radius: 100px;
}
.mz-cta-box h3 {
  color: #ffffff;
  font-weight: 800;
  font-size: clamp(1.6rem, 2.6vw, 2.1rem);
  letter-spacing: .3px;
  margin-bottom: 1rem;
}
.mz-cta-box p {
  color: rgba(255,255,255,.82);
  font-size: 1.05rem;
  line-height: 1.65;
  max-width: 620px;
  margin: 0 auto 1.75rem;
}
.mz-cta-box .btn-warning {
  background: var(--mz-red);
  color: #fff;
  font-weight: 700;
  padding: .95rem 2.4rem;
  font-size: 1.05rem;
  border-radius: 10px;
  border: 0;
  box-shadow: 0 8px 24px rgba(227,11,48,.35);
  transition: all .2s ease;
}
.mz-cta-box .btn-warning:hover {
  background: var(--mz-red-2);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(227,11,48,.45);
}

/* ---------- Prose (CMS content) ---------- */
.mz-prose { color: #374151; line-height: 1.7; }
.mz-prose h1, .mz-prose h2, .mz-prose h3, .mz-prose h4 { color: var(--mz-navy); font-weight: 700; margin-top: 1.75rem; margin-bottom: .85rem; }
.mz-prose h2 { font-size: 1.55rem; padding-bottom: .35rem; border-bottom: 2px solid var(--mz-red); display: inline-block; }
.mz-prose p { margin-bottom: 1rem; }
.mz-prose ul, .mz-prose ol { margin-bottom: 1rem; padding-left: 1.5rem; }
.mz-prose li { margin-bottom: .35rem; }
.mz-prose a { color: var(--mz-red); font-weight: 600; }
.mz-prose blockquote { border-left: 4px solid var(--mz-red); padding: 1rem 1.25rem; background: var(--mz-red-soft); border-radius: 0 8px 8px 0; margin: 1.25rem 0; font-style: italic; }
.mz-prose img { max-width: 100%; height: auto; border-radius: 8px; }

/* ---------- Footer ---------- */
.mz-footer { background: var(--mz-navy); color: rgba(255,255,255,.78); padding: 3.5rem 0 1.5rem; }
.mz-footer h6 { color: var(--mz-red); font-weight: 700; margin-bottom: 1rem; text-transform: uppercase; font-size: .9rem; letter-spacing: .5px; }
.mz-footer a { color: rgba(255,255,255,.78); text-decoration: none; transition: color .15s; }
.mz-footer a:hover { color: var(--mz-red); }
.mz-footer ul { list-style: none; padding: 0; margin: 0; }
.mz-footer ul li { margin-bottom: .5rem; }
.mz-footer img.mz-footer-logo { height: 50px; margin-bottom: 1rem; }
.mz-social a { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: rgba(255,255,255,.08); margin-right: .35rem; transition: all .2s; }
.mz-social a:hover { background: var(--mz-red); color: #fff !important; }
.mz-copy { background: var(--mz-navy-deep); padding: 1rem 0; color: rgba(255,255,255,.55); font-size: .85rem; }

/* ---------- Floating Action Buttons ---------- */
.mz-fab { position: fixed; right: 24px; z-index: 1040; width: 56px; height: 56px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 1.5rem; color: #fff; box-shadow: 0 8px 24px rgba(0,0,0,.25); transition: transform .2s, box-shadow .2s; text-decoration: none; }
.mz-fab:hover { transform: scale(1.08); color: #fff; }
.mz-fab-wa { background: #25d366; bottom: 24px; }
.mz-fab-quote { background: var(--mz-red); color: #fff; bottom: 90px; }
.mz-fab-quote:hover { color: #fff; background: var(--mz-red-2); }

@media (max-width: 576px) { .mz-fab { width: 48px; height: 48px; font-size: 1.25rem; right: 16px; } .mz-fab-quote { bottom: 78px; } }

/* ---------- Forms / Buttons (Bootstrap override) ---------- */
.form-control:focus, .form-select:focus { border-color: var(--mz-red); box-shadow: 0 0 0 .2rem var(--mz-red-glow); }
.btn-primary { background: var(--mz-navy); border-color: var(--mz-navy); color: #fff; }
.btn-primary:hover, .btn-primary:focus { background: var(--mz-dark); border-color: var(--mz-dark); color: #fff; }
.btn-warning { background: var(--mz-red); border-color: var(--mz-red); color: #fff; font-weight: 600; }
.btn-warning:hover, .btn-warning:focus { background: var(--mz-red-2); border-color: var(--mz-red-2); color: #fff; }
.btn-outline-warning { border-color: var(--mz-red); color: var(--mz-red); }
.btn-outline-warning:hover, .btn-outline-warning:focus { background: var(--mz-red); border-color: var(--mz-red); color: #fff; }
.text-warning { color: var(--mz-red) !important; }
.bg-warning, .bg-warning-subtle { background: var(--mz-red-soft) !important; }
.border-warning { border-color: var(--mz-red) !important; }
.badge.bg-warning { background: var(--mz-red) !important; color: #fff !important; }

/* ---------- Marka Slogan (Guven ve Ozen Ile) - dekoratif el yazisi ---------- */
.mz-script { font-family: 'Allura', 'Pinyon Script', 'Brush Script MT', cursive; font-weight: 400; font-style: normal; line-height: 1; }
.mz-script-lg { font-size: 3.75rem; }
.mz-script-md { font-size: 2.5rem; }
.mz-script-sm { font-size: 1.6rem; }
.mz-script-red { color: var(--mz-red); }
.mz-script-light { color: rgba(255,255,255,.92); }

/* ---------- Hero v2 (gelismiş Teklif Al kartı) ---------- */
.mz-hero-quote { background: #fff; border-radius: 16px; box-shadow: 0 25px 60px rgba(0,0,0,.25); padding: 2rem; position: relative; overflow: hidden; }
.mz-hero-quote::before { content: ''; position: absolute; top: -3px; left: 0; right: 0; height: 5px; background: linear-gradient(90deg, var(--mz-red), var(--mz-red-2), var(--mz-red)); }
.mz-hero-quote-head { display: flex; align-items: center; gap: .75rem; margin-bottom: 1.25rem; }
.mz-hero-quote-icon { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--mz-red), var(--mz-red-2)); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 1.35rem; flex-shrink: 0; box-shadow: 0 6px 20px var(--mz-red-glow); }
.mz-hero-quote-title { color: var(--mz-navy); font-weight: 800; font-size: 1.15rem; line-height: 1.1; }
.mz-hero-quote-sub { color: var(--mz-muted); font-size: .82rem; }
.mz-hero-quote .form-control, .mz-hero-quote .form-select { border-radius: 10px; padding: .85rem 1rem; font-size: .98rem; border: 2px solid #e5e7eb; transition: all .15s; }
.mz-hero-quote .form-control:focus, .mz-hero-quote .form-select:focus { border-color: var(--mz-red); box-shadow: 0 0 0 4px var(--mz-red-glow); }
.mz-hero-quote .btn-warning { padding: 1rem; border-radius: 10px; font-size: 1.05rem; font-weight: 700; }

/* Adim gostergesi (multi-step Teklif Al) */
.mz-steps { display: flex; gap: .5rem; margin-bottom: 1.5rem; }
.mz-step { flex: 1; height: 6px; border-radius: 3px; background: #e5e7eb; transition: background .25s; }
.mz-step.on { background: var(--mz-red); }
.mz-step.done { background: var(--mz-red-2); }

/* Trust badges (KVKK, BDDK vb.) */
.mz-trust-badge { display: inline-flex; align-items: center; gap: .35rem; padding: .25rem .65rem; background: rgba(227,11,48,.08); color: var(--mz-red); border-radius: 100px; font-size: .75rem; font-weight: 600; }

/* ===== SCROLL TO TOP ===== */
.mz-scroll-top {
  position: fixed;
  right: 24px;
  bottom: 24px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: none;
  background: linear-gradient(135deg, var(--mz-red), var(--mz-red-2));
  color: #fff;
  font-size: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 6px 20px rgba(238, 39, 55, 0.35);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity .25s ease, visibility .25s ease, transform .25s ease, box-shadow .25s ease;
  z-index: 1040;
}
.mz-scroll-top:hover {
  box-shadow: 0 10px 28px rgba(238, 39, 55, 0.5);
  transform: translateY(-2px);
}
.mz-scroll-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
@media (max-width: 575.98px) {
  .mz-scroll-top { right: 16px; bottom: 80px; width: 42px; height: 42px; }
}

/* ===== Yuvarlak Sirket Logo Karti ===== */
.mz-partner-circle {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: .65rem; padding: 1.25rem .75rem;
  background: #fff; border: 1px solid var(--mz-border); border-radius: 14px;
  height: 100%; transition: all .25s; text-align: center;
  text-decoration: none;
}
.mz-partner-circle:hover {
  border-color: var(--mz-red);
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(0,0,0,.08);
}
.mz-partner-circle img {
  width: 72px; height: 72px;
  border-radius: 50%;
  object-fit: contain;
  box-shadow: 0 4px 12px rgba(0,0,0,.1);
  background: #fff;
  transition: transform .25s;
}
.mz-partner-circle:hover img { transform: scale(1.05); }
.mz-partner-circle .mz-partner-name {
  font-size: .82rem; font-weight: 600; color: var(--mz-navy);
  line-height: 1.25;
}
@media (max-width: 575.98px) {
  .mz-partner-circle img { width: 56px; height: 56px; }
  .mz-partner-circle .mz-partner-name { font-size: .75rem; }
}

/* ===== Slider Hero ===== */
.mz-slider {
  position: relative;
  /* Tam viewport: 100vh'dan topbar (~32px) ve navbar (~80px logo+padding) cikariliyor */
  height: calc(100vh - 112px);
  min-height: 540px;
  max-height: 820px;
  overflow: hidden;
  background: linear-gradient(135deg, var(--mz-navy) 0%, var(--mz-navy-2) 100%);
}
@media (max-width: 991.98px) {
  .mz-slider { height: calc(100vh - 80px); min-height: 480px; }
}
@media (max-width: 767.98px) {
  .mz-slider { height: calc(100vh - 70px); min-height: 420px; }
}
.mz-slider-track { position: relative; width: 100%; height: 100%; }
.mz-slide {
  position: absolute; inset: 0; display: flex; align-items: center;
  opacity: 0; visibility: hidden; transition: opacity .6s ease;
  background-size: cover; background-position: center;
}
.mz-slide.active { opacity: 1; visibility: visible; }
.mz-slide::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(13,27,42,.92) 0%, rgba(13,27,42,.55) 70%, rgba(13,27,42,.4) 100%);
}
.mz-slide-inner { position: relative; z-index: 2; color: #fff; max-width: 720px; }
.mz-slide-script { font-family: 'Allura', cursive; font-size: 1.85rem; color: var(--mz-red); display: inline-block; margin-bottom: .25rem; }
.mz-slide h1 { font-size: clamp(1.75rem, 3.6vw, 3rem); font-weight: 800; line-height: 1.15; margin-bottom: 1rem; }
.mz-slide h1 span.accent { color: #f4d35e; }
.mz-slide p { font-size: 1.1rem; line-height: 1.6; margin-bottom: 1.5rem; opacity: .92; }
.mz-slide-cta { display: flex; flex-wrap: wrap; gap: .65rem; }

/* Slider kontrolleri */
.mz-slider-arrows {
  position: absolute; top: 50%; transform: translateY(-50%); width: 100%;
  display: flex; justify-content: space-between; padding: 0 1rem; z-index: 5;
  pointer-events: none;
}
.mz-slider-arrow {
  width: 48px; height: 48px; border-radius: 50%; border: 0;
  background: rgba(255,255,255,.15); color: #fff; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem; backdrop-filter: blur(8px);
  transition: all .2s; pointer-events: auto;
}
.mz-slider-arrow:hover { background: var(--mz-red); transform: scale(1.05); }
.mz-slider-dots {
  position: absolute; bottom: 1.5rem; left: 50%; transform: translateX(-50%);
  display: flex; gap: .5rem; z-index: 5;
}
.mz-slider-dot {
  width: 36px; height: 4px; border-radius: 2px; border: 0;
  background: rgba(255,255,255,.3); cursor: pointer; transition: all .25s;
}
.mz-slider-dot.active { background: #f4d35e; width: 48px; }

@media (max-width: 767.98px) {
  .mz-slider { height: 460px; }
  .mz-slide-script { font-size: 1.4rem; }
  .mz-slide h1 { font-size: 1.5rem; }
  .mz-slide p { font-size: .95rem; }
  .mz-slider-arrows { display: none; }
}

/* ===== Hasar Rehberi ===== */
.mz-hasar-rehber-card {
  background: #fff; border-radius: 14px; border: 1px solid var(--mz-border);
  padding: 1.5rem; height: 100%; transition: all .25s;
  display: block; text-decoration: none; color: inherit;
}
.mz-hasar-rehber-card:hover {
  border-color: var(--mz-red); transform: translateY(-3px);
  box-shadow: 0 12px 30px rgba(0,0,0,.08); color: inherit;
}
.mz-hasar-rehber-icon {
  width: 56px; height: 56px; border-radius: 14px;
  background: linear-gradient(135deg, var(--mz-red), var(--mz-red-2));
  color: #fff; display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem; margin-bottom: 1rem;
}

/* ===== Urun Detay - Teminat Liste ===== */
.mz-teminat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: .75rem; }
.mz-teminat-item {
  background: #fff; border: 1px solid var(--mz-border); border-radius: 10px;
  padding: 1rem; text-align: center; transition: all .2s;
}
.mz-teminat-item:hover { border-color: var(--mz-red); transform: translateY(-2px); }
.mz-teminat-item i { font-size: 1.75rem; color: var(--mz-red); display: block; margin-bottom: .35rem; }
.mz-teminat-item .label { font-size: .85rem; font-weight: 600; color: var(--mz-navy); }

/* Slider arka plan dekoratif illustration (jenerik SVG'ler icin) */
.mz-slide-bg {
  position: absolute;
  right: -3%;
  top: 50%;
  transform: translateY(-50%);
  width: 50%;
  max-width: 560px;
  height: 90%;
  opacity: .35;
  pointer-events: none;
  z-index: 1;
}
.mz-slide-bg svg {
  width: 100%;
  height: 100%;
  filter: drop-shadow(0 8px 32px rgba(0,0,0,.3));
}

/* Custom URL gorseli (Mizan'in tam-frame slaytlari) - tam ekran cover */
.mz-slide-bg.mz-slide-bg-full {
  inset: 0 !important;
  position: absolute !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  transform: none !important;
  opacity: 1 !important;
  z-index: 0 !important;
}
.mz-slide-bg.mz-slide-bg-full img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  filter: none !important;
}
/* Custom URL slaytlarinda metin alanini gizle, butonlari alta hizala */
.mz-slide.has-full-bg .mz-slide-decor { display: none !important; }
.mz-slide.has-full-bg .mz-slide-script,
.mz-slide.has-full-bg .mz-slide-inner h1,
.mz-slide.has-full-bg .mz-slide-inner p { display: none !important; }
.mz-slide.has-full-bg .mz-slide-inner {
  position: absolute;
  bottom: 60px;
  left: 0;
  right: 0;
  width: 100%;
  max-width: none;
  text-align: center;
  z-index: 3;
}
.mz-slide.has-full-bg .mz-slide-cta {
  justify-content: center;
  display: inline-flex;
  gap: 14px;
  background: rgba(13, 27, 42, 0.55);
  padding: 12px 18px;
  border-radius: 14px;
  backdrop-filter: blur(8px);
}

/* Soft floating decorative shapes - mizan kirmizi/sari gradient */
.mz-slide-decor {
  position: absolute;
  z-index: 1;
  pointer-events: none;
  border-radius: 50%;
  filter: blur(60px);
}
.mz-slide-decor.d1 { top: -10%; right: -5%; width: 360px; height: 360px; background: rgba(227, 11, 48, .25); }
.mz-slide-decor.d2 { bottom: -15%; left: 10%; width: 280px; height: 280px; background: rgba(244, 211, 94, .15); }

@media (max-width: 991.98px) {
  .mz-slide-bg { width: 70%; opacity: .15; right: -15%; }
  .mz-slide-bg.mz-slide-bg-full { width: 100% !important; opacity: 1 !important; right: 0 !important; }
  .mz-slide-decor.d1 { width: 200px; height: 200px; }
  .mz-slide-decor.d2 { width: 180px; height: 180px; }
}
@media (max-width: 767.98px) {
  .mz-slide-bg { display: none; }
  .mz-slide-bg.mz-slide-bg-full { display: block !important; }
  .mz-slide.has-full-bg .mz-slide-inner { bottom: 30px; }
  .mz-slide.has-full-bg .mz-slide-cta {
    flex-direction: column;
    gap: 8px;
    width: calc(100% - 40px);
    margin: 0 20px;
  }
  .mz-slide.has-full-bg .mz-slide-cta .btn { width: 100%; }
}

/* ============================================================
   MOBİL: Alt Tab Bar (sadece mobile/tablet) + UX iyilestirmeleri
   v1.1.20
============================================================ */

/* Bottom tab bar - varsayilan gizli (desktop) */
.mz-mobile-tabbar { display: none; }

@media (max-width: 991.98px) {
  .mz-mobile-tabbar {
    display: flex;
    position: fixed;
    left: 0; right: 0; bottom: 0;
    background: #ffffff;
    border-top: 1px solid #e5e7eb;
    box-shadow: 0 -4px 16px rgba(13,27,42,.08);
    z-index: 1030;
    padding: 6px 4px calc(6px + env(safe-area-inset-bottom, 0px));
    align-items: stretch;
    justify-content: space-around;
  }
  .mz-mtab {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 6px 4px;
    text-decoration: none;
    color: #6b7280;
    font-size: .68rem;
    font-weight: 500;
    border-radius: 10px;
    transition: all .15s;
    min-height: 50px;
    min-width: 44px; /* touch target */
  }
  .mz-mtab i { font-size: 1.25rem; }
  .mz-mtab span { letter-spacing: -.2px; }
  .mz-mtab:active { background: rgba(13,27,42,.04); transform: scale(.96); }
  .mz-mtab.active {
    color: var(--mz-red);
    background: linear-gradient(180deg, rgba(227,11,48,.08), rgba(227,11,48,.04));
  }
  .mz-mtab.active i { color: var(--mz-red); }

  /* CTA telefon butonu - merkezde, yukseltilmis kirmizi daire */
  .mz-mtab-cta {
    position: relative;
    flex: 0 0 auto;
    padding: 0 8px;
  }
  .mz-mtab-cta-circle {
    width: 56px; height: 56px; border-radius: 50%;
    background: linear-gradient(135deg, var(--mz-red), var(--mz-red-2));
    color: #fff !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    box-shadow: 0 6px 20px rgba(227,11,48,.4);
    margin-top: -22px;
    transition: transform .2s;
    border: 4px solid #fff;
  }
  .mz-mtab-cta:active .mz-mtab-cta-circle {
    transform: scale(.92);
  }

  /* Body padding-bottom: tab bar yuksekligi kadar (~70px) */
  body.mz-public { padding-bottom: 70px; }
  body.mz-public.has-fab .mz-fab { bottom: calc(78px + env(safe-area-inset-bottom, 0px)); }

  /* Mevcut FAB ve scroll-top'i tab-bar uzerine cek */
  .mz-fab { bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important; }
  .mz-scroll-top { bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important; }
}

/* Mobil form/touch iyilestirmeleri */
@media (max-width: 767.98px) {
  /* Form input'lari minimum 44px yukseklik (touch target) */
  .form-control, .form-select, .btn { min-height: 44px; }
  .form-control-sm, .form-select-sm, .btn-sm { min-height: 38px; }

  /* iOS otomatik zoom engellemek icin font-size 16px+ olmali */
  .form-control, .form-select, input[type="text"], input[type="email"],
  input[type="tel"], input[type="url"], input[type="password"], textarea {
    font-size: 16px !important;
  }

  /* Container padding biraz daha rahat */
  .container, .container-fluid { padding-left: 16px; padding-right: 16px; }

  /* Display heading'ler mobil icin daha mantikli */
  .display-4 { font-size: 2rem !important; }
  .display-5 { font-size: 1.75rem !important; }
  .display-6 { font-size: 1.5rem !important; }

  /* Lead paragraf mobil ayar */
  .lead { font-size: 1.05rem; }

  /* Buton group'larin mobile'da dik dizilim */
  .btn-group-mobile-stack { display: flex !important; flex-direction: column !important; gap: 8px !important; }
  .btn-group-mobile-stack .btn { width: 100% !important; }

  /* Tablo overflow */
  .table-responsive { -webkit-overflow-scrolling: touch; }

  /* Card body padding mobil */
  .card-body { padding: 1.25rem; }

  /* Slider arrow ve dot mobil pozisyon iyilestirme */
  .mz-slider-arrow { width: 40px !important; height: 40px !important; font-size: 1.1rem !important; }
  .mz-slider-arrows { padding: 0 .5rem !important; }
}

/* Cok kucuk ekranlar (telefon dik) */
@media (max-width: 380px) {
  .mz-mtab span { font-size: .62rem; }
  .mz-mtab i { font-size: 1.15rem; }
  .mz-mtab-cta-circle { width: 50px; height: 50px; font-size: 1.35rem; margin-top: -18px; }
}
