/* ==========================================================================
   LUXURY — FOOTER (temafooter.php) + YUKARI-ÇIK
   1440: 1px çizgi · bülten 616 (m 80) · galeri 6 kare r18 (aralık 10) · 5 sütun (m 80/70) · 1px çizgi · ortalı telif (m 36/30) · SSL + ödeme logoları · yasal
   1024/768: yan 15 (sütunlar 20) · bülten/sütun m 70 (alt 60) · galeri 4 · sütunlar %40 + %60 / 3 × %33 · 390: m 60/50 · galeri 2 · tek sütun + akordeon
   Renkler yalnız kanonik --lx-* belirteçlerinden (luxury.css); görsel kutusu zemini --lx-zemin-acik (css/kart.css).
   ========================================================================== */
:root .lx-ft { color: var(--lx-text); background: var(--lx-bg); font-family: var(--lx-font); }
:root .lx-ft *, :root .lx-ft *::before, :root .lx-ft *::after { box-sizing: border-box; }
:root .lx-ft :focus-visible, :root .lx-yukari:focus-visible { outline: 2px solid var(--lx-focus); outline-offset: 2px; }
:root[data-tema="kontrast"] .lx-ft :focus-visible { outline-width: 3px; }
:where(.lx-ft) :is(p, li, address, span, b) { line-height: inherit; color: inherit; }
:root .lx-ft-kap { max-width: var(--lx-shell); margin: 0 auto; padding: 0 30px; }
:root .lx-ft-cizgi { display: block; height: 0; margin: 0; border: 0; border-top: 1px solid var(--lx-line); background: none; opacity: 1; }
:root[data-tema="kontrast"] .lx-ft-cizgi { border-top-width: 2px; }

/* ---------------- bülten bandı: 616 ortalı, m 80 — başlık 28/33 · açıklama 497 · input 50 + Altın düğme · onay ---------------- */
:root .lx-ft-bulten { max-width: 646px; margin: 80px auto; padding: 0 15px; text-align: center; }
:root .lx-ft-bulten-baslik { margin: 0 0 20px; color: var(--lx-ink); font: 500 28px/33px var(--lx-font); letter-spacing: 0; text-transform: none; }
:root .lx-ft-bulten-metin { max-width: 497px; margin: 0 auto 40px; color: var(--lx-text); font: 400 15px/22px var(--lx-font); letter-spacing: .5px; }
:root .lx-ft-bulten-form { margin: 0; text-align: left; }
:root .lx-ft-bulten-form[hidden] { display: none; }
:root .lx-ft-bulten-satir { display: flex; align-items: center; gap: 10px; }
:root .lx-ft-bulten-girdi { flex: 1 1 0; min-width: 240px; height: 50px; margin: 0; padding: 14px 20px; border: 1px solid transparent; border-radius: 9px; background: var(--lx-soft); color: var(--lx-text);
  font: 400 14px/20px var(--lx-font); box-shadow: none; transition: border-color .3s, background-color .3s, box-shadow .3s; }
:root .lx-ft-bulten-girdi::placeholder { color: var(--lx-muted); font-size: 14px; line-height: 22px; letter-spacing: .5px; opacity: 1; }
:root .lx-ft-bulten-girdi:focus { border-color: var(--lx-gold); outline: 0; background: var(--lx-surface); box-shadow: 0 0 0 3px rgba(var(--lx-gold-rgb), .25); }
:root .lx-ft-bulten-girdi[aria-invalid="true"] { border-color: var(--lx-err); }
:root[data-tema="kontrast"] .lx-ft-bulten-girdi { border: 2px solid #000000; }
:root .lx-ft-bulten-dugme { position: relative; display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; height: 50px; margin: 0; padding: 13px 30px; border: 0; border-radius: 9px;
  background: var(--lx-gold); color: var(--lx-gold-ink); font: 600 14px/24px var(--lx-font); letter-spacing: .28px; text-transform: none; cursor: pointer; transition: background-color .3s, color .3s; }
:root .lx-ft-bulten-dugme:hover, :root .lx-ft-bulten-dugme:focus-visible { background: var(--lx-ink); color: var(--lx-bg); }
:root .lx-ft-bulten-dugme:focus-visible { outline-color: var(--lx-ink); }
/* onay kutusu işaretlenene dek soluk (opaklık .65, not-allowed); tıklanırsa satır içi uyarı gösterilir */
:root .lx-ft-bulten-dugme[aria-disabled="true"] { opacity: .65; cursor: not-allowed; }
:root .lx-ft-bulten-dugme[aria-disabled="true"]:hover { background: var(--lx-gold); color: var(--lx-gold-ink); }
:root .lx-ft-bulten-dugme.yukleniyor { color: transparent; pointer-events: none; }
:root .lx-ft-bulten-dugme.yukleniyor::after { content: ""; position: absolute; top: 50%; left: 50%; width: 18px; height: 18px; margin: -9px 0 0 -9px; border: 2px solid var(--lx-gold-ink); border-right-color: transparent; border-radius: 50%; animation: lx-ft-don .7s linear infinite; }
@keyframes lx-ft-don { to { transform: rotate(360deg); } }
/* onay satırı: mt 20 · 14 × 14 kare r3 · metne 12 · "Gizlilik Politikası'nı okudum…" 14/24 500 başlık rengi, bağlantı altın 500 */
:root .lx-ft-onay { position: relative; display: flex; align-items: center; width: fit-content; max-width: 100%; margin: 20px 0 0; color: var(--lx-ink); font: 500 14px/24px var(--lx-font); cursor: pointer; }
:root .lx-ft-onay input { position: absolute; top: 5px; left: 0; width: 14px; height: 14px; margin: 0; opacity: 0; cursor: pointer; }
:root .lx-ft-onay-kutu { position: relative; flex: none; width: 14px; height: 14px; margin-right: 12px; border: 1px solid rgba(38, 48, 54, .2); border-radius: 3px; background: var(--lx-surface); transition: border-color .2s, background-color .2s; }
:root .lx-ft-onay-kutu::after { content: ""; position: absolute; top: 2px; left: 4px; width: 4px; height: 7px; border: solid var(--lx-gold-ink); border-width: 0 1.5px 1.5px 0; opacity: 0; transform: rotate(45deg); transition: opacity .2s; }
:root .lx-ft-onay input:checked + .lx-ft-onay-kutu { border-color: var(--lx-gold); background: var(--lx-gold); }
:root .lx-ft-onay input:checked + .lx-ft-onay-kutu::after { opacity: 1; }
:root .lx-ft-onay input:focus-visible + .lx-ft-onay-kutu { outline: 2px solid var(--lx-focus); outline-offset: 2px; }
:root .lx-ft-onay input[aria-invalid="true"] + .lx-ft-onay-kutu { border-color: var(--lx-err); }
:root[data-tema="koyu"] .lx-ft-onay-kutu { border-color: rgba(242, 239, 233, .35); }
:root[data-tema="kontrast"] .lx-ft-onay-kutu { border: 2px solid #000000; }
:root .lx-ft-onay-metin a { color: var(--lx-gold); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; transition: color .3s; }
:root .lx-ft-onay-metin a:hover { color: var(--lx-ink); }
:root .lx-ft-bulten-hata { margin: 8px 0 0; color: var(--lx-err-text); font: 400 14px/20px var(--lx-font); }
:root .lx-ft-bulten-hata[hidden] { display: none; }
:root .lx-ft-bulten-tamam { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 0; color: var(--lx-ok-text); font: 500 15px/22px var(--lx-font); }
:root .lx-ft-bulten-tamam[hidden] { display: none; }
:root .lx-ft-bulten-tamam .lx-ik { width: 22px; height: 22px; }
:root .lx-ft-bulten-tamam:focus { outline: 0; }

/* açılış popup'ı (kabuk biçimi css/genel.css): üst yazı 12/24 600 büyük harf · onay satırı · "Bir daha gösterme" kare onay kutusu */
:root .ex-popup-ust { align-self: end; margin: 0 0 11px; color: var(--lx-text); font: 600 12px/24px var(--lx-font); letter-spacing: .6px; text-transform: uppercase; }
:root .ex-popup-form .lx-ft-onay, :root .ex-popup-form .lx-ft-bulten-hata { flex: 0 0 100%; }
:root .ex-popup-form .lx-ft-onay { margin-top: 10px; }
:root .ex-popup-form .lx-ft-bulten-hata { margin-top: 0; }
:root .ex-popup .lx-ft-onay.ex-popup-ilgisiz { margin: 16px 0 0; padding: 0; background: none; }
:root .ex-popup-dugme[aria-disabled="true"] { opacity: .65; cursor: not-allowed; }
:root .ex-popup-dugme[aria-disabled="true"]:hover { background: var(--lx-gold); color: var(--lx-gold-ink); }

/* ---------------- galeri şeridi: 6 kare r18, aralık 10 (öğe 0 5), kaydırılır; hover parlaklık .7 + "+" ---------------- */
:root .lx-ft-galeri { max-width: var(--lx-shell); margin: 0 auto 80px; padding: 0 30px; }
:root .lx-ft-galeri-liste { --lx-ft-g: 6; display: flex; margin: 0 -5px; padding: 0; overflow-x: auto; list-style: none; scroll-snap-type: x mandatory; scrollbar-width: none; -ms-overflow-style: none; }
:root .lx-ft-galeri-liste::-webkit-scrollbar { display: none; }
:root .lx-ft-galeri-liste:focus-visible { outline-offset: 4px; }
:root .lx-ft-galeri-oge { flex: 0 0 calc(100% / var(--lx-ft-g)); min-width: 0; padding: 0 5px; scroll-snap-align: start; }
:root .lx-ft-galeri-oge > a, :root .lx-ft-galeri-kutu { position: relative; display: block; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 18px; background: var(--lx-zemin-acik); }
:root .lx-ft-galeri-oge img { display: block; width: 100%; height: 100%; border-radius: 18px; object-fit: cover; transition: filter .3s; }
/* ürün fotoğrafıyla dolan kare: beyaz zeminli çekimler açık gri kutuya oturur (ürün kartıyla aynı dil) */
:root .lx-ft-galeri-oge.urun img { mix-blend-mode: multiply; }
:root[data-tema="koyu"] .lx-ft-galeri-oge.urun img { mix-blend-mode: normal; }
@media (prefers-color-scheme: dark) { :root:not([data-tema="acik"]):not([data-tema="kontrast"]) .lx-ft-galeri-oge.urun img { mix-blend-mode: normal; } }
:root .lx-ft-galeri-arti { position: absolute; top: 50%; left: 50%; z-index: 2; display: inline-flex; color: #FFFFFF; opacity: 0; visibility: hidden; transform: translate(-50%, -50%); transition: opacity .3s, visibility .3s; pointer-events: none; }
:root .lx-ft-galeri-arti .lx-ik { width: 22px; height: 22px; stroke-width: 1.5; }
:root .lx-ft-galeri-oge > a:hover img, :root .lx-ft-galeri-oge > a:focus-visible img { filter: brightness(.7); }
:root .lx-ft-galeri-oge > a:hover .lx-ft-galeri-arti, :root .lx-ft-galeri-oge > a:focus-visible .lx-ft-galeri-arti { opacity: 1; visibility: visible; }
:root .lx-ft-galeri-oge > a:focus-visible { outline-offset: -3px; }

/* ---------------- 5 sütun: %20 × 5, m 80/70; bağlantı sütunları sol 17% ---------------- */
:root .lx-ft-sutunlar { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); max-width: var(--lx-shell); margin: 80px auto 70px; padding: 0 30px; }
:root .lx-ft-sutun { min-width: 0; }
:root .lx-ft-sutun-link { padding-left: 17%; }
:root .lx-ft-logo { display: inline-flex; align-items: center; height: 31px; margin: 0 0 26px; color: var(--lx-ink); text-decoration: none; }
:root .lx-ft-logo img { display: block; width: auto; max-width: 180px; height: auto; max-height: 31px; }
:root .lx-ft-logo .lx-logo-koyu { display: none; }
:root[data-tema="koyu"] .lx-ft-logo:has(.lx-logo-koyu) .lx-logo-acik { display: none; }
:root[data-tema="koyu"] .lx-ft-logo .lx-logo-koyu { display: block; }
@media (prefers-color-scheme: dark) {
  :root:not([data-tema="acik"]):not([data-tema="kontrast"]) .lx-ft-logo:has(.lx-logo-koyu) .lx-logo-acik { display: none; }
  :root:not([data-tema="acik"]):not([data-tema="kontrast"]) .lx-ft-logo .lx-logo-koyu { display: block; }
  :root:not([data-tema="acik"]):not([data-tema="kontrast"]) .lx-ft-onay-kutu { border-color: rgba(242, 239, 233, .35); }
}
:root .lx-ft-logo-yazi { font: 600 22px/31px var(--lx-font); letter-spacing: 1.5px; text-transform: uppercase; }
:root .lx-ft-tanitim { margin: 0 0 32px; color: var(--lx-text); font: 400 15px/22px var(--lx-font); letter-spacing: .5px; }
/* sosyal daireler 38.4 (ikon 16 + .7em), zemin --lx-soft, aralık 10; hover altın */
:root .lx-ft-sosyal { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
:root .lx-ft-sosyal a { display: inline-flex; align-items: center; justify-content: center; width: 38.4px; height: 38.4px; border-radius: 50%; background: var(--lx-soft); color: var(--lx-text); text-decoration: none; transition: background-color .3s, color .3s; }
:root .lx-ft-sosyal a .lx-ik { width: 16px; height: 16px; }
:root .lx-ft-sosyal a:hover, :root .lx-ft-sosyal a:focus-visible { background: var(--lx-gold); color: var(--lx-gold-ink); }
:root[data-tema="kontrast"] .lx-ft-sosyal a { border: 2px solid #000000; }
:root .lx-ft-uygulama { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
:root .lx-ft-uygulama a { display: inline-flex; overflow: hidden; border-radius: 9px; }
:root .lx-ft-uygulama img { display: block; width: 120px; height: 36px; object-fit: contain; }
:root .lx-ft-baslik { position: relative; margin: 0 0 22px; color: var(--lx-ink); font: 500 18px/24px var(--lx-font); letter-spacing: 0; text-transform: none; }
:root .lx-ft-baslik-yardim { margin-bottom: 24px; }
:root .lx-ft-ac { display: none; }
:root .lx-ft-liste { margin: 0; padding: 0; list-style: none; }
:root .lx-ft-liste li { margin: 0; padding: 0; }
/* bağlantı 14/31 500 ls .5; hover altın + 1 px altın alt çizgi (sağdan kapanır / soldan açılır .3s) */
:root .lx-ft-liste a, :root .lx-ft-iletisim a { position: relative; display: inline-flex; color: var(--lx-text); text-decoration: none; transition: color .3s; }
:root .lx-ft-liste a { font: 500 14px/31px var(--lx-font); letter-spacing: .5px; }
:root .lx-ft-liste a::before { content: ""; position: absolute; right: 0; bottom: 2px; left: auto; width: 0; height: 1px; background: var(--lx-gold); transition: width .3s; }
:root .lx-ft-liste a:hover, :root .lx-ft-liste a:focus-visible, :root .lx-ft-iletisim a:hover { color: var(--lx-gold); }
:root .lx-ft-liste a:hover::before, :root .lx-ft-liste a:focus-visible::before { right: auto; left: 0; width: 100%; }
:root .lx-ft-iletisim { margin: 0; color: var(--lx-text); font: 400 15px/24px var(--lx-font); font-style: normal; letter-spacing: .5px; }
:root .lx-ft-iletisim p { margin: 0; }
:root .lx-ft-iletisim .lx-ft-adres { margin-bottom: 5px; }
:root .lx-ft-iletisim .lx-ft-saat { margin-top: 5px; font-size: 14px; line-height: 22px; }
:root .lx-ft-liste-yardim { margin-top: 6px; }

/* ---------------- alt: çizgi + telif (ortalı, m 36/30) + SSL / ödeme logoları (44 × 28 r6) + yasal bağlantılar ---------------- */
:root .lx-ft-alt { max-width: var(--lx-shell); margin: 0 auto; padding: 36px 15px 30px; text-align: center; }
:root .lx-ft-telif { margin: 0; color: var(--lx-ink); font: 400 15px/22px var(--lx-font); letter-spacing: .5px; }
:root .lx-ft-marka-adi { color: var(--lx-gold); }
:root .lx-ft-odeme { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 16px; margin-top: 16px; }
:root .lx-ft-ssl { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: var(--lx-text); font: 500 13px/20px var(--lx-font); }
:root .lx-ft-ssl .lx-ik { width: 14px; height: 14px; }
:root .lx-ft-kartlar { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
:root .lx-ft-kartlar li { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 28px; overflow: hidden; border: 1px solid var(--lx-line); border-radius: 6px; background: #FFFFFF;
  filter: grayscale(1); opacity: .75; transition: filter .3s, opacity .3s; }
:root .lx-ft-kartlar li:hover { filter: none; opacity: 1; }
:root .lx-ft-kartlar svg { display: block; width: 44px; height: 28px; }
:root .lx-ft-kartlar .lx-ft-kapida { width: auto; min-width: 44px; padding: 0 8px; color: #22201D; font: 700 11px/1 var(--lx-font); letter-spacing: .3px; text-transform: uppercase; }
:root[data-tema="kontrast"] .lx-ft-kartlar li { border: 2px solid #000000; filter: none; opacity: 1; }
:root .lx-ft-yasal { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 0; margin: 12px 0 0; padding: 0; list-style: none; }
:root .lx-ft-yasal li { display: inline-flex; align-items: center; }
:root .lx-ft-yasal li + li::before { content: "·"; margin: 0 8px; color: var(--lx-muted); }
:root .lx-ft-yasal a, :root .lx-ft-yasal button { display: inline-flex; align-items: center; min-height: 32px; margin: 0; padding: 0; border: 0; background: none; color: var(--lx-text); font: 500 13px/20px var(--lx-font); text-decoration: none; cursor: pointer; transition: color .3s; }
:root .lx-ft-yasal a:hover, :root .lx-ft-yasal button:hover { color: var(--lx-gold); }

/* ---------------- yukarı-çık: 40 daire siyah, sağ alt 30/30 (≤991 10/10), 400 px'ten sonra solarak (luxury-ray.js .gorunur) ---------------- */
:root .lx-yukari { position: fixed; right: 30px; bottom: 30px; z-index: 1100; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin: 0; padding: 0; border: 0; border-radius: 50%;
  background: var(--lx-backtop); color: #FFFFFF; box-shadow: var(--lx-shadow-backtop); opacity: 0; visibility: hidden; cursor: pointer; transition: opacity .3s, visibility .3s, background-color .3s; }
:root .lx-yukari .lx-ik { width: 16px; height: 16px; stroke-width: 1.8; }
:root .lx-yukari.gorunur { opacity: 1; visibility: visible; }
:root .lx-yukari:hover { background: var(--lx-gold); color: var(--lx-gold-ink); }
:root[data-tema="koyu"] .lx-yukari { color: #F2EFE9; }
@media (prefers-color-scheme: dark) { :root:not([data-tema="acik"]):not([data-tema="kontrast"]) .lx-yukari { color: #F2EFE9; } }
:root[data-tema="kontrast"] .lx-yukari { outline: 2px solid #FFFFFF; outline-offset: -4px; }

/* ---------------- duyarlı ---------------- */
@media (max-width: 1199.98px) {
  :root .lx-ft-galeri-liste { --lx-ft-g: 4; }
}
@media (max-width: 1024.98px) {
  :root .lx-ft-kap { padding: 0 15px; }
  :root .lx-ft-bulten { margin: 70px auto; }
  :root .lx-ft-bulten-metin { margin-bottom: 30px; }
  :root .lx-ft-galeri { margin-bottom: 70px; padding: 0 15px; }
  :root .lx-ft-sutunlar { grid-template-columns: repeat(15, minmax(0, 1fr)); margin: 70px auto 60px; padding: 0 20px; }
  :root .lx-ft-sutun-marka { grid-column: span 6; padding-bottom: 30px; }
  :root .lx-ft-sutun-yardim { order: 2; grid-column: span 9; padding: 0 0 30px 50px; }
  :root .lx-ft-sutun-link { order: 3; grid-column: span 5; padding: 0 30px 0 0; }
}
@media (max-width: 991.98px) {
  :root .lx-yukari { right: 10px; bottom: 10px; }
}
@media (max-width: 767.98px) {
  :root .lx-ft-bulten { margin: 60px auto; }
  :root .lx-ft-galeri { margin-bottom: 60px; }
  :root .lx-ft-galeri-liste { --lx-ft-g: 2; }
  :root .lx-ft-sutunlar { grid-template-columns: minmax(0, 1fr); margin: 60px auto 50px; padding: 0 15px; }
  :root .lx-ft-sutun-marka, :root .lx-ft-sutun-yardim, :root .lx-ft-sutun-link { order: 0; grid-column: auto; padding: 0; }
  :root .lx-ft-sutun-marka { padding-bottom: 20px; }
  /* akordeon: başlık satırı 44 (18/24 + 10/10), sağda 15 px aşağı açı → açıkken 180° */
  :root .lx-ft-sutun-link .lx-ft-baslik { display: flex; align-items: center; justify-content: space-between; min-height: 44px; margin: 0; padding: 10px 0; }
  :root .lx-ft-ac { position: absolute; inset: 0; display: flex; align-items: center; justify-content: flex-end; width: 100%; margin: 0; padding: 0; border: 0; background: none; color: var(--lx-ink); cursor: pointer; }
  :root .lx-ft-ac .lx-ik { width: 15px; height: 15px; stroke-width: 2.25; transition: transform .2s; }
  :root .lx-ft-ac[aria-expanded="true"] .lx-ik { transform: rotate(180deg); }
  :root.lx-ft-js .lx-ft-sutun-link .lx-ft-liste { display: none; }
  :root.lx-ft-js .lx-ft-sutun-link .lx-ft-liste.acik { display: block; padding-bottom: 12px; }
  :root .lx-ft-alt { padding: 24px 15px; }
  /* yasal bağlantılar dar ekranda nokta ayraçsız, boşlukla */
  :root .lx-ft-yasal { gap: 0 16px; }
  :root .lx-ft-yasal li + li::before { content: none; }
}
@media (max-width: 400px) {
  :root .lx-ft-bulten-satir { flex-wrap: wrap; }
  :root .lx-ft-bulten-girdi { flex: 0 0 100%; width: 100%; min-width: 0; font-size: 16px; }
  :root .lx-ft-bulten-dugme { width: fit-content; }
}
@media (prefers-reduced-motion: reduce) {
  :root .lx-ft *, :root .lx-ft *::before, :root .lx-ft *::after, :root .lx-yukari { transition-duration: 0s !important; animation: none !important; }
  :root .lx-ft-galeri-liste { scroll-behavior: auto; }
}
@media (forced-colors: active) {
  :root .lx-ft-onay-kutu { border-color: CanvasText; }
  :root .lx-ft-bulten-dugme, :root .lx-yukari { border: 1px solid ButtonText; }
}
