/* ==========================================================================
   Prime Bozum — Responsive düzenlemeler
   Kırılımlar: 1280 · 1180 · 1023 · 960 · 768 · 560 · 400
   ========================================================================== */

/* ---------- 1181–1520px : sol floating butonlar içerikle çakışmasın ---------- */
@media (min-width: 1181px) and (max-width: 1520px) {
  :root { --gutter: 96px; }
  .site-header { --gutter: 40px; }
}

/* ---------- ≤ 1280px : küçük laptop ---------- */
@media (max-width: 1520px) {
  .main-nav .nav-link { padding: 8px 9px; font-size: 14px; }
  .header-actions .btn-wa span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
  .header-actions .btn-wa::after { content: "WhatsApp"; }
}
@media (max-width: 1280px) {
  .main-nav .nav-link { padding: 8px 7px; font-size: 13.5px; }
  .header-actions .btn { padding: 0 14px; }
  .brand img { height: 36px; }
  .services-grid { gap: 16px; }
  .service-card { padding: 26px 22px 22px; }
  .service-card h3 { font-size: 22px; }
  .cta-band { padding: 52px; }
}

/* ---------- ≤ 1180px : tablet yatay — hamburger menü ---------- */
@media (max-width: 1180px) {
  :root { --gutter: 28px; }
  .main-nav,
  .header-actions .btn-tel { display: none; }
  .menu-toggle { display: inline-block; }

  .mobile-drawer {
    position: fixed;
    top: var(--header-h);
    left: 0; right: 0; bottom: 0;
    z-index: 99;
    display: flex;
    flex-direction: column;
    padding: 12px var(--gutter) calc(24px + env(safe-area-inset-bottom));
    background:
      radial-gradient(600px 400px at 100% 0%, rgba(62, 110, 33, .18), transparent 60%),
      var(--bg);
    overflow-y: auto;
    overscroll-behavior: contain;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-12px);
    transition: opacity .3s var(--ease), transform .3s var(--ease), visibility .3s;
  }
  .mobile-drawer.is-open { opacity: 1; visibility: visible; transform: none; }
  .mobile-drawer nav { width: 100%; max-width: 640px; margin-inline: auto; }
  .mobile-drawer ul { list-style: none; }
  .mobile-drawer__group {
    margin: 22px 0 6px;
    color: var(--gold);
    font-family: var(--font-head);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase;
  }
  .mobile-drawer a.drawer-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 4px;
    border-bottom: 1px solid var(--border);
    color: var(--text);
    font-family: var(--font-head);
    font-size: 19px;
    font-weight: 700;
    text-decoration: none;
  }
  .mobile-drawer a.drawer-link svg { width: 18px; height: 18px; color: var(--muted-2); transition: transform .25s var(--ease), color .25s; }
  .mobile-drawer a.drawer-link:hover svg { color: var(--gold); transform: translateX(4px); }
  .mobile-drawer a.drawer-link[aria-current="page"] { color: var(--gold); }
  .mobile-drawer__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    width: 100%;
    max-width: 640px;
    margin: 28px auto 0;
  }
  .mobile-drawer__actions .btn { width: 100%; }
  .menu-open { overflow: hidden; }

  /* Sabit iletişim: masaüstü floating yerine alt bar */
  body { padding-bottom: calc(64px + env(safe-area-inset-bottom)); }
  .float-cta { display: none; }
  .mobile-drawer { bottom: calc(64px + env(safe-area-inset-bottom)); }
  .mobile-bar {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 95;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding-bottom: env(safe-area-inset-bottom);
    border-top: 1px solid var(--border-strong);
    background: rgba(9, 10, 9, .96);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }
  .mobile-bar a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    height: 64px;
    font-family: var(--font-head);
    font-size: 16px;
    font-weight: 800;
    text-decoration: none;
  }
  .mobile-bar a svg { width: 22px; height: 22px; }
  .mobile-bar__wa { background: var(--gold-gradient); color: #10130B; }
  .mobile-bar__tel { color: var(--text); }
  .mobile-bar__tel svg { color: var(--gold); }

  .services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .proof-slider { --per-view: 3; }
  .about-grid { gap: 48px; }
  .content-grid { grid-template-columns: minmax(0, 1fr) 320px; gap: 40px; }
  .footer-grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr) minmax(0, 1fr); }
  .footer-brand { grid-column: 1 / -1; }
}

/* ---------- ≤ 1023px : tablet ---------- */
@media (max-width: 1023px) {
  :root { --section-y: 88px; }
  .proof-slider { --per-view: 2; }
  .hero { min-height: 0; }
  .hero-inner { gap: 32px; }
  .hero-desc { font-size: 17px; }
  .split-intro--article { grid-template-columns: 1fr; gap: 32px; }
  .split-intro__aside { position: static; }
  .cta-band { grid-template-columns: 1fr; padding: 48px; }
  .cta-band .btn-row { justify-content: flex-start; }
  .other-services { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lightbox { padding: 24px 80px; }
}

/* ---------- ≤ 960px : tek kolon hero ---------- */
@media (max-width: 960px) {
  .hero-inner { grid-template-columns: 1fr; padding-block: 40px 64px; }
  .hero-content { max-width: 680px; }
  .hero-visual { justify-self: center; max-width: 560px; }
  .hero-visual__frame { aspect-ratio: auto; }
  .hero-visual__img { height: auto; }
  .hero-visual__img {
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
    opacity: .85;
  }
  .hero-visual__frame::before { inset: 0 20%; }
  .hero-emblem { display: none; }

  .about-grid,
  .split-intro,
  .contact-grid { grid-template-columns: 1fr; }
  .about-grid { gap: 40px; }
  .kw-panel { order: 2; }
  .split-intro { gap: 32px; }

  .content-grid { grid-template-columns: minmax(0, 1fr); }
  .aside-card { position: static; }
  .legal-layout,
  .legal-split { grid-template-columns: 1fr; }
  .legal-toc { position: static; }
  .legal-toc ol { grid-template-columns: 1fr 1fr; }

  .section-head { flex-direction: column; align-items: flex-start; gap: 24px; margin-bottom: 40px; }
  .section-head--center { align-items: center; }
  .steps { grid-template-columns: 1fr; }
  .info-blocks { grid-template-columns: 1fr; }
  .page-hero__mark { width: 300px; right: -60px; opacity: .05; }
}

/* ---------- ≤ 768px : mobil ---------- */
@media (max-width: 768px) {
  :root {
    --gutter: 20px;
    --header-h: 72px;
    --section-y: 72px;
  }
  .brand img { height: 32px; }
  .header-actions .btn-wa { display: none; }

  .lead { font-size: 16.5px; }
  .hero-desc { font-size: 16.5px; }
  .hero-kicker { font-size: 13px; letter-spacing: .12em; }
  .hero-tags { margin-top: 30px; padding-top: 22px; }
  .hero-tag { font-size: 13px; padding: 7px 12px; }

  .kw-panel { padding: 26px 22px; }
  .kw-panel__head h2 { font-size: 21px; }
  .kw { font-size: 13.5px; padding: 9px 14px; }
  .kw--lg { font-size: 15px; padding: 11px 16px; }
  .kw--sm { font-size: 12.5px; }

  .brand-strip { padding-top: 44px; }
  .brand-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .brand-tile { min-height: 80px; padding: 16px; }
  .brand-tile b { font-size: 16.5px; }
  .brand-tile span { font-size: 11px; }
  .prose { font-size: 16.5px; }
  .prose h2 { margin-top: 40px; }
  .legal-block,
  .legal-alert { padding: 24px 20px; }
  .legal-toc ol { grid-template-columns: 1fr; }
  .faq-item summary { font-size: 15px; }

  .services-grid,
  .other-services,
  .feature-grid { grid-template-columns: 1fr; }
  .service-card__top { margin-bottom: 22px; }

  .slider-btn { width: 46px; height: 46px; }
  .cta-band { padding: 36px 24px; border-radius: 22px; }
  .cta-band::after { width: 240px; height: 240px; right: -80px; }

  .page-hero { padding: calc(var(--header-h) + 44px) 0 60px; }

  .form-card { padding: 28px 20px; border-radius: 20px; }
  .form-grid { grid-template-columns: 1fr; }
  .info-block { padding: 28px 22px; }

  .site-footer { padding-top: 64px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 36px 24px; padding-bottom: 44px; }

  .lightbox { padding: 72px 12px 96px; }
  .lightbox__prev,
  .lightbox__next { top: auto; bottom: 20px; transform: none; }
  .lightbox__prev { left: calc(50% - 66px); }
  .lightbox__next { right: calc(50% - 66px); }
  .lightbox__close { top: 12px; right: 12px; }
  .lightbox__img { max-height: calc(100vh - 190px); max-height: calc(100dvh - 190px); }
}

/* ---------- ≤ 639px : slider tek kart ---------- */
@media (max-width: 639px) {
  .proof-slider { --per-view: 1; --gap: 14px; }
  .proof-slide .proof-card { max-width: 360px; margin-inline: auto; }
}

/* ---------- ≤ 560px : küçük telefon ---------- */
@media (max-width: 560px) {
  .hero .btn-row,
  .page-hero .btn-row,
  .cta-band .btn-row { flex-direction: column; }
  .hero .btn-row .btn,
  .page-hero .btn-row .btn,
  .cta-band .btn-row .btn { width: 100%; }
  .btn-lg { min-height: 54px; padding: 0 20px; }
  .btn { white-space: normal; text-align: center; line-height: 1.25; }

  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom__row { flex-direction: column; align-items: flex-start; }
  .mobile-drawer__actions { grid-template-columns: 1fr; }
  .chip { font-size: 13.5px; padding: 8px 12px; }
  .chip--lg { font-size: 14.5px; padding: 10px 14px; }
}

/* ---------- ≤ 400px ---------- */
@media (max-width: 400px) {
  :root { --gutter: 16px; }
  .brand img { height: 28px; }
  .badge { font-size: 11.5px; padding: 7px 12px 7px 10px; }
  .service-card h3,
  .info-block h3 { font-size: 21px; }
  .brand-tile b { font-size: 15.5px; }
  .contact-item { padding: 18px; gap: 14px; }
  .contact-item strong { font-size: 17px; }
  .mobile-bar a { font-size: 15px; }
}
