/* ===================== ANLAŞMALI ŞİRKETLER · SADE / PANELSİZ (üst alan · blog'un eski yeri) =====================
   22.07.2026 · İçerik takası (karar): logolar page-bg üstünde, dolu panel YOK (premium panel Rehber'e geçti).
   Sigorta Rehberi (_blog) ile aynı düz bölüm ritmi: gold başlık + altyazı + logo şeridi/grid. */
.hm-partners{ margin-top:var(--sec-gap); padding:calc(2 * var(--pad-panel) - 22px) 0 calc(2 * var(--pad-panel)); }   /* 16.09.2026 02:00 · karar: "çok yakın oldu, 2x olsun" → 88px */   /* 16.09.2026 · karar: "alttan üstten padding diğerlerine göre çok fazla" → 128px yerine panellerle AYNI 44px · üstten 22px düşülür: başlığın satır yüksekliği görünür boşluğa ~23px ekliyordu (ölçüldü: üst 97 / alt 74) */
.hm-partners-panel{ position:relative; background:transparent; color:var(--ink);
  padding:0; overflow:visible; clip-path:none; }
/* Livist işbirliği ibaresi (15.09.2026) · başlık grubunun SAĞINDA (karar kuralı: destekleyici içerik sağda).
   Logo kutusunun dolgusu iki temada da aynı → tema değişince yer kaymaz (CLS=0); yalnız zemin rengi değişir. */
.hm-partners-bas{ margin-bottom:clamp(34px,4.5vw,52px); }
.hm-partners-bas .hm-bas-alt{ color:var(--muted); }   /* panelsiz bölüm: page-bg üstünde */
/* 15.09.2026 · karar: "çok aşağıda kaldı, 2 satır yap, logo üstte" + yazı açıklamalarla AYNI stil (.hm-bas-alt).
   23:26 · karar: "üstüne yerleştir, ortalı yap başlığı" → bu bölümde .hm-bas SÜTUN + ORTALI:
   ibare (logo + yazı) üstte, başlık ve açıklama altında; hepsi aynı eksende ortalı, her ekran genişliğinde. */
/* 16.09.2026 01:47 · karar: sol + sağ → ortalı kurallar kaldırıldı. Masaüstünde ibare sağda, başlık grubuna göre dikey ortalı;
   1199px altında ortak .hm-bas sütuna geçer, ibare açıklamanın altında SOLA hizalı. */
/* 16.09.2026 13:58 · karar: ORTALI + ibare başlığın ÜSTÜNDE (her ekran genişliğinde) */
.hm-partners-bas{ flex-direction:column; align-items:center; text-align:center; gap:clamp(14px,1.6vw,20px); }
.hm-partners-bas .hm-bas-sol{ flex:none; width:100%; }
.hm-partners-bas .hm-script-head{ text-align:center; }   /* ortak _common kuralı text-align:left → bu bölümde ortalı */
.hm-partners-bas .hm-bas-sol .hm-bas-alt{ margin-left:auto; margin-right:auto; }
.hm-partners-kicker{ display:flex; flex-direction:column; align-items:center; gap:8px; text-align:center; }
.hm-partners-kicker .hm-bas-alt{ margin:0; max-width:none; }
.hm-livist-logo{ display:inline-flex; align-items:center; padding:5px 10px; border-radius:10px; background:transparent; }
.hm-livist-logo img{ display:block; height:clamp(26px,2.4vw,32px); width:auto; }   /* 15.09.2026 23:59 · karar: "logoyu biraz küçült" (34-42 → 26-32 px) */
html.dark .hm-livist-logo{ background:#F4F8FB; }
.hm-partners-kicker-yazi{ color:var(--muted); }


/* ---- ortak tile · MONO logo (varsayılan) → hover'da RENKLENİR · CLS=0 ---- */
/* logolar baked-in orantılı şeffaf padding'li → kenara değme/kesik YOK.
   min-height:0 KRİTİK: flex/grid tile logoya göre BÜYÜMESİN (yoksa .pm-row overflow ile dikey kırpar). */
.pm-tile{ display:grid; place-items:center; min-height:0; height:clamp(92px,9vw,120px);
  padding:4px clamp(8px,1vw,14px);
  border:1px solid var(--line); border-radius:14px; background:transparent;
  transition:border-color .25s ease, background-color .25s ease; }
/* logolar 530x172 uniform tuvalde: TEXT boyutları eşitlendi (ikonlar serbest) + baked padding (kesik/kenara değme YOK).
   max-height KESİN değer (px/vw) — yüzde grid auto-row'da çözülmez, logo taşar. */
.pm-logo{ max-width:96%; max-height:clamp(62px,6.8vw,94px); width:auto; height:auto; object-fit:contain; display:block;
  filter:grayscale(1); opacity:.6; transition:filter .32s ease, opacity .32s ease; }
/* LIGHT: hover → sadece logo renklenir (layout değişmez → CLS=0) */
.pm-tile:hover .pm-logo{ filter:grayscale(0); opacity:1; }
/* DARK: mono logolar koyu → görünmez; invert ile AÇIK göster · hover → beyaz spot + gerçek renk */
html.dark .pm-logo{ filter:grayscale(1) invert(1) brightness(1.7); opacity:.72; }
html.dark .pm-tile:hover{ background:rgba(255,255,255,.96); border-color:rgba(255,255,255,.82); }
html.dark .pm-tile:hover .pm-logo{ filter:grayscale(0); opacity:1; }

/* ---- KAYAN ŞERİT (marquee · full-bleed panel · kenar fade) ---- */
.hm-partners-marquee{ display:flex; flex-direction:column; gap:clamp(16px,1.8vw,22px);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent); }
.pm-row{ overflow:hidden; }
.pm-track{ display:flex; align-items:center; gap:clamp(16px,1.8vw,22px); width:max-content; will-change:transform; }
.pm-track .pm-dup{ display:flex; align-items:center; gap:clamp(16px,1.8vw,22px); }
/* 18.09.2026 · TÜM kutular EŞİT genişlik: eskiden genişlik logonun doğal ölçüsünden geliyordu → tablet/mobilde
   kutular 180 / 209 px karışık çıkıyordu (ölçüldü). Genişlik = logo tuvali oranı (530×172) × logo yüksekliği + yan pay;
   dar ekranda 180px tabanı korunur. Masaüstünde değer eskisiyle aynı (≈318px). */
.pm-track .pm-tile{ flex:0 0 auto; width:max(clamp(180px,18vw,220px), calc(clamp(62px,6.8vw,94px) * 530 / 172 + 2 * clamp(8px,1vw,14px))); }
.pm-track--a{ animation:pm-scroll 46s linear infinite; }
.pm-track--b{ animation:pm-scroll 54s linear infinite reverse; }
@keyframes pm-scroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
/* okuma/hover için imleç üzerindeyken duraklat (layout değişmez) */
.hm-partners-marquee:hover .pm-track{ animation-play-state:paused; }

/* ---- hareket azaltma: şerit dursun, sarsın (yatay taşma yok) ---- */
@media (prefers-reduced-motion:reduce){
  .pm-track{ animation:none !important; width:auto; flex-wrap:wrap; justify-content:center; }
  .pm-track .pm-dup{ display:none; }
  .hm-partners-marquee{ -webkit-mask-image:none; mask-image:none; }
}
