/* ============================================================
   DESIGN TOKENS
============================================================ */
:root {
  /* Brand */
  --pink:       #FF0080;
  --pink-dim:   #D4006A;
  --purple:     #7928CA;
  --navy:       #0F1629;
  --navy-mid:   #1E2A45;

  /* Gradients */
  --g-brand:   linear-gradient(135deg, #FF0080 0%, #7928CA 100%);
  --g-brand-h: linear-gradient(135deg, #FF2090 0%, #9040E0 100%);
  --g-dark:    linear-gradient(145deg, #0F1629 0%, #1A2540 100%);
  --g-subtle:  linear-gradient(135deg, rgba(255,0,128,.06) 0%, rgba(121,40,202,.06) 100%);

  /* Light theme */
  --bg:         #F2F4F8;
  --bg-alt:     #ECEEF4;
  --surface:    #FFFFFF;
  --surface2:   #F6F7FB;
  --border:     #E2E5EF;
  --border2:    #D5D9E8;
  --text:       #0F1629;
  --text2:      #5A6480;
  --text3:      #9AA0B8;

  --tb-bg:      #ECEEF4;
  --nb-bg:      #FFFFFF;
  --cat-bg:     #FFFFFF;

  /* Effects */
  --shadow-xs:  0 1px 3px rgba(15,22,41,.06);
  --shadow-sm:  0 2px 8px rgba(15,22,41,.08);
  --shadow-md:  0 8px 28px rgba(15,22,41,.10);
  --shadow-lg:  0 20px 60px rgba(15,22,41,.14);
  --shadow-pink: 0 8px 32px rgba(255,0,128,.40);
  --shadow-pink-lg: 0 16px 48px rgba(255,0,128,.50);

  /* Radii */
  --r-s:  8px;
  --r:    14px;
  --r-l:  22px;
  --r-xl: 30px;
  --r-p:  999px;

  /* Motion */
  --ease: cubic-bezier(.25,.8,.25,1);
  --ease-spring: cubic-bezier(.34,1.56,.64,1);
}

/* Dark theme */
[data-theme="dark"] {
  --bg:        #080C16;
  --bg-alt:    #0D1220;
  --surface:   #111828;
  --surface2:  #192035;
  --border:    #1E2840;
  --border2:   #243050;
  --text:      #EEF0FF;
  --text2:     #8890B0;
  --text3:     #4A5270;
  --tb-bg:     #06090F;
  --nb-bg:     #0D1220;
  --cat-bg:    #0D1220;
}

/* ============================================================
   RESET & BASE
============================================================ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html {
  scroll-behavior: smooth;
  overflow-x: hidden;
  max-width: 100vw;
}

body {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  background: var(--bg);
  color: var(--text);
  -webkit-font-smoothing: antialiased;
  transition: background .3s var(--ease), color .3s var(--ease);
  overflow-x: hidden;
  max-width: 100vw;
  width: 100%;
}

a { text-decoration: none; color: inherit; }
button { font-family: inherit; cursor: pointer; }
img { display: block; max-width: 100%; }

.wrap {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 28px;
}

/* ============================================================
   BUTTONS
============================================================ */
.btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--g-brand);
  color: #fff !important;
  border: none;
  border-radius: var(--r-p);
  padding: 11px 24px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -.1px;
  box-shadow: var(--shadow-pink);
  transition: background .25s, box-shadow .25s, transform .2s var(--ease-spring);
  white-space: nowrap;
}
.btn-primary:hover {
  background: var(--g-brand-h);
  box-shadow: var(--shadow-pink-lg);
  transform: translateY(-2px) scale(1.02);
}
.btn-primary:active { transform: translateY(0) scale(.99); }

.btn-primary.btn-lg {
  padding: 14px 32px;
  font-size: 15px;
  border-radius: var(--r-p);
}

.btn-ghost {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--surface);
  color: var(--text) !important;
  border: 1.5px solid var(--border2);
  border-radius: var(--r-p);
  padding: 14px 28px;
  font-size: 15px;
  font-weight: 600;
  transition: border-color .2s, background .2s, transform .2s var(--ease-spring);
  white-space: nowrap;
}
.btn-ghost:hover {
  border-color: var(--pink);
  color: var(--pink) !important;
  background: rgba(255,0,128,.04);
  transform: translateY(-2px);
}

/* Gradient text utility */
.gradient-text {
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ============================================================
   TOPBAR
============================================================ */
.topbar {
  background: var(--tb-bg);
  border-bottom: 1px solid var(--border);
  padding: 9px 0;
  font-size: 12.5px;
  font-weight: 500;
  transition: background .3s, border-color .3s;
}
.topbar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.topbar__left {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--text2);
  flex: 1;
}
.topbar__left .fa-envelope { color: var(--pink); }

.topbar__nav {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--text2);
  margin-right: 32px;
}
.topbar__nav a {
  color: var(--text2);
  text-decoration: none;
  font-size: 12px;
  transition: color .15s;
}
.topbar__nav a:hover { color: var(--text); }
.topbar__nav .accent-link {
  color: var(--pink);
  font-weight: 600;
}
.topbar__right-group {
  display: flex;
  align-items: center;
  gap: 12px;
}
.topbar__right {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--text2);
}
.vr {
  display: block;
  width: 1px;
  height: 14px;
  background: var(--border2);
}

.theme-toggle {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: var(--surface);
  color: var(--text2);
  font-size: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color .2s, background .2s, border-color .2s;
}
.theme-toggle:hover { color: var(--pink); border-color: var(--pink); }

.lang-pill {
  display: flex;
  align-items: center;
  gap: 5px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 3px 8px;
  font-size: 12px;
  font-weight: 600;
  color: var(--text);
}
.lang-pill img { border-radius: 2px; }

/* ============================================================
   NAVBAR
============================================================ */
.navbar {
  background: var(--nb-bg);
  border-bottom: 1px solid var(--border);
  padding: 14px 0;
  position: sticky;
  top: 0;
  z-index: 300;
  box-shadow: var(--shadow-xs);
  backdrop-filter: blur(12px);
  transition: background .3s, border-color .3s, box-shadow .3s;
}
.navbar--scrolled {
  box-shadow: var(--shadow-md);
}

.navbar__inner {
  display: flex;
  align-items: center;
  gap: 20px;
}

/* Logo */
.logo {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  transition: opacity .2s;
}
.logo:hover { opacity: .85; }
.logo__mark { line-height: 0; border-radius: 10px; overflow: hidden; }
.logo__text {
  font-size: 21px;
  font-weight: 900;
  letter-spacing: -.5px;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Search bar */
.search-bar {
  flex: 1;
  max-width: 560px;
  display: flex;
  align-items: center;
  position: relative;
  background: var(--surface2);
  border: 1.5px solid var(--border);
  border-radius: var(--r-p);
  overflow: hidden;
  transition: border-color .2s, box-shadow .2s;
}
.search-bar:focus-within {
  border-color: var(--pink);
  box-shadow: 0 0 0 4px rgba(255,0,128,.10);
}
.search-bar__ico {
  position: absolute;
  left: 18px;
  font-size: 14px;
  color: var(--text3);
  pointer-events: none;
}
.search-bar input {
  flex: 1;
  border: none;
  background: transparent;
  padding: 12px 16px 12px 44px;
  font-size: 14px;
  font-family: inherit;
  color: var(--text);
  outline: none;
}
.search-bar input::placeholder { color: var(--text3); }
.search-bar__btn {
  background: var(--g-brand);
  border: none;
  color: #fff;
  width: 46px;
  height: 100%;
  min-height: 46px;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity .2s;
  flex-shrink: 0;
}
.search-bar__btn:hover { opacity: .85; }

/* Nav actions */
.nav-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
}

.nav-icon {
  position: relative;
  width: 42px;
  height: 42px;
  border-radius: var(--r-s);
  border: 1.5px solid var(--border);
  background: var(--surface);
  color: var(--text2);
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color .2s, border-color .2s, background .2s, transform .2s var(--ease-spring);
}
.nav-icon:hover {
  color: var(--pink);
  border-color: rgba(255,0,128,.3);
  background: rgba(255,0,128,.04);
  transform: translateY(-1px);
}

.nav-badge {
  position: absolute;
  top: -5px;
  right: -5px;
  background: var(--g-brand);
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  border: 2px solid var(--nb-bg);
  display: flex;
  align-items: center;
  justify-content: center;
}
.nav-dot {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 7px;
  height: 7px;
  background: var(--pink);
  border-radius: 50%;
  border: 2px solid var(--nb-bg);
}

.nav-login {
  margin-left: 8px;
}

.nav-user-chip {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-left: 8px;
  padding: 5px 12px 5px 5px;
  border-radius: 99px;
  border: 1px solid var(--border);
  background: var(--surface);
  text-decoration: none;
  cursor: pointer;
  transition: all .18s;
  white-space: nowrap;
}
.nav-user-chip:hover {
  border-color: var(--pink);
  background: rgba(255,0,128,.04);
}
.nav-user-av {
  width: 30px; height: 30px;
  border-radius: 50%;
  background: var(--g-brand);
  display: grid; place-items: center;
  font-size: 11px; font-weight: 800; color: #fff;
  flex-shrink: 0;
}
.nav-user-info {
  display: flex; flex-direction: column; gap: 1px;
}
.nav-user-name {
  font-size: 12px; font-weight: 700; color: var(--text);
  line-height: 1.2;
}
.nav-user-label {
  font-size: 10px; font-weight: 600; color: var(--pink);
  display: flex; align-items: center; gap: 3px;
  line-height: 1.2;
}

/* Hamburger */
.hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  padding: 6px;
  margin-left: 6px;
}
.hamburger span {
  display: block;
  width: 22px;
  height: 2px;
  background: var(--text);
  border-radius: 2px;
  transition: .25s;
}
.hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity: 0; }
.hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ============================================================
   CATEGORY NAV
============================================================ */
.cat-nav {
  background: var(--cat-bg);
  border-bottom: 1px solid var(--border);
  transition: background .3s, border-color .3s;
}
.cat-nav__inner {
  display: flex;
  align-items: center;
  gap: 0;
  overflow: visible;
}

/* ── Sosyal Medya Dropdown ── */
.cat-dd-wrap {
  position: relative;
}

.cat-link--drop {
  gap: 7px;
}

.cat-chev {
  font-size: 10px;
  color: var(--text3);
  transition: transform .25s var(--ease-spring), color .2s;
  margin-left: 2px;
}
.cat-dd-wrap:hover .cat-chev,
.cat-dd-wrap.open .cat-chev {
  transform: rotate(180deg);
  color: var(--pink);
}

.cat-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 600;
  padding-top: 8px;
  min-width: 460px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: opacity .2s var(--ease), transform .2s var(--ease), visibility .2s;
  pointer-events: none;
}
.cat-dropdown__inner {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 14px;
  box-shadow: var(--shadow-lg), 0 20px 60px rgba(0,0,0,.08);
}
.cat-dd-wrap:hover .cat-dropdown,
.cat-dd-wrap.open .cat-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: all;
}

.cat-drop-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4px 6px 12px;
  border-bottom: 1px solid var(--border);
  margin-bottom: 12px;
}
.cat-drop-head span {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text3);
}
.cat-drop-head a {
  font-size: 12px;
  font-weight: 600;
  color: var(--pink);
  display: flex;
  align-items: center;
  gap: 5px;
  text-decoration: none;
  transition: gap .18s;
}
.cat-drop-head a:hover { gap: 8px; }

.cat-drop-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
}

.cat-drop-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border-radius: var(--r-s);
  text-decoration: none;
  color: var(--text2);
  font-size: 12.5px;
  font-weight: 600;
  transition: background .15s, color .15s;
}
.cat-drop-item:hover {
  background: var(--surface2);
  color: var(--text);
}

.cat-drop-ico {
  width: 34px;
  height: 34px;
  border-radius: 9px;
  background: color-mix(in srgb, var(--pc) 12%, transparent);
  color: var(--pc);
  font-size: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform .2s var(--ease-spring);
}
.cat-drop-item:hover .cat-drop-ico {
  transform: scale(1.12);
}

[data-theme="dark"] .cat-dropdown__inner {
  box-shadow: var(--shadow-lg), 0 20px 60px rgba(0,0,0,.3);
}

/* ── Kurumsal Dropdown (list style) ── */
.cat-dropdown--corp { width: 290px; }

.cat-drop-links {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.cat-drop-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 10px;
  border-radius: var(--r-s);
  transition: background .15s;
  color: var(--text);
}
.cat-drop-link:hover { background: var(--surface2); }

.cat-drop-link__ico {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--bg-alt);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  color: var(--pink);
  flex-shrink: 0;
  transition: background .15s, color .15s;
}
.cat-drop-link:hover .cat-drop-link__ico {
  background: rgba(255,0,128,.10);
}
.cat-drop-link__info {
  flex: 1;
  min-width: 0;
}
.cat-drop-link__info strong {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
}
.cat-drop-link__info span {
  display: block;
  font-size: 11.5px;
  color: var(--text3);
  margin-top: 1px;
}
.cat-drop-link__arr {
  font-size: 11px;
  color: var(--text3);
  opacity: 0;
  transform: translateX(-4px);
  transition: opacity .15s, transform .15s;
}
.cat-drop-link:hover .cat-drop-link__arr {
  opacity: 1;
  transform: translateX(0);
}

.cat-link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 13px 20px;
  font-size: 13.5px;
  font-weight: 500;
  color: var(--text2);
  white-space: nowrap;
  border-bottom: 2px solid transparent;
  transition: color .2s, border-color .2s;
  position: relative;
}
.cat-link i { font-size: 13px; transition: transform .2s; }
.cat-link:hover { color: var(--text); }
.cat-link:hover i { transform: scale(1.15); }
.cat-link.active {
  color: var(--pink);
  border-bottom-color: var(--pink);
  font-weight: 600;
}

/* ============================================================
   HERO SECTION
============================================================ */
.hero {
  padding: 48px 0 0;
  background: var(--bg);
  /* Subtle dot grid pattern */
  background-image:
    radial-gradient(circle, rgba(121,40,202,.07) 1px, transparent 1px);
  background-size: 28px 28px;
  transition: background-color .3s;
  position: relative;
}

/* Ambient blobs behind entire hero */
.hero::before,
.hero::after {
  content: '';
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
}
.hero::before {
  width: 600px;
  height: 600px;
  top: -200px;
  right: -150px;
  background: radial-gradient(circle, rgba(255,0,128,.08) 0%, transparent 70%);
}
.hero::after {
  width: 400px;
  height: 400px;
  bottom: 0;
  left: -100px;
  background: radial-gradient(circle, rgba(121,40,202,.07) 0%, transparent 70%);
}

.hero__grid {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: start;
  position: relative;
  z-index: 1;
}

/* Sağ iki kart wrapper — h1 ile hizalı */
.hero__cards {
  display: flex;
  align-self: start;
  /* badge (≈28px) + margin-bottom (22px) = 50px → h1 başlangıcıyla hizalanır */
  padding-top: 50px;
}

.cards-row {
  display: flex;
  flex-direction: row;
  gap: 18px;
  align-items: stretch;
}

/* ---- HERO LEFT ---- */
.hero__text {
  padding: 8px 0 32px;
  display: flex;
  flex-direction: column;
  align-self: stretch;   /* sağ kartların yüksekliğine uzar */
}


.hero__badge {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;   /* flex column içinde yayılmasın */
  gap: 7px;
  background: rgba(255,0,128,.06);
  border: 1px solid rgba(255,0,128,.18);
  color: var(--pink);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .3px;
  text-transform: uppercase;
  padding: 6px 14px 6px 10px;
  border-radius: var(--r-p);
  margin-bottom: 22px;
}
.badge-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--pink);
  animation: pulse-dot 1.8s ease-in-out infinite;
}
@keyframes pulse-dot {
  0%,100% { opacity: 1; transform: scale(1); }
  50% { opacity: .5; transform: scale(1.4); }
}

.hero__title {
  font-size: 52px;
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -1.5px;
  color: var(--text);
  margin-bottom: 20px;
}

.hero__desc {
  font-size: 15.5px;
  line-height: 1.75;
  color: var(--text2);
  max-width: 420px;
  margin-bottom: 28px;
}

/* Rating — kutu içinde */
.hero__rating {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 14px;
  margin-bottom: 28px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r);
  padding: 12px 18px;
  box-shadow: var(--shadow-sm);
  animation: rating-float 4s ease-in-out infinite;
  transition: box-shadow .3s, border-color .3s;
}
.hero__rating:hover {
  border-color: rgba(245,158,11,.4);
  box-shadow: var(--shadow-md), 0 0 0 3px rgba(245,158,11,.08);
}
@keyframes rating-float {
  0%,100% { transform: translateY(0); }
  50%      { transform: translateY(-4px); }
}
.rating__stars {
  display: flex;
  gap: 3px;
  color: #F59E0B;
  font-size: 16px;
}
.rating__info {
  display: flex;
  align-items: baseline;
  gap: 5px;
  border-left: 1px solid var(--border);
  padding-left: 14px;
}
.rating__info strong {
  font-size: 16px;
  font-weight: 800;
  color: var(--text);
}
.rating__info span {
  font-size: 13px;
  color: var(--text3);
}

/* Hero actions */
.hero__actions {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 28px;
  flex-wrap: wrap;
}

/* Trust pills */

/* ---- HERO CENTER (Service cards) ---- */
.hero__visual {
  width: 360px;
  display: flex;
  flex-direction: column;
  /* cards-row stretch ile aynı yüksekliği alır, svc-card--main doldurur */
}

/* === SERVICE CARDS STACK === */
.svc-card {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 20px 20px;
  position: relative;
  box-shadow: var(--shadow-md);
  transition: transform .35s var(--ease-spring), box-shadow .3s;
}

/* Kart içi başlık */
.svc-card-title {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .5px;
  color: var(--pink);
  background: rgba(255,0,128,.06);
  border: 1px solid rgba(255,0,128,.14);
  border-radius: var(--r-s);
  padding: 7px 12px;
  margin-bottom: 14px;
  width: fit-content;
}
.svc-card-title i { font-size: 11px; }

/* Platform Tabs */
.svc-tabs {
  display: flex;
  gap: 6px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.svc-tab {
  width: 38px; height: 38px;
  border-radius: 10px;
  border: 1.5px solid var(--border);
  background: var(--surface2);
  color: var(--text3);
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: color .2s, border-color .2s, background .2s, transform .2s var(--ease-spring);
}
.svc-tab:hover {
  border-color: rgba(255,0,128,.3);
  color: var(--text);
  transform: translateY(-2px);
}
.svc-tab.active {
  background: var(--g-brand);
  border-color: transparent;
  color: #fff;
  box-shadow: var(--shadow-pink);
  transform: translateY(-2px);
}

/* Main card */
.svc-card--main {
  position: relative;
  z-index: 3;
  flex: 1;                  /* hero__visual yüksekliğini tamamen doldur */
  display: flex;
  flex-direction: column;
  transition: opacity .18s, transform .18s, box-shadow .3s var(--ease-spring);
}
.svc-card--main:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg), 0 0 0 2px rgba(255,0,128,.15);
}

/* Platform switch animation */
.svc-switching {
  opacity: 0;
  transform: translateY(6px) scale(.99);
  transition: opacity .18s, transform .18s !important;
}

.svc-footer { margin-top: auto; }

/* Platform icon */
.svc-plat {
  width: 38px; height: 38px;
  border-radius: 11px;
  background: var(--pc, #555);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 18px;
  flex-shrink: 0;
}
.svc-card--back .svc-plat,
.svc-card--mid .svc-plat {
  width: 34px; height: 34px;
  font-size: 16px;
  border-radius: 10px;
}

.svc-info { flex: 1; }
.svc-name {
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
  line-height: 1.2;
}
.svc-type {
  font-size: 12px;
  color: var(--text3);
}

/* Price on back/mid cards */
.svc-price {
  font-size: 18px;
  font-weight: 900;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Main card header */
.svc-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}
.svc-header > div:nth-child(2) { flex: 1; }
.svc-header .svc-name { font-size: 15px; }

.svc-badge-hot {
  font-size: 11px;
  font-weight: 700;
  background: rgba(255,0,128,.08);
  border: 1px solid rgba(255,0,128,.18);
  color: var(--pink);
  border-radius: var(--r-p);
  padding: 3px 10px;
  white-space: nowrap;
}

/* Package selector */
.svc-packages {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
  margin-bottom: 12px;
}
.pkg { display: block; cursor: pointer; }
.pkg input { display: none; }

.pkg__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  background: var(--surface2);
  border: 1.5px solid var(--border);
  border-radius: var(--r);
  padding: 8px 6px;
  transition: border-color .2s, background .2s, transform .2s var(--ease-spring);
}
.pkg:hover .pkg__box {
  border-color: rgba(255,0,128,.35);
  background: rgba(255,0,128,.04);
  transform: translateY(-1px);
}
.pkg__box--active,
.pkg input:checked + .pkg__box {
  border-color: var(--pink);
  background: rgba(255,0,128,.06);
  box-shadow: 0 0 0 3px rgba(255,0,128,.10);
}
.pkg__count {
  font-size: 13px;
  font-weight: 700;
  color: var(--text);
}
.pkg__price {
  font-size: 14px;
  font-weight: 900;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Features list */
.svc-features {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-bottom: 12px;
}
.svc-features li {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12.5px;
  color: var(--text2);
}
.svc-features li i {
  color: #10B981;
  font-size: 11px;
  width: 14px;
  text-align: center;
  flex-shrink: 0;
}

/* Footer: rating + CTA */
.svc-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.svc-rating {
  display: flex;
  align-items: center;
  gap: 5px;
}
.svc-stars {
  display: flex;
  gap: 2px;
  color: #F59E0B;
  font-size: 13px;
}
.svc-score {
  font-size: 13px;
  font-weight: 800;
  color: var(--text);
}
.svc-reviews {
  font-size: 12px;
  color: var(--text3);
}
.svc-cta {
  padding: 10px 20px;
  font-size: 13.5px;
}

/* Delivery badge */
.svc-delivery {
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(16,185,129,.07);
  border: 1px solid rgba(16,185,129,.14);
  border-radius: var(--r-s);
  padding: 7px 11px;
  font-size: 12px;
  color: var(--text2);
}
.svc-delivery i { color: #10B981; font-size: 11px; }
.svc-delivery strong { color: var(--text); }

/* === OLD DASHBOARD CARD (removed) === */
.dash-card {
  background: linear-gradient(160deg, #0C1121 0%, #101828 50%, #0F0E1C 100%);
  border-radius: var(--r-xl);
  padding: 28px 26px 22px;
  position: relative;
  overflow: hidden;
  box-shadow:
    var(--shadow-lg),
    0 0 0 1px rgba(255,255,255,.05) inset,
    0 0 80px rgba(255,0,128,.08);
  transition: transform .4s var(--ease-spring), box-shadow .4s;
}
.dash-card:hover {
  transform: translateY(-6px);
  box-shadow:
    0 28px 70px rgba(15,22,41,.22),
    0 0 0 1px rgba(255,255,255,.06) inset,
    0 0 100px rgba(255,0,128,.12);
}

/* Ambient glows */
.dash-glow {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
}
.dash-glow--pink {
  width: 260px; height: 260px;
  top: -100px; right: -80px;
  background: radial-gradient(circle, rgba(255,0,128,.20) 0%, transparent 65%);
  animation: glow-shift 7s ease-in-out infinite;
}
.dash-glow--purple {
  width: 200px; height: 200px;
  bottom: -80px; left: -60px;
  background: radial-gradient(circle, rgba(121,40,202,.22) 0%, transparent 65%);
  animation: glow-shift 9s ease-in-out infinite reverse;
}
@keyframes glow-shift {
  0%,100% { transform: translate(0,0) scale(1); }
  50% { transform: translate(10px,-10px) scale(1.08); }
}

/* Card header */
.dash-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  position: relative;
  z-index: 2;
}
.dash-header__left {
  display: flex;
  align-items: center;
  gap: 10px;
}
.dash-avatar {
  width: 36px; height: 36px;
  border-radius: 10px;
  background: linear-gradient(135deg, #E1306C, #833AB4);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 16px;
}
.dash-username {
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  letter-spacing: -.2px;
}
.dash-sub {
  font-size: 11px;
  color: rgba(255,255,255,.38);
  margin-top: 1px;
}
.dash-live {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  font-weight: 600;
  color: #34D399;
  background: rgba(52,211,153,.10);
  border: 1px solid rgba(52,211,153,.18);
  border-radius: var(--r-p);
  padding: 4px 10px;
}
.live-pulse {
  width: 7px; height: 7px;
  border-radius: 50%;
  background: #34D399;
  animation: live-blink 1.4s ease-in-out infinite;
}
@keyframes live-blink {
  0%,100% { opacity: 1; }
  50% { opacity: .3; }
}

/* Main stat */
.dash-main-stat {
  position: relative;
  z-index: 2;
  margin-bottom: 18px;
}
.dms-number {
  font-size: 44px;
  font-weight: 900;
  letter-spacing: -2px;
  color: #fff;
  line-height: 1;
  margin-bottom: 6px;
  background: linear-gradient(135deg, #fff 40%, rgba(255,255,255,.65) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.dms-meta {
  display: flex;
  align-items: center;
  gap: 10px;
}
.dms-label {
  font-size: 13px;
  color: rgba(255,255,255,.45);
}
.dms-growth {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: rgba(52,211,153,.12);
  border: 1px solid rgba(52,211,153,.2);
  color: #34D399;
  font-size: 12px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: var(--r-p);
}

/* Bar chart */
.dash-chart {
  position: relative;
  z-index: 2;
  margin-bottom: 18px;
}
.chart-bars {
  display: flex;
  align-items: flex-end;
  gap: 6px;
  height: 80px;
  padding-bottom: 20px;
  position: relative;
}
.chart-bars::after {
  content: '';
  position: absolute;
  bottom: 18px;
  left: 0; right: 0;
  height: 1px;
  background: rgba(255,255,255,.06);
}
.c-bar {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
}
.c-bar__fill {
  width: 100%;
  height: var(--h);
  border-radius: 5px 5px 3px 3px;
  background: rgba(255,255,255,.10);
  transition: height .8s var(--ease-spring);
  animation: bar-grow .9s var(--ease-spring) both;
}
.c-bar--active .c-bar__fill {
  background: var(--g-brand);
  box-shadow: 0 0 16px rgba(255,0,128,.50);
}
@keyframes bar-grow {
  from { height: 0; }
}
.c-bar span {
  font-size: 10px;
  color: rgba(255,255,255,.30);
  white-space: nowrap;
}

/* Platform row */
.dash-platforms {
  display: flex;
  gap: 8px;
  position: relative;
  z-index: 2;
  margin-bottom: 18px;
}
.dp-item {
  flex: 1;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: var(--r);
  padding: 10px 10px 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  transition: background .2s, border-color .2s;
}
.dp-item:hover {
  background: rgba(255,255,255,.09);
  border-color: rgba(255,255,255,.12);
}
.dp-ico {
  width: 30px; height: 30px;
  border-radius: 8px;
  background: var(--c, #555);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 14px;
}
.dp-data {
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.2;
}
.dp-data strong {
  font-size: 13px;
  font-weight: 800;
  color: #fff;
}
.dp-data span {
  font-size: 10px;
  color: rgba(255,255,255,.35);
}

/* Floating notification */
.dash-notif {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: var(--r);
  padding: 10px 14px;
  animation: notif-slide .6s var(--ease-spring) .8s both;
}
@keyframes notif-slide {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}
.dn-ico {
  width: 32px; height: 32px;
  border-radius: 50%;
  background: linear-gradient(135deg, #10B981, #059669);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 13px;
  flex-shrink: 0;
}
.dn-text {
  display: flex;
  flex-direction: column;
  line-height: 1.3;
}
.dn-text strong {
  font-size: 12.5px;
  font-weight: 700;
  color: #fff;
}
.dn-text span {
  font-size: 11px;
  color: rgba(255,255,255,.4);
}

/* ---- HERO RIGHT (promo cards) ---- */
.hero__promo {
  width: 210px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.promo-card {
  flex: 1;                  /* iki kart hero__promo yüksekliğini eşit böler */
  border-radius: var(--r-l);
  padding: 26px 22px;
  position: relative;
  overflow: hidden;
  min-height: 160px;
  transition: transform .3s var(--ease-spring), box-shadow .3s;
  display: flex;
  flex-direction: column;
}
.promo-card:hover { transform: translateY(-5px); }

.promo-dark {
  background: var(--g-dark);
  border: 1px solid rgba(255,255,255,.06);
  box-shadow: var(--shadow-lg);
}
[data-theme="dark"] .promo-dark {
  border-color: rgba(255,255,255,.04);
}

.promo-pink {
  background: linear-gradient(145deg, #FFF5FB 0%, #FFE8F5 100%);
  border: 1px solid rgba(255,0,128,.12);
  box-shadow: var(--shadow-md);
}
[data-theme="dark"] .promo-pink {
  background: linear-gradient(145deg, #1E0A20 0%, #160818 100%);
  border-color: rgba(255,0,128,.15);
}

.promo-card__tag {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .8px;
  text-transform: uppercase;
  color: rgba(255,255,255,.4);
  margin-bottom: 6px;
}
.promo-card__tag--pink {
  color: var(--pink);
}

.promo-card h3 {
  font-size: 17px;
  font-weight: 800;
  line-height: 1.2;
  margin-bottom: 8px;
}
.promo-dark h3 { color: #fff; }
.promo-pink h3 { color: var(--navy); }
[data-theme="dark"] .promo-pink h3 { color: var(--text); }

.promo-card p {
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: 16px;
  color: rgba(255,255,255,.45);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.promo-pink p { color: var(--text3); }
[data-theme="dark"] .promo-pink p { color: var(--text3); }

.promo-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 12.5px;
  font-weight: 600;
  border-radius: var(--r-p);
  padding: 8px 16px;
  transition: background .2s, transform .2s var(--ease-spring);
  margin-top: auto;
  align-self: flex-start;
}
.promo-btn:hover { transform: translateX(3px); }

.promo-btn--ghost {
  background: rgba(255,255,255,.10);
  color: #fff;
  border: 1px solid rgba(255,255,255,.15);
  backdrop-filter: blur(8px);
}
.promo-btn--ghost:hover { background: rgba(255,255,255,.18); }

.promo-btn--pink {
  background: var(--g-brand);
  color: #fff;
  box-shadow: 0 4px 16px rgba(255,0,128,.35);
}
.promo-btn--pink:hover { box-shadow: 0 6px 22px rgba(255,0,128,.48); }

/* Deco icon in promo cards */
.promo-card__deco {
  position: absolute;
  bottom: -10px;
  right: -10px;
  width: 80px; height: 80px;
  border-radius: 50%;
  background: rgba(255,255,255,.04);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  color: rgba(255,255,255,.12);
}
.promo-card__deco--pink {
  color: rgba(255,0,128,.15);
}

/* ============================================================
   TRUST BAR
============================================================ */
.trust-bar {
  margin-top: 28px;
  padding-bottom: 40px;
  position: relative;
  z-index: 2;
}

.trust-bar__inner {
  display: flex;
  align-items: stretch;
  gap: 14px;
  flex-wrap: wrap;
}

/* Her kart bağımsız, staggered float animasyonu */
.trust-item {
  flex: 1;
  min-width: 180px;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 22px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  box-shadow: var(--shadow-sm);
  cursor: default;
  animation: trust-float 3.5s ease-in-out infinite;
  animation-delay: var(--delay, 0s);
  transition: box-shadow .3s, border-color .3s;
}
.trust-item:hover {
  border-color: rgba(255,0,128,.3);
  box-shadow: var(--shadow-pink);
}
.trust-item:hover .trust-item__ico {
  background: var(--g-brand);
  color: #fff;
  box-shadow: var(--shadow-pink);
  transform: scale(1.1) rotate(-6deg);
}

@keyframes trust-float {
  0%,100% { transform: translateY(0); }
  50%      { transform: translateY(-7px); }
}

.trust-item__ico {
  width: 44px;
  height: 44px;
  border-radius: var(--r);
  background: rgba(255,0,128,.08);
  color: var(--pink);
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background .25s, color .25s, box-shadow .25s, transform .3s var(--ease-spring);
}

.trust-item__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.trust-item__text strong {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--text);
}
.trust-item__text span {
  font-size: 12px;
  color: var(--text3);
}


/* ============================================================
   RESPONSIVE
============================================================ */
@media (max-width: 1100px) {
  .hero__grid   { grid-template-columns: 1fr; }
  .hero__cards  { width: 100%; }
  .cards-row    { flex-wrap: wrap; }
  .hero__visual { width: 100%; flex: 1 1 320px; }
  .hero__promo  { width: auto; flex: 1 1 180px; flex-direction: row; }
  .promo-card   { flex: 1; }
}

@media (max-width: 900px) {
  .hero__title { font-size: 40px; }
}

@media (max-width: 768px) {
  .wrap { padding: 0 18px; }

  .topbar__left span { display: none; }
  .topbar__inner { position: relative; display: flex; justify-content: space-between; align-items: center; }
  .topbar__left  { flex: 0 0 auto; display: flex; align-items: center; }
  .topbar__nav   { display: none; }
  .topbar__right { display: flex; align-items: center; }

  .search-bar { max-width: 100%; }
  .hamburger { display: flex; }
  .nav-icon--desktop { display: none; }
  .nav-login { display: none; }

  .cat-nav { display: none; }
  .cat-nav__inner { flex-direction: column; }
  .cat-link { width: 100%; border-bottom: 1px solid var(--border); border-left-width: 0; }
  .cat-dropdown { display: none !important; }
  .cat-chev { display: none; }
  .cat-link.active { border-left: 3px solid var(--pink); color: var(--pink); border-bottom-color: var(--border); }

  /* ── Hero: sadece text, ortalı ── */
  .hero { padding-bottom: 0; }
  .hero__grid { display: block; }
  .hero__text {
    text-align: center;
    padding-bottom: 32px;
    align-items: center;
  }
  .hero__badge  { align-self: center; }
  .hero__rating { align-self: center; }
  .hero__actions { justify-content: center; }
  .hero__title { font-size: 34px; letter-spacing: -1px; }
  .hero__desc  { font-size: 14.5px; }

  /* ── Hero cards: hero'dan çıkıp tam genişlik bant ── */
  .hero__cards {
    margin: 0;
    width: 100%;
    background: var(--bg-alt);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 16px;
    display: flex;
    justify-content: center;
  }
  .cards-row {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 12px;
    width: 100%;
  }
  .hero__promo {
    order: 1; /* 2 Koyu kutucuk mobilde üste gelir */
    flex: none;
    width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
  }
  .hero__promo .promo-card { flex: 1 1 calc(50% - 6px); min-height: 140px; }
  .hero__visual {
    order: 2; /* Çok Satanlar mobilde alta gelir */
    flex: none;
    min-width: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
  }
  .hero__visual .svc-card--main { flex: 1; }

  /* Satın Al butonu 4.8'in altına */
  .svc-footer { flex-direction: column; align-items: flex-start; gap: 8px; }
  .svc-cta { width: 100%; justify-content: center; }
}

@media (max-width: 520px) {
  .hero { padding-top: 32px; }
  .hero__title { font-size: 28px; }
  .hero__cards { padding: 12px; }
  .cards-row { gap: 10px; }
  .hero__promo { width: 100%; }
  .btn-primary.btn-lg, .btn-ghost.btn-lg { padding: 12px 22px; font-size: 14px; }
  .navbar__inner { gap: 8px; }
  .logo__text { font-size: 17px; }
}

@media (max-width: 480px) {
  .nav-user-name { display: none; }
  .nav-user-chip { padding: 4px 8px 4px 4px; gap: 6px; }
  .nav-actions { gap: 6px; }
  .nav-icon { width: 34px; height: 34px; font-size: 13px; }
  .cards-row {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
  }
  .hero__promo {
    order: 1; /* 2 Koyu kutucuk mobilde üste gelir */
    flex: none;
    width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .hero__promo .promo-card { flex: 1 1 calc(50% - 5px); min-height: 135px; }
  .hero__visual {
    order: 2; /* Çok Satanlar mobilde alta gelir */
    width: 100%;
  }
}

/* ============================================================
   SECTION BASE
============================================================ */
.section {
  padding: 80px 0;
}
.section--gray {
  background: var(--bg-alt);
}

.section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 44px;
}
.section-head--center {
  justify-content: center;
  text-align: center;
}

.section-label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: .5px;
  text-transform: uppercase;
  color: var(--pink);
  margin-bottom: 10px;
}

.section-title {
  font-size: 36px;
  font-weight: 800;
  letter-spacing: -1px;
  color: var(--text);
  line-height: 1.15;
}

.btn-outline-sm {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  border: 1.5px solid var(--border2);
  border-radius: var(--r-p);
  padding: 10px 20px;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--text2);
  white-space: nowrap;
  transition: color .2s, border-color .2s, background .2s;
}
.btn-outline-sm:hover {
  color: var(--pink);
  border-color: rgba(255,0,128,.35);
  background: rgba(255,0,128,.04);
}

.section-center-btn {
  display: flex;
  justify-content: center;
  margin-top: 36px;
}

/* ============================================================
   1. POPÜLER PLATFORMLAR
============================================================ */
.plat-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.plat-card {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px 22px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  box-shadow: var(--shadow-xs);
  position: relative;
  overflow: hidden;
  transition: transform .25s var(--ease-spring), box-shadow .25s, border-color .25s;
}
.plat-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--g-subtle);
  opacity: 0;
  transition: opacity .3s;
}
.plat-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
  border-color: var(--border2);
}
.plat-card:hover::before { opacity: 1; }

.plat-card__ico {
  width: 50px; height: 50px;
  border-radius: var(--r);
  background: var(--pc, #888);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 22px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  transition: transform .25s var(--ease-spring);
}
.plat-card:hover .plat-card__ico {
  transform: scale(1.1) rotate(-5deg);
}

.plat-card__body {
  flex: 1;
  position: relative;
  z-index: 1;
  min-width: 0;
}
.plat-card__name {
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
  line-height: 1.2;
}
.plat-card__desc {
  font-size: 12px;
  color: var(--text3);
  margin-top: 2px;
}
.plat-card__count {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 7px;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--text3);
  background: var(--surface2);
  border: 1px solid var(--border);
  border-radius: var(--r-p);
  padding: 3px 10px;
  transition: background .2s, color .2s, border-color .2s;
}
.plat-card:hover .plat-card__count {
  background: rgba(255,0,128,.06);
  border-color: rgba(255,0,128,.2);
  color: var(--pink);
}

.plat-card__arrow {
  margin-left: auto;
  width: 30px; height: 30px;
  border-radius: 50%;
  background: var(--surface2);
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  color: var(--text3);
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  transition: background .2s, color .2s, border-color .2s, transform .2s;
}
.plat-card:hover .plat-card__arrow {
  background: var(--g-brand);
  border-color: transparent;
  color: #fff;
  transform: translateX(2px);
}

.plat-extra { display: none; }
.plat-extra.visible { display: flex; animation: platFadeIn .35s var(--ease-spring) both; }
@keyframes platFadeIn { from { opacity:0; transform:translateY(12px) scale(.97); } to { opacity:1; transform:none; } }

.plat-more-wrap { display: none; }
.plat-more-btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 11px 28px; border-radius: 50px;
  background: var(--surface2); border: 1px solid var(--border2);
  color: var(--text2); font-size: 14px; font-weight: 600;
  cursor: pointer; font-family: inherit; transition: all .2s;
}
.plat-more-btn:hover { background: var(--surface3); color: var(--text); border-color: var(--border3); }
.plat-more-btn i { transition: transform .3s var(--ease-spring); }
.plat-more-btn.open i { transform: rotate(180deg); }

/* ============================================================
   2. POPÜLER OYUNLAR
============================================================ */
.game-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.game-card {
  position: relative;
  border-radius: var(--r-xl);
  padding: 28px 24px 24px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 190px;
  transition: transform .3s var(--ease-spring), box-shadow .3s;
}
.game-card:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: var(--shadow-lg);
}
.game-card__bg {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, var(--g1, #555) 0%, var(--g2, #333) 100%);
  z-index: 0;
}
.game-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 20%, rgba(0,0,0,.45) 100%);
  z-index: 1;
}
.game-card__ico {
  position: relative;
  z-index: 2;
  font-size: 38px;
  color: rgba(255,255,255,.9);
  text-shadow: 0 4px 20px rgba(0,0,0,.3);
}
.game-card__info {
  position: relative;
  z-index: 2;
}
.game-card__name {
  font-size: 16px;
  font-weight: 800;
  color: #fff;
  line-height: 1.2;
  margin-bottom: 6px;
  text-shadow: 0 2px 8px rgba(0,0,0,.3);
}
.game-card__tag {
  display: inline-flex;
  align-items: center;
  background: rgba(255,255,255,.18);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.22);
  border-radius: var(--r-p);
  padding: 3px 11px;
  font-size: 11.5px;
  font-weight: 600;
  color: #fff;
}

/* ============================================================
   3. NEDEN BİZ?
============================================================ */
.why-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
}

.why-visual__card {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-xl);
  padding: 52px 40px;
  min-height: 420px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  box-shadow: var(--shadow-md);
}
.why-orb {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}
.why-orb--1 {
  width: 280px; height: 280px;
  top: -80px; right: -80px;
  background: radial-gradient(circle, rgba(255,0,128,.12) 0%, transparent 65%);
  animation: orb-drift 8s ease-in-out infinite;
}
.why-orb--2 {
  width: 240px; height: 240px;
  bottom: -60px; left: -60px;
  background: radial-gradient(circle, rgba(121,40,202,.12) 0%, transparent 65%);
  animation: orb-drift 10s ease-in-out infinite reverse;
}
@keyframes orb-drift {
  0%,100% { transform: translate(0,0); }
  50% { transform: translate(14px,-14px); }
}

.why-center-ico {
  width: 96px; height: 96px;
  border-radius: 28px;
  background: var(--g-brand);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 42px;
  color: #fff;
  box-shadow: var(--shadow-pink-lg);
  position: relative;
  z-index: 2;
  animation: why-pulse 3.5s ease-in-out infinite;
}
@keyframes why-pulse {
  0%,100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

.why-stats-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 12px 18px;
  box-shadow: var(--shadow-md);
}
.why-stats-float--1 {
  top: 36px; left: 28px;
  animation: why-float 4s ease-in-out infinite;
}
.why-stats-float--2 {
  bottom: 36px; right: 28px;
  animation: why-float 4s ease-in-out infinite;
  animation-delay: -2s;
}
@keyframes why-float {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
.why-stats-float i {
  font-size: 22px;
  color: var(--pink);
}
.why-stats-float strong {
  display: block;
  font-size: 16px;
  font-weight: 800;
  color: var(--text);
  line-height: 1.1;
}
.why-stats-float span {
  font-size: 12px;
  color: var(--text3);
}

.why-content .section-title { margin-bottom: 16px; }
.why-desc {
  font-size: 15px;
  line-height: 1.8;
  color: var(--text2);
  margin-bottom: 32px;
}
.why-features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 36px;
}
.why-feat {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px;
  background: var(--surface2);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  transition: border-color .2s, transform .2s var(--ease-spring);
}
.why-feat:hover {
  border-color: rgba(255,0,128,.25);
  transform: translateY(-2px);
}
.why-feat__ico {
  width: 38px; height: 38px;
  border-radius: var(--r-s);
  background: rgba(255,0,128,.08);
  color: var(--pink);
  font-size: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.why-feat strong {
  display: block;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 3px;
}
.why-feat p {
  font-size: 12px;
  color: var(--text3);
  line-height: 1.5;
  margin: 0;
}

/* ============================================================
   HAKKIMIZDA
============================================================ */
.about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
}

.about-card {
  background: linear-gradient(145deg, #0C1121 0%, #141D35 55%, #0F0E1C 100%);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: var(--r-xl);
  padding: 36px;
  position: relative;
  overflow: hidden;
  box-shadow: var(--shadow-lg), 0 0 80px rgba(255,0,128,.07);
}

.about-card--img {
  padding: 0;
  background: #06101F;
  min-height: 460px;
  display: flex;
  flex-direction: column;
}
.about-img {
  width: 100%;
  flex: 1;
  object-fit: cover;
  object-position: center top;
  display: block;
  border-radius: var(--r-xl);
}

.about-orb {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}
.about-orb--1 {
  width: 320px; height: 320px;
  top: -100px; right: -90px;
  background: radial-gradient(circle, rgba(255,0,128,.18) 0%, transparent 65%);
  animation: orb-drift 9s ease-in-out infinite;
}
.about-orb--2 {
  width: 260px; height: 260px;
  bottom: -80px; left: -70px;
  background: radial-gradient(circle, rgba(121,40,202,.20) 0%, transparent 65%);
  animation: orb-drift 11s ease-in-out infinite reverse;
}

.about-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3px;
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 3px;
  position: relative;
  z-index: 1;
}

.about-stat {
  padding: 28px 26px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.06);
  transition: background .25s, border-color .25s;
  cursor: default;
}
.about-stat:hover {
  background: rgba(255,255,255,.07);
  border-color: rgba(255,0,128,.2);
}
.about-stat__num {
  font-size: 34px;
  font-weight: 900;
  letter-spacing: -1.5px;
  line-height: 1;
  margin-bottom: 6px;
  background: linear-gradient(135deg, #fff 30%, rgba(255,255,255,.55) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.about-stat__label {
  font-size: 12.5px;
  color: rgba(255,255,255,.42);
  font-weight: 500;
}

.about-badge {
  display: flex;
  align-items: center;
  gap: 14px;
  background: rgba(10,16,32,.85);
  backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 0 0 var(--r-xl) var(--r-xl);
  padding: 18px 24px;
  position: relative;
  z-index: 1;
}
.about-badge i {
  font-size: 20px;
  color: #10B981;
  flex-shrink: 0;
}
.about-badge span {
  font-size: 13.5px;
  font-weight: 600;
  color: rgba(255,255,255,.7);
}

.about-content .section-title { margin-bottom: 16px; }

.about-desc {
  font-size: 15px;
  line-height: 1.8;
  color: var(--text2);
  margin-bottom: 28px;
}

.about-feats {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin-bottom: 36px;
}
.about-feat {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 16px 20px;
  box-shadow: var(--shadow-xs);
  animation: about-feat-float 4s ease-in-out infinite;
  animation-delay: var(--delay, 0s);
  transition: border-color .25s, box-shadow .25s;
}
.about-feat:hover {
  border-color: rgba(255,0,128,.25);
  box-shadow: var(--shadow-md);
}
@keyframes about-feat-float {
  0%,100% { transform: translateY(0); }
  50%      { transform: translateY(-6px); }
}
.about-feat__ico {
  width: 42px; height: 42px;
  border-radius: var(--r-s);
  background: rgba(255,0,128,.08);
  color: var(--pink);
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background .2s, transform .2s var(--ease-spring);
}
.about-feat:hover .about-feat__ico {
  background: var(--g-brand);
  color: #fff;
  transform: scale(1.1);
}
.about-feat strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 3px;
}
.about-feat p {
  font-size: 13px;
  color: var(--text3);
  line-height: 1.55;
  margin: 0;
}

/* ============================================================
   4. KAMPANYALAR
============================================================ */
.camp-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.camp-card {
  background: linear-gradient(135deg, #fff0fa 0%, #fce8ff 100%);
  border: 1.5px solid rgba(255,0,128,.12);
  border-radius: var(--r-xl);
  padding: 30px 28px;
  position: relative;
  overflow: hidden;
  transition: transform .3s var(--ease-spring), box-shadow .3s;
}
.camp-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-md);
}
[data-theme="dark"] .camp-card {
  background: linear-gradient(135deg, #1a0820 0%, #140c1f 100%);
  border-color: rgba(255,0,128,.15);
}
.camp-card--purple {
  background: linear-gradient(135deg, #f3f0ff 0%, #ede0ff 100%);
  border-color: rgba(121,40,202,.15);
}
[data-theme="dark"] .camp-card--purple {
  background: linear-gradient(135deg, #120a20 0%, #0d0618 100%);
  border-color: rgba(121,40,202,.2);
}
.camp-card--dark {
  background: var(--g-dark);
  border-color: rgba(255,255,255,.07);
}

.camp-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}
.camp-tag {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .3px;
  text-transform: uppercase;
  background: rgba(255,0,128,.10);
  color: var(--pink);
  border-radius: var(--r-p);
  padding: 4px 12px;
}
.camp-card--purple .camp-tag {
  background: rgba(121,40,202,.10);
  color: var(--purple);
}
.camp-card--dark .camp-tag {
  background: rgba(255,255,255,.10);
  color: rgba(255,255,255,.75);
}

.camp-status {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  font-weight: 600;
}
.camp-status--active { color: #10B981; }
.camp-status--active span {
  width: 7px; height: 7px;
  border-radius: 50%;
  background: #10B981;
  display: inline-block;
  animation: live-blink 1.4s ease-in-out infinite;
}

.camp-card h3 {
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
  color: var(--text);
  margin-bottom: 10px;
}
.camp-card--dark h3 { color: #fff; }
.camp-card h3 em {
  font-style: normal;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.camp-card p {
  font-size: 13.5px;
  line-height: 1.65;
  color: var(--text2);
  margin-bottom: 22px;
}
.camp-card--dark p { color: rgba(255,255,255,.5); }

.camp-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.camp-timer {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--text3);
}
.camp-timer i { color: var(--pink); }

.camp-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: var(--g-brand);
  color: #fff;
  border-radius: var(--r-p);
  padding: 9px 18px;
  font-size: 13px;
  font-weight: 600;
  box-shadow: var(--shadow-pink);
  transition: transform .2s var(--ease-spring), box-shadow .2s;
}
.camp-btn:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-pink-lg);
}

.camp-deco {
  position: absolute;
  width: 130px; height: 130px;
  border-radius: 50%;
  bottom: -44px; right: -34px;
  background: radial-gradient(circle, rgba(255,0,128,.10) 0%, transparent 70%);
  pointer-events: none;
}
.camp-card--purple .camp-deco {
  background: radial-gradient(circle, rgba(121,40,202,.10) 0%, transparent 70%);
}
.camp-card--dark .camp-deco {
  background: radial-gradient(circle, rgba(255,255,255,.04) 0%, transparent 70%);
}

/* ============================================================
   5. BU AYIN ENLERİ
============================================================ */
.top-tabs {
  display: flex;
  gap: 4px;
  border-bottom: 1.5px solid var(--border);
  margin-bottom: 28px;
}
.top-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 22px;
  font-size: 14px;
  font-weight: 600;
  color: var(--text2);
  background: transparent;
  border: none;
  border-bottom: 2.5px solid transparent;
  margin-bottom: -1.5px;
  cursor: pointer;
  transition: color .2s, border-color .2s;
  white-space: nowrap;
}
.top-tab:hover { color: var(--text); }
.top-tab.active {
  color: var(--pink);
  border-bottom-color: var(--pink);
}

.top-panel { display: none; }
.top-panel.active { display: block; }

.prod-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
}

.prod-card {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 20px 18px 18px;
  display: flex;
  flex-direction: column;
  gap: 0;
  box-shadow: var(--shadow-xs);
  position: relative;
  overflow: hidden;
  transition: transform .25s var(--ease-spring), box-shadow .25s, border-color .25s;
}
.prod-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-md);
  border-color: rgba(255,0,128,.25);
}
.prod-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--g-subtle);
  opacity: 0;
  transition: opacity .3s;
}
.prod-card:hover::before { opacity: 1; }

.prod-rank-badge {
  position: absolute;
  top: 14px;
  right: 14px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .5px;
  color: var(--text3);
  background: var(--surface2);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 2px 7px;
}

.prod-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  position: relative;
}

.prod-icon-wrap {
  width: 44px; height: 44px;
  border-radius: 13px;
  background: var(--pc, #888);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 19px;
  flex-shrink: 0;
  box-shadow: 0 6px 20px rgba(0,0,0,.18);
  transition: transform .25s var(--ease-spring);
}
.prod-card:hover .prod-icon-wrap { transform: scale(1.08) rotate(-5deg); }

.prod-info {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.prod-plat-name {
  font-size: 14px;
  font-weight: 800;
  color: var(--text);
  line-height: 1.2;
}

.prod-svc-type {
  font-size: 11.5px;
  font-weight: 600;
  color: var(--text3);
  text-transform: uppercase;
  letter-spacing: .4px;
}

.prod-qty {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  color: var(--pink);
  background: rgba(255,0,128,.08);
  border: 1.5px solid rgba(255,0,128,.18);
  border-radius: 20px;
  padding: 5px 12px;
  margin-bottom: 10px;
  position: relative;
  width: fit-content;
}

.prod-tags {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  margin-top: 8px;
  margin-bottom: 14px;
  position: relative;
}

.prod-tags span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 10.5px;
  font-weight: 600;
  color: var(--text3);
  background: var(--surface2);
  border: 1px solid var(--border);
  border-radius: var(--r-p);
  padding: 3px 8px;
}
.prod-tags span i { font-size: 9px; color: var(--pink); }

.prod-tags span {
  background: rgba(255,0,128,.08);
  border-color: rgba(255,0,128,.2);
  color: var(--pink);
}

.prod-price {
  font-size: 22px;
  font-weight: 900;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
  margin-bottom: 12px;
  position: relative;
}

.prod-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  background: var(--surface2);
  border: 1.5px solid var(--border);
  border-radius: var(--r-p);
  padding: 9px 14px;
  font-size: 12px;
  font-weight: 600;
  color: var(--text2);
  cursor: pointer;
  position: relative;
  transition: background .2s, color .2s, border-color .2s, box-shadow .2s;
}
.prod-btn:hover {
  background: var(--g-brand);
  border-color: transparent;
  color: #fff;
  box-shadow: var(--shadow-pink);
}

/* ============================================================
   6. İSTATİSTİK BANNER
============================================================ */
.stats-banner {
  position: relative;
  padding: 72px 0;
  overflow: hidden;
}
.stats-banner__bg {
  position: absolute;
  inset: 0;
  background: var(--g-brand);
  z-index: 0;
}
.stats-banner__bg::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 20% 50%, rgba(255,255,255,.10) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, rgba(255,255,255,.08) 0%, transparent 40%);
}
.stats-banner__bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 32px 32px;
}
.stats-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  text-align: center;
}
.stat-item {}
.stat-num {
  font-size: 50px;
  font-weight: 900;
  color: #fff;
  letter-spacing: -2px;
  line-height: 1;
  margin-bottom: 8px;
  text-shadow: 0 4px 24px rgba(0,0,0,.15);
}
.stat-label {
  font-size: 14px;
  color: rgba(255,255,255,.72);
  font-weight: 500;
}

/* ============================================================
   7. MÜŞTERİ DEĞERLENDİRMELERİ
============================================================ */
.review-badge {
  display: flex;
  align-items: center;
  gap: 14px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 14px 22px;
  box-shadow: var(--shadow-sm);
  white-space: nowrap;
}
.review-badge__ico {
  font-size: 28px;
  color: #4285F4;
}
.review-badge__score {
  font-size: 20px;
  font-weight: 800;
  color: var(--text);
  line-height: 1.1;
}
.review-badge__score span {
  font-size: 14px;
  color: #F59E0B;
}
.review-badge__count {
  font-size: 12px;
  color: var(--text3);
}

.review-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.review-card {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  box-shadow: var(--shadow-xs);
  transition: transform .25s var(--ease-spring), box-shadow .25s, border-color .25s;
}
.review-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
  border-color: var(--border2);
}
.review-card__head {
  display: flex;
  align-items: center;
  gap: 12px;
}
.review-avatar {
  width: 44px; height: 44px;
  border-radius: 12px;
  background: var(--av, var(--pink));
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  flex-shrink: 0;
}
.review-name {
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
  line-height: 1.2;
}
.review-job {
  font-size: 12px;
  color: var(--text3);
}
.review-stars {
  margin-left: auto;
  font-size: 14px;
  color: #F59E0B;
  flex-shrink: 0;
}
.review-card p {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--text2);
  margin: 0;
}

/* ============================================================
   MÜŞTERİ YORUMLARI
============================================================ */
.rv-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 36px;
}

.rv-google {
  display: flex;
  align-items: center;
  gap: 16px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 16px 22px;
  box-shadow: var(--shadow-sm);
}
.rv-google__ico {
  font-size: 32px;
  color: #4285F4;
  flex-shrink: 0;
}
.rv-google__score {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 3px;
}
.rv-big {
  font-size: 26px;
  font-weight: 900;
  color: var(--text);
  letter-spacing: -1px;
  line-height: 1;
}
.rv-stars { font-size: 15px; color: #F59E0B; }
.rv-google__sub { font-size: 12px; color: var(--text3); }

/* Öne çıkan yorum */
.rv-featured {
  background: var(--g-dark);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: var(--r-xl);
  padding: 40px 44px;
  margin-bottom: 20px;
  position: relative;
  overflow: hidden;
}
.rv-featured::before {
  content: '';
  position: absolute;
  width: 300px; height: 300px;
  top: -100px; right: -80px;
  background: radial-gradient(circle, rgba(255,0,128,.12) 0%, transparent 65%);
  border-radius: 50%;
}
.rv-featured__quote {
  font-size: 40px;
  color: var(--pink);
  opacity: .4;
  line-height: 1;
  margin-bottom: 18px;
}
.rv-featured__text {
  font-size: 17px;
  line-height: 1.75;
  color: rgba(255,255,255,.85);
  margin-bottom: 28px;
  font-style: italic;
  position: relative;
}
.rv-featured__author {
  display: flex;
  align-items: center;
  gap: 14px;
  position: relative;
}
.rv-featured__author .rv-name { color: #fff; font-size: 15px; font-weight: 700; }
.rv-featured__author .rv-role { color: rgba(255,255,255,.45); font-size: 13px; }
.rv-featured__author .rv-role span { color: #F59E0B; }

.rv-verified {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: #10B981;
  background: rgba(16,185,129,.10);
  border: 1px solid rgba(16,185,129,.2);
  border-radius: var(--r-p);
  padding: 5px 12px;
  flex-shrink: 0;
}

/* Avatar */
.rv-avatar {
  width: 46px; height: 46px;
  border-radius: 13px;
  background: var(--av, var(--g-brand));
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  flex-shrink: 0;
}

/* Grid yorumlar */
.rv-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.rv-card {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  box-shadow: var(--shadow-xs);
  transition: transform .25s var(--ease-spring), box-shadow .25s, border-color .25s;
}
.rv-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
  border-color: rgba(255,0,128,.2);
}
.rv-card__top {
  display: flex;
  align-items: center;
  gap: 12px;
}
.rv-card__top .rv-avatar { width: 42px; height: 42px; font-size: 13px; border-radius: 11px; }
.rv-name { font-size: 14px; font-weight: 700; color: var(--text); line-height: 1.2; }
.rv-role { font-size: 12px; color: var(--text3); }
.rv-card__stars {
  margin-left: auto;
  font-size: 13px;
  color: #F59E0B;
  flex-shrink: 0;
}
.rv-card p {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--text2);
  margin: 0;
  flex: 1;
}
.rv-card__foot {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 600;
  color: var(--text3);
  padding-top: 12px;
  border-top: 1px solid var(--border);
}

/* ============================================================
   SSS — 2 KOLON LAYOUT
============================================================ */
.faq-wrap {
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  gap: 64px;
  align-items: start;
}

.faq-desc {
  font-size: 15px;
  line-height: 1.75;
  color: var(--text2);
  margin-top: 14px;
  margin-bottom: 32px;
}

.faq-contact-box {
  display: flex;
  align-items: center;
  gap: 14px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 20px 22px;
  box-shadow: var(--shadow-sm);
  flex-wrap: wrap;
}
.faq-contact-ico {
  width: 46px; height: 46px;
  border-radius: var(--r-s);
  background: rgba(255,0,128,.08);
  color: var(--pink);
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.faq-contact-box strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 2px;
}
.faq-contact-box p {
  font-size: 12.5px;
  color: var(--text3);
  margin: 0;
}
.faq-contact-box .btn-primary { margin-left: auto; }

/* ============================================================
   8. SSS ACCORDION
============================================================ */
.faq-list {
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.faq-item {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  overflow: hidden;
  transition: border-color .25s;
}
.faq-item.open {
  border-color: rgba(255,0,128,.28);
}
.faq-q {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 20px 24px;
  background: transparent;
  border: none;
  text-align: left;
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
  cursor: pointer;
  transition: color .2s;
}
.faq-q span { flex: 1; }
.faq-q:hover { color: var(--pink); }
.faq-item.open .faq-q { color: var(--pink); }

.faq-q__ico {
  width: 34px; height: 34px;
  border-radius: 9px;
  background: rgba(255,0,128,.07);
  color: var(--pink);
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background .2s, transform .2s var(--ease-spring);
}
.faq-item.open .faq-q__ico {
  background: var(--g-brand);
  color: #fff;
  transform: scale(1.08);
}

.faq-ico {
  font-size: 13px;
  color: var(--text3);
  flex-shrink: 0;
  transition: transform .32s var(--ease-spring), color .2s;
}
.faq-item.open .faq-ico {
  transform: rotate(180deg);
  color: var(--pink);
}

.faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height .36s var(--ease), padding .36s;
}
.faq-item.open .faq-a {
  max-height: 320px;
  padding-bottom: 22px;
}
.faq-a p {
  padding: 0 24px;
  font-size: 14px;
  line-height: 1.75;
  color: var(--text2);
  margin: 0;
}

/* ============================================================
   BLOG
============================================================ */
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.blog-card {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-xl);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .25s var(--ease-spring), box-shadow .25s, border-color .25s;
}
.blog-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-md);
  border-color: rgba(255,0,128,.22);
}

.blog-card__cover {
  position: relative;
  height: 160px;
  background: linear-gradient(135deg, var(--bc1), var(--bc2));
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex-shrink: 0;
}
.blog-card__cover::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 30% 50%, rgba(255,255,255,.13) 0%, transparent 55%);
}
.blog-card__cover::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 24px 24px;
}

.blog-card__cover-ico {
  font-size: 56px;
  color: rgba(255,255,255,.2);
  position: relative;
  z-index: 1;
}

.blog-card__read {
  position: absolute;
  bottom: 12px;
  left: 14px;
  z-index: 2;
  font-size: 11px;
  font-weight: 600;
  color: rgba(255,255,255,.9);
  background: rgba(0,0,0,.28);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: 20px;
  padding: 4px 11px;
  display: flex;
  align-items: center;
  gap: 5px;
}

.blog-card__body {
  padding: 22px 22px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
}

.blog-tag {
  display: inline-flex;
  align-items: center;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: rgb(var(--bt));
  background: rgba(var(--bt), .1);
  border: 1px solid rgba(var(--bt), .2);
  border-radius: 20px;
  padding: 3px 11px;
  width: fit-content;
}

.blog-card__title {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.42;
  color: var(--text);
  margin: 0;
}

.blog-card__excerpt {
  font-size: 13.5px;
  color: var(--text2);
  line-height: 1.65;
  margin: 0;
  flex: 1;
}

.blog-card__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 14px;
  border-top: 1px solid var(--border);
  margin-top: 4px;
}

.blog-card__author {
  display: flex;
  align-items: center;
  gap: 10px;
}

.blog-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--av);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  color: #fff;
  flex-shrink: 0;
}

.blog-author-name {
  font-size: 12px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.3;
}

.blog-date {
  font-size: 11px;
  color: var(--text3);
  line-height: 1.3;
}

.blog-card__link {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  font-weight: 700;
  color: var(--pink);
  text-decoration: none;
  transition: gap .2s;
  white-space: nowrap;
}
.blog-card__link:hover { gap: 9px; }

/* btn-outline */
.btn-outline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 22px;
  border-radius: var(--r-p);
  border: 1.5px solid var(--border2);
  background: transparent;
  font-size: 14px;
  font-weight: 600;
  color: var(--text2);
  text-decoration: none;
  transition: border-color .2s, color .2s, background .2s;
  white-space: nowrap;
}
.btn-outline:hover {
  border-color: var(--pink);
  color: var(--pink);
  background: rgba(255,0,128,.05);
}

@media (max-width: 900px) {
  .blog-grid { grid-template-columns: 1fr; }
}

/* ============================================================
   FOOTER
============================================================ */
.footer {
  background: var(--navy);
}
[data-theme="dark"] .footer {
  background: #04060D;
}

/* ── İletişim Bar ── */
.ftb-wrap {
  padding: 36px 0 0;
}

.footer-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: var(--r-xl);
  padding: 18px 24px;
}

.ftb-contacts {
  display: flex;
  gap: 8px;
}

.ftb-btn {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  border-radius: var(--r-l);
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.07);
  text-decoration: none;
  transition: background .2s, border-color .2s;
}
.ftb-btn:hover {
  background: rgba(255,0,128,.1);
  border-color: rgba(255,0,128,.25);
}

.ftb-ico {
  width: 42px; height: 42px;
  border-radius: 12px;
  background: var(--g-brand);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: #fff;
  flex-shrink: 0;
}

.ftb-info span {
  display: block;
  font-size: 10.5px;
  color: rgba(255,255,255,.38);
  font-weight: 500;
  letter-spacing: .03em;
}
.ftb-info strong {
  display: block;
  font-size: 13.5px;
  font-weight: 700;
  color: #fff;
}

.ftb-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  flex-shrink: 0;
}
.ftb-logo span {
  font-size: 20px;
  font-weight: 900;
  letter-spacing: -.5px;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.ftb-socials {
  display: flex;
  gap: 8px;
}
.ftb-socials a {
  width: 42px; height: 42px;
  border-radius: 12px;
  background: var(--g-brand);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s, transform .2s var(--ease-spring);
}
.ftb-socials a:hover {
  opacity: .82;
  transform: translateY(-3px);
}

/* ── Hizmet Linkleri ── */
.footer__services {
  padding: 48px 0 40px;
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.fs-tabs {
  display: flex;
  gap: 6px;
  margin-bottom: 24px;
}

.fs-tab {
  padding: 9px 22px;
  border-radius: var(--r-p);
  border: none;
  background: transparent;
  font-size: 14px;
  font-weight: 600;
  color: rgba(255,255,255,.42);
  cursor: pointer;
  transition: background .2s, color .2s;
}
.fs-tab.active {
  background: var(--g-brand);
  color: #fff;
}
.fs-tab:not(.active):hover {
  color: rgba(255,255,255,.72);
  background: rgba(255,255,255,.06);
}

.fs-panel { display: none; }
.fs-panel.active { display: block; }

.fs-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 9px;
  margin-bottom: 28px;
}

.fs-link {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 12px 18px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: var(--r-l);
  font-size: 13.5px;
  font-weight: 500;
  color: rgba(255,255,255,.58);
  text-decoration: none;
  transition: background .2s, border-color .2s, color .2s;
}
.fs-link i {
  font-size: 15px;
  color: var(--pink);
  flex-shrink: 0;
  width: 16px;
  text-align: center;
}
.fs-link:hover {
  background: rgba(255,0,128,.09);
  border-color: rgba(255,0,128,.22);
  color: #fff;
}

.fs-more {
  display: flex;
  justify-content: center;
}

/* ── Alt Bar ── */

.footer-col h4 {
  font-size: 11.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .6px;
  color: rgba(255,255,255,.38);
  margin-bottom: 18px;
}
.footer-col ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.footer-col ul li a {
  font-size: 13.5px;
  color: rgba(255,255,255,.55);
  transition: color .2s;
}
.footer-col ul li a:hover { color: #fff; }

.footer-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
}
.footer-logo span {
  font-size: 20px;
  font-weight: 900;
  letter-spacing: -.5px;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.footer-col--brand p {
  font-size: 13.5px;
  line-height: 1.7;
  color: rgba(255,255,255,.38);
  margin-bottom: 20px;
}

.footer-social {
  display: flex;
  gap: 8px;
}
.footer-social a {
  width: 38px; height: 38px;
  border-radius: var(--r-s);
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.09);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: rgba(255,255,255,.5);
  transition: background .2s, color .2s, border-color .2s, transform .2s var(--ease-spring);
}
.footer-social a:hover {
  background: var(--g-brand);
  border-color: transparent;
  color: #fff;
  transform: translateY(-3px);
}

.footer-contact {
  gap: 12px !important;
}
.footer-contact li {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 13.5px;
  color: rgba(255,255,255,.5);
}
.footer-contact li i {
  font-size: 14px;
  color: var(--pink);
  width: 16px;
  text-align: center;
  flex-shrink: 0;
}
.footer-contact li a {
  color: rgba(255,255,255,.55) !important;
  transition: color .2s;
}
.footer-contact li a:hover { color: #fff !important; }

.footer__bottom {
  padding: 22px 0 26px;
  border-top: 1px solid rgba(255,255,255,.05);
}
.footer-bottom-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 12px;
}
.footer__bottom span {
  font-size: 13px;
  color: rgba(255,255,255,.38);
  text-align: center;
}
.footer-pay {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-size: 24px;
  color: rgba(255,255,255,.38);
}
.footer-pay span {
  font-size: 12px;
  font-weight: 600;
  color: rgba(255,255,255,.38);
}

/* ============================================================
   RESPONSIVE — NEW SECTIONS
============================================================ */
@media (max-width: 1200px) {
  .prod-grid { grid-template-columns: repeat(3, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr 1fr; }
  .footer-col--brand { grid-column: 1 / -1; }
}

@media (max-width: 1024px) {
  .plat-grid { grid-template-columns: repeat(3, 1fr); }
  .game-grid { grid-template-columns: repeat(3, 1fr); }
  .why-grid { gap: 40px; }
}

@media (max-width: 900px) {
  .section-title { font-size: 28px; }
  .why-grid { grid-template-columns: 1fr; }
  .why-visual__card { min-height: 320px; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 32px; }
  .rv-grid { grid-template-columns: repeat(2, 1fr); }
  .rv-head { flex-direction: column; align-items: flex-start; }
  .faq-wrap { grid-template-columns: 1fr; gap: 36px; }
  .about-grid { grid-template-columns: 1fr; gap: 36px; }
  .about-stat__num { font-size: 28px; }
}

@media (max-width: 768px) {
  .section { padding: 56px 0; }
  .section-head { flex-direction: column; align-items: flex-start; }
  .plat-grid { grid-template-columns: repeat(2, 1fr); }
  .game-grid { grid-template-columns: repeat(2, 1fr); }
  .camp-grid { grid-template-columns: 1fr; }
  .prod-grid { grid-template-columns: repeat(3, 1fr); }
  .why-features { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-col--brand { grid-column: 1 / -1; }
  .stat-num { font-size: 38px; }


  /* ── Footer topbar stack ── */
  .footer-topbar {
    flex-direction: column;
    align-items: center;
    gap: 16px;
    text-align: center;
  }
  .ftb-contacts { flex-wrap: wrap; justify-content: center; }
  .ftb-logo     { justify-content: center; }
  .ftb-socials  { justify-content: center; }

  /* ── Footer hizmet tabları ── */
  .fs-tabs { flex-wrap: wrap; }
  .fs-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 520px) {
  .section { padding: 44px 0; }
  .section-title { font-size: 24px; }
  .plat-grid { grid-template-columns: 1fr; }
  .game-grid { grid-template-columns: 1fr; }
  .prod-grid { grid-template-columns: repeat(2, 1fr); }
  .rv-grid { grid-template-columns: 1fr; }
  .rv-featured { padding: 28px 24px; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 24px; }
  .footer-grid { grid-template-columns: 1fr; }
  .stat-num { font-size: 34px; }
  .camp-grid { grid-template-columns: 1fr; }
  .top-tabs { overflow-x: auto; flex-wrap: nowrap; }

  /* ── Footer topbar küçük ekran ── */
  .ftb-contacts { flex-direction: column; width: 100%; }
  .ftb-btn      { justify-content: center; }
  .fs-grid      { grid-template-columns: 1fr; }
  .fs-tab       { padding: 9px 14px; font-size: 13px; }

}

/* ============================================================
   HAKKIMIZDA PAGE
============================================================ */

/* ── Page Breadcrumb ── */
.page-crumb {
  padding: 14px 0;
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}
.page-crumb__inner {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--text3);
}
.page-crumb__inner a { color: var(--text2); transition: color .15s; }
.page-crumb__inner a:hover { color: var(--pink); }
.page-crumb__inner .fa-chevron-right { font-size: 10px; }
.page-crumb__inner span { color: var(--text); font-weight: 500; }

/* ── About Hero ── */
.about-hero {
  padding: 80px 0 0;
  background: var(--bg);
  position: relative;
  overflow: hidden;
}
.about-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 60% 60% at 20% 0%, rgba(255,0,128,.07) 0%, transparent 70%),
    radial-gradient(ellipse 50% 50% at 80% 0%, rgba(121,40,202,.07) 0%, transparent 70%);
  pointer-events: none;
}
.about-hero__inner {
  position: relative;
  z-index: 1;
  text-align: center;
  max-width: 700px;
  margin: 0 auto;
}
.about-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-p);
  padding: 6px 16px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--pink);
  margin-bottom: 24px;
}
.about-hero__badge .fa-circle { font-size: 7px; animation: pulse 2s infinite; }
.about-hero__title {
  font-size: clamp(36px, 5vw, 56px);
  font-weight: 900;
  letter-spacing: -2px;
  line-height: 1.1;
  color: var(--text);
  margin-bottom: 20px;
}
.about-hero__desc {
  font-size: 17px;
  color: var(--text2);
  line-height: 1.7;
  max-width: 560px;
  margin: 0 auto 48px;
}

/* Stats bar */
.about-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--border);
  margin-top: 8px;
  background: var(--surface);
}
.about-stat {
  padding: 28px 20px;
  text-align: center;
  border-right: 1px solid var(--border);
  position: relative;
}
.about-stat:last-child { border-right: none; }
.about-stat__num {
  display: block;
  font-size: 32px;
  font-weight: 900;
  letter-spacing: -1px;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
  margin-bottom: 6px;
}
.about-stat__label {
  font-size: 12.5px;
  color: var(--text3);
  font-weight: 500;
}

/* ── Story Section ── */
.about-story {
  padding: 100px 0;
}
.about-story__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
}
.about-story__tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--pink);
  margin-bottom: 16px;
}
.about-story__title {
  font-size: 36px;
  font-weight: 800;
  letter-spacing: -1px;
  color: var(--text);
  line-height: 1.2;
  margin-bottom: 20px;
}
.about-story__body {
  font-size: 15.5px;
  color: var(--text2);
  line-height: 1.8;
  margin-bottom: 32px;
}
.about-story__checks {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.about-story__check {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 14.5px;
  color: var(--text);
  font-weight: 500;
}
.about-story__check .fa-circle-check {
  color: var(--pink);
  font-size: 18px;
  flex-shrink: 0;
}
.about-story__visual {
  position: relative;
}
.about-story__img-wrap {
  border-radius: var(--r-xl);
  overflow: hidden;
  background: var(--surface);
  border: 1.5px solid var(--border);
  aspect-ratio: 4/3;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.about-story__img-bg {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,0,128,.06) 0%, rgba(121,40,202,.08) 100%);
}
.about-story__img-content {
  position: relative;
  z-index: 1;
  text-align: center;
  padding: 40px;
}
.about-story__img-content .big-year {
  font-size: 80px;
  font-weight: 900;
  letter-spacing: -4px;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
  display: block;
}
.about-story__img-content p {
  font-size: 15px;
  color: var(--text2);
  margin-top: 8px;
}
.about-story__badge-float {
  position: absolute;
  bottom: -18px;
  right: -18px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: 18px;
  padding: 16px 22px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 8px 32px rgba(0,0,0,.08);
}
.about-story__badge-float .ico {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: var(--g-brand);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 18px;
}
.about-story__badge-float strong { display: block; font-size: 18px; font-weight: 800; color: var(--text); }
.about-story__badge-float span   { font-size: 12px; color: var(--text3); }

/* ── Values Section ── */
.about-values {
  padding: 80px 0;
  background: var(--bg-alt);
}
.about-values__head {
  text-align: center;
  margin-bottom: 48px;
}
.about-values__pre {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--pink);
  margin-bottom: 12px;
}
.about-values__title {
  font-size: 34px;
  font-weight: 800;
  letter-spacing: -1px;
  color: var(--text);
  margin-bottom: 10px;
}
.about-values__sub {
  font-size: 15px;
  color: var(--text2);
}
.about-values__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.value-card {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  padding: 32px 24px;
  text-align: center;
  transition: transform .2s var(--ease-spring), box-shadow .2s;
}
.value-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0,0,0,.08);
}
.value-card__ico {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  background: var(--g-brand);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  font-size: 22px;
  color: #fff;
}
.value-card__title {
  font-size: 16px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 10px;
}
.value-card__desc {
  font-size: 13.5px;
  color: var(--text2);
  line-height: 1.65;
}

/* ── Team Section ── */
.about-team {
  padding: 100px 0;
}
.about-team__head {
  text-align: center;
  margin-bottom: 56px;
}
.about-team__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
}
.team-card {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: var(--r-l);
  overflow: hidden;
  transition: transform .2s var(--ease-spring), box-shadow .2s;
  flex: 0 1 calc(33.333% - 16px);
  min-width: 260px;
  max-width: 360px;
}
.team-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 48px rgba(0,0,0,.08);
}
.team-card__cover {
  height: 8px;
  background: var(--g-brand);
}
.team-card__body {
  padding: 28px 24px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.team-card__avatar {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: var(--g-brand);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  color: #fff;
  margin: 0 auto 16px;
  font-weight: 800;
  border: 3px solid var(--surface);
  box-shadow: 0 0 0 2px var(--border);
}
.team-card__name {
  font-size: 17px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 4px;
}
.team-card__role {
  font-size: 13px;
  color: var(--pink);
  font-weight: 600;
  margin-bottom: 14px;
}
.team-card__bio {
  font-size: 13.5px;
  color: var(--text2);
  line-height: 1.6;
  margin-bottom: 20px;
}
.team-card__socials {
  display: flex;
  justify-content: center;
  gap: 10px;
}
.team-card__socials a {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--bg-alt);
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  color: var(--text2);
  transition: background .15s, color .15s, border-color .15s;
}
.team-card__socials a:hover {
  background: var(--pink);
  color: #fff;
  border-color: var(--pink);
}

/* ── About CTA ── */
.about-cta {
  padding: 80px 0;
  background: var(--bg-alt);
}
.about-cta__inner {
  background: var(--g-brand);
  border-radius: var(--r-xl);
  padding: 64px 48px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.about-cta__inner::before {
  content: '';
  position: absolute;
  top: -60px; right: -60px;
  width: 260px; height: 260px;
  background: rgba(255,255,255,.07);
  border-radius: 50%;
}
.about-cta__inner::after {
  content: '';
  position: absolute;
  bottom: -80px; left: -40px;
  width: 300px; height: 300px;
  background: rgba(255,255,255,.05);
  border-radius: 50%;
}
.about-cta__title {
  font-size: 36px;
  font-weight: 900;
  color: #fff;
  letter-spacing: -1px;
  margin-bottom: 12px;
  position: relative;
  z-index: 1;
}
.about-cta__sub {
  font-size: 16px;
  color: rgba(255,255,255,.8);
  margin-bottom: 36px;
  position: relative;
  z-index: 1;
}
.about-cta__btns {
  display: flex;
  justify-content: center;
  gap: 16px;
  position: relative;
  z-index: 1;
}
.btn-white {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  color: var(--pink);
  border: none;
  border-radius: var(--r-p);
  padding: 14px 28px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: transform .18s var(--ease-spring), box-shadow .18s;
  text-decoration: none;
}
.btn-white:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.2); }
.btn-white-ghost {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,.12);
  color: #fff;
  border: 1.5px solid rgba(255,255,255,.3);
  border-radius: var(--r-p);
  padding: 14px 28px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background .18s, border-color .18s;
  text-decoration: none;
}
.btn-white-ghost:hover { background: rgba(255,255,255,.2); border-color: rgba(255,255,255,.5); }

/* ── About Responsive ── */
@media (max-width: 1024px) {
  .about-values__grid { grid-template-columns: repeat(2, 1fr); }
  .about-team__grid .team-card { flex: 0 1 calc(50% - 12px); }
}
@media (max-width: 768px) {
  .about-hero { padding: 60px 0 0; }
  .about-hero__title { font-size: 34px; letter-spacing: -1.5px; }
  .about-hero__desc  { font-size: 15px; }
  .about-stats { grid-template-columns: repeat(2, 1fr); }
  .about-stat { border-right: none; border-bottom: 1px solid var(--border); }
  .about-stat:nth-child(odd) { border-right: 1px solid var(--border); }
  .about-stat:last-child, .about-stat:nth-last-child(2):nth-child(odd) { border-bottom: none; }
  .about-story__grid { grid-template-columns: 1fr; gap: 40px; }
  .about-story__badge-float { right: 16px; bottom: -12px; }
  .about-team__grid .team-card { flex: 0 1 100%; max-width: 100%; }
  .about-cta__inner { padding: 48px 28px; }
  .about-cta__title { font-size: 28px; }
  .about-cta__btns  { flex-direction: column; align-items: center; }
}
@media (max-width: 520px) {
  .about-values__grid { grid-template-columns: 1fr; }
  .about-story__img-content .big-year { font-size: 60px; }
}

/* ============================================================
   MOBILE DRAWER  — centered floating card
============================================================ */
.mobile-drawer {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
}
.mobile-drawer.open { display: block; }

.mobile-drawer__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  animation: fadeIn .2s ease;
}

.mobile-drawer__panel {
  position: absolute;
  top: 64px;
  left: 50%;
  transform: translateX(-50%);
  width: 88%;
  max-width: 420px;
  background: var(--surface);
  border-radius: 24px;
  box-shadow: 0 24px 80px rgba(0,0,0,.28), 0 0 0 1px var(--border);
  overflow: hidden;
  max-height: calc(100dvh - 80px);
  overflow-y: auto;
  animation: popIn .28s cubic-bezier(.34,1.4,.64,1);
}

@keyframes popIn {
  from { opacity: 0; transform: translateX(-50%) scale(.93) translateY(-8px); }
  to   { opacity: 1; transform: translateX(-50%) scale(1)  translateY(0); }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* ── Head ── */
.mobile-drawer__head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 14px 14px 16px;
  border-bottom: 1px solid var(--border);
}

/* Theme toggles */
.mob-toggles {
  display: flex;
  align-items: center;
  gap: 4px;
  background: var(--bg-alt);
  border: 1px solid var(--border);
  border-radius: var(--r-p);
  padding: 5px 8px;
  flex-shrink: 0;
}
.mob-toggle {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 13px;
  color: var(--text3);
  padding: 3px 5px;
  border-radius: 6px;
  transition: color .15s, background .15s;
  line-height: 1;
}
.mob-toggle:hover  { color: var(--text); }
.mob-toggle.active { color: var(--pink); }
.mob-toggle-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--pink);
  flex-shrink: 0;
  margin: 0 2px;
}

/* Login btn */
.mob-login-btn {
  flex: 1;
  justify-content: center;
  font-size: 13.5px !important;
  padding: 9px 14px !important;
}

/* Close btn */
.mobile-drawer__close {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1.5px solid var(--border);
  background: var(--bg-alt);
  color: var(--text2);
  font-size: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  transition: background .15s, color .15s, border-color .15s;
}
.mobile-drawer__close:hover { background: var(--pink); color: #fff; border-color: var(--pink); }

/* ── Nav ── */
.mobile-drawer__nav { padding: 6px 0 10px; }

.mob-nav-link {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 20px;
  color: var(--text);
  width: 100%;
  background: none;
  border: none;
  cursor: pointer;
  font-family: inherit;
  text-decoration: none;
  transition: background .12s;
  text-align: left;
}
.mob-nav-link:hover { background: var(--bg-alt); }

.mob-nav-link__ico {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  background: var(--bg-alt);
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: var(--text2);
  flex-shrink: 0;
  transition: background .15s, color .15s;
}
.mob-nav-link:hover .mob-nav-link__ico { background: rgba(255,0,128,.08); color: var(--pink); }

.mob-nav-link__texts { flex: 1; min-width: 0; }
.mob-nav-link__texts strong {
  display: block;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .4px;
  color: var(--text);
  line-height: 1.2;
}
.mob-nav-link__texts span {
  display: block;
  font-size: 11.5px;
  font-weight: 400;
  color: var(--text3);
  margin-top: 2px;
  letter-spacing: 0;
}

.mob-nav-chev {
  font-size: 12px;
  color: var(--text3);
  transition: transform .25s, color .15s;
  flex-shrink: 0;
}
.mob-nav-item--has-sub.open > .mob-nav-link--parent { background: var(--bg-alt); }
.mob-nav-item--has-sub.open > .mob-nav-link--parent .mob-nav-link__ico { background: rgba(255,0,128,.08); color: var(--pink); }
.mob-nav-item--has-sub.open > .mob-nav-link--parent .mob-nav-link__texts strong { color: var(--pink); }
.mob-nav-item--has-sub.open .mob-nav-chev { transform: rotate(90deg); color: var(--pink); }

/* Sub-items */
.mob-nav-sub {
  display: none;
  background: var(--bg-alt);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  padding: 6px 20px 6px 72px;
}
.mob-nav-item--has-sub.open .mob-nav-sub { display: block; }

.mob-nav-sub-link {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px 6px;
  font-size: 13px;
  font-weight: 500;
  color: var(--text2);
  border-radius: 8px;
  transition: color .12s, background .12s;
}
.mob-nav-sub-link i { font-size: 12px; width: 15px; text-align: center; color: var(--text3); flex-shrink: 0; }
.mob-nav-sub-link:hover { color: var(--pink); background: rgba(255,0,128,.05); }
.mob-nav-sub-link:hover i { color: var(--pink); }

/* Divider */
.mob-nav-divider {
  height: 1px;
  background: var(--border);
  margin: 4px 20px;
}

/* ============================================================
   BOTTOM NAVIGATION
============================================================ */
.bottom-nav { display: none; }

@media (max-width: 768px) {
  body { padding-bottom: calc(68px + env(safe-area-inset-bottom, 0px)); }

  .bottom-nav {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 900;
    background: var(--surface);
    border-top: 1.5px solid var(--border);
    padding: 0 4px;
    padding-bottom: env(safe-area-inset-bottom, 0px);
    align-items: flex-end;
    justify-content: space-around;
    box-shadow: 0 -4px 24px rgba(0,0,0,.07);
    height: calc(64px + env(safe-area-inset-bottom, 0px));
  }

  .bottom-nav__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 10px 10px 10px;
    background: none;
    border: none;
    cursor: pointer;
    font-family: inherit;
    color: var(--text3);
    text-decoration: none;
    transition: color .15s;
    flex: 1;
    min-width: 0;
    position: relative;
  }
  .bottom-nav__item:hover { color: var(--pink); }
  .bottom-nav__item.active { color: var(--pink); }

  .bottom-nav__ico {
    font-size: 20px;
    line-height: 1;
    transition: transform .2s var(--ease-spring);
  }
  .bottom-nav__item:hover .bottom-nav__ico { transform: translateY(-2px); }

  .bottom-nav__label {
    font-size: 10px;
    font-weight: 500;
    white-space: nowrap;
    line-height: 1;
  }

  /* ── Center Main (Sepet) ── */
  .bottom-nav__item--main {
    flex: none;
    padding: 0 4px 8px;
    color: #fff;
    gap: 0;
  }
  .bottom-nav__item--main:hover { color: #fff; }

  .bottom-nav__main-pill {
    background: var(--g-brand);
    border-radius: var(--r-p);
    padding: 11px 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: #fff;
    box-shadow: 0 6px 20px rgba(255,0,128,.38);
    position: relative;
    transition: transform .2s var(--ease-spring), box-shadow .2s;
  }
  .bottom-nav__item--main:hover .bottom-nav__main-pill {
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(255,0,128,.45);
  }
  .bottom-nav__main-pill .bottom-nav__label {
    display: none;
  }
  .bottom-nav__main-label { display: none; }

  .bottom-nav__badge {
    position: absolute;
    top: -5px;
    right: -5px;
    background: #fff;
    color: var(--pink);
    font-size: 10px;
    font-weight: 800;
    min-width: 18px;
    height: 18px;
    border-radius: 99px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    border: 1.5px solid rgba(255,0,128,.15);
  }
}

/* ============================================================
   CATEGORY MODAL (popup)
============================================================ */
.cat-sheet {
  position: fixed;
  inset: 0;
  z-index: 9500;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  opacity: 0;
  pointer-events: none;
  transition: opacity .22s ease;
}
.cat-sheet.open {
  opacity: 1;
  pointer-events: all;
}

.cat-sheet__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(4px);
}

.cat-sheet__panel {
  position: relative;
  z-index: 1;
  background: var(--surface);
  border-radius: 22px;
  width: 100%;
  max-width: 420px;
  max-height: calc(100vh - 80px);
  display: flex;
  flex-direction: column;
  box-shadow: 0 24px 64px rgba(0,0,0,.22);
  transform: scale(.94) translateY(12px);
  transition: transform .25s cubic-bezier(.34,1.56,.64,1), opacity .22s ease;
  opacity: 0;
}
.cat-sheet.open .cat-sheet__panel {
  transform: scale(1) translateY(0);
  opacity: 1;
}

.cat-sheet__handle { display: none; }

.cat-sheet__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 20px 8px;
  flex-shrink: 0;
}
.cat-sheet__head span {
  font-size: 17px;
  font-weight: 800;
  color: var(--text);
  letter-spacing: -.4px;
}
.cat-sheet__close {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1.5px solid var(--border);
  background: var(--bg-alt);
  color: var(--text2);
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.cat-sheet__close:hover { background: var(--pink); color: #fff; border-color: var(--pink); }

.cat-sheet__tabs {
  display: flex;
  gap: 8px;
  padding: 0 20px 12px;
  flex-shrink: 0;
  border-bottom: 1px solid var(--border);
}
.cat-sheet__tab {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  border-radius: var(--r-p);
  border: 1.5px solid var(--border);
  background: var(--bg-alt);
  color: var(--text2);
  font-size: 13.5px;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: all .18s;
}
.cat-sheet__tab.active {
  background: var(--g-brand);
  color: #fff;
  border-color: transparent;
  box-shadow: 0 4px 14px rgba(255,0,128,.3);
}

.cat-sheet__body {
  display: none;
  overflow-y: auto;
  flex: 1;
  padding: 16px 20px 20px;
  min-height: 0;
}
.cat-sheet__body.active { display: flex; flex-direction: column; }

/* Platform grid */
.cat-sheet__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.cat-sheet__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  padding: 12px 4px;
  border-radius: 16px;
  background: var(--bg-alt);
  color: var(--text);
  font-size: 11px;
  font-weight: 500;
  text-align: center;
  border: 1.5px solid var(--border);
  transition: background .15s, transform .15s, border-color .15s;
  -webkit-tap-highlight-color: transparent;
}
.cat-sheet__item:active { transform: scale(.94); }
.cat-sheet__item:hover  { background: var(--surface2); border-color: var(--border2); }

.cat-sheet__item-ico {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: var(--sc, var(--pink));
  transition: transform .18s var(--ease-spring);
}
.cat-sheet__item:hover .cat-sheet__item-ico { transform: scale(1.1); }

/* Tools list */
.cat-sheet__list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.cat-sheet__list-link {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  border-radius: 16px;
  background: var(--bg-alt);
  color: var(--text);
  border: 1.5px solid var(--border);
  transition: background .15s, border-color .15s;
  -webkit-tap-highlight-color: transparent;
}
.cat-sheet__list-link:hover  { background: var(--surface2); border-color: var(--border2); }
.cat-sheet__list-link:active { transform: scale(.98); }
.cat-sheet__list-ico {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: rgba(255,0,128,.08);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  color: var(--pink);
  flex-shrink: 0;
}
.cat-sheet__list-link strong { display: block; font-size: 14px; font-weight: 600; color: var(--text); }
.cat-sheet__list-link span   { display: block; font-size: 12px; color: var(--text3); margin-top: 2px; }

/* ============================================================
   CART MODAL
============================================================ */
.cart-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 10000;
}
.cart-modal.open { display: block; }

.cart-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(3px);
  animation: fadeIn .22s ease;
}

.cart-modal__panel {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 92%;
  max-width: 440px;
  background: var(--surface);
  border-radius: 24px;
  box-shadow: 0 32px 80px rgba(0,0,0,.28), 0 0 0 1px var(--border);
  overflow: hidden;
  animation: cmPopIn .28s cubic-bezier(.34,1.4,.64,1);
}

@keyframes cmPopIn {
  from { opacity: 0; transform: translate(-50%, -48%) scale(.93); }
  to   { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}

/* ── Head ── */
.cart-modal__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 20px 0;
}

.cart-modal__svc {
  display: flex;
  align-items: center;
  gap: 12px;
}

.cart-modal__ico {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: var(--bg-alt);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: var(--cm-color, var(--pink));
  border: 1.5px solid var(--border);
  flex-shrink: 0;
}

.cart-modal__name {
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
  letter-spacing: -.3px;
}
.cart-modal__type {
  font-size: 12px;
  color: var(--text3);
  margin-top: 1px;
}

.cart-modal__close {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1.5px solid var(--border);
  background: var(--bg-alt);
  color: var(--text2);
  font-size: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background .15s, color .15s;
  flex-shrink: 0;
}
.cart-modal__close:hover { background: var(--pink); color: #fff; border-color: var(--pink); }

/* ── Selected Package ── */
.cart-modal__pkg {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 16px 20px 0;
  padding: 12px 16px;
  background: var(--bg-alt);
  border-radius: 14px;
  border: 1.5px solid var(--border);
}
.cart-modal__pkg-label {
  font-size: 12px;
  color: var(--text3);
  font-weight: 500;
}
.cart-modal__pkg-info {
  display: flex;
  align-items: center;
  gap: 10px;
}
.cart-modal__pkg-info span {
  font-size: 13px;
  font-weight: 600;
  color: var(--text2);
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cart-modal__pkg-info strong {
  font-size: 16px;
  font-weight: 800;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ── Input ── */
.cart-modal__input-wrap {
  margin: 14px 20px 0;
}
.cart-modal__label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--text2);
  margin-bottom: 8px;
}
.cart-modal__input-box {
  display: flex;
  align-items: center;
  border: 2px solid var(--border);
  border-radius: 14px;
  background: var(--bg-alt);
  overflow: hidden;
  transition: border-color .2s, box-shadow .2s;
}
.cart-modal__input-box:focus-within {
  border-color: var(--pink);
  box-shadow: 0 0 0 3px rgba(255,0,128,.12);
}
.cart-modal__input-box.shake {
  animation: inputShake .35s ease;
  border-color: #f33;
  box-shadow: 0 0 0 3px rgba(255,50,50,.14);
}
@keyframes inputShake {
  0%,100% { transform: translateX(0); }
  20%      { transform: translateX(-6px); }
  40%      { transform: translateX(6px); }
  60%      { transform: translateX(-4px); }
  80%      { transform: translateX(4px); }
}
.cart-modal__input-prefix {
  padding: 0 12px 0 14px;
  font-size: 16px;
  font-weight: 600;
  color: var(--text3);
  user-select: none;
  border-right: 1.5px solid var(--border);
  line-height: 46px;
}
.cart-modal__input {
  flex: 1;
  border: none;
  background: transparent;
  padding: 0 14px;
  height: 46px;
  font-size: 15px;
  font-weight: 500;
  color: var(--text);
  font-family: inherit;
  outline: none;
}
.cart-modal__input::placeholder { color: var(--text3); font-weight: 400; }
.cart-modal__input-hint {
  font-size: 11.5px;
  color: var(--text3);
  margin-top: 6px;
  min-height: 16px;
  transition: color .2s;
}
.cart-modal__input-hint.valid { color: #22c55e; }

/* ── Summary ── */
.cart-modal__summary {
  margin: 14px 20px 0;
  border: 1.5px solid var(--border);
  border-radius: 14px;
  overflow: hidden;
}
.cart-modal__summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 16px;
  font-size: 13.5px;
  color: var(--text2);
  border-bottom: 1px solid var(--border);
}
.cart-modal__summary-row:last-child { border-bottom: none; }
.cart-modal__summary-row strong { font-weight: 700; color: var(--text); }
.cart-modal__summary-row--total {
  background: var(--bg-alt);
}
.cart-modal__summary-row--total span { font-weight: 700; color: var(--text); font-size: 14px; }
.cart-modal__summary-row--total strong {
  font-size: 18px;
  font-weight: 800;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ── Actions ── */
.cart-modal__actions {
  padding: 16px 20px 20px;
}
.cart-modal__add-btn {
  width: 100%;
  justify-content: center;
  font-size: 15px;
  padding: 14px !important;
  border-radius: 16px !important;
  letter-spacing: .2px;
}

/* ── Success State ── */
.cart-modal__success {
  padding: 36px 28px 32px;
  text-align: center;
}
.cart-modal__success-ico {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: linear-gradient(135deg, #22c55e, #16a34a);
  color: #fff;
  font-size: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  box-shadow: 0 12px 32px rgba(34,197,94,.38);
  animation: successPop .4s cubic-bezier(.34,1.4,.64,1);
}
@keyframes successPop {
  from { transform: scale(0); opacity: 0; }
  to   { transform: scale(1); opacity: 1; }
}
.cart-modal__success h3 {
  font-size: 22px;
  font-weight: 800;
  color: var(--text);
  letter-spacing: -.5px;
  margin-bottom: 8px;
}
.cart-modal__success p {
  font-size: 14px;
  color: var(--text3);
  margin-bottom: 24px;
}
.cart-modal__success-btns {
  display: flex;
  gap: 10px;
}
.cart-modal__success-btns > * {
  flex: 1;
  justify-content: center;
  text-align: center;
  font-size: 14px;
  padding: 12px 10px !important;
  border-radius: 14px !important;
}
.cart-modal__continue {
  border: 1.5px solid var(--border);
  background: var(--bg-alt);
  color: var(--text2);
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  border-radius: 14px;
  transition: background .15s, border-color .15s;
}
.cart-modal__continue:hover { background: var(--surface2); border-color: var(--border2); }

/* ── Mobile: bottom sheet ── */
@media (max-width: 480px) {
  .cart-modal__panel {
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    border-radius: 22px 22px 0 0;
    transform: none;
    animation: slideUp .3s cubic-bezier(.4,0,.2,1);
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }
  .cart-modal__overlay { animation: fadeIn .22s ease; }
}

/* ============================================================
   CONTACT PAGE
============================================================ */

/* ── Hero ── */
.contact-hero {
  padding: 64px 0 56px;
  background: var(--bg);
  position: relative;
  overflow: hidden;
}
.contact-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 60% 80% at 10% 0%, rgba(255,0,128,.07) 0%, transparent 60%),
    radial-gradient(ellipse 50% 60% at 90% 0%, rgba(121,40,202,.07) 0%, transparent 60%);
  pointer-events: none;
}
.contact-hero__inner {
  position: relative;
  z-index: 1;
  text-align: center;
  max-width: 600px;
  margin: 0 auto;
}
.contact-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 16px;
  background: rgba(255,0,128,.08);
  border: 1px solid rgba(255,0,128,.18);
  border-radius: 99px;
  font-size: 13px;
  font-weight: 600;
  color: var(--pink);
  margin-bottom: 22px;
}
.contact-hero__badge i { font-size: 8px; animation: pulse 2s infinite; }
@keyframes pulse {
  0%,100% { opacity: 1; }
  50%      { opacity: .4; }
}
.contact-hero__title {
  font-size: clamp(36px, 6vw, 54px);
  font-weight: 900;
  color: var(--text);
  letter-spacing: -1.5px;
  line-height: 1.1;
  margin-bottom: 16px;
}
.contact-hero__desc {
  font-size: 16px;
  color: var(--text2);
  line-height: 1.65;
  margin-bottom: 36px;
}
.contact-hero__desc strong { color: var(--text); font-weight: 700; }

.contact-hero__channels {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}
.contact-hero__channel {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 11px 22px;
  border-radius: var(--r-p);
  font-size: 14px;
  font-weight: 700;
  transition: transform .18s var(--ease-spring), box-shadow .18s;
}
.contact-hero__channel:hover { transform: translateY(-3px); }
.contact-hero__channel--wa {
  background: #25D366;
  color: #fff;
  box-shadow: 0 6px 20px rgba(37,211,102,.35);
}
.contact-hero__channel--wa:hover { box-shadow: 0 10px 28px rgba(37,211,102,.45); }
.contact-hero__channel--tg {
  background: #0088CC;
  color: #fff;
  box-shadow: 0 6px 20px rgba(0,136,204,.3);
}
.contact-hero__channel--tg:hover { box-shadow: 0 10px 28px rgba(0,136,204,.42); }
.contact-hero__channel--mail {
  background: var(--surface);
  color: var(--text);
  border: 1.5px solid var(--border);
  box-shadow: var(--shadow-sm);
}
.contact-hero__channel--mail:hover { border-color: var(--pink); color: var(--pink); }

/* ── Main Section ── */
.contact-main {
  padding: 56px 0 64px;
}
.contact-main__grid {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 32px;
  align-items: start;
}

/* ── Form Card ── */
.contact-form-card {
  background: var(--surface);
  border-radius: 24px;
  border: 1.5px solid var(--border);
  box-shadow: var(--shadow-sm);
  padding: 32px;
}
.contact-form-card__head {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 28px;
}
.contact-form-card__ico {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  background: var(--g-brand);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
  box-shadow: var(--shadow-pink);
}
.contact-form-card__title {
  font-size: 22px;
  font-weight: 800;
  color: var(--text);
  letter-spacing: -.5px;
}
.contact-form-card__sub {
  font-size: 13.5px;
  color: var(--text3);
  margin-top: 3px;
}

/* Form fields */
.contact-form { display: flex; flex-direction: column; gap: 18px; }
.cf-row { display: flex; gap: 14px; }
.cf-row--2 > .cf-field { flex: 1; }
.cf-field { display: flex; flex-direction: column; gap: 7px; }
.cf-label {
  font-size: 13px;
  font-weight: 600;
  color: var(--text2);
}
.cf-input-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.cf-input-ico {
  position: absolute;
  left: 14px;
  font-size: 14px;
  color: var(--text3);
  pointer-events: none;
}
.cf-input {
  width: 100%;
  height: 46px;
  padding: 0 14px 0 40px;
  background: var(--bg-alt);
  border: 2px solid var(--border);
  border-radius: 14px;
  font-size: 14.5px;
  font-weight: 500;
  color: var(--text);
  font-family: inherit;
  outline: none;
  transition: border-color .2s, box-shadow .2s, background .2s;
}
.cf-input:focus {
  border-color: var(--pink);
  background: var(--surface);
  box-shadow: 0 0 0 3px rgba(255,0,128,.1);
}
.cf-input::placeholder { color: var(--text3); font-weight: 400; }

.cf-input-wrap--select { position: relative; }
.cf-select {
  appearance: none;
  cursor: pointer;
  padding-right: 38px;
}
.cf-select-chev {
  position: absolute;
  right: 14px;
  font-size: 12px;
  color: var(--text3);
  pointer-events: none;
  transition: transform .2s;
}
.cf-input-wrap--select:focus-within .cf-select-chev { transform: rotate(180deg); color: var(--pink); }

.cf-textarea {
  width: 100%;
  padding: 14px;
  background: var(--bg-alt);
  border: 2px solid var(--border);
  border-radius: 14px;
  font-size: 14.5px;
  font-weight: 500;
  color: var(--text);
  font-family: inherit;
  outline: none;
  resize: vertical;
  min-height: 130px;
  transition: border-color .2s, box-shadow .2s, background .2s;
}
.cf-textarea:focus {
  border-color: var(--pink);
  background: var(--surface);
  box-shadow: 0 0 0 3px rgba(255,0,128,.1);
}
.cf-textarea::placeholder { color: var(--text3); font-weight: 400; }

/* Checkbox */
.cf-check {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  user-select: none;
}
.cf-check input[type="checkbox"] { display: none; }
.cf-check__box {
  width: 20px;
  height: 20px;
  border-radius: 6px;
  border: 2px solid var(--border2);
  background: var(--bg-alt);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .15s, border-color .15s;
}
.cf-check__box::after {
  content: '';
  width: 5px;
  height: 9px;
  border: 2px solid #fff;
  border-top: none;
  border-left: none;
  transform: rotate(45deg) translateY(-1px);
  opacity: 0;
  transition: opacity .15s;
}
.cf-check input:checked + .cf-check__box {
  background: var(--pink);
  border-color: var(--pink);
}
.cf-check input:checked + .cf-check__box::after { opacity: 1; }
.cf-check__label { font-size: 13px; color: var(--text2); }
.cf-check__label a { color: var(--pink); }

.cf-submit {
  width: 100%;
  justify-content: center;
  padding: 14px !important;
  border-radius: 16px !important;
  font-size: 15px;
  letter-spacing: .2px;
  margin-top: 4px;
}

/* Form success */
.cf-success {
  text-align: center;
  padding: 20px 0 8px;
}
.cf-success__ico {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: linear-gradient(135deg, #22c55e, #16a34a);
  color: #fff;
  font-size: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  box-shadow: 0 12px 32px rgba(34,197,94,.35);
  animation: successPop .4s cubic-bezier(.34,1.4,.64,1);
}
.cf-success h3 {
  font-size: 22px;
  font-weight: 800;
  color: var(--text);
  letter-spacing: -.5px;
  margin-bottom: 10px;
}
.cf-success p {
  font-size: 14px;
  color: var(--text3);
  line-height: 1.6;
  margin-bottom: 24px;
}
.cf-success__back {
  border: 1.5px solid var(--border);
  background: var(--bg-alt);
  color: var(--text2);
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  border-radius: 14px;
  padding: 11px 22px;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: background .15s, border-color .15s;
}
.cf-success__back:hover { background: var(--surface2); border-color: var(--border2); }

/* ── Info Cards ── */
.contact-info {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.cinfo-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  background: var(--surface);
  border-radius: 18px;
  border: 1.5px solid var(--border);
  box-shadow: var(--shadow-xs);
  transition: transform .18s var(--ease-spring), box-shadow .18s, border-color .18s;
}
.cinfo-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
  border-color: var(--border2);
}
.cinfo-card__ico {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  flex-shrink: 0;
  color: #fff;
}
.cinfo-card--wa   .cinfo-card__ico { background: #25D366; box-shadow: 0 6px 16px rgba(37,211,102,.3); }
.cinfo-card--tg   .cinfo-card__ico { background: #0088CC; box-shadow: 0 6px 16px rgba(0,136,204,.25); }
.cinfo-card--mail .cinfo-card__ico { background: var(--g-brand); box-shadow: var(--shadow-pink); }
.cinfo-card--hours .cinfo-card__ico { background: linear-gradient(135deg,#f59e0b,#d97706); box-shadow: 0 6px 16px rgba(245,158,11,.28); }

.cinfo-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.cinfo-card__label {
  font-size: 11.5px;
  color: var(--text3);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .5px;
}
.cinfo-card__val {
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.cinfo-card__hint {
  font-size: 12px;
  color: var(--text3);
}

.cinfo-card__btn {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--bg-alt);
  border: 1.5px solid var(--border);
  color: var(--text3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  flex-shrink: 0;
  transition: background .15s, color .15s, border-color .15s;
}
.cinfo-card__btn:hover { background: var(--pink); color: #fff; border-color: var(--pink); }

.cinfo-card__live {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: #22c55e;
  flex-shrink: 0;
}
.cinfo-card__live-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  animation: pulse 2s infinite;
}

/* Social links */
.contact-socials {
  background: var(--surface);
  border-radius: 18px;
  border: 1.5px solid var(--border);
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.contact-socials__label {
  font-size: 12px;
  color: var(--text3);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .5px;
}
.contact-socials__links {
  display: flex;
  gap: 10px;
}
.contact-social-btn {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: var(--bg-alt);
  border: 1.5px solid var(--border);
  color: var(--text2);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  transition: background .15s, color .15s, border-color .15s, transform .18s var(--ease-spring);
}
.contact-social-btn:hover {
  background: var(--cs, var(--pink));
  color: #fff;
  border-color: transparent;
  transform: translateY(-3px);
}

/* ── Quick Channels Section ── */
.contact-channels {
  padding: 0 0 72px;
}
.contact-channels__head {
  text-align: center;
  margin-bottom: 36px;
}
.contact-channels__title {
  font-size: 28px;
  font-weight: 800;
  color: var(--text);
  letter-spacing: -.6px;
  margin-bottom: 8px;
}
.contact-channels__sub {
  font-size: 15px;
  color: var(--text3);
}
.contact-channels__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.qch-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 18px;
  padding: 28px 24px;
  border-radius: 22px;
  border: 1.5px solid var(--border);
  background: var(--surface);
  transition: transform .2s var(--ease-spring), box-shadow .2s, border-color .2s;
  overflow: hidden;
}
.qch-card::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity .2s;
}
.qch-card:hover { transform: translateY(-4px); }
.qch-card--wa { box-shadow: 0 2px 12px rgba(37,211,102,.1); }
.qch-card--wa:hover { border-color: #25D366; box-shadow: 0 16px 40px rgba(37,211,102,.2); }
.qch-card--tg:hover { border-color: #0088CC; box-shadow: 0 16px 40px rgba(0,136,204,.18); }
.qch-card--mail:hover { border-color: var(--pink); box-shadow: var(--shadow-pink); }

.qch-card__ico {
  width: 56px;
  height: 56px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  color: #fff;
  flex-shrink: 0;
}
.qch-card--wa   .qch-card__ico { background: #25D366; box-shadow: 0 8px 20px rgba(37,211,102,.35); }
.qch-card--tg   .qch-card__ico { background: #0088CC; box-shadow: 0 8px 20px rgba(0,136,204,.3); }
.qch-card--mail .qch-card__ico { background: var(--g-brand); box-shadow: var(--shadow-pink); }

.qch-card__body { flex: 1; }
.qch-card__body h3 {
  font-size: 17px;
  font-weight: 700;
  color: var(--text);
  letter-spacing: -.3px;
  margin-bottom: 7px;
}
.qch-card__body p { font-size: 13.5px; color: var(--text3); line-height: 1.55; }

.qch-card__arrow {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: var(--bg-alt);
  border: 1.5px solid var(--border);
  color: var(--text3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  flex-shrink: 0;
  transition: background .15s, color .15s, border-color .15s;
}
.qch-card:hover .qch-card__arrow { background: var(--pink); color: #fff; border-color: transparent; }

.qch-card__body-top {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 7px;
}
.qch-card__body-top h3 { margin-bottom: 0; }
.qch-card__badge {
  background: rgba(37,211,102,.12);
  color: #16a34a;
  border: 1px solid rgba(37,211,102,.25);
  border-radius: 99px;
  font-size: 10px;
  font-weight: 800;
  padding: 3px 10px;
  letter-spacing: .6px;
  white-space: nowrap;
  flex-shrink: 0;
}

/* ── Mobile Responsive ── */
@media (max-width: 960px) {
  .contact-main__grid { grid-template-columns: 1fr; }
  .contact-info { display: grid; grid-template-columns: repeat(2, 1fr); }
  .contact-socials { grid-column: 1 / -1; }
  .contact-channels__grid { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .contact-hero { padding: 40px 0 36px; }
  .contact-hero__channels { gap: 8px; }
  .contact-hero__channel { padding: 10px 16px; font-size: 13.5px; }
  .contact-main { padding: 32px 0 40px; }
  .contact-form-card { padding: 22px 18px; }
  .cf-row--2 { flex-direction: column; gap: 0; }
  .contact-info { grid-template-columns: 1fr; }
  .contact-channels { padding-bottom: 40px; }
}

/* ============================================================
   CART PAGE
============================================================ */
.cart-page {
  padding: 40px 0 72px;
}

.cart-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 32px;
  flex-wrap: wrap;
  gap: 14px;
}
.cart-page__title {
  font-size: 28px;
  font-weight: 900;
  color: var(--text);
  letter-spacing: -.7px;
}
.cart-page__sub {
  font-size: 14px;
  color: var(--text3);
  margin-top: 4px;
}
.cart-page__continue {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13.5px;
  padding: 10px 18px;
  border-radius: var(--r-p);
  border: 1.5px solid var(--border);
  background: var(--bg-alt);
  color: var(--text2);
  font-weight: 600;
  cursor: pointer;
  transition: background .15s, border-color .15s, color .15s;
}
.cart-page__continue:hover { background: var(--surface2); border-color: var(--border2); color: var(--text); }

.cart-page__grid {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 28px;
  align-items: start;
}

/* ── Cart Items ── */
.cart-items {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.cart-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 20px;
  background: var(--surface);
  border-radius: 20px;
  border: 1.5px solid var(--border);
  box-shadow: var(--shadow-xs);
  transition: box-shadow .18s, border-color .18s;
}
.cart-item:hover { box-shadow: var(--shadow-sm); border-color: var(--border2); }

.cart-item__ico {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: color-mix(in srgb, var(--ci, var(--pink)) 12%, transparent);
  border: 1.5px solid color-mix(in srgb, var(--ci, var(--pink)) 22%, transparent);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: var(--ci, var(--pink));
  flex-shrink: 0;
}

.cart-item__body { flex: 1; min-width: 0; }

.cart-item__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.cart-item__name {
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
  letter-spacing: -.2px;
}
.cart-item__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 5px;
}
.cart-item__tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 500;
  color: var(--text3);
  background: var(--bg-alt);
  border: 1px solid var(--border);
  border-radius: 99px;
  padding: 3px 10px;
}
.cart-item__tag--qty { color: var(--text2); font-weight: 600; }

.cart-item__price {
  font-size: 18px;
  font-weight: 800;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  white-space: nowrap;
  flex-shrink: 0;
}

.cart-item__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.cart-item__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.cart-item__badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11.5px;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 99px;
  border: 1px solid;
}
.cart-item__badge--speed { background: rgba(255,0,128,.07); color: var(--pink); border-color: rgba(255,0,128,.2); }
.cart-item__badge--safe  { background: rgba(34,197,94,.08); color: #16a34a; border-color: rgba(34,197,94,.22); }
.cart-item__badge--real  { background: rgba(59,130,246,.08); color: #2563eb; border-color: rgba(59,130,246,.2); }

.cart-item__remove {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  border: 1.5px solid var(--border);
  background: var(--bg-alt);
  color: var(--text3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  cursor: pointer;
  flex-shrink: 0;
  transition: background .15s, color .15s, border-color .15s;
}
.cart-item__remove:hover { background: #fee2e2; color: #dc2626; border-color: #fca5a5; }

/* Trust bar */
.cart-trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  padding: 18px 24px;
  background: var(--surface);
  border-radius: 16px;
  border: 1.5px solid var(--border);
  flex-wrap: wrap;
  margin-top: 4px;
}
.cart-trust__item {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--text3);
}
.cart-trust__item i { color: var(--pink); font-size: 14px; }

/* ── Cart Summary ── */
.cart-summary {
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: sticky;
  top: 90px;
}

/* Promo */
.cart-promo {
  background: var(--surface);
  border-radius: 18px;
  border: 1.5px solid var(--border);
  padding: 18px 20px;
}
.cart-promo__label {
  font-size: 12.5px;
  font-weight: 700;
  color: var(--text2);
  text-transform: uppercase;
  letter-spacing: .5px;
  margin-bottom: 10px;
}
.cart-promo__row { display: flex; gap: 8px; }
.cart-promo__input-wrap {
  flex: 1;
  position: relative;
  display: flex;
  align-items: center;
}
.cart-promo__ico {
  position: absolute;
  left: 12px;
  font-size: 13px;
  color: var(--text3);
}
.cart-promo__input {
  width: 100%;
  height: 42px;
  padding: 0 12px 0 34px;
  background: var(--bg-alt);
  border: 2px solid var(--border);
  border-radius: 12px;
  font-size: 14px;
  font-weight: 500;
  color: var(--text);
  font-family: inherit;
  outline: none;
  transition: border-color .2s, box-shadow .2s;
  text-transform: uppercase;
  letter-spacing: .5px;
}
.cart-promo__input:focus { border-color: var(--pink); box-shadow: 0 0 0 3px rgba(255,0,128,.1); }
.cart-promo__input::placeholder { text-transform: none; letter-spacing: 0; color: var(--text3); font-weight: 400; }
.cart-promo__btn {
  height: 42px;
  padding: 0 18px;
  border-radius: 12px;
  background: var(--g-brand);
  color: #fff;
  font-size: 13.5px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  border: none;
  white-space: nowrap;
  transition: opacity .15s, transform .15s;
}
.cart-promo__btn:hover { opacity: .9; transform: translateY(-1px); }
.cart-promo__feedback {
  font-size: 12.5px;
  margin-top: 8px;
  min-height: 16px;
  font-weight: 600;
}
.cart-promo__feedback.ok  { color: #22c55e; }
.cart-promo__feedback.err { color: #ef4444; }

/* Breakdown */
.cart-breakdown {
  background: var(--surface);
  border-radius: 18px;
  border: 1.5px solid var(--border);
  padding: 6px 0;
}
.cart-breakdown__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 13px 20px;
  font-size: 14px;
  color: var(--text2);
}
.cart-breakdown__row strong { font-weight: 700; color: var(--text); }
.cart-breakdown__free { color: #22c55e !important; font-weight: 700 !important; }
.cart-breakdown__row--discount strong { color: #22c55e; }
.cart-breakdown__divider {
  height: 1px;
  background: var(--border);
  margin: 0 20px;
}
.cart-breakdown__row--total {
  padding: 16px 20px;
}
.cart-breakdown__row--total span { font-size: 16px; font-weight: 800; color: var(--text); }
.cart-breakdown__row--total strong {
  font-size: 22px;
  font-weight: 900;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  letter-spacing: -.5px;
}

/* Checkout */
.cart-checkout-btn {
  width: 100%;
  justify-content: center;
  padding: 16px !important;
  border-radius: 16px !important;
  font-size: 16px;
  letter-spacing: .2px;
}

/* Pay icons */
.cart-pay-icons {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 26px;
  color: var(--text3);
  flex-wrap: wrap;
}
.cart-pay-sep { width: 1px; height: 20px; background: var(--border2); }
.cart-pay-text { font-size: 12px; font-weight: 600; color: var(--text3); }

/* Platform summary */
.cart-platforms {
  background: var(--surface);
  border-radius: 18px;
  border: 1.5px solid var(--border);
  padding: 16px 20px;
}
.cart-platforms__label {
  font-size: 12px;
  color: var(--text3);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .5px;
  margin-bottom: 12px;
}
.cart-platforms__row { display: flex; align-items: center; gap: 8px; }
.cart-platform-ico {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: color-mix(in srgb, var(--ci, var(--pink)) 12%, transparent);
  border: 1.5px solid color-mix(in srgb, var(--ci, var(--pink)) 22%, transparent);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: var(--ci, var(--pink));
}
.cart-platforms__count {
  font-size: 13px;
  font-weight: 600;
  color: var(--text3);
  margin-left: 4px;
}

/* Empty state */
.cart-empty {
  text-align: center;
  padding: 80px 24px;
}
.cart-empty__ico {
  width: 88px;
  height: 88px;
  border-radius: 26px;
  background: var(--bg-alt);
  border: 2px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 36px;
  color: var(--text3);
  margin: 0 auto 24px;
}
.cart-empty__title {
  font-size: 24px;
  font-weight: 800;
  color: var(--text);
  letter-spacing: -.5px;
  margin-bottom: 10px;
}
.cart-empty__sub {
  font-size: 15px;
  color: var(--text3);
  margin-bottom: 28px;
}
.cart-empty__btn { display: inline-flex; align-items: center; gap: 8px; }

/* ── Mobile ── */
@media (max-width: 900px) {
  .cart-page__grid { grid-template-columns: 1fr; }
  .cart-summary { position: static; }
}
@media (max-width: 600px) {
  .cart-page { padding: 28px 0 48px; }
  .cart-item { padding: 16px; gap: 12px; }
  .cart-item__ico { width: 40px; height: 40px; font-size: 18px; }
  .cart-trust { gap: 14px; padding: 14px 16px; }
  .cart-trust__item span { display: none; }
}

/* ============================================================
   BLOG PAGE
============================================================ */

/* ── Hero ── */
.blog-hero {
  padding: 56px 0 44px;
  background: var(--bg);
  position: relative;
  overflow: hidden;
}
.blog-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 55% 70% at 5% 0%, rgba(255,0,128,.06) 0%, transparent 60%),
    radial-gradient(ellipse 45% 60% at 95% 0%, rgba(121,40,202,.06) 0%, transparent 60%);
  pointer-events: none;
}
.blog-hero__inner {
  position: relative;
  z-index: 1;
  text-align: center;
  max-width: 620px;
  margin: 0 auto;
}
.blog-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 16px;
  background: rgba(255,0,128,.08);
  border: 1px solid rgba(255,0,128,.18);
  border-radius: 99px;
  font-size: 13px;
  font-weight: 600;
  color: var(--pink);
  margin-bottom: 20px;
}
.blog-hero__title {
  font-size: clamp(32px, 5.5vw, 50px);
  font-weight: 900;
  color: var(--text);
  letter-spacing: -1.5px;
  line-height: 1.1;
  margin-bottom: 14px;
}
.blog-hero__desc {
  font-size: 16px;
  color: var(--text2);
  line-height: 1.6;
  margin-bottom: 32px;
}

/* Blog search */
.blog-search {
  display: flex;
  align-items: center;
  max-width: 480px;
  margin: 0 auto;
  background: var(--surface);
  border: 2px solid var(--border);
  border-radius: var(--r-p);
  overflow: hidden;
  transition: border-color .2s, box-shadow .2s;
}
.blog-search:focus-within {
  border-color: var(--pink);
  box-shadow: 0 0 0 3px rgba(255,0,128,.1);
}
.blog-search__ico {
  padding: 0 14px;
  font-size: 15px;
  color: var(--text3);
  flex-shrink: 0;
}
.blog-search__input {
  flex: 1;
  border: none;
  background: transparent;
  height: 48px;
  font-size: 15px;
  font-weight: 500;
  color: var(--text);
  font-family: inherit;
  outline: none;
}
.blog-search__input::placeholder { color: var(--text3); font-weight: 400; }
.blog-search__btn {
  height: 48px;
  padding: 0 22px;
  background: var(--g-brand);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  font-family: inherit;
  border: none;
  cursor: pointer;
  white-space: nowrap;
  transition: opacity .15s;
  flex-shrink: 0;
}
.blog-search__btn:hover { opacity: .9; }

/* ── Filters ── */
.blog-filters {
  border-bottom: 1px solid var(--border);
  background: var(--surface);
  position: sticky;
  top: 57px;
  z-index: 80;
}
.blog-filter-tabs {
  display: flex;
  gap: 4px;
  overflow-x: auto;
  scrollbar-width: none;
  padding: 10px 0;
}
.blog-filter-tabs::-webkit-scrollbar { display: none; }
.blog-filter-tab {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 18px;
  border-radius: var(--r-p);
  border: 1.5px solid transparent;
  background: transparent;
  color: var(--text2);
  font-size: 13.5px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  white-space: nowrap;
  transition: background .15s, color .15s, border-color .15s;
}
.blog-filter-tab:hover { background: var(--bg-alt); color: var(--text); }
.blog-filter-tab.active {
  background: var(--g-brand);
  color: #fff;
  border-color: transparent;
  box-shadow: 0 4px 14px rgba(255,0,128,.28);
}

/* ── Featured Post ── */
.blog-featured { padding: 36px 0 0; }

.blog-feat-card {
  display: grid;
  grid-template-columns: 420px 1fr;
  border-radius: 24px;
  border: 1.5px solid var(--border);
  background: var(--surface);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition: transform .2s var(--ease-spring), box-shadow .2s;
}
.blog-feat-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }

.blog-feat-card__thumb {
  position: relative;
  min-height: 280px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.blog-feat-card__thumb--ig   { background: linear-gradient(135deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888); }
.blog-feat-card__thumb--tk   { background: linear-gradient(135deg, #010101 0%, #2d2d2d 100%); }
.blog-feat-card__thumb--yt   { background: linear-gradient(135deg, #FF0000, #CC0000); }
.blog-feat-card__thumb--guide{ background: linear-gradient(135deg, #7928CA, #FF0080); }
.blog-feat-card__thumb--news { background: linear-gradient(135deg, #0088CC, #005f8e); }

.blog-feat-thumb-ico {
  font-size: 90px;
  color: rgba(255,255,255,.18);
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.blog-feat-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 40%, rgba(0,0,0,.35));
}
.blog-feat-card__cat {
  position: absolute;
  top: 18px;
  left: 18px;
  background: rgba(255,255,255,.22);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.3);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  padding: 5px 13px;
  border-radius: 99px;
  letter-spacing: .4px;
}
.blog-feat-card__hot {
  position: absolute;
  top: 18px;
  right: 18px;
  background: var(--pink);
  color: #fff;
  font-size: 11.5px;
  font-weight: 700;
  padding: 5px 12px;
  border-radius: 99px;
  box-shadow: 0 4px 14px rgba(255,0,128,.4);
}

.blog-feat-card__body {
  padding: 36px 32px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  justify-content: center;
}
.blog-feat-card__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
.blog-meta-dot {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--border2);
}
.blog-meta-date, .blog-meta-read {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 12.5px;
  color: var(--text3);
}

.blog-author {
  display: flex;
  align-items: center;
  gap: 8px;
}
.blog-author__av {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--g-brand);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.blog-author span { font-size: 12.5px; font-weight: 600; color: var(--text2); }
.blog-author--sm .blog-author__av { width: 24px; height: 24px; font-size: 9px; }
.blog-author--sm span { font-size: 12px; }

.blog-feat-card__title {
  font-size: 22px;
  font-weight: 800;
  color: var(--text);
  letter-spacing: -.5px;
  line-height: 1.3;
}
.blog-feat-card__excerpt {
  font-size: 14.5px;
  color: var(--text2);
  line-height: 1.65;
}
.blog-feat-card__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 4px;
}
.blog-feat-card__tags { display: flex; flex-wrap: wrap; gap: 6px; }
.blog-feat-card__tags .blog-tag {
  font-size: 12px;
  font-weight: 600;
  padding: 4px 12px;
  border-radius: 99px;
  background: var(--bg-alt);
  border: 1px solid var(--border);
  color: var(--text2);
}
.blog-feat-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--pink);
  transition: gap .15s;
}
.blog-feat-card:hover .blog-feat-card__cta { gap: 11px; }

/* ── Blog Grid ── */
.blog-section { padding: 40px 0 64px; }
.blog-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
}
.blog-section__title {
  font-size: 20px;
  font-weight: 800;
  color: var(--text);
  letter-spacing: -.4px;
}
.blog-section__count {
  font-size: 13px;
  color: var(--text3);
  font-weight: 500;
  background: var(--bg-alt);
  border: 1px solid var(--border);
  border-radius: 99px;
  padding: 4px 14px;
}

.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.blog-card {
  background: var(--surface);
  border-radius: 20px;
  border: 1.5px solid var(--border);
  overflow: hidden;
  box-shadow: var(--shadow-xs);
  transition: transform .2s var(--ease-spring), box-shadow .2s, border-color .18s;
  display: flex;
  flex-direction: column;
}
.blog-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: var(--border2); }

.blog-card__thumb {
  position: relative;
  height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex-shrink: 0;
}
.blog-card__thumb--ig    { background: linear-gradient(135deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888); }
.blog-card__thumb--tk    { background: linear-gradient(135deg, #010101, #2d2d2d); }
.blog-card__thumb--yt    { background: linear-gradient(135deg, #FF0000, #CC0000); }
.blog-card__thumb--guide { background: linear-gradient(135deg, #7928CA, #FF0080); }
.blog-card__thumb--news  { background: linear-gradient(135deg, #0088CC, #005f8e); }

.blog-card__thumb-ico {
  font-size: 60px;
  color: rgba(255,255,255,.2);
  transition: transform .3s var(--ease-spring);
}
.blog-card:hover .blog-card__thumb-ico { transform: scale(1.15); }

.blog-card__cat {
  position: absolute;
  bottom: 12px;
  left: 12px;
  background: rgba(255,255,255,.2);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.3);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  padding: 4px 11px;
  border-radius: 99px;
  letter-spacing: .3px;
}
.blog-card__new {
  position: absolute;
  top: 12px;
  right: 12px;
  background: var(--pink);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  padding: 3px 10px;
  border-radius: 99px;
  letter-spacing: .5px;
}

.blog-card__body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
}
.blog-card__title {
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
  letter-spacing: -.3px;
  line-height: 1.4;
}
.blog-card__excerpt {
  font-size: 13px;
  color: var(--text3);
  line-height: 1.6;
  flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.blog-card__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 10px;
  border-top: 1px solid var(--border);
  margin-top: auto;
  gap: 8px;
}
.blog-card__info {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 11.5px;
  color: var(--text3);
  font-weight: 500;
  flex-shrink: 0;
}
.blog-card__info i { color: var(--pink); }

/* Empty state */
.blog-empty {
  text-align: center;
  padding: 60px 24px;
}
.blog-empty__ico {
  width: 72px;
  height: 72px;
  border-radius: 22px;
  background: var(--bg-alt);
  border: 2px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  color: var(--text3);
  margin: 0 auto 20px;
}
.blog-empty h3 { font-size: 20px; font-weight: 800; color: var(--text); margin-bottom: 8px; }
.blog-empty p  { font-size: 14px; color: var(--text3); margin-bottom: 22px; }
.blog-empty__reset {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1.5px solid var(--border);
  background: var(--bg-alt);
  color: var(--text2);
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  border-radius: var(--r-p);
  padding: 10px 20px;
  font-size: 13.5px;
  transition: background .15s, border-color .15s;
}
.blog-empty__reset:hover { background: var(--surface2); border-color: var(--border2); }

/* Load more */
.blog-loadmore {
  text-align: center;
  margin-top: 40px;
}
.blog-loadmore__btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 13px 32px;
  border-radius: var(--r-p);
  border: 1.5px solid var(--border);
  background: var(--surface);
  color: var(--text2);
  font-size: 14px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  transition: background .15s, border-color .15s, color .15s;
}
.blog-loadmore__btn:hover { background: var(--bg-alt); border-color: var(--border2); color: var(--text); }
.blog-loadmore__btn i { transition: transform .4s; }
.blog-loadmore__btn.loading i { animation: spin .7s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* ── Newsletter ── */
.blog-newsletter {
  background: var(--surface);
  border-top: 1.5px solid var(--border);
  border-bottom: 1.5px solid var(--border);
  padding: 40px 0;
  margin-bottom: 0;
}
.blog-newsletter__inner {
  display: flex;
  align-items: center;
  gap: 28px;
  flex-wrap: wrap;
}
.blog-newsletter__left {
  display: flex;
  align-items: center;
  gap: 18px;
  flex: 1;
  min-width: 240px;
}
.blog-newsletter__ico {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  background: var(--g-brand);
  color: #fff;
  font-size: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: var(--shadow-pink);
}
.blog-newsletter__title {
  font-size: 18px;
  font-weight: 800;
  color: var(--text);
  letter-spacing: -.4px;
}
.blog-newsletter__sub { font-size: 13.5px; color: var(--text3); margin-top: 3px; }

.blog-newsletter__form {
  display: flex;
  gap: 10px;
  flex: 1;
  min-width: 280px;
}
.blog-newsletter__input-wrap {
  flex: 1;
  position: relative;
  display: flex;
  align-items: center;
}
.blog-nl-ico {
  position: absolute;
  left: 14px;
  font-size: 14px;
  color: var(--text3);
}
.blog-newsletter__input {
  width: 100%;
  height: 46px;
  padding: 0 14px 0 40px;
  background: var(--bg-alt);
  border: 2px solid var(--border);
  border-radius: 14px;
  font-size: 14px;
  font-weight: 500;
  color: var(--text);
  font-family: inherit;
  outline: none;
  transition: border-color .2s, box-shadow .2s;
}
.blog-newsletter__input:focus { border-color: var(--pink); box-shadow: 0 0 0 3px rgba(255,0,128,.1); }
.blog-newsletter__input::placeholder { color: var(--text3); font-weight: 400; }
.blog-newsletter__btn {
  padding: 0 22px !important;
  height: 46px;
  border-radius: 14px !important;
  white-space: nowrap;
  font-size: 14px;
}
.blog-newsletter__success {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 600;
  color: #22c55e;
  flex: 1;
}
.blog-newsletter__success i { font-size: 20px; }

/* ============================================================
   BLOG DETAIL PAGE
============================================================ */

/* ── Reading Progress Bar (top of page) ── */
.post-progress-bar {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  width: 0%;
  background: var(--g-brand);
  z-index: 9999;
  transition: width .1s linear;
  box-shadow: 0 0 8px rgba(255,0,128,.5);
}

/* ── Article Hero ── */
.post-hero {
  position: relative;
}
.post-hero__thumb {
  width: 100%;
  height: 380px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
}
.post-hero__thumb--ig    { background: linear-gradient(135deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888); }
.post-hero__thumb--tk    { background: linear-gradient(135deg, #010101, #2d2d2d); }
.post-hero__thumb--yt    { background: linear-gradient(135deg, #FF0000, #CC0000); }
.post-hero__thumb--guide { background: linear-gradient(135deg, #7928CA, #FF0080); }
.post-hero__thumb--news  { background: linear-gradient(135deg, #0088CC, #005f8e); }
.post-hero__thumb-ico {
  font-size: 160px;
  color: rgba(255,255,255,.12);
}
.post-hero__thumb-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,.1) 0%, rgba(0,0,0,.55) 100%);
}
.post-hero__inner {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3;
  padding: 28px 0 36px;
}
.post-hero__cats {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
}
.post-hero__cat {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 14px;
  border-radius: 99px;
  font-size: 12.5px;
  font-weight: 700;
  background: rgba(255,255,255,.18);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.3);
  color: #fff;
  letter-spacing: .3px;
}
.post-hero__cat--hot {
  background: var(--pink);
  border-color: transparent;
  box-shadow: 0 4px 14px rgba(255,0,128,.4);
}
.post-hero__title {
  font-size: clamp(24px, 4vw, 38px);
  font-weight: 900;
  color: #fff;
  letter-spacing: -1px;
  line-height: 1.2;
  margin-bottom: 20px;
  text-shadow: 0 2px 16px rgba(0,0,0,.3);
}
.post-hero__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px;
}
.post-hero__meta .blog-author { color: #fff; }
.post-hero__meta .blog-author__av { width: 36px; height: 36px; font-size: 12px; border: 2px solid rgba(255,255,255,.4); }
.post-hero__meta .blog-author strong { display: block; font-size: 14px; font-weight: 700; color: #fff; }
.post-hero__meta .blog-author span { font-size: 12px; color: rgba(255,255,255,.7); }
.post-hero__meta-right {
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: 13px;
  color: rgba(255,255,255,.8);
  flex-wrap: wrap;
}
.post-hero__meta-right i { color: rgba(255,255,255,.6); }
.post-hero__meta-pills {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.post-hero__pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 13px;
  background: rgba(255,255,255,.16);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 99px;
  font-size: 12.5px;
  font-weight: 500;
  color: rgba(255,255,255,.92);
}
.post-hero__pill i { opacity: .75; font-size: 11px; }

/* ── Body Layout ── */
.post-body { padding: 48px 0 64px; }
.post-body__grid {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 48px;
  align-items: start;
}

/* ── Article Content ── */
.post-content {
  min-width: 0;
}

/* Lead */
.post-lead {
  font-size: 18px;
  line-height: 1.75;
  color: var(--text2);
  font-weight: 400;
  border-left: 4px solid var(--pink);
  padding-left: 20px;
  margin-bottom: 36px;
}

/* Prose */
.post-content h2 {
  font-size: 22px;
  font-weight: 800;
  color: var(--text);
  letter-spacing: -.5px;
  margin: 40px 0 16px;
  padding-top: 8px;
  scroll-margin-top: 100px;
}
.post-content p {
  font-size: 15.5px;
  line-height: 1.8;
  color: var(--text2);
  margin-bottom: 18px;
}
.post-content p strong { color: var(--text); font-weight: 700; }
.post-content ul, .post-content ol {
  padding-left: 20px;
  margin-bottom: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.post-content li {
  font-size: 15px;
  line-height: 1.7;
  color: var(--text2);
}
.post-content li strong { color: var(--text); font-weight: 700; }
.post-content ul li::marker { color: var(--pink); }

/* Info boxes */
.post-infobox {
  display: flex;
  gap: 16px;
  padding: 18px 20px;
  border-radius: 16px;
  margin: 24px 0;
  font-size: 14.5px;
  line-height: 1.65;
  color: var(--text2);
}
.post-infobox strong { color: var(--text); font-weight: 700; }
.post-infobox__ico {
  font-size: 20px;
  flex-shrink: 0;
  margin-top: 2px;
}
.post-infobox--tip {
  background: rgba(255,0,128,.06);
  border: 1.5px solid rgba(255,0,128,.16);
}
.post-infobox--tip .post-infobox__ico { color: var(--pink); }
.post-infobox--warn {
  background: rgba(245,158,11,.07);
  border: 1.5px solid rgba(245,158,11,.22);
}
.post-infobox--warn .post-infobox__ico { color: #f59e0b; }

/* Numbered steps */
.post-steps {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 24px 0;
}
.post-step {
  display: flex;
  gap: 18px;
  padding: 18px 20px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: 16px;
  transition: border-color .15s, box-shadow .15s;
}
.post-step:hover { border-color: rgba(255,0,128,.25); box-shadow: 0 4px 16px rgba(255,0,128,.08); }
.post-step__num {
  font-size: 22px;
  font-weight: 900;
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  flex-shrink: 0;
  line-height: 1;
  padding-top: 2px;
  min-width: 32px;
}
.post-step__body strong {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 5px;
}
.post-step__body p {
  font-size: 13.5px;
  color: var(--text3);
  line-height: 1.6;
  margin: 0;
}

/* Blockquote */
.post-quote {
  margin: 28px 0;
  padding: 24px 28px;
  background: var(--bg-alt);
  border-left: 4px solid var(--pink);
  border-radius: 0 16px 16px 0;
  position: relative;
}
.post-quote::before {
  content: '\201C';
  font-size: 72px;
  line-height: 1;
  color: rgba(255,0,128,.12);
  position: absolute;
  top: 8px;
  left: 16px;
  font-family: Georgia, serif;
}
.post-quote p {
  font-size: 16px;
  font-style: italic;
  color: var(--text);
  font-weight: 500;
  line-height: 1.7;
  margin: 0 0 10px;
  padding-left: 32px;
}
.post-quote cite {
  font-size: 13px;
  color: var(--text3);
  font-style: normal;
  padding-left: 32px;
}

/* Table */
.post-table-wrap {
  overflow-x: auto;
  margin: 24px 0;
  border-radius: 16px;
  border: 1.5px solid var(--border);
  box-shadow: var(--shadow-xs);
}
.post-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
.post-table thead tr { background: var(--bg-alt); }
.post-table th {
  text-align: left;
  padding: 12px 18px;
  font-size: 12px;
  font-weight: 700;
  color: var(--text2);
  text-transform: uppercase;
  letter-spacing: .5px;
  border-bottom: 1.5px solid var(--border);
}
.post-table td {
  padding: 12px 18px;
  color: var(--text2);
  border-bottom: 1px solid var(--border);
}
.post-table tbody tr:last-child td { border-bottom: none; }
.post-table tbody tr:hover td { background: var(--bg-alt); }
.post-table__score {
  display: inline-block;
  padding: 3px 11px;
  border-radius: 99px;
  font-size: 12px;
  font-weight: 700;
}
.post-table__score--top  { background: rgba(255,0,128,.1); color: var(--pink); border: 1px solid rgba(255,0,128,.2); }
.post-table__score--hi   { background: rgba(34,197,94,.1); color: #16a34a; border: 1px solid rgba(34,197,94,.22); }
.post-table__score--mid  { background: rgba(245,158,11,.1); color: #b45309; border: 1px solid rgba(245,158,11,.22); }

/* Metrics */
.post-metrics {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin: 24px 0;
}
.post-metric {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: 16px;
}
.post-metric__ico {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
  color: #fff;
}
.post-metric__ico--reach  { background: linear-gradient(135deg, var(--pink), var(--purple)); }
.post-metric__ico--engage { background: linear-gradient(135deg, #ef4444, #dc2626); }
.post-metric__ico--save   { background: linear-gradient(135deg, #f59e0b, #d97706); }
.post-metric__ico--share  { background: linear-gradient(135deg, #0088CC, #005f8e); }
.post-metric strong { display: block; font-size: 14px; font-weight: 700; color: var(--text); }
.post-metric span   { font-size: 12px; color: var(--text3); margin-top: 2px; }

/* CTA box */
.post-cta-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 24px;
  background: linear-gradient(135deg, rgba(255,0,128,.06), rgba(121,40,202,.06));
  border: 1.5px solid rgba(255,0,128,.2);
  border-radius: 20px;
  margin: 32px 0;
  flex-wrap: wrap;
}
.post-cta-box__left {
  display: flex;
  align-items: center;
  gap: 16px;
}
.post-cta-box__ico {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: linear-gradient(135deg, #f09433, #e6683c, #dc2743, #cc2366);
  color: #fff;
  font-size: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.post-cta-box__left strong { display: block; font-size: 15px; font-weight: 700; color: var(--text); }
.post-cta-box__left span   { font-size: 13px; color: var(--text3); margin-top: 3px; }
.post-cta-box__btn { white-space: nowrap; }

/* Tags */
.post-tags {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 36px 0 0;
  padding-top: 28px;
  border-top: 1.5px solid var(--border);
}
.post-tags__label { font-size: 13px; color: var(--text3); font-weight: 600; }

/* Share bars */
.post-share {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.post-share--top {
  margin-bottom: 28px;
  padding-bottom: 24px;
  border-bottom: 1.5px solid var(--border);
}
.post-share--bottom {
  margin-top: 32px;
  flex-direction: column;
  align-items: flex-start;
}
.post-share__label {
  font-size: 12.5px;
  font-weight: 700;
  color: var(--text3);
  text-transform: uppercase;
  letter-spacing: .5px;
  margin-right: 4px;
}
.post-share--bottom .post-share__label { margin-bottom: 10px; font-size: 14px; color: var(--text2); text-transform: none; letter-spacing: 0; }
.post-share__btns { display: flex; flex-wrap: wrap; gap: 8px; }
.post-share-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 16px;
  border-radius: 99px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  border: 1.5px solid var(--border);
  background: var(--surface);
  color: var(--text2);
  text-decoration: none;
  transition: background .15s, color .15s, border-color .15s, transform .15s;
}
.post-share-btn:hover { transform: translateY(-2px); }
.post-share--top .post-share-btn { padding: 8px 12px; }
.post-share-btn--x:hover    { background: #000; color: #fff; border-color: #000; }
.post-share-btn--wa:hover   { background: #25D366; color: #fff; border-color: #25D366; }
.post-share-btn--tg:hover   { background: #0088CC; color: #fff; border-color: #0088CC; }
.post-share-btn--copy:hover { background: var(--pink); color: #fff; border-color: var(--pink); }
.post-share-btn--copy.copied { background: #22c55e; color: #fff; border-color: #22c55e; }

/* Author Card */
.post-author-card {
  display: flex;
  gap: 20px;
  padding: 28px;
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: 20px;
  margin-top: 40px;
  box-shadow: var(--shadow-xs);
}
.post-author-card__av {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--g-brand);
  color: #fff;
  font-size: 20px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: var(--shadow-pink);
}
.post-author-card__name { font-size: 17px; font-weight: 800; color: var(--text); letter-spacing: -.3px; }
.post-author-card__role { font-size: 13px; color: var(--pink); font-weight: 600; margin-top: 3px; }
.post-author-card__bio  { font-size: 14px; color: var(--text3); line-height: 1.65; margin: 12px 0; }
.post-author-card__socials { display: flex; gap: 8px; }
.post-author-card__socials a {
  width: 34px; height: 34px; border-radius: 10px;
  background: var(--bg-alt); border: 1.5px solid var(--border);
  color: var(--text3); display: flex; align-items: center;
  justify-content: center; font-size: 15px;
  transition: background .15s, color .15s, border-color .15s;
}
.post-author-card__socials a:hover { background: var(--pink); color: #fff; border-color: transparent; }

/* ── Sidebar ── */
.post-sidebar {
  position: sticky;
  top: 90px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* TOC */
.post-toc {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: 18px;
  overflow: hidden;
}
.post-toc--mobile { display: none; margin: 0 0 32px; }
.post-toc__head {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 14px 18px;
  font-size: 13px;
  font-weight: 700;
  color: var(--text2);
  text-transform: uppercase;
  letter-spacing: .5px;
  border-bottom: 1px solid var(--border);
  background: var(--bg-alt);
}
.post-toc__head i { color: var(--pink); }
.post-toc__list {
  padding: 10px 0;
  list-style: decimal;
  padding-left: 0;
  counter-reset: toc;
}
.post-toc__list li {
  counter-increment: toc;
  display: flex;
  align-items: baseline;
  gap: 0;
}
.post-toc__list li::before {
  content: counter(toc) '.';
  font-size: 11px;
  font-weight: 700;
  color: var(--text3);
  padding: 8px 0 8px 18px;
  min-width: 36px;
  flex-shrink: 0;
}
.post-toc__list a {
  display: block;
  padding: 8px 18px 8px 0;
  font-size: 13px;
  font-weight: 500;
  color: var(--text3);
  transition: color .15s, padding-left .15s;
  border-left: 2px solid transparent;
  flex: 1;
}
.post-toc__list a:hover { color: var(--pink); }
.post-toc__list a.active { color: var(--pink); font-weight: 700; border-left-color: var(--pink); padding-left: 8px; }

/* Progress card */
.post-progress-card {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: 14px;
  padding: 14px 18px;
}
.post-progress-card__label {
  display: flex;
  justify-content: space-between;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--text3);
  margin-bottom: 10px;
}
.post-progress-card__bar {
  height: 6px;
  background: var(--bg-alt);
  border-radius: 99px;
  overflow: hidden;
}
.post-progress-card__fill {
  height: 100%;
  width: 0%;
  background: var(--g-brand);
  border-radius: 99px;
  transition: width .2s ease;
}

/* Sidebar CTA */
.post-sidebar-cta {
  background: linear-gradient(135deg, rgba(255,0,128,.07), rgba(121,40,202,.07));
  border: 1.5px solid rgba(255,0,128,.18);
  border-radius: 18px;
  padding: 20px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.post-sidebar-cta__ico {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  background: linear-gradient(135deg, #f09433, #e6683c, #dc2743, #cc2366);
  color: #fff;
  font-size: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 20px rgba(225,48,108,.35);
  margin-bottom: 4px;
}
.post-sidebar-cta strong { font-size: 15px; font-weight: 800; color: var(--text); letter-spacing: -.3px; }
.post-sidebar-cta p { font-size: 12.5px; color: var(--text3); margin: 0; }
.post-sidebar-cta__btn { width: 100%; justify-content: center; margin-top: 6px; }

/* Sidebar Newsletter */
.post-sidebar-nl {
  background: var(--surface);
  border: 1.5px solid var(--border);
  border-radius: 18px;
  padding: 18px;
}
.post-sidebar-nl__head {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 800;
  color: var(--text);
  margin-bottom: 6px;
}
.post-sidebar-nl__head i { color: var(--pink); }
.post-sidebar-nl p { font-size: 13px; color: var(--text3); margin-bottom: 12px; }
.post-sidebar-nl__form { display: flex; flex-direction: column; gap: 8px; }
.post-sidebar-nl__form input {
  width: 100%;
  height: 40px;
  padding: 0 12px;
  background: var(--bg-alt);
  border: 1.5px solid var(--border);
  border-radius: 10px;
  font-size: 13.5px;
  font-weight: 500;
  color: var(--text);
  font-family: inherit;
  outline: none;
  transition: border-color .2s;
}
.post-sidebar-nl__form input:focus { border-color: var(--pink); }
.post-sidebar-nl__form input::placeholder { color: var(--text3); font-weight: 400; }
.post-sidebar-nl__form button {
  width: 100%;
  height: 40px;
  border-radius: 10px;
  background: var(--g-brand);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  font-family: inherit;
  border: none;
  cursor: pointer;
  transition: opacity .15s;
}
.post-sidebar-nl__form button:hover { opacity: .9; }
.post-sidebar-nl__success {
  font-size: 13.5px;
  font-weight: 600;
  color: #22c55e;
  display: flex;
  align-items: center;
  gap: 7px;
}

/* ── Related Posts ── */
.post-related { padding: 0 0 72px; }
.post-related__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
}
.post-related__title { font-size: 22px; font-weight: 800; color: var(--text); letter-spacing: -.5px; }
.post-related__all {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 14px;
  font-weight: 700;
  color: var(--pink);
  transition: gap .15s;
}
.post-related__all:hover { gap: 11px; }
.post-related__grid { grid-template-columns: repeat(3, 1fr) !important; }

/* ── Responsive ── */
@media (max-width: 1024px) {
  .post-body__grid { grid-template-columns: 1fr 260px; gap: 32px; }
}
@media (max-width: 820px) {
  .post-body__grid { grid-template-columns: 1fr; }
  .post-sidebar { position: static; display: none; }
  .post-toc--mobile { display: block; }
  .post-hero__thumb { height: 300px; }
  .post-related__grid { grid-template-columns: repeat(2, 1fr) !important; }
  .post-metrics { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .post-hero__thumb { height: 240px; }
  .post-hero__title { font-size: 20px; }
  .post-hero__meta-right { display: none; }
  .post-hero__inner { padding: 16px 0 22px; }
  .post-hero__pill { font-size: 11.5px; padding: 4px 10px; }
  .post-lead { font-size: 16px; }
  .post-content h2 { font-size: 19px; }
  .post-cta-box { flex-direction: column; }
  .post-author-card { flex-direction: column; }
  .post-related__grid { grid-template-columns: 1fr !important; }
}

/* ── Reactions ── */
.post-reactions {
  padding: 28px 0;
  border-bottom: 1px solid var(--border);
  margin-bottom: 8px;
}
.post-reactions__label {
  font-size: 13px;
  font-weight: 600;
  color: var(--text2);
  margin-bottom: 14px;
}
.post-reactions__row { display: flex; gap: 10px; flex-wrap: wrap; }
.reaction-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 16px;
  border-radius: 99px;
  border: 1.5px solid var(--border);
  background: var(--surface);
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
  color: var(--text2);
  transition: border-color .2s, background .2s, color .2s, transform .15s;
  line-height: 1;
}
.reaction-btn:hover {
  border-color: var(--pink);
  background: color-mix(in srgb, var(--pink) 7%, var(--surface));
  color: var(--text);
  transform: translateY(-2px) scale(1.04);
}
.reaction-btn.active,
.reaction-btn.reacted {
  border-color: var(--pink);
  background: color-mix(in srgb, var(--pink) 12%, var(--surface));
  color: var(--pink);
  transform: translateY(-2px) scale(1.06);
}
.reaction-emoji { font-size: 19px; line-height: 1; }
.reaction-count { font-variant-numeric: tabular-nums; }

/* ── Rating Box ── */
.post-rating-box {
  display: flex;
  align-items: center;
  gap: 28px;
  padding: 22px 24px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
  margin: 24px 0 32px;
  flex-wrap: wrap;
}
.post-rating-box__left {
  display: flex;
  align-items: center;
  gap: 16px;
}
.post-rating-box__score {
  font-size: 42px;
  font-weight: 900;
  color: var(--text);
  line-height: 1;
}
.post-rating-box__stars {
  display: flex;
  gap: 2px;
  font-size: 17px;
  color: #fbbf24;
  margin-bottom: 4px;
}
.post-rating-box__votes { font-size: 12px; color: var(--text3); }
.post-rating-box__right { flex: 1; min-width: 160px; }
.post-rating-box__prompt {
  font-size: 13px;
  font-weight: 600;
  color: var(--text2);
  margin-bottom: 10px;
}
.post-rating-stars { display: flex; gap: 5px; }
.r-star {
  background: none;
  border: none;
  font-size: 30px;
  cursor: pointer;
  color: var(--border2);
  transition: color .15s, transform .15s;
  line-height: 1;
  padding: 0;
}
.r-star:hover, .r-star.hov { color: #fbbf24; transform: scale(1.15); }
.r-star.active { color: #fbbf24; }
.post-rating-box__thanks {
  font-size: 14px;
  font-weight: 600;
  color: #22c55e;
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
}

/* ── Comments ── */
.post-comments { margin-top: 40px; }
.post-comments__head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 28px;
  padding-bottom: 18px;
  border-bottom: 2px solid var(--border);
}
.post-comments__head h3 {
  font-size: 20px;
  font-weight: 800;
  color: var(--text);
  margin: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}
.post-comments__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--g-brand);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  min-width: 26px;
  height: 26px;
  border-radius: 99px;
  padding: 0 6px;
}
.comment-list {
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.comment {
  display: flex;
  gap: 14px;
}
.comment--reply {
  margin-top: 12px;
  padding-left: 14px;
  border-left: 2px solid var(--border);
}
.comment-replies { margin-top: 12px; display: flex; flex-direction: column; gap: 0; }
.comment__reply-btn {
  background: none; border: none; cursor: pointer;
  font-size: 12px; color: var(--text3); padding: 0 4px;
  display: inline-flex; align-items: center; gap: 4px;
  transition: color .15s;
}
.comment__reply-btn:hover { color: #FF0080; }
.comment-reply-form { margin-top: 10px; padding: 10px; background: var(--surface3); border-radius: 8px; }
.comment__av {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(0,0,0,.15);
}
.comment--reply .comment__av { width: 34px; height: 34px; font-size: 11px; }
.comment__body { flex: 1; min-width: 0; }
.comment__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}
.comment__head strong {
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
  display: flex;
  align-items: center;
  gap: 7px;
  flex-wrap: wrap;
}
.comment__date {
  font-size: 12px;
  color: var(--text3);
  display: block;
  margin-top: 3px;
}
.comment__stars { font-size: 13px; flex-shrink: 0; }
.comment__author-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  background: var(--g-brand);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  border-radius: 99px;
  letter-spacing: .2px;
}
.comment__body > p {
  font-size: 14px;
  color: var(--text2);
  line-height: 1.75;
  margin: 0;
}
.comment__foot {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}
.comment__like {
  background: none;
  border: 1px solid var(--border);
  cursor: pointer;
  font-size: 12.5px;
  color: var(--text3);
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 11px;
  border-radius: 99px;
  transition: border-color .2s, color .2s, background .2s;
}
.comment__like:hover {
  border-color: var(--pink);
  color: var(--pink);
}
.comment__like.liked {
  border-color: var(--pink);
  color: var(--pink);
  background: color-mix(in srgb, var(--pink) 8%, var(--surface));
}
.comment__reply-btn {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 12px;
  color: var(--text3);
  font-weight: 500;
  padding: 0;
  transition: color .2s;
}
.comment__reply-btn:hover { color: var(--pink); }

/* ── Comment Form ── */
.comment-form {
  margin-top: 36px;
  padding: 28px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
}
.comment-form__title {
  font-size: 17px;
  font-weight: 800;
  color: var(--text);
  margin: 0 0 22px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.comment-form__title i { color: var(--pink); }
.comment-form__stars {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 6px;
}
.cf-star {
  background: none;
  border: none;
  font-size: 26px;
  cursor: pointer;
  color: var(--border2);
  transition: color .15s, transform .15s;
  padding: 0;
  line-height: 1;
}
.cf-star:hover, .cf-star.hov { color: #fbbf24; transform: scale(1.12); }
.cf-star.active { color: #fbbf24; }
.cf-star-label {
  font-size: 12px;
  color: var(--text2);
  margin-left: 8px;
  font-weight: 500;
}
.cf-submit { width: 100%; margin-top: 10px; }

/* ============================================================
   SSS — SIKÇA SORULAN SORULAR
============================================================ */

/* ── Hero ── */
.sss-hero {
  background: var(--g-brand);
  padding: 64px 0 72px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.sss-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") repeat;
}
.sss-hero__inner {
  position: relative;
  max-width: 680px;
  margin: 0 auto;
}
.sss-hero__ico-wrap {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: rgba(255,255,255,.15);
  backdrop-filter: blur(8px);
  border: 1.5px solid rgba(255,255,255,.3);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  color: #fff;
  margin-bottom: 20px;
}
.sss-hero__title {
  font-size: clamp(28px, 5vw, 44px);
  font-weight: 900;
  color: #fff;
  letter-spacing: -1px;
  line-height: 1.15;
  margin-bottom: 14px;
}
.sss-hero__title .gradient-text {
  background: linear-gradient(135deg, #ffe1f5, #ffffff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.sss-hero__desc {
  font-size: 16px;
  color: rgba(255,255,255,.82);
  margin-bottom: 32px;
  line-height: 1.7;
}
.sss-search {
  position: relative;
  display: flex;
  align-items: center;
  background: rgba(255,255,255,.12);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1.5px solid rgba(255,255,255,.3);
  border-radius: 99px;
  padding: 0 20px;
  transition: background .2s, border-color .2s;
}
.sss-search:focus-within {
  background: rgba(255,255,255,.2);
  border-color: rgba(255,255,255,.6);
}
.sss-search__ico {
  color: rgba(255,255,255,.7);
  font-size: 15px;
  flex-shrink: 0;
  margin-right: 10px;
}
.sss-search__input {
  flex: 1;
  background: none;
  border: none;
  outline: none;
  font-family: inherit;
  font-size: 15px;
  font-weight: 500;
  color: #fff;
  padding: 15px 0;
}
.sss-search__input::placeholder { color: rgba(255,255,255,.55); }
.sss-search__clear {
  background: rgba(255,255,255,.2);
  border: none;
  border-radius: 50%;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #fff;
  font-size: 12px;
  flex-shrink: 0;
  transition: background .2s;
}
.sss-search__clear:hover { background: rgba(255,255,255,.35); }
.sss-hero__stats {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  margin-top: 24px;
}
.sss-hero__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
}
.sss-hero__stat strong {
  font-size: 20px;
  font-weight: 800;
  color: #fff;
}
.sss-hero__stat span {
  font-size: 12px;
  color: rgba(255,255,255,.65);
  font-weight: 500;
}
.sss-hero__stat-sep {
  width: 1px;
  height: 28px;
  background: rgba(255,255,255,.2);
}

/* ── Layout ── */
.sss-body { padding: 56px 0 72px; }
.sss-layout {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 48px;
  align-items: start;
}

/* ── Sidebar nav ── */
.sss-nav {
  position: sticky;
  top: 84px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: 16px 10px;
}
.sss-nav__label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .6px;
  text-transform: uppercase;
  color: var(--text3);
  padding: 4px 10px 10px;
}
.sss-nav__item {
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  padding: 9px 12px;
  border-radius: var(--r-s);
  border: none;
  background: none;
  cursor: pointer;
  font-family: inherit;
  font-size: 13.5px;
  font-weight: 500;
  color: var(--text2);
  text-align: left;
  transition: background .15s, color .15s;
}
.sss-nav__item i { width: 16px; text-align: center; font-size: 13px; }
.sss-nav__item:hover { background: var(--bg-alt); color: var(--text); }
.sss-nav__item.active {
  background: color-mix(in srgb, var(--pink) 10%, var(--surface));
  color: var(--pink);
  font-weight: 700;
}
.sss-nav__count {
  margin-left: auto;
  font-size: 11px;
  font-weight: 700;
  background: var(--bg-alt);
  color: var(--text3);
  padding: 2px 7px;
  border-radius: 99px;
  min-width: 22px;
  text-align: center;
}
.sss-nav__item.active .sss-nav__count {
  background: color-mix(in srgb, var(--pink) 15%, var(--surface));
  color: var(--pink);
}
.sss-nav__divider {
  height: 1px;
  background: var(--border);
  margin: 12px 0;
}
.sss-nav__cta {
  padding: 12px 10px 4px;
  text-align: center;
}
.sss-nav__cta p {
  font-size: 12px;
  color: var(--text3);
  margin-bottom: 10px;
}
.sss-nav__cta-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 13px;
  padding: 9px 14px;
  width: 100%;
}

/* ── Mobile category pills ── */
.sss-cat-pills {
  display: none;
  gap: 8px;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding-bottom: 4px;
  margin-bottom: 24px;
  scrollbar-width: none;
}
.sss-cat-pills::-webkit-scrollbar { display: none; }
.sss-cat-pill {
  display: inline-flex;
  align-items: center;
  padding: 7px 16px;
  border-radius: 99px;
  border: 1.5px solid var(--border);
  background: var(--surface);
  font-family: inherit;
  font-size: 13px;
  font-weight: 600;
  color: var(--text2);
  cursor: pointer;
  white-space: nowrap;
  transition: border-color .2s, color .2s, background .2s;
}
.sss-cat-pill:hover { border-color: var(--pink); color: var(--text); }
.sss-cat-pill.active {
  border-color: var(--pink);
  background: color-mix(in srgb, var(--pink) 10%, var(--surface));
  color: var(--pink);
}

/* ── Empty state ── */
.sss-empty {
  text-align: center;
  padding: 64px 24px;
}
.sss-empty i {
  font-size: 48px;
  color: var(--text3);
  margin-bottom: 16px;
}
.sss-empty p {
  font-size: 15px;
  color: var(--text2);
  margin-bottom: 20px;
}

/* ── FAQ Groups ── */
.faq-group {
  margin-bottom: 48px;
}
.faq-group__head {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 2px solid var(--border);
}
.faq-group__ico {
  width: 44px;
  height: 44px;
  border-radius: var(--r-s);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: #fff;
  flex-shrink: 0;
}
.faq-group__ico--genel   { background: var(--g-brand); }
.faq-group__ico--odeme   { background: linear-gradient(135deg, #22c55e, #16a34a); }
.faq-group__ico--siparis { background: linear-gradient(135deg, #f59e0b, #d97706); }
.faq-group__ico--hesap   { background: linear-gradient(135deg, #3b82f6, #1d4ed8); }
.faq-group__ico--guvenlik{ background: linear-gradient(135deg, #6366f1, #4338ca); }
.faq-group__ico--teknik  { background: linear-gradient(135deg, #64748b, #475569); }

.faq-group__title {
  font-size: 19px;
  font-weight: 800;
  color: var(--text);
  margin: 0 0 3px;
}
.faq-group__sub {
  font-size: 13px;
  color: var(--text3);
  margin: 0;
}

/* ── FAQ List ── */
.faq-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.faq-item {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
  overflow: hidden;
  transition: border-color .2s, box-shadow .2s;
}
.faq-item:hover { border-color: var(--border2); }
.faq-item.open  { border-color: var(--pink); box-shadow: 0 0 0 3px color-mix(in srgb, var(--pink) 10%, transparent); }

.faq-q {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  background: none;
  border: none;
  cursor: pointer;
  font-family: inherit;
  font-size: 14.5px;
  font-weight: 600;
  color: var(--text);
  text-align: left;
  transition: color .2s;
}
.faq-q:hover { color: var(--pink); }
.faq-item.open .faq-q { color: var(--pink); }
.faq-chev {
  font-size: 12px;
  color: var(--text3);
  transition: transform .25s var(--ease-spring), color .2s;
  flex-shrink: 0;
}
.faq-item.open .faq-chev {
  transform: rotate(180deg);
  color: var(--pink);
}

.faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height .35s ease, padding .3s ease;
  padding: 0 20px;
}
.faq-item.open .faq-a {
  max-height: 800px;
  padding: 0 20px 20px;
}
.faq-a p {
  font-size: 14px;
  color: var(--text2);
  line-height: 1.8;
  margin: 0 0 10px;
}
.faq-a p:last-child { margin-bottom: 0; }
.faq-a ul, .faq-a ol {
  padding-left: 20px;
  margin: 6px 0 10px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.faq-a li {
  font-size: 14px;
  color: var(--text2);
  line-height: 1.7;
}

/* ── SSS CTA ── */
.sss-cta { padding: 0 0 64px; }
.sss-cta__card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 32px 36px;
  background: var(--g-brand);
  border-radius: var(--r-l);
  position: relative;
  overflow: hidden;
  flex-wrap: wrap;
}
.sss-cta__card::before {
  content: '';
  position: absolute;
  top: -40px;
  right: -40px;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: rgba(255,255,255,.06);
}
.sss-cta__left {
  display: flex;
  align-items: center;
  gap: 20px;
  position: relative;
}
.sss-cta__ico {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(255,255,255,.15);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: #fff;
  flex-shrink: 0;
}
.sss-cta__title {
  font-size: 20px;
  font-weight: 800;
  color: #fff;
  margin: 0 0 6px;
}
.sss-cta__desc {
  font-size: 13.5px;
  color: rgba(255,255,255,.78);
  margin: 0;
}
.sss-cta__btns {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  position: relative;
}
.sss-cta__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 20px;
  border-radius: 99px;
  font-size: 13.5px;
  font-weight: 700;
  text-decoration: none;
  transition: opacity .2s, transform .15s;
  white-space: nowrap;
}
.sss-cta__btn:hover { opacity: .88; transform: translateY(-1px); }
.sss-cta__btn--wa   { background: #25D366; color: #fff; }
.sss-cta__btn--tg   { background: #229ED9; color: #fff; }
.sss-cta__btn--mail { background: rgba(255,255,255,.18); color: #fff; border: 1.5px solid rgba(255,255,255,.35); }
.sss-cta__btn--mail:hover { background: rgba(255,255,255,.28); opacity: 1; }

/* ── Responsive ── */
@media (max-width: 860px) {
  .sss-layout { grid-template-columns: 1fr; gap: 0; }
  .sss-nav { display: none; }
  .sss-cat-pills { display: flex; }
}
@media (max-width: 600px) {
  .sss-hero { padding: 44px 0 52px; }
  .sss-hero__stats { gap: 16px; }
  .sss-body { padding: 36px 0 56px; }
  .sss-cta__card { padding: 24px 20px; }
  .sss-cta__left { flex-direction: column; align-items: flex-start; gap: 12px; }
  .sss-cta__btns { width: 100%; }
  .sss-cta__btn { flex: 1; justify-content: center; }
}

/* ============================================================
   LEGAL PAGES — Gizlilik / Kullanım Şartları
============================================================ */

/* ── Hero ── */
.legal-hero {
  background: linear-gradient(135deg, #0F1629 0%, #1a2545 100%);
  padding: 60px 0 68px;
  position: relative;
  overflow: hidden;
}
.legal-hero::before {
  content: '';
  position: absolute;
  top: -80px; right: -80px;
  width: 360px; height: 360px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,0,128,.18) 0%, transparent 70%);
}
.legal-hero::after {
  content: '';
  position: absolute;
  bottom: -60px; left: -60px;
  width: 260px; height: 260px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(121,40,202,.15) 0%, transparent 70%);
}
.legal-hero__inner {
  position: relative;
  max-width: 700px;
}
.legal-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px 14px;
  background: rgba(255,0,128,.15);
  border: 1px solid rgba(255,0,128,.35);
  border-radius: 99px;
  font-size: 12px;
  font-weight: 700;
  color: #ff80c0;
  letter-spacing: .3px;
  margin-bottom: 18px;
}
.legal-hero__title {
  font-size: clamp(28px, 4.5vw, 42px);
  font-weight: 900;
  color: #fff;
  letter-spacing: -1px;
  line-height: 1.15;
  margin-bottom: 14px;
}
.legal-hero__desc {
  font-size: 15.5px;
  color: rgba(255,255,255,.65);
  line-height: 1.75;
  margin-bottom: 24px;
  max-width: 560px;
}
.legal-hero__meta {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.legal-hero__meta-item {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 12.5px;
  color: rgba(255,255,255,.5);
}
.legal-hero__meta-item i { color: rgba(255,255,255,.35); }

/* ── Layout ── */
.legal-body { padding: 56px 0 80px; }
.legal-layout {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 52px;
  align-items: start;
}

/* ── TOC Sidebar ── */
.legal-toc {
  position: sticky;
  top: 84px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: 20px 14px;
}
.legal-toc__label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .6px;
  text-transform: uppercase;
  color: var(--text3);
  padding: 0 6px 12px;
}
.legal-toc__list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.legal-toc__link {
  display: block;
  padding: 7px 10px;
  border-radius: var(--r-s);
  font-size: 13px;
  font-weight: 500;
  color: var(--text2);
  text-decoration: none;
  transition: background .15s, color .15s;
  border-left: 2px solid transparent;
}
.legal-toc__link:hover { background: var(--bg-alt); color: var(--text); }
.legal-toc__link.active {
  background: color-mix(in srgb, var(--pink) 8%, var(--surface));
  color: var(--pink);
  font-weight: 600;
  border-left-color: var(--pink);
}
.legal-toc__divider {
  height: 1px;
  background: var(--border);
  margin: 14px 0;
}
.legal-toc__contact {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px;
  border-radius: var(--r-s);
  font-size: 12.5px;
  color: var(--text2);
  text-decoration: none;
  background: var(--bg-alt);
  transition: background .15s, color .15s;
}
.legal-toc__contact:hover { background: color-mix(in srgb, var(--pink) 8%, var(--surface)); color: var(--pink); }
.legal-toc__contact i { color: var(--pink); }

/* ── Content ── */
.legal-content { min-width: 0; }

/* ── Section ── */
.legal-section {
  margin-bottom: 52px;
  scroll-margin-top: 100px;
}
.legal-section__head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 2px solid var(--border);
}
.legal-section__num {
  font-size: 13px;
  font-weight: 800;
  color: var(--pink);
  background: color-mix(in srgb, var(--pink) 10%, var(--surface));
  border: 1px solid color-mix(in srgb, var(--pink) 20%, transparent);
  padding: 4px 10px;
  border-radius: 99px;
  letter-spacing: .5px;
  flex-shrink: 0;
}
.legal-section__title {
  font-size: 20px;
  font-weight: 800;
  color: var(--text);
  margin: 0;
}
.legal-content p {
  font-size: 14.5px;
  color: var(--text2);
  line-height: 1.85;
  margin: 0 0 14px;
}
.legal-content ul, .legal-content ol {
  padding-left: 20px;
  margin: 8px 0 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.legal-content li {
  font-size: 14.5px;
  color: var(--text2);
  line-height: 1.75;
}

/* ── Info boxes ── */
.legal-infobox {
  display: flex;
  gap: 14px;
  padding: 16px 18px;
  border-radius: var(--r);
  margin: 20px 0;
  font-size: 14px;
  line-height: 1.7;
}
.legal-infobox > i {
  font-size: 16px;
  flex-shrink: 0;
  margin-top: 2px;
}
.legal-infobox strong { display: block; margin-bottom: 4px; font-size: 14px; }
.legal-infobox p { margin: 0; font-size: 13.5px; }
.legal-infobox--info {
  background: color-mix(in srgb, #3b82f6 8%, var(--surface));
  border: 1px solid color-mix(in srgb, #3b82f6 25%, transparent);
  color: var(--text2);
}
.legal-infobox--info > i, .legal-infobox--info strong { color: #3b82f6; }
.legal-infobox--success {
  background: color-mix(in srgb, #22c55e 8%, var(--surface));
  border: 1px solid color-mix(in srgb, #22c55e 25%, transparent);
  color: var(--text2);
}
.legal-infobox--success > i, .legal-infobox--success strong { color: #16a34a; }
.legal-infobox--warn {
  background: color-mix(in srgb, #f59e0b 8%, var(--surface));
  border: 1px solid color-mix(in srgb, #f59e0b 25%, transparent);
  color: var(--text2);
}
.legal-infobox--warn > i, .legal-infobox--warn strong { color: #d97706; }

/* ── Info card (contact details) ── */
.legal-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
  overflow: hidden;
  margin: 16px 0;
}
.legal-card__row {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 13px 18px;
  border-bottom: 1px solid var(--border);
  font-size: 14px;
  color: var(--text);
}
.legal-card__row:last-child { border-bottom: none; }
.legal-card__label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--text2);
  min-width: 160px;
  flex-shrink: 0;
}
.legal-card__label i { color: var(--pink); width: 14px; text-align: center; }
.legal-card__row a { color: var(--pink); text-decoration: none; }
.legal-card__row a:hover { text-decoration: underline; }

/* ── Data category grid ── */
.legal-data-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin: 18px 0;
}
.legal-data-card {
  display: flex;
  gap: 14px;
  padding: 16px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
}
.legal-data-card__ico {
  width: 38px;
  height: 38px;
  border-radius: var(--r-s);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 15px;
  flex-shrink: 0;
}
.legal-data-card__body strong {
  display: block;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 8px;
}
.legal-data-card__body ul {
  margin: 0;
  padding-left: 16px;
  gap: 3px;
}
.legal-data-card__body li {
  font-size: 12.5px;
  color: var(--text2);
}

/* ── Use purpose list ── */
.legal-use-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 18px 0;
}
.legal-use-item {
  display: flex;
  gap: 16px;
  padding: 16px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
}
.legal-use-item__ico {
  width: 40px;
  height: 40px;
  border-radius: var(--r-s);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: #fff;
  flex-shrink: 0;
}
.legal-use-item__ico--purple { background: var(--g-brand); }
.legal-use-item__ico--blue   { background: linear-gradient(135deg,#3b82f6,#1d4ed8); }
.legal-use-item__ico--green  { background: linear-gradient(135deg,#22c55e,#16a34a); }
.legal-use-item__ico--orange { background: linear-gradient(135deg,#f59e0b,#d97706); }
.legal-use-item__ico--pink   { background: linear-gradient(135deg,#ec4899,#db2777); }
.legal-use-item > div strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 4px;
}
.legal-use-item > div p {
  margin: 0;
  font-size: 13.5px;
  color: var(--text2);
}

/* ── Share list ── */
.legal-share-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 18px 0;
}
.legal-share-item {
  display: flex;
  gap: 16px;
  padding: 16px 18px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
  align-items: flex-start;
}
.legal-share-item > i {
  font-size: 16px;
  color: var(--pink);
  margin-top: 2px;
  width: 18px;
  flex-shrink: 0;
}
.legal-share-item strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 4px;
}
.legal-share-item p { margin: 0; font-size: 13.5px; color: var(--text2); }

/* ── Security grid ── */
.legal-security-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin: 18px 0;
}
.legal-sec-card {
  padding: 18px 16px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
  text-align: center;
  transition: border-color .2s, box-shadow .2s;
}
.legal-sec-card:hover {
  border-color: var(--pink);
  box-shadow: 0 4px 16px color-mix(in srgb, var(--pink) 12%, transparent);
}
.legal-sec-card > i {
  font-size: 24px;
  color: var(--pink);
  margin-bottom: 10px;
}
.legal-sec-card strong {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 6px;
}
.legal-sec-card p {
  font-size: 12.5px;
  color: var(--text3);
  margin: 0;
  line-height: 1.6;
}

/* ── Rights grid ── */
.legal-rights-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin: 18px 0;
}
.legal-right-card {
  padding: 20px 16px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r);
  text-align: center;
}
.legal-right-card__ico {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--pink) 10%, var(--surface));
  border: 1px solid color-mix(in srgb, var(--pink) 20%, transparent);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: var(--pink);
  margin: 0 auto 12px;
}
.legal-right-card strong {
  display: block;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 6px;
}
.legal-right-card p {
  font-size: 12.5px;
  color: var(--text3);
  margin: 0;
  line-height: 1.6;
}

/* ── Table ── */
.legal-table-wrap {
  overflow-x: auto;
  border-radius: var(--r);
  border: 1px solid var(--border);
  margin: 16px 0;
}
.legal-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13.5px;
  min-width: 500px;
}
.legal-table thead {
  background: var(--bg-alt);
}
.legal-table th {
  padding: 12px 16px;
  text-align: left;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .4px;
  text-transform: uppercase;
  color: var(--text2);
  border-bottom: 1px solid var(--border);
}
.legal-table td {
  padding: 13px 16px;
  color: var(--text2);
  border-bottom: 1px solid var(--border);
  line-height: 1.6;
}
.legal-table tbody tr:last-child td { border-bottom: none; }
.legal-table tbody tr:hover { background: var(--bg-alt); }

/* ── Badges ── */
.legal-badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 10px;
  border-radius: 99px;
  font-size: 11.5px;
  font-weight: 700;
}
.legal-badge--purple { background: color-mix(in srgb, var(--purple) 12%, var(--surface)); color: var(--purple); border: 1px solid color-mix(in srgb, var(--purple) 25%, transparent); }
.legal-badge--blue   { background: color-mix(in srgb, #3b82f6 10%, var(--surface)); color: #2563eb; border: 1px solid color-mix(in srgb, #3b82f6 25%, transparent); }
.legal-badge--orange { background: color-mix(in srgb, #f59e0b 10%, var(--surface)); color: #d97706; border: 1px solid color-mix(in srgb, #f59e0b 25%, transparent); }
.legal-badge--pink   { background: color-mix(in srgb, var(--pink) 10%, var(--surface)); color: var(--pink); border: 1px solid color-mix(in srgb, var(--pink) 25%, transparent); }

/* ── Responsive ── */
@media (max-width: 860px) {
  .legal-layout { grid-template-columns: 1fr; }
  .legal-toc { display: none; }
  .legal-security-grid { grid-template-columns: repeat(2, 1fr); }
  .legal-rights-grid   { grid-template-columns: repeat(2, 1fr); }
  .legal-data-grid     { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .legal-hero { padding: 44px 0 52px; }
  .legal-body { padding: 36px 0 56px; }
  .legal-security-grid { grid-template-columns: 1fr; }
  .legal-rights-grid   { grid-template-columns: 1fr; }
  .legal-card__label   { min-width: 120px; }
  .legal-hero__meta    { gap: 12px; }
}

/* ── Legal hero contract variant ── */
.legal-hero--contract {
  background: linear-gradient(135deg, #0d1b36 0%, #1a2a50 50%, #0f1e3d 100%);
}
.legal-hero--contract::before {
  background: radial-gradient(circle, rgba(99,102,241,.22) 0%, transparent 70%);
}
.legal-hero--contract::after {
  background: radial-gradient(circle, rgba(255,0,128,.12) 0%, transparent 70%);
}
.legal-hero__badge--contract {
  background: rgba(99,102,241,.15);
  border-color: rgba(99,102,241,.35);
  color: #a5b4fc;
}

/* ── Blog hidden cards ── */
.blog-card[style*="display:none"],
.blog-card[style*="display: none"] { display: none !important; }

/* ── Responsive ── */
@media (max-width: 960px) {
  .blog-feat-card { grid-template-columns: 1fr; }
  .blog-feat-card__thumb { min-height: 220px; }
  .blog-grid { grid-template-columns: repeat(2, 1fr); }
  .blog-newsletter__inner { flex-direction: column; align-items: flex-start; }
  .blog-newsletter__form { width: 100%; }
}
@media (max-width: 600px) {
  .blog-hero { padding: 36px 0 32px; }
  .blog-grid { grid-template-columns: 1fr; }
  .blog-feat-card__body { padding: 22px 18px; }
  .blog-feat-card__title { font-size: 18px; }
}

/* ============================================================
   ARAÇLAR PAGE
============================================================ */

/* ── Hero ── */
.tools-hero {
  background: var(--g-dark);
  padding: 80px 0 88px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.tools-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 70% 80% at 50% 110%, rgba(255,0,128,.22) 0%, transparent 65%);
  pointer-events: none;
}
.tools-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 12% 30%, rgba(121,40,202,.18) 0%, transparent 40%),
    radial-gradient(circle at 88% 20%, rgba(255,0,128,.14) 0%, transparent 35%);
  pointer-events: none;
}
.tools-hero__inner { position: relative; z-index: 1; }
.tools-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: rgba(255,0,128,.15);
  border: 1px solid rgba(255,0,128,.32);
  border-radius: var(--r-p);
  padding: 5px 16px;
  font-size: .73rem;
  font-weight: 700;
  color: #FF6AB5;
  letter-spacing: .07em;
  text-transform: uppercase;
  margin-bottom: 24px;
}
.tools-hero__title {
  font-size: clamp(2rem, 5.5vw, 3.4rem);
  font-weight: 800;
  color: #fff;
  margin-bottom: 18px;
  line-height: 1.12;
  letter-spacing: -.025em;
}
.tools-hero__title span {
  background: var(--g-brand);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.tools-hero__sub {
  color: rgba(255,255,255,.58);
  font-size: 1rem;
  max-width: 580px;
  margin: 0 auto 42px;
  line-height: 1.75;
}
.tools-hero__search {
  display: flex;
  max-width: 560px;
  margin: 0 auto;
  position: relative;
}
.tools-hero__search-inp {
  flex: 1;
  height: 54px;
  padding: 0 20px 0 52px;
  border-radius: var(--r-l) 0 0 var(--r-l);
  border: 1.5px solid rgba(255,255,255,.14);
  border-right: none;
  background: rgba(255,255,255,.08);
  color: #fff;
  font-size: .95rem;
  backdrop-filter: blur(12px);
  outline: none;
  transition: border-color .2s, background .2s;
  font-family: inherit;
}
.tools-hero__search-inp::placeholder { color: rgba(255,255,255,.36); }
.tools-hero__search-inp:focus {
  border-color: rgba(255,0,128,.65);
  background: rgba(255,255,255,.12);
}
.tools-hero__search-ico {
  position: absolute;
  left: 19px;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(255,255,255,.36);
  font-size: .95rem;
  pointer-events: none;
  z-index: 1;
}
.tools-hero__search-btn {
  height: 54px;
  padding: 0 30px;
  border-radius: 0 var(--r-l) var(--r-l) 0;
  border: none;
  background: var(--g-brand);
  color: #fff;
  font-weight: 700;
  font-size: .95rem;
  cursor: pointer;
  transition: opacity .2s, box-shadow .2s;
  white-space: nowrap;
  font-family: inherit;
  box-shadow: 0 4px 20px rgba(255,0,128,.35);
}
.tools-hero__search-btn:hover { opacity: .9; box-shadow: 0 6px 28px rgba(255,0,128,.5); }
.tools-hero__stats {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 32px;
  margin-top: 36px;
}
.tools-hero__stat { text-align: center; }
.tools-hero__stat strong {
  display: block;
  font-size: 1.65rem;
  font-weight: 800;
  color: #fff;
  line-height: 1.1;
}
.tools-hero__stat span { font-size: .75rem; color: rgba(255,255,255,.44); letter-spacing: .03em; }
.tools-hero__stat-sep {
  width: 1px;
  height: 38px;
  background: rgba(255,255,255,.12);
}

/* ── Filter bar (hero içinde) ── */
.tools-filters-wrap {
  background: transparent;
  margin-top: 36px;
  margin-bottom: 4px;
}
.tools-filters {
  display: flex;
  gap: 8px;
  padding: 0;
  overflow-x: auto;
  scrollbar-width: none;
  justify-content: center;
  flex-wrap: wrap;
}
.tools-filters::-webkit-scrollbar { display: none; }
.tools-filter-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 18px;
  border-radius: var(--r-p);
  border: 1.5px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.72);
  font-size: .84rem;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
  transition: all .2s;
  font-family: inherit;
  backdrop-filter: blur(6px);
}
.tools-filter-btn i { font-size: .95em; }
.tools-filter-btn:hover {
  border-color: rgba(255,255,255,.4);
  color: #fff;
  background: rgba(255,255,255,.14);
}
.tools-filter-btn.active {
  background: var(--g-brand);
  border-color: transparent;
  color: #fff;
  font-weight: 600;
  box-shadow: 0 4px 18px rgba(255,0,128,.4);
}

/* ── Tools section ── */
.tools-section { padding: 48px 0 80px; }
.tools-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 28px;
  flex-wrap: wrap;
  gap: 12px;
}
.tools-section__title { font-size: 1.1rem; font-weight: 700; color: var(--text); }
.tools-section__title span { color: var(--pink); }
.tools-plat-label {
  background: color-mix(in srgb, var(--pink) 12%, var(--surface));
  color: var(--pink);
  border-radius: var(--r-p);
  padding: 4px 14px;
  font-size: .78rem;
  font-weight: 700;
}

/* ── Grid ── */
.tools-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 20px;
  align-items: start;
}

/* ── Tool card ── */
.tool-card {
  background: var(--surface);
  border-radius: var(--r-l);
  border: 1px solid var(--border);
  overflow: hidden;
  transition: transform .22s var(--ease), box-shadow .22s;
  display: flex;
  flex-direction: column;
}
.tool-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.tool-card__header {
  padding: 22px 22px 18px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.tool-card__plat-ico {
  width: 50px; height: 50px;
  border-radius: 15px;
  background: rgba(255,255,255,.18);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem;
  color: #fff;
  flex-shrink: 0;
  backdrop-filter: blur(4px);
}
.tool-card__plat-info { flex: 1; min-width: 0; }
.tool-card__plat-name {
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
  display: block;
  line-height: 1.2;
}
.tool-card__plat-sub { font-size: .77rem; color: rgba(255,255,255,.65); }
.tool-card__badge {
  background: rgba(255,255,255,.2);
  border-radius: var(--r-p);
  padding: 3px 11px;
  font-size: .72rem;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
}

/* ── Tool items ── */
.tool-card__body { flex: 1; padding: 6px 0 4px; }
.tool-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 11px 20px;
  color: var(--text);
  text-decoration: none;
  font-size: .88rem;
  font-weight: 500;
  transition: background .15s, padding-left .18s var(--ease-spring), color .15s, border-color .15s;
  border-left: 3px solid transparent;
}
.tool-item:hover {
  background: var(--bg-alt);
  border-left-color: var(--item-color, var(--pink));
  padding-left: 24px;
  color: var(--item-color, var(--pink));
}
.tool-item__ico {
  width: 32px; height: 32px;
  border-radius: 9px;
  display: flex; align-items: center; justify-content: center;
  font-size: .8rem;
  flex-shrink: 0;
  background: color-mix(in srgb, var(--item-color, var(--pink)) 12%, var(--surface));
  color: var(--item-color, var(--pink));
  transition: background .15s;
}
.tool-item:hover .tool-item__ico {
  background: color-mix(in srgb, var(--item-color, var(--pink)) 22%, var(--surface));
}
.tool-item__label { flex: 1; }
.tool-item__tag {
  font-size: .66rem;
  font-weight: 800;
  padding: 2px 8px;
  border-radius: var(--r-p);
  background: #22c55e;
  color: #fff;
  letter-spacing: .04em;
  flex-shrink: 0;
}
.tool-item__arr {
  font-size: .64rem;
  color: var(--text3);
  transition: color .15s, transform .18s var(--ease-spring);
}
.tool-item:hover .tool-item__arr {
  color: var(--item-color, var(--pink));
  transform: translateX(3px);
}
.tool-item--extra { display: none; }
.tool-item--extra.shown { display: flex; }

/* ── Show more ── */
.tool-card__more { padding: 6px 20px 18px; }
.tool-card__more-btn {
  width: 100%;
  padding: 10px 16px;
  border-radius: var(--r);
  border: 1.5px dashed var(--border2);
  background: transparent;
  color: var(--text2);
  font-size: .83rem;
  font-weight: 600;
  cursor: pointer;
  transition: all .2s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-family: inherit;
}
.tool-card__more-btn .btn-chev { transition: transform .28s var(--ease-spring); }
.tool-card__more-btn.expanded .btn-chev { transform: rotate(180deg); }
.tool-card__more-btn:hover {
  border-color: var(--item-color, var(--pink));
  color: var(--item-color, var(--pink));
  background: color-mix(in srgb, var(--item-color, var(--pink)) 6%, var(--surface));
}

/* ── No result ── */
.tools-no-result {
  grid-column: 1/-1;
  text-align: center;
  padding: 72px 0;
  display: none;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.tools-no-result.visible { display: flex; }
.tools-no-result i { font-size: 3rem; color: var(--border2); }
.tools-no-result p { font-size: 1rem; color: var(--text2); }

/* ── Live chat tab ── */
.live-chat-tab {
  position: fixed;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 200;
}
.live-chat-tab__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: var(--g-brand);
  color: #fff;
  padding: 20px 9px;
  border-radius: 14px 0 0 14px;
  text-decoration: none;
  box-shadow: -6px 0 24px rgba(255,0,128,.38);
  transition: padding .22s var(--ease-spring), box-shadow .2s;
}
.live-chat-tab__link:hover {
  padding: 24px 11px;
  box-shadow: -8px 0 32px rgba(255,0,128,.55);
}
.live-chat-tab__ico { font-size: 1.1rem; }
.live-chat-tab__text {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  transform: rotate(180deg);
  font-size: .71rem;
  font-weight: 700;
  letter-spacing: .1em;
  white-space: nowrap;
}

/* ── Tools CTA ── */
.tools-cta {
  background: var(--g-dark);
  padding: 88px 0;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.tools-cta::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 80% 70% at 50% 50%, rgba(255,0,128,.14) 0%, transparent 65%);
  pointer-events: none;
}
.tools-cta__inner { position: relative; z-index: 1; }
.tools-cta__label {
  font-size: .72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--pink);
  margin-bottom: 14px;
}
.tools-cta__title {
  font-size: clamp(1.6rem, 3.5vw, 2.4rem);
  font-weight: 800;
  color: #fff;
  margin-bottom: 16px;
  letter-spacing: -.02em;
}
.tools-cta__sub {
  color: rgba(255,255,255,.54);
  max-width: 500px;
  margin: 0 auto 36px;
  line-height: 1.75;
}
.tools-cta__actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}
.tools-cta__btn {
  padding: 14px 30px;
  border-radius: var(--r-p);
  font-weight: 700;
  font-size: .95rem;
  text-decoration: none;
  transition: all .22s;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-family: inherit;
  cursor: pointer;
  border: none;
}
.tools-cta__btn--primary {
  background: var(--g-brand);
  color: #fff;
  box-shadow: var(--shadow-pink);
}
.tools-cta__btn--primary:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: var(--shadow-pink-lg);
}
.tools-cta__btn--outline {
  background: transparent;
  border: 1.5px solid rgba(255,255,255,.18);
  color: rgba(255,255,255,.8);
}
.tools-cta__btn--outline:hover {
  border-color: rgba(255,255,255,.45);
  background: rgba(255,255,255,.06);
  color: #fff;
}

/* ── Responsive ── */
@media (max-width: 960px) {
  .tools-grid { grid-template-columns: repeat(2, 1fr); }
  .tools-hero { padding: 60px 0 68px; }
  .tools-hero__stats { gap: 20px; }
}
@media (max-width: 700px) {
  .tools-grid { grid-template-columns: 1fr; }
  .tools-hero { padding: 46px 0 54px; }
  .tools-hero__stats { gap: 16px; }
  .tools-hero__stat strong { font-size: 1.35rem; }
  .tools-filters-wrap { top: 56px; }
  .live-chat-tab { display: none; }
  .tools-cta { padding: 60px 0; }
  /* Arama çubuğu dolu genişlik */
  .tools-hero__search { max-width: 100%; }
  .tools-hero__search-inp { font-size: .88rem; }
  /* Kart içi araç satırı */
  .tool-item { padding: 10px 14px; }
  .tool-item__ico { width: 32px; height: 32px; font-size: .82rem; flex-shrink: 0; }
  .tool-item__name { font-size: .82rem; }
}
@media (max-width: 420px) {
  .tools-hero__sub { font-size: .88rem; margin-bottom: 28px; }
  .tools-hero__stats { flex-direction: column; gap: 8px; }
  .tools-hero__stat { flex-direction: row; gap: 8px; align-items: center; }
  .tools-hero__stat strong { font-size: 1.2rem; }
  .tool-card { border-radius: 16px; }
  .tool-card__head { padding: 14px 16px 12px; }
}

/* ============================================================
   ARAÇ DETAY PAGE
============================================================ */

/* ── Hero ── */
.tdhero {
  background: var(--g-dark);
  padding: 40px 0 52px;
  position: relative;
  overflow: hidden;
}
.tdhero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 55% 70% at 15% 60%, rgba(255,0,128,.14) 0%, transparent 55%);
  pointer-events: none;
}
.tdhero__inner { position: relative; z-index: 1; }

.tdhero__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 28px;
  flex-wrap: wrap;
}
.tdhero__left { display: flex; align-items: center; gap: 20px; }
.tdhero__plat-ico {
  width: 72px; height: 72px;
  border-radius: 20px;
  display: flex; align-items: center; justify-content: center;
  font-size: 2rem;
  color: #fff;
  flex-shrink: 0;
}
.tdhero__text {}
.tdhero__title {
  font-size: 1.6rem;
  font-weight: 800;
  color: #fff;
  margin-bottom: 6px;
  line-height: 1.2;
}
.tdhero__desc {
  color: rgba(255,255,255,.52);
  font-size: .9rem;
  max-width: 640px;
  line-height: 1.65;
}
.tdhero__badge {
  display: flex;
  align-items: center;
  gap: 12px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  padding: 12px 16px;
  flex-shrink: 0;
}
.tdhero__badge-info { text-align: right; }
.tdhero__badge-info span { display: block; font-size: .7rem; color: rgba(255,255,255,.45); }
.tdhero__badge-info strong { display: block; font-size: .95rem; font-weight: 700; color: #fff; }
.tdhero__badge-ico {
  width: 38px; height: 38px;
  border-radius: 11px;
  background: var(--g-brand);
  display: flex; align-items: center; justify-content: center;
  color: #fff;
  font-size: 1rem;
}

/* Username input */
.tdhero__input-wrap {
  display: flex;
  align-items: center;
  background: rgba(255,255,255,.06);
  border: 1.5px solid rgba(255,255,255,.11);
  border-radius: var(--r-l);
  overflow: hidden;
  margin-bottom: 16px;
  transition: border-color .2s, background .2s;
}
.tdhero__input-wrap:focus-within {
  border-color: rgba(255,0,128,.55);
  background: rgba(255,255,255,.09);
}
.tdhero__input-ico {
  padding: 0 16px 0 20px;
  color: rgba(255,255,255,.35);
  font-size: 1.15rem;
  flex-shrink: 0;
}
.tdhero__input-inner { flex: 1; padding: 14px 0; }
.tdhero__input-lbl {
  font-size: .68rem;
  color: rgba(255,255,255,.35);
  font-weight: 500;
  margin-bottom: 2px;
  display: block;
}
.tdhero__input {
  background: transparent;
  border: none;
  outline: none;
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  font-family: inherit;
  width: 100%;
}
.tdhero__input::placeholder { color: rgba(255,255,255,.22); font-weight: 400; }
.tdhero__send-btn {
  align-self: stretch;
  padding: 0 32px;
  border: none;
  background: var(--g-brand);
  color: #fff;
  font-weight: 700;
  font-size: .95rem;
  cursor: pointer;
  font-family: inherit;
  transition: opacity .2s;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 62px;
}
.tdhero__send-btn:hover { opacity: .88; }
.tdhero__send-btn:disabled { opacity: .5; cursor: not-allowed; }

/* Package cards */
.tdhero__packages {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.tdhero__pkg {
  border-radius: 14px;
  padding: 18px 18px 16px;
  cursor: pointer;
  border: 1.5px solid rgba(255,255,255,.09);
  background: rgba(255,255,255,.05);
  transition: all .22s;
  position: relative;
  user-select: none;
}
.tdhero__pkg:hover:not(.active) {
  border-color: rgba(255,255,255,.22);
  background: rgba(255,255,255,.09);
}
.tdhero__pkg.active {
  background: var(--g-brand);
  border-color: transparent;
  box-shadow: 0 8px 32px rgba(255,0,128,.42);
}
.tdhero__pkg-check {
  position: absolute;
  top: 10px; right: 10px;
  width: 22px; height: 22px;
  border-radius: 50%;
  background: rgba(255,255,255,.25);
  display: flex; align-items: center; justify-content: center;
  font-size: .6rem;
  color: #fff;
  opacity: 0;
  transform: scale(.7);
  transition: opacity .2s, transform .2s var(--ease-spring);
}
.tdhero__pkg.active .tdhero__pkg-check { opacity: 1; transform: scale(1); }
.tdhero__pkg-num {
  font-size: 1.9rem;
  font-weight: 800;
  color: #fff;
  line-height: 1;
  margin-bottom: 3px;
}
.tdhero__pkg-lbl { font-size: .82rem; color: rgba(255,255,255,.65); margin-bottom: 7px; }
.tdhero__pkg-tag {
  font-size: .78rem;
  font-weight: 700;
}
.tdhero__pkg-tag--free { color: rgba(255,255,255,.9); }
.tdhero__pkg-tag--disc { color: #4ade80; }

/* Send result */
.tdhero__result {
  margin-top: 14px;
  padding: 14px 20px;
  border-radius: var(--r);
  font-size: .9rem;
  font-weight: 600;
  display: none;
  align-items: center;
  gap: 10px;
}
.tdhero__result.success {
  display: flex;
  background: rgba(34,197,94,.12);
  border: 1px solid rgba(34,197,94,.3);
  color: #4ade80;
}
.tdhero__result.error {
  display: flex;
  background: rgba(239,68,68,.1);
  border: 1px solid rgba(239,68,68,.25);
  color: #f87171;
}

/* ── İlgili Hizmetler ── */
.tool-related {
  background: var(--surface);
  padding: 52px 0;
  border-bottom: 1px solid var(--border);
}
.tool-section-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 22px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--border);
}
.tool-section-head__ico { color: var(--pink); font-size: 1.05rem; }
.tool-section-head__title { font-size: 1.05rem; font-weight: 700; color: var(--text); }
.tool-related__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 9px;
}
.related-item {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 13px 15px;
  border-radius: var(--r);
  border: 1px solid var(--border);
  background: var(--surface);
  text-decoration: none;
  transition: all .2s;
}
.related-item:hover {
  border-color: var(--pink);
  background: color-mix(in srgb, var(--pink) 4%, var(--surface));
  transform: translateY(-1px);
  box-shadow: var(--shadow-sm);
}
.related-item__ico {
  width: 38px; height: 38px;
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  font-size: .95rem;
  color: #fff;
  flex-shrink: 0;
}
.related-item__info { flex: 1; min-width: 0; }
.related-item__name {
  font-size: .86rem;
  font-weight: 600;
  color: var(--text);
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 1px;
}
.related-item__plat { font-size: .72rem; color: var(--text3); }
.related-item__arr { color: var(--text3); font-size: .65rem; transition: color .2s, transform .2s; }
.related-item:hover .related-item__arr { color: var(--pink); transform: translateX(3px); }

/* ── SSS ── */
.tool-faq { background: var(--bg); padding: 52px 0; }
.tool-faq__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 9px;
}
.tfaq-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 20px;
  background: var(--surface);
  border-radius: var(--r-l);
  border: 1px solid var(--border);
  cursor: pointer;
  transition: all .2s;
  text-decoration: none;
}
.tfaq-card:hover {
  border-color: var(--pink);
  box-shadow: var(--shadow-sm);
  transform: translateY(-1px);
}
.tfaq-card__ico { color: var(--pink); font-size: 1rem; flex-shrink: 0; }
.tfaq-card__q { font-size: .9rem; font-weight: 500; color: var(--text); line-height: 1.4; }

/* ── Ürün Açıklaması ── */
.tool-desc { background: var(--bg); padding: 0 0 72px; }
.tool-desc__layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 20px;
  align-items: start;
}
.tool-desc__toc {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r-l);
  padding: 20px;
  position: sticky;
  top: 80px;
}
.tool-desc__toc-lbl {
  font-size: .68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .09em;
  color: var(--text3);
  margin-bottom: 12px;
}
.tool-desc__toc-link {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px 10px;
  border-radius: var(--r-s);
  color: var(--text2);
  font-size: .84rem;
  text-decoration: none;
  transition: all .15s;
}
.tool-desc__toc-link:hover, .tool-desc__toc-link.active {
  background: color-mix(in srgb, var(--pink) 8%, var(--surface));
  color: var(--pink);
}
.tool-desc__toc-link::before {
  content: '';
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--border2);
  flex-shrink: 0;
  transition: background .15s;
}
.tool-desc__toc-link.active::before,
.tool-desc__toc-link:hover::before { background: var(--pink); }

.tool-desc__body {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r-l);
  padding: 32px;
}
.tool-desc__sec { margin-bottom: 36px; }
.tool-desc__sec:last-child { margin-bottom: 0; }
.tool-desc__sec-title {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.tool-desc__sec-title::before {
  content: '';
  width: 4px; height: 18px;
  border-radius: 2px;
  background: var(--g-brand);
  flex-shrink: 0;
}
.tool-desc__body p {
  color: var(--text2);
  line-height: 1.8;
  margin-bottom: 12px;
  font-size: .93rem;
}
.tool-desc__body strong { color: var(--text); }
.tool-desc__body ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 9px;
  margin-bottom: 14px;
}
.tool-desc__body ul li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: .9rem;
  color: var(--text2);
  line-height: 1.6;
}
.tool-desc__body ul li::before {
  content: '';
  width: 7px; height: 7px;
  border-radius: 50%;
  background: var(--pink);
  flex-shrink: 0;
  margin-top: 7px;
}

/* Responsive araç detay */
@media (max-width: 960px) {
  .tdhero__packages { grid-template-columns: repeat(2, 1fr); }
  .tool-related__grid { grid-template-columns: repeat(2, 1fr); }
  .tool-desc__layout { grid-template-columns: 1fr; }
  .tool-desc__toc { position: static; }
}
@media (max-width: 600px) {
  .tdhero__top { flex-direction: column; }
  .tdhero__left { align-items: flex-start; }
  .tdhero__packages { grid-template-columns: repeat(2, 1fr); }
  .tool-faq__grid { grid-template-columns: 1fr; }
  .tool-related__grid { grid-template-columns: 1fr; }
  .tdhero__send-btn { padding: 0 20px; font-size: .85rem; }
  /* Input tam genişlik */
  .tdhero__input-wrap { flex-direction: column; border-radius: var(--r-l); }
  .tdhero__input { border-radius: var(--r-l) !important; border-right: 1.5px solid rgba(255,255,255,.14) !important; }
  .tdhero__send-btn {
    border-radius: var(--r-l) !important;
    min-height: 50px;
    width: 100%;
    justify-content: center;
  }
  /* Plat ikon küçült */
  .tdhero__plat-ico { width: 54px; height: 54px; font-size: 1.5rem; border-radius: 14px; }
  .tdhero__title { font-size: 1.4rem; }
  /* FAQ kart padding */
  .tfaq-card { padding: 14px 16px; }
  /* Related 1 kolon */
  .tool-related__grid { grid-template-columns: 1fr; }
}
@media (max-width: 420px) {
  .tdhero { padding: 28px 0 36px; }
  .tdhero__packages { grid-template-columns: repeat(2, 1fr); gap: 8px; }
  .tdhero__pkg { padding: 12px 10px; }
  .tdhero__pkg-num { font-size: 1.3rem; }
  .tool-desc__layout { gap: 12px; }
  .tool-desc__sec { padding: 20px 0; }
}

/* ============================================================
   SPIN WHEEL MODAL (İndirim Çarkı)
============================================================ */
.spin-modal-overlay {
  position: fixed; inset: 0; z-index: 9000;
  background: rgba(10,12,28,.72);
  backdrop-filter: blur(6px);
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none;
  transition: opacity .28s ease;
}
.spin-modal-overlay.open {
  opacity: 1; pointer-events: all;
}
.spin-modal {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 24px;
  width: min(520px, 94vw);
  padding: 32px 28px 28px;
  position: relative;
  transform: translateY(24px) scale(.96);
  transition: transform .3s var(--ease-spring);
  box-shadow: 0 24px 80px rgba(0,0,0,.45);
}
.spin-modal-overlay.open .spin-modal {
  transform: translateY(0) scale(1);
}
.spin-modal__close {
  position: absolute; top: 16px; right: 16px;
  width: 34px; height: 34px; border-radius: 50%;
  background: var(--bg-alt); border: 1px solid var(--border);
  color: var(--text2); cursor: pointer; font-size: 1rem;
  display: flex; align-items: center; justify-content: center;
  transition: background .18s, color .18s;
}
.spin-modal__close:hover { background: var(--pink); color: #fff; border-color: var(--pink); }
.spin-modal__header { text-align: center; margin-bottom: 20px; }
.spin-modal__badge {
  display: inline-flex; align-items: center; gap: 6px;
  background: rgba(255,0,128,.12); border: 1px solid rgba(255,0,128,.28);
  color: var(--pink); padding: 4px 14px; border-radius: 40px;
  font-size: .75rem; font-weight: 600; margin-bottom: 10px;
}
.spin-modal__title {
  font-size: 1.35rem; font-weight: 800; color: var(--text); margin-bottom: 4px;
}
.spin-modal__subtitle { font-size: .85rem; color: var(--text2); }
/* Wheel area */
.spin-modal__wheel-wrap {
  position: relative; width: 280px; height: 280px;
  margin: 0 auto 18px;
}
.spin-modal__canvas {
  display: block; border-radius: 50%;
  width: 100%; height: 100%; /* CSS scale — buffer stays 280×280 */
  box-shadow: 0 0 0 4px rgba(255,0,128,.18), 0 12px 40px rgba(0,0,0,.3);
}
/* Pointer arrow */
.spin-modal__pointer {
  position: absolute; top: -18px; left: 50%;
  transform: translateX(-50%);
  width: 0; height: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 24px solid var(--pink);
  filter: drop-shadow(0 4px 8px rgba(255,0,128,.5));
}
/* Center spin button */
.spin-modal__center-btn {
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 62px; height: 62px; border-radius: 50%;
  background: var(--g-brand); border: 4px solid var(--surface);
  color: #fff; font-size: .72rem; font-weight: 700;
  cursor: pointer; letter-spacing: .04em;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 18px rgba(255,0,128,.4);
  transition: transform .18s var(--ease-spring), box-shadow .18s;
}
.spin-modal__center-btn:hover:not(:disabled) {
  transform: translate(-50%, -50%) scale(1.08);
  box-shadow: 0 8px 28px rgba(255,0,128,.55);
}
.spin-modal__center-btn:disabled { opacity: .55; cursor: not-allowed; }
/* Result box */
.spin-modal__result {
  display: none; margin-bottom: 6px;
  background: rgba(34,197,94,.08); border: 1px solid rgba(34,197,94,.2);
  border-radius: 10px; padding: 8px 12px;
}
.spin-modal__result.win { display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: wrap; }
.spin-modal__result.try-again { display: block; background: rgba(255,0,128,.07); border-color: rgba(255,0,128,.2); }
.spin-modal__result-label { display: none; }
.spin-modal__result-prize {
  font-size: .82rem; font-weight: 700; color: #4ade80;
}
.spin-modal__result.try-again .spin-modal__result-prize { color: var(--pink); text-align: center; }
.spin-modal__result-code-wrap {
  display: flex; align-items: center; gap: 5px;
}
.spin-modal__result-code {
  background: rgba(255,255,255,.07); border: 1px dashed rgba(34,197,94,.3);
  padding: 3px 8px; border-radius: 5px;
  font-family: monospace; font-size: .78rem; font-weight: 700; letter-spacing: .08em;
  color: #4ade80;
}
.spin-modal__copy-btn {
  background: var(--g-brand); color: #fff; border: none; border-radius: 5px;
  padding: 3px 8px; font-size: .68rem; font-weight: 600; cursor: pointer;
  display: flex; align-items: center; gap: 3px;
  transition: opacity .18s;
}
.spin-modal__copy-btn:hover { opacity: .88; }
.spin-modal__limit-msg {
  display: none; text-align: center; color: var(--text3);
  font-size: .82rem; padding: 8px 0 4px;
}
.spin-modal__limit-msg.visible { display: block; }
/* Kilitli kod (premium) */
.spin-modal__locked {
  display: none; flex-direction: column; align-items: center; gap: 10px;
}
.spin-modal__locked-code {
  background: rgba(255,255,255,.06); border: 1px dashed rgba(255,255,255,.2);
  padding: 8px 24px; border-radius: 8px;
  font-family: monospace; font-size: 1.1rem; font-weight: 700; letter-spacing: .14em;
  color: var(--text3); filter: blur(3px); user-select: none;
}
.spin-modal__login-btn {
  display: inline-flex; align-items: center; gap: 7px;
  background: var(--g-brand); color: #fff; border-radius: 10px;
  padding: 9px 20px; font-size: .82rem; font-weight: 700;
  text-decoration: none; transition: opacity .18s;
}
.spin-modal__login-btn:hover { opacity: .88; }
/* Davet bölümü */
/* ── Ödül Ekranı ── */
.spin-result-screen {
  display: flex; flex-direction: column; align-items: center;
  padding: 24px 20px 20px; text-align: center; gap: 6px;
}
.spin-result-screen__icon { font-size: 3rem; line-height: 1; }
.spin-result-screen__label { font-size: .8rem; font-weight: 700; color: var(--text2); margin-top: 4px; }
.spin-result-screen__prize { font-size: 1.4rem; font-weight: 900; color: var(--text); margin: 4px 0 8px; }
.spin-result-screen__code-wrap {
  display: flex; align-items: center; gap: 8px;
  background: rgba(255,255,255,.04); border: 1px dashed var(--border);
  border-radius: 10px; padding: 8px 14px;
}
.spin-result-screen__code {
  font-family: monospace; font-size: 1rem; font-weight: 800;
  letter-spacing: .12em; color: var(--pink);
}
.spin-result-screen__copy {
  background: var(--g-brand); color: #fff; border: none; border-radius: 7px;
  padding: 5px 12px; font-size: .75rem; font-weight: 600; cursor: pointer;
  display: flex; align-items: center; gap: 4px; transition: opacity .18s; white-space: nowrap;
}
.spin-result-screen__copy:hover { opacity: .85; }
.spin-result-screen__again {
  margin-top: 8px; background: var(--surface2); border: 1px solid var(--border);
  border-radius: 9px; padding: 8px 18px; font-size: .78rem; font-weight: 700;
  color: var(--text2); cursor: pointer; font-family: inherit; display: flex;
  align-items: center; gap: 6px; transition: all .15s;
}
.spin-result-screen__again:hover { color: var(--text); border-color: var(--pink); }

.spin-modal__invite {
  margin-top: 14px; padding: 12px 14px;
  background: var(--bg-alt); border: 1px solid var(--border);
  border-radius: 14px;
}
.spin-modal__invite-title {
  font-size: .78rem; font-weight: 700; color: var(--text2);
  margin-bottom: 8px; display: flex; align-items: center; gap: 6px;
}
.spin-modal__invite-title i { color: var(--pink); }
.spin-modal__invite-row {
  display: flex; align-items: center; gap: 8px;
}
.spin-modal__invite-link {
  flex: 1; font-size: .75rem; font-family: monospace;
  background: var(--surface); border: 1px solid var(--border);
  padding: 7px 10px; border-radius: 8px; color: var(--text3);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
/* Responsive */
@media (max-width: 480px) {
  .spin-modal {
    padding: 20px 14px 16px;
    max-height: 92dvh;
    overflow-y: auto;
  }
  .spin-modal__wheel-wrap { width: 220px; height: 220px; }
  .spin-modal__title { font-size: 1.15rem; }
  .spin-modal__invite { margin-top: 10px; padding: 10px 12px; }
}
@media (max-width: 360px) {
  .spin-modal__wheel-wrap { width: 190px; height: 190px; }
  .spin-modal__center-btn { width: 52px; height: 52px; font-size: .65rem; }
}
/* Gift button pulse */
#giftBtn { position: relative; }
#giftBtn::after {
  content: ''; position: absolute; top: 4px; right: 4px;
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--pink);
  box-shadow: 0 0 0 0 rgba(255,0,128,.4);
  animation: gift-pulse 2s infinite;
}
@keyframes gift-pulse {
  0%   { box-shadow: 0 0 0 0 rgba(255,0,128,.5); }
  70%  { box-shadow: 0 0 0 7px rgba(255,0,128,0); }
  100% { box-shadow: 0 0 0 0 rgba(255,0,128,0); }
}

/* ============================================================
   GLOBAL MOBİL İYİLEŞTİRMELER
============================================================ */

/* ── Breadcrumb ── */
@media (max-width: 600px) {
  .breadcrumb-bar { display: none; }
}

/* ── Spin modal overlay scroll ── */
@media (max-width: 600px) {
  .spin-modal-overlay { align-items: center; }
  .spin-modal {
    border-radius: 24px;
    width: min(96vw, 420px);
    max-height: 92dvh;
    overflow-y: auto;
  }
}

/* nav-icon--desktop: sepet + sorgula mobilde gizli */

/* ── Wrap min padding ── */
@media (max-width: 360px) {
  .wrap { padding: 0 12px; }
}

/* ── Search bar mobilde küçül ── */
@media (max-width: 520px) {
  .search-bar { display: none; }
}

/* ── Section başlıkları ── */
@media (max-width: 480px) {
  .section-title { font-size: 1.35rem !important; letter-spacing: -.02em; }
  .section-sub   { font-size: .88rem; }
}

/* ── Footer en küçük ekran ── */
@media (max-width: 380px) {
  .ftb-btn { padding: 10px 12px; gap: 8px; }
  .ftb-ico { width: 36px; height: 36px; font-size: 15px; }
  .ftb-info strong { font-size: 12.5px; }
}

/* ── Tablo / yatay scroll ── */
table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* ── Touch hedef minimum boyutu ── */
@media (max-width: 768px) {
  button, a, [role="button"] { min-height: 44px; }
  .bottom-nav__item { min-height: unset; }
  .nav-icon { min-height: unset; }
}

/* ============================================================
   BİLDİRİMLER PANELİ
============================================================ */

/* ── Bildirim sayı badge'i ── */
.notif-count-badge {
  position: absolute; top: 2px; right: 2px;
  min-width: 17px; height: 17px; border-radius: 99px;
  background: var(--pink); color: #fff;
  font-size: 10px; font-weight: 800; line-height: 17px;
  text-align: center; padding: 0 4px;
  border: 2px solid var(--surface);
  pointer-events: none;
}

/* ── Panel ── */
.notif-panel {
  position: fixed;
  top: 62px; right: 16px;
  width: min(380px, calc(100vw - 24px));
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 18px;
  box-shadow: 0 20px 60px rgba(0,0,0,.22);
  z-index: 8000;
  display: flex; flex-direction: column;
  max-height: min(520px, 80dvh);
  opacity: 0; pointer-events: none;
  transform: translateY(-8px) scale(.97);
  transition: opacity .2s ease, transform .2s var(--ease-spring);
}
.notif-panel.open {
  opacity: 1; pointer-events: all;
  transform: translateY(0) scale(1);
}
.notif-backdrop {
  display: none;
  position: fixed; inset: 0; z-index: 7999;
}
.notif-backdrop.open { display: block; }

/* Panel başlığı */
.notif-panel__head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 16px 16px 12px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.notif-panel__title {
  font-size: 1rem; font-weight: 800; color: var(--text);
}
.notif-panel__actions { display: flex; align-items: center; gap: 8px; }
.notif-panel__mark-all {
  font-size: .72rem; color: var(--pink); background: none; border: none;
  cursor: pointer; font-weight: 600; padding: 0;
  transition: opacity .15s;
}
.notif-panel__mark-all:hover { opacity: .7; }
.notif-panel__close {
  width: 28px; height: 28px; border-radius: 50%;
  background: var(--bg-alt); border: 1px solid var(--border);
  color: var(--text2); cursor: pointer; font-size: .8rem;
  display: flex; align-items: center; justify-content: center;
  transition: background .15s, color .15s;
}
.notif-panel__close:hover { background: var(--pink); color: #fff; border-color: var(--pink); }

/* Liste */
.notif-panel__list {
  overflow-y: auto; flex: 1;
}
.notif-panel__list::-webkit-scrollbar { width: 4px; }
.notif-panel__list::-webkit-scrollbar-thumb { background: var(--border2); border-radius: 4px; }

/* Panel footer */
.notif-panel__footer {
  padding: 10px 16px;
  border-top: 1px solid var(--border);
  flex-shrink: 0;
}
.notif-panel__see-all {
  width: 100%; background: none; border: none;
  color: var(--text2); font-size: .8rem; font-weight: 600;
  cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 6px;
  padding: 6px 0;
  transition: color .15s;
}
.notif-panel__see-all:hover { color: var(--pink); }

/* ── Bildirim öğesi ── */
.notif-item {
  display: flex; align-items: flex-start; gap: 12px;
  padding: 14px 16px; cursor: pointer; position: relative;
  border-bottom: 1px solid var(--border);
  transition: background .15s;
}
.notif-item:last-child { border-bottom: none; }
.notif-item:hover { background: var(--bg-alt); }
.notif-item--unread { background: color-mix(in srgb, var(--pink) 4%, var(--surface)); }
.notif-item--unread:hover { background: color-mix(in srgb, var(--pink) 7%, var(--surface)); }

/* Ikon */
.notif-item__ico {
  width: 38px; height: 38px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: .9rem; flex-shrink: 0;
}
.notif-item--success .notif-item__ico { background: rgba(34,197,94,.12); color: #4ade80; }
.notif-item--promo   .notif-item__ico { background: rgba(255,0,128,.12); color: var(--pink); }
.notif-item--info    .notif-item__ico { background: rgba(96,165,250,.12); color: #60a5fa; }
.notif-item--warning .notif-item__ico { background: rgba(250,204,21,.12); color: #facc15; }

/* İçerik */
.notif-item__body { flex: 1; min-width: 0; }
.notif-item__title {
  font-size: .85rem; font-weight: 700; color: var(--text);
  margin-bottom: 3px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.notif-item__short {
  font-size: .78rem; color: var(--text2); line-height: 1.5;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 6px;
}
.notif-item__footer {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
}
.notif-item__time {
  font-size: .7rem; color: var(--text3);
  display: flex; align-items: center; gap: 4px;
}
.notif-item__expand {
  font-size: .7rem; color: var(--pink); background: none; border: none;
  cursor: pointer; font-weight: 600; padding: 0;
  display: flex; align-items: center; gap: 4px;
  transition: opacity .15s;
}
.notif-item__expand:hover { opacity: .7; }

/* Okunmamış nokta */
.notif-item__dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--pink); flex-shrink: 0; margin-top: 6px;
}

/* ── Detay Modal ── */
.notif-detail-overlay {
  position: fixed; inset: 0; z-index: 9100;
  background: rgba(10,12,28,.7); backdrop-filter: blur(6px);
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none;
  transition: opacity .22s ease;
}
.notif-detail-overlay.open {
  opacity: 1; pointer-events: all;
}
.notif-detail {
  background: var(--surface); border: 1px solid var(--border);
  border-radius: 20px; width: min(440px, 92vw);
  padding: 32px 28px 28px; position: relative;
  box-shadow: 0 24px 70px rgba(0,0,0,.4);
  transform: translateY(20px) scale(.96);
  transition: transform .25s var(--ease-spring);
  max-height: 88dvh; overflow-y: auto;
}
.notif-detail-overlay.open .notif-detail {
  transform: translateY(0) scale(1);
}
.notif-detail__close {
  position: absolute; top: 14px; right: 14px;
  width: 32px; height: 32px; border-radius: 50%;
  background: var(--bg-alt); border: 1px solid var(--border);
  color: var(--text2); cursor: pointer; font-size: .88rem;
  display: flex; align-items: center; justify-content: center;
  transition: background .15s, color .15s;
}
.notif-detail__close:hover { background: var(--pink); color: #fff; border-color: var(--pink); }
.notif-detail__ico-wrap { display: flex; justify-content: center; margin-bottom: 16px; }
.notif-detail__ico {
  width: 56px; height: 56px; border-radius: 18px;
  display: flex; align-items: center; justify-content: center; font-size: 1.4rem;
}
.notif-detail__ico--success { background: rgba(34,197,94,.12); color: #4ade80; }
.notif-detail__ico--promo   { background: rgba(255,0,128,.12); color: var(--pink); }
.notif-detail__ico--info    { background: rgba(96,165,250,.12); color: #60a5fa; }
.notif-detail__ico--warning { background: rgba(250,204,21,.12); color: #facc15; }
.notif-detail__title {
  font-size: 1.15rem; font-weight: 800; color: var(--text);
  text-align: center; margin-bottom: 6px;
}
.notif-detail__time {
  font-size: .75rem; color: var(--text3);
  text-align: center; margin-bottom: 18px;
  display: flex; align-items: center; justify-content: center; gap: 5px;
}
.notif-detail__body {
  font-size: .88rem; color: var(--text2);
  line-height: 1.75; text-align: left;
  background: var(--bg-alt); border-radius: 12px;
  padding: 16px; border: 1px solid var(--border);
}

/* ── Responsive ── */
@media (max-width: 480px) {
  .notif-panel { top: 58px; right: 8px; left: 8px; width: auto; border-radius: 16px; }
  .notif-detail { padding: 24px 18px 20px; }
}

/* ============================================================
   KAMPANYALAR SAYFASI
============================================================ */

/* ── Hero ── */
.camp-hero {
  background: var(--g-dark);
  padding: 72px 0 80px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.camp-hero__bg-orbs { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.camp-hero__orb {
  position: absolute; border-radius: 50%;
  filter: blur(72px); opacity: .55;
  animation: orb-drift 8s ease-in-out infinite alternate;
}
.camp-hero__orb--1 {
  width: 420px; height: 420px; background: rgba(255,0,128,.22);
  top: -120px; left: -80px; animation-delay: 0s;
}
.camp-hero__orb--2 {
  width: 320px; height: 320px; background: rgba(121,40,202,.2);
  bottom: -100px; right: -60px; animation-delay: -3s;
}
.camp-hero__orb--3 {
  width: 200px; height: 200px; background: rgba(255,0,128,.14);
  top: 40%; left: 55%; animation-delay: -6s;
}
@keyframes orb-drift {
  0%   { transform: translate(0, 0) scale(1); }
  100% { transform: translate(24px, -24px) scale(1.08); }
}
.camp-hero__inner { position: relative; z-index: 1; }
.camp-hero__badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(255,0,128,.15); border: 1px solid rgba(255,0,128,.32);
  border-radius: var(--r-p); padding: 5px 18px;
  font-size: .73rem; font-weight: 700; color: #FF6AB5;
  letter-spacing: .07em; text-transform: uppercase; margin-bottom: 24px;
}
.camp-hero__badge-dot {
  width: 6px; height: 6px; border-radius: 50%; background: #FF6AB5;
  animation: pulse-dot 1.8s ease-in-out infinite;
}
@keyframes pulse-dot {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: .4; transform: scale(.7); }
}
.camp-hero__title {
  font-size: clamp(2rem, 5.5vw, 3.2rem);
  font-weight: 900; color: #fff; line-height: 1.1;
  letter-spacing: -.03em; margin-bottom: 18px;
}
.camp-hero__title span {
  background: var(--g-brand);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.camp-hero__sub {
  color: rgba(255,255,255,.58); font-size: 1rem;
  max-width: 600px; margin: 0 auto 44px; line-height: 1.75;
}
.camp-hero__stats {
  display: flex; align-items: center; justify-content: center; gap: 0;
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1);
  border-radius: 16px; padding: 0; overflow: hidden;
  max-width: 480px; margin: 0 auto;
}
.camp-hero__stat {
  flex: 1; padding: 16px 20px; text-align: center;
}
.camp-hero__stat strong {
  display: block; font-size: 1.4rem; font-weight: 900; color: #fff;
  background: var(--g-brand);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.camp-hero__stat span {
  display: block; font-size: .73rem; color: rgba(255,255,255,.5); margin-top: 2px;
}
.camp-hero__stat-divider {
  width: 1px; height: 40px; background: rgba(255,255,255,.1);
}

/* ── Section ── */
.camp-section { padding: 56px 0 80px; }

/* ── Filtreler ── */
.camp-filters {
  display: flex; gap: 8px; margin-bottom: 36px; flex-wrap: wrap;
}
.camp-filter {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 9px 18px; border-radius: var(--r-p);
  border: 1.5px solid var(--border); background: var(--surface);
  color: var(--text2); font-size: .82rem; font-weight: 600;
  cursor: pointer; transition: all .18s ease;
}
.camp-filter:hover { border-color: var(--pink); color: var(--pink); background: color-mix(in srgb, var(--pink) 6%, var(--surface)); }
.camp-filter.active {
  background: var(--g-brand); border-color: transparent;
  color: #fff; box-shadow: 0 4px 16px rgba(255,0,128,.35);
}

/* ── Kart Grid ── */
.camp-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

/* ── Kart ── */
#campGrid .camp-card {
  background: var(--surface);
  border: none;
  border-radius: 24px; overflow: hidden;
  padding: 0;
  display: flex; flex-direction: column;
  box-shadow: 0 4px 24px rgba(0,0,0,.08);
  transition: transform .22s var(--ease-spring), box-shadow .22s ease;
  cursor: pointer;
}
#campGrid .camp-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 48px rgba(0,0,0,.15);
}
.camp-card--expired {
  opacity: .6; cursor: default; filter: saturate(.3);
}
.camp-card--expired:hover { transform: none; box-shadow: 0 4px 24px rgba(0,0,0,.08); }

/* ── Banner ── */
.camp-card__banner {
  position: relative; height: 145px; overflow: hidden;
  display: flex; align-items: flex-end;
}
/* Platform ikonu — arka plan dekor */
.camp-card__banner-ico {
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  font-size: 4.5rem; color: rgba(255,255,255,.15);
  line-height: 1; pointer-events: none;
  transition: transform .35s ease;
}
.camp-card:hover .camp-card__banner-ico {
  transform: translate(-50%, -50%) scale(1.1) rotate(-8deg);
}
/* Görsel varsa gradient yerine görsel */
.camp-card__banner-img {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
}
.camp-card__banner:has(.camp-card__banner-img) .camp-card__banner-ico { display: none; }
/* Görselde okunabilirlik için hafif karartma */
.camp-card__banner::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.35) 0%, transparent 55%);
}
/* İndirim — sol alt */
.camp-card__discount {
  position: relative; z-index: 2;
  font-size: 1.6rem; font-weight: 900; color: #fff;
  line-height: 1; padding: 0 12px 10px;
  text-shadow: 0 2px 10px rgba(0,0,0,.3);
}

/* ── Badge ── */
.camp-badge {
  position: absolute; top: 8px; right: 8px; z-index: 3;
  display: inline-flex; align-items: center; gap: 4px;
  padding: 3px 9px; border-radius: 99px;
  font-size: .62rem; font-weight: 700; letter-spacing: .02em;
}
.camp-badge--urgent   { background: #ef4444; color: #fff; }
.camp-badge--featured { background: #facc15; color: #78350f; }
.camp-badge--new      { background: #22c55e; color: #fff; }
.camp-badge--evergreen{ background: #10b981; color: #fff; }
.camp-badge--expired  { background: #6b7280; color: #fff; }

/* ── Card body ── */
.camp-card__body {
  padding: 10px 12px 12px;
  flex: 1; display: flex; flex-direction: column; gap: 5px;
}
#campGrid .camp-card__footer {
  display: flex; align-items: center; justify-content: space-between;
  margin-top: auto; padding-top: 8px; gap: 8px;
}
.camp-card__plat {
  display: flex; align-items: center; gap: 5px;
  font-size: .65rem; font-weight: 700; color: var(--text3);
  text-transform: uppercase; letter-spacing: .05em;
}
.camp-card__title {
  font-size: .85rem; font-weight: 800; color: var(--text);
  margin: 0; line-height: 1.3;
}
.camp-card__desc {
  font-size: .75rem; color: var(--text2); line-height: 1.5; flex: 1;
}

/* ── Countdown ── */
.camp-card__countdown {
  display: flex; align-items: center; gap: 3px;
  font-size: .68rem; font-weight: 700; color: var(--text2);
  padding: 2px 0; flex-wrap: wrap;
}
.camp-card__countdown i { color: var(--pink); margin-right: 2px; }
.camp-card__countdown--urgent { color: #f87171; }
.camp-card__countdown--urgent i { color: #f87171; }
.camp-card__countdown--ended { color: var(--text3); font-weight: 600; }
.camp-card__countdown--ever { color: #10b981; }
.cd-label { font-size: .55rem; font-weight: 500; opacity: .6; margin-right: 3px; }

/* ── CTA ── */
.camp-card__cta {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 14px; border-radius: 99px;
  background: var(--g-brand); color: #fff; border: none;
  font-size: .75rem; font-weight: 700; cursor: pointer;
  transition: filter .18s; flex-shrink: 0; white-space: nowrap;
}
.camp-card__cta:hover { filter: brightness(1.08); }
.camp-card__cta--disabled {
  background: var(--bg-alt); color: var(--text3); cursor: not-allowed;
}

/* ── Campaign Modal ── */
.cmodal-overlay {
  position: fixed; inset: 0; z-index: 8500;
  background: rgba(10,12,28,.7); backdrop-filter: blur(8px);
  display: flex; align-items: center; justify-content: center;
  padding: 16px;
  opacity: 0; pointer-events: none;
  transition: opacity .24s ease;
}
.cmodal-overlay.open { opacity: 1; pointer-events: all; }
.cmodal {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 24px; overflow: hidden;
  width: min(560px, 100%);
  max-height: 88dvh;
  display: flex; flex-direction: column;
  box-shadow: 0 32px 90px rgba(0,0,0,.4);
  transform: translateY(28px) scale(.95);
  transition: transform .3s var(--ease-spring);
  position: relative;
}
.cmodal-overlay.open .cmodal { transform: translateY(0) scale(1); }
.cmodal__close {
  position: absolute; top: 14px; right: 14px; z-index: 10;
  width: 34px; height: 34px; border-radius: 50%;
  background: rgba(0,0,0,.3); border: 1px solid rgba(255,255,255,.2);
  color: #fff; cursor: pointer; font-size: .9rem;
  display: flex; align-items: center; justify-content: center;
  transition: background .15s;
}
.cmodal__close:hover { background: rgba(255,0,128,.7); }

/* Modal header */
.cmodal__header {
  padding: 28px 24px 24px; position: relative;
  display: flex; align-items: center; gap: 16px;
  flex-shrink: 0;
}
.cmodal__header-ico {
  width: 60px; height: 60px; border-radius: 18px;
  background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.25);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.7rem; color: #fff; flex-shrink: 0;
}
.cmodal__plat {
  display: flex; align-items: center; gap: 6px;
  font-size: .73rem; font-weight: 700; color: rgba(255,255,255,.7);
  text-transform: uppercase; letter-spacing: .05em; margin-bottom: 4px;
}
.cmodal__title { font-size: 1.2rem; font-weight: 900; color: #fff; margin: 0 0 4px; }
.cmodal__discount {
  font-size: .85rem; font-weight: 700; color: rgba(255,255,255,.85);
  background: rgba(255,255,255,.15); border-radius: 99px; padding: 3px 12px; display: inline-block;
}

/* Modal scrollable content */
.cmodal__content {
  padding: 22px 22px 26px;
  overflow-y: auto; flex: 1; display: flex; flex-direction: column; gap: 18px;
}
.cmodal__content::-webkit-scrollbar { width: 4px; }
.cmodal__content::-webkit-scrollbar-thumb { background: var(--border2); border-radius: 4px; }

/* Kupon */
.cmodal__coupon {
  background: var(--bg-alt); border: 1px solid var(--border);
  border-radius: 14px; padding: 14px 16px;
}
.cmodal__coupon-label {
  font-size: .72rem; font-weight: 700; color: var(--text3);
  text-transform: uppercase; letter-spacing: .05em; margin-bottom: 10px;
  display: flex; align-items: center; gap: 6px;
}
.cmodal__coupon-label i { color: var(--pink); }
.cmodal__coupon-row { display: flex; align-items: center; gap: 10px; }
.cmodal__code {
  flex: 1; font-family: monospace; font-size: 1.2rem; font-weight: 900;
  letter-spacing: .14em; color: var(--text);
  background: var(--surface); border: 1.5px dashed var(--border2);
  border-radius: 10px; padding: 10px 16px; text-align: center;
}
.cmodal__copy-btn {
  display: flex; align-items: center; gap: 6px;
  background: var(--g-brand); color: #fff; border: none;
  border-radius: 10px; padding: 10px 18px;
  font-size: .82rem; font-weight: 700; cursor: pointer;
  transition: opacity .18s, transform .15s;
  white-space: nowrap;
}
.cmodal__copy-btn:hover { opacity: .88; }
.cmodal__copy-btn--done { background: linear-gradient(135deg, #059669, #10B981); }

/* Açıklama */
.cmodal__desc {
  font-size: .88rem; color: var(--text2); line-height: 1.75; margin: 0;
}

/* Avantajlar */
.cmodal__benefits-title {
  font-size: .78rem; font-weight: 800; color: var(--text);
  text-transform: uppercase; letter-spacing: .05em; margin-bottom: 10px;
  display: flex; align-items: center; gap: 7px;
}
.cmodal__benefits-title i { color: var(--pink); }
.cmodal__benefits-list {
  list-style: none; margin: 0; padding: 0;
  display: flex; flex-direction: column; gap: 8px;
}
.cmodal__benefits-list li {
  display: flex; align-items: center; gap: 10px;
  font-size: .85rem; color: var(--text2);
}
.cmodal__benefit-ico {
  width: 30px; height: 30px; border-radius: 9px;
  background: color-mix(in srgb, var(--pink) 10%, var(--surface));
  display: flex; align-items: center; justify-content: center;
  font-size: .78rem; color: var(--pink); flex-shrink: 0;
}

/* Accordion */
.cmodal__accordion { display: flex; flex-direction: column; gap: 6px; }
.acc-item {
  border: 1px solid var(--border); border-radius: 12px; overflow: hidden;
}
.acc-btn {
  display: flex; align-items: center; justify-content: space-between;
  width: 100%; padding: 13px 16px; background: none; border: none;
  color: var(--text); font-size: .85rem; font-weight: 700;
  cursor: pointer; text-align: left; gap: 12px;
  transition: background .15s;
}
.acc-btn:hover { background: var(--bg-alt); }
.acc-chev {
  transition: transform .24s var(--ease-spring); color: var(--text3); flex-shrink: 0;
}
.acc-item--open .acc-chev { transform: rotate(180deg); }
.acc-body {
  max-height: 0; overflow: hidden;
  transition: max-height .3s ease, padding .3s ease;
  padding: 0 16px;
}
.acc-item--open .acc-body {
  max-height: 240px; padding: 0 16px 14px;
}
.acc-body p {
  font-size: .82rem; color: var(--text2); line-height: 1.7; margin: 0;
}

/* CTA row */
.cmodal__cta-row {
  display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px;
}
.cmodal__cta-main {
  grid-column: 1 / -1; display: flex; align-items: center; justify-content: center;
  gap: 8px; padding: 13px; border-radius: 12px;
  font-size: .9rem; font-weight: 700; text-decoration: none;
  box-shadow: 0 4px 18px rgba(255,0,128,.28);
  transition: opacity .18s, transform .15s;
}
.cmodal__cta-main:hover { opacity: .9; transform: translateY(-1px); }
.cmodal__cta-sec, .cmodal__cta-wa {
  display: flex; align-items: center; justify-content: center; gap: 7px;
  padding: 11px; border-radius: 12px;
  font-size: .8rem; font-weight: 700; text-decoration: none;
  border: 1.5px solid var(--border); color: var(--text2);
  transition: all .18s ease;
}
.cmodal__cta-sec:hover { border-color: var(--pink); color: var(--pink); background: color-mix(in srgb, var(--pink) 6%, var(--surface)); }
.cmodal__cta-wa { border-color: rgba(37,211,102,.4); color: #25D366; }
.cmodal__cta-wa:hover { background: rgba(37,211,102,.08); border-color: #25D366; }

/* ── Toast ── */
.camp-toast {
  position: fixed; bottom: 90px; left: 50%; transform: translateX(-50%) translateY(20px);
  background: #1a2540; border: 1px solid rgba(34,197,94,.3); color: #4ade80;
  display: flex; align-items: center; gap: 10px;
  padding: 12px 22px; border-radius: 99px; font-size: .85rem; font-weight: 700;
  box-shadow: 0 8px 32px rgba(0,0,0,.3); z-index: 9999;
  opacity: 0; pointer-events: none;
  transition: opacity .25s ease, transform .25s var(--ease-spring);
  white-space: nowrap;
}
.camp-toast--show { opacity: 1; transform: translateX(-50%) translateY(0); }
.disabled-btn { opacity: .5; pointer-events: none; }

/* ── Responsive ── */
@media (max-width: 1024px) {
  .camp-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
}
@media (max-width: 720px) {
  .camp-grid { grid-template-columns: 1fr; gap: 14px; }
  .camp-card { padding: 22px 20px; border-radius: var(--r-l); }
  .camp-card h3 { font-size: 18px; margin-bottom: 8px; }
  .camp-card p { font-size: 13px; line-height: 1.55; margin-bottom: 16px; }
  .camp-hero { padding: 56px 0 64px; }
}
@media (max-width: 480px) {
  .camp-grid { grid-template-columns: 1fr; gap: 12px; }
  .camp-card { padding: 20px 18px; border-radius: var(--r-l); }
  .camp-card h3 { font-size: 17px; margin-bottom: 6px; }
  .camp-card p { font-size: 12.5px; line-height: 1.5; margin-bottom: 14px; }
  .camp-hero { padding: 44px 0 52px; }
  .camp-hero__stats { flex-direction: column; gap: 0; max-width: 100%; }
  .camp-hero__stat-divider { width: 80%; height: 1px; margin: 0 auto; }
  .camp-section { padding: 36px 0 60px; }
  .cmodal__cta-row { grid-template-columns: 1fr; }
  .cmodal__cta-main { grid-column: auto; }
  .cmodal__coupon-row { flex-direction: column; }
  .cmodal__copy-btn { width: 100%; justify-content: center; }
  .camp-toast { bottom: 80px; font-size: .78rem; padding: 10px 18px; }
  .cmodal { border-radius: 20px; }
}
@media (max-width: 420px) {
  .camp-filters { gap: 6px; }
  .camp-filter { padding: 8px 13px; font-size: .77rem; }
  .camp-card__banner { height: 150px; }
  .camp-card__discount { font-size: 2rem; }
  .camp-card__banner-ico { font-size: 6rem; }
}
