/* Ege Vida — temel değişkenler */
:root {
  --color-bg: #0b1020;
  --color-surface: #121a32;
  --color-surface-2: #1a2544;
  --color-text: #e8edf7;
  --color-muted: #98a4c3;
  /* Ana: #0065f7 / ara: #42E0F5 #42A7F5 #42F5CF */
  --color-primary: #0065f7;
  --color-accent: #0065f7;
  --color-accent-2: #42e0f5;
  --color-accent-3: #42a7f5;
  --color-mint: #42f5cf;
  --color-primary-dark: #0052c4;
  --color-line: rgba(255, 255, 255, 0.08);
  /* RGB, rgba(...) ile gölge / kenarlık için */
  --color-primary-rgb: 0, 101, 247;
  --color-mint-rgb: 66, 245, 207;
  --font: "Outfit", system-ui, sans-serif;
  --font-display: "Sora", var(--font);
  --shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
  --radius: 12px;
  --radius-sm: 8px;
  --max: 1200px;
  /* Açık menü offset: şerit 64px, logo görsel 2× büyütme ile aynı alanda */
  --header-h: calc(64px + 1rem + 2px);
  --header-logo-2x-slot: 128px; /* 64px çizgide, scale(2) ile 128px görsel */
  --topbar-h: 2.22rem;
  /* Mobil açık menü: topbar + ana header */
  --head-offset: calc(var(--topbar-h) + var(--header-h));
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}
/* Son satırlarda yalnız kalan kısa kelimeleri azalt (Chromium 114+, Safari 18+) */
.section__kicker,
.section__title,
.home-promise__l1,
.home-promise__l2,
.home-promise__head,
.hero-slider__title,
.page-hero h1,
.product-card__title,
.value-card h3,
.footer__title,
.contact-block--slogan h3,
.contact-block__slogan,
.catalog-toolbar__title {
  text-wrap: balance;
}
.prose p,
.section__text,
.product-card__text,
.value-card p,
.home-promise__body p,
.hero-slider__subtitle,
.page-hero p,
.contact-block__lede,
.contact-block__footnote,
.card p {
  text-wrap: pretty;
  -webkit-hyphens: auto;
  hyphens: auto;
  hyphenate-limit-chars: 8 3 2;
  overflow-wrap: break-word;
}
body {
  margin: 0;
  font-family: var(--font);
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--color-text);
  background: var(--color-bg);
  min-height: 100vh;
}

h1,
h2,
h3,
h4 {
  font-family: var(--font-display);
  font-weight: 600;
  line-height: 1.2;
  margin: 0 0 0.75rem;
  letter-spacing: -0.02em;
}

a {
  color: var(--color-accent-2);
  text-decoration: none;
  transition: color 0.2s, opacity 0.2s;
}
a:hover {
  color: #fff;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
  vertical-align: middle;
}

.container {
  width: 100%;
  max-width: var(--max);
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

/* Üst bar + header */
.head-stack {
  position: sticky;
  top: 0;
  z-index: 200;
  background: linear-gradient(180deg, #070a14 0%, #0b1020 100%);
}
/* Dikey tablet + büyük portre: yan boşluk, üst/alt çubuklara yakın hizada */
@media (orientation: portrait) and (min-width: 40em) {
  .head-stack .container {
    padding-left: max(1.5rem, env(safe-area-inset-left, 0px));
    padding-right: max(1.5rem, env(safe-area-inset-right, 0px));
  }
}
.topbar {
  min-height: var(--topbar-h);
  background: #05060e;
  border-bottom: 1px solid var(--color-line);
  font-size: 0.8rem;
}
.topbar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: var(--topbar-h);
  gap: 1rem;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}
.topbar__left {
  min-width: 0;
  display: flex;
  align-items: center;
  flex: 1;
}
.topbar__right {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}
/* Topbar’da dikey dizi sosyal ikonları */
.topbar__social {
  margin-top: 0;
}
.social--topbar .social__list {
  gap: 0.5rem;
}
.social--topbar .social__link {
  width: 2.05rem;
  height: 2.05rem;
  color: #b0bdd9;
  background: rgba(255, 255, 255, 0.04);
}
.social--topbar .social__link:hover {
  color: #fff;
  background: rgba(0, 101, 247, 0.2);
  border-color: rgba(0, 101, 247, 0.35);
  transform: none;
}
.social--topbar .social__link svg {
  width: 16px;
  height: 16px;
  display: block;
}
.topbar__right .header__lang {
  margin-left: 0;
  gap: 0.4rem;
  display: inline-flex;
  align-items: center;
  align-self: center;
}
.topbar__right .header__lang-label {
  font-size: 0.72rem;
  line-height: 1;
  color: var(--color-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.topbar__right .header__lang-select {
  min-width: 8.25rem;
  max-width: min(16rem, 50vw);
  min-height: 1.9rem;
  font-size: 0.8rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  margin: 0;
  line-height: 1.2;
  vertical-align: middle;
  align-self: center;
}
/* Mobil: 4 sosyal tek satır + dil; satır %100, taşma yok */
@media (max-width: 47.99em) {
  .topbar__inner {
    flex-wrap: nowrap;
    gap: 0.35rem;
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
  }
  .topbar__left {
    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
  }
  .topbar__right {
    flex: 0 0 auto;
    min-width: 0;
    max-width: 42%;
  }
  .social--topbar .social__list {
    flex-wrap: nowrap;
    gap: 0.15rem;
    justify-content: flex-start;
  }
  .social--topbar .social__link {
    width: 1.72rem;
    height: 1.72rem;
    min-width: 1.72rem;
    flex-shrink: 0;
  }
  .social--topbar .social__link svg {
    width: 13px;
    height: 13px;
  }
  .topbar__right .header__lang {
    flex-direction: row;
    align-items: center;
    gap: 0.2rem;
    max-width: 100%;
  }
  .topbar__right .header__lang-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
  .topbar__right .header__lang-select {
    min-width: 0;
    width: 100%;
    max-width: 100%;
    font-size: 0.7rem;
    padding: 0.2rem 0.3rem;
    min-height: 1.65rem;
  }
}
.header {
  position: relative;
  z-index: 1;
  background: linear-gradient(180deg, rgba(11, 16, 32, 0.97) 0%, rgba(11, 16, 32, 0.88) 100%);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--color-line);
}
.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 0;
  padding: 0.5rem 0;
  gap: 0.5rem 1rem;
  box-sizing: border-box;
}
.header__actions {
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  gap: 0.4rem 1.25rem;
}
.header__logo {
  display: flex;
  flex: 0 0 var(--header-logo-2x-slot);
  width: var(--header-logo-2x-slot);
  min-width: var(--header-logo-2x-slot);
  max-width: var(--header-logo-2x-slot);
  align-items: center;
  line-height: 0;
  color: inherit;
  text-decoration: none;
  border-radius: 8px;
  height: 64px;
  padding: 0;
  margin: 0;
  overflow: visible;
  position: relative;
  z-index: 2;
  transition: filter 0.3s ease;
  will-change: auto;
}
.header__logo:hover {
  color: inherit;
  filter: drop-shadow(0 0 28px rgba(var(--color-primary-rgb), 0.5))
    drop-shadow(0 0 2px rgba(var(--color-mint-rgb), 0.4));
}
.header__logo:hover .header__logo-mark,
.header__logo:focus-visible .header__logo-mark {
  transform: scale(2.08);
}
.header__logo:active .header__logo-mark {
  transform: scale(1.96);
}
img.header__logo-mark {
  width: 64px;
  height: 64px;
  max-width: 100%;
  max-height: 64px;
  border-radius: 8px;
  object-fit: contain;
  flex-shrink: 0;
  display: block;
  /* Şerit yüksekliği 64px kalır: yerleşim 64px, gölgeleme 2× büyütme (128px) */
  transform: scale(2);
  transform-origin: left center;
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
@media (max-width: 63.99em) {
  :root {
    --header-h: calc(52px + 0.8rem + 2px);
    --header-logo-2x-slot: 104px; /* 52px ×2 */
  }
  .header__inner {
    padding: 0.4rem 0;
  }
  .header__logo {
    height: 52px;
  }
  img.header__logo-mark {
    width: 52px;
    height: 52px;
    max-height: 52px;
    transform: scale(2);
    transform-origin: left center;
  }
  .header__logo:hover,
  .header__logo:focus-visible {
    filter: none;
  }
  .header__logo:active {
    transform: none;
  }
  .header__logo:hover .header__logo-mark,
  .header__logo:focus-visible .header__logo-mark {
    transform: scale(2.08);
  }
  .header__logo:active .header__logo-mark {
    transform: scale(1.96);
  }
}

/* Nav (masaüstü: .header__actions içinde sağa yaslı) */
.nav {
  display: flex;
  flex: 0 1 auto;
  min-width: 0;
  align-items: center;
  gap: 1.5rem;
}
.nav__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 0.15rem 1.25rem;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.nav__link {
  color: var(--color-muted);
  font-size: 0.95rem;
  font-weight: 500;
  padding: 0.4rem 0.2rem;
  position: relative;
  text-decoration: none;
}
.nav__link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 2px;
  background: var(--color-accent);
  transition: width 0.2s;
}
.nav__link:hover,
.nav__link--active {
  color: var(--color-text);
}
.nav__link:hover::after,
.nav__link--active::after {
  width: 100%;
}

.header__lang {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  flex-shrink: 0;
  margin-left: 0.35rem;
}
.header__lang-label {
  font-size: 0.72rem;
  color: var(--color-muted);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
.header__lang-select {
  font-family: var(--font), "Noto Sans Arabic", "Noto Sans", system-ui, sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  padding: 0.4rem 1.75rem 0.4rem 0.55rem;
  min-width: 7.5rem;
  border-radius: var(--radius-sm);
  border: 1px solid var(--color-line);
  background: var(--color-surface);
  color: var(--color-text);
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%2398a4c3' d='M0 0h10L5 6z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.4rem center;
  background-size: 8px 5px;
}
.header__lang-select:hover,
.header__lang-select:focus {
  border-color: var(--color-accent);
  outline: none;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.65rem 1.25rem;
  font-family: var(--font);
  font-size: 0.95rem;
  font-weight: 600;
  border-radius: var(--radius-sm);
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: transform 0.15s, box-shadow 0.2s, background 0.2s;
}
.btn:active {
  transform: translateY(1px);
}
.btn--primary {
  background: linear-gradient(135deg, var(--color-primary), var(--color-accent-3));
  color: #fff;
  box-shadow: 0 4px 24px rgba(var(--color-primary-rgb), 0.45);
}
.btn--primary:hover {
  color: #fff;
  background: linear-gradient(135deg, #0078ff, #42a7f5);
  box-shadow: 0 8px 32px rgba(var(--color-primary-rgb), 0.55);
}
.btn--ghost {
  background: rgba(255, 255, 255, 0.06);
  color: var(--color-text);
  border: 1px solid var(--color-line);
}
.btn--ghost:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}
.header__menu-btn {
  display: none;
  width: 44px;
  height: 44px;
  border: 1px solid var(--color-line);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
  cursor: pointer;
  position: relative;
  align-items: center;
  justify-content: center;
}
.header__menu-icon,
.header__menu-icon::before,
.header__menu-icon::after {
  display: block;
  width: 20px;
  height: 2px;
  background: var(--color-text);
  border-radius: 1px;
  transition: transform 0.2s, opacity 0.2s;
}
.header__menu-icon {
  position: relative;
}
.header__menu-icon::before,
.header__menu-icon::after {
  content: "";
  position: absolute;
  left: 0;
}
.header__menu-icon::before {
  top: -6px;
}
.header__menu-icon::after {
  top: 6px;
}
.header__menu-btn[aria-expanded="true"] .header__menu-icon {
  background: transparent;
}
.header__menu-btn[aria-expanded="true"] .header__menu-icon::before {
  top: 0;
  transform: rotate(45deg);
}
.header__menu-btn[aria-expanded="true"] .header__menu-icon::after {
  top: 0;
  transform: rotate(-45deg);
}

/* Masaüstü: menü hâlâ sağda; panel sadece sarmalayıcı; üstte logo yok */
.header__nav-panel {
  position: static;
  display: block;
  flex: 1 1 auto;
  min-width: 0;
}
body.nav-panel-open {
  overflow: hidden;
}

@media (max-width: 63.99em) {
  .head-stack .container {
    padding-left: max(1.4rem, env(safe-area-inset-left, 0px));
    padding-right: max(1.4rem, env(safe-area-inset-right, 0px));
  }
  .header__menu-btn {
    display: inline-flex;
  }
  /* Tam ekran menü: tam ekran + dikey/ yatay orta blok */
  .header__nav-panel {
    position: fixed;
    inset: 0;
    width: 100%;
    min-width: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    z-index: 10000;
    display: none;
    flex-direction: column;
    background: linear-gradient(180deg, #05060e 0%, #0b1020 50%, #121a32 100%);
    box-sizing: border-box;
  }
  .header__nav-panel--is-open {
    display: flex;
  }
  .header__nav-panel-close {
    position: absolute;
    z-index: 2;
    top: max(0.65rem, env(safe-area-inset-top, 0.25rem));
    right: max(0.85rem, env(safe-area-inset-right, 0.25rem));
    width: 50px;
    height: 50px;
    border: 1px solid var(--color-line);
    border-radius: var(--radius-sm);
    background: var(--color-surface-2);
    color: var(--color-text);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    flex-shrink: 0;
    transition: background 0.2s, border-color 0.2s, color 0.2s;
  }
  .header__nav-panel-close:hover,
  .header__nav-panel-close:focus-visible {
    background: rgba(var(--color-primary-rgb), 0.2);
    border-color: var(--color-accent-3);
    color: #fff;
    outline: none;
  }
  .header__nav-panel-close-ico {
    font-size: 1.75rem;
    font-weight: 300;
    line-height: 1;
  }
  [dir="rtl"] .header__nav-panel-close {
    right: auto;
    left: max(0.85rem, env(safe-area-inset-left, 0.25rem));
  }
  .header__nav-panel-center {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 0;
    width: 100%;
    max-width: 28rem;
    margin: 0 auto;
    padding: 4.25rem max(1.35rem, env(safe-area-inset-left, 0px)) 2.5rem
      max(1.35rem, env(safe-area-inset-right, 0px));
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    text-align: center;
    box-sizing: border-box;
  }
  .header__nav-panel-logo {
    display: inline-block;
    margin-bottom: 1.75rem;
    line-height: 0;
  }
  .header__nav-panel-mark {
    width: clamp(3.5rem, 12vw, 4.5rem);
    height: auto;
    aspect-ratio: 1;
    object-fit: contain;
    border-radius: 10px;
    display: block;
  }
  .header__nav-panel .nav {
    position: static;
    flex: 0 0 auto;
    min-height: 0;
    overflow: visible;
    display: block;
    width: 100%;
  }
  .header__nav-panel .nav__list {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.15rem 0;
  }
  .header__nav-panel .nav__item {
    width: 100%;
    text-align: center;
  }
  .header__nav-panel .nav__link {
    display: inline-block;
    width: 100%;
    max-width: 20rem;
    margin: 0 auto;
    padding: 0.9rem 0.75rem;
    font-size: 1.08rem;
    font-weight: 500;
    border: none;
    border-radius: 8px;
  }
  .header__nav-panel .nav__link::after {
    display: none;
  }
  .header__lang {
    width: 100%;
    justify-content: space-between;
    margin-left: 0;
    padding-top: 0.5rem;
    border-top: 1px solid var(--color-line);
  }
  .header__lang-select {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
  }
}
@media (max-width: 63.99em) and (orientation: portrait) {
  .head-stack .container {
    padding-left: max(1.6rem, calc(0.45rem + env(safe-area-inset-left, 0px)));
    padding-right: max(1.6rem, calc(0.45rem + env(safe-area-inset-right, 0px)));
  }
}
@media (min-width: 64em) {
  .header__nav-panel-close {
    display: none !important;
  }
  .header__nav-panel-center {
    display: contents;
  }
  a.header__nav-panel-logo,
  .header__nav-panel-center .header__nav-panel-logo {
    display: none !important;
  }
  .header__nav-panel {
    position: static !important;
    inset: auto !important;
    z-index: auto !important;
    /* Masaüstü: tüm kalan alanı doldur, menüyü sağa sabitle */
    display: flex !important;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-end;
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
    height: auto;
    width: auto;
    max-width: none;
    padding: 0 !important;
    background: none !important;
  }
  .header__nav-panel .nav {
    position: static;
    flex: 0 1 auto;
    overflow: visible;
    min-height: 0;
    padding: 0;
  }
  .header__nav-panel .nav__list {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
  }
  .header__nav-panel .nav__link {
    display: inline;
    padding: 0.4rem 0.2rem;
    font-size: 0.95rem;
    border-bottom: none;
  }
  .header__nav-panel .nav__link::after {
    display: block;
  }
}

/* Ana sayfa: üst söz, şerit, “birlikte” bölümleri */
.home-promise {
  padding: 3.5rem 0 3.25rem;
}
.home-promise__row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem 2.5rem;
  align-items: center;
}
@media (min-width: 50em) {
  .home-promise__row {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.95fr);
    align-items: start;
  }
}
.home-promise__copy {
  min-width: 0;
}
.home-promise__head {
  font-family: var(--font-display);
  color: #fff;
  line-height: 1.1;
  margin: 0 0 1.5rem;
  text-align: center;
}
.home-promise__visual {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 0;
}
.home-promise__screw-outer {
  width: 100%;
  max-width: min(360px, 100%);
}
/* Vida + orta rozet: arka planda ayrı çerçeve/gölge yok (sadece hizalama) */
.home-promise__screw-frame {
  position: relative;
  width: 100%;
  line-height: 0;
  overflow: visible;
  background: none;
  box-shadow: none;
  border: none;
  border-radius: 0;
}
.home-promise__screw-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0;
  object-fit: contain;
  position: relative;
}
.home-promise__l1 {
  display: block;
  font-size: clamp(0.8rem, 1.1vw, 0.9rem);
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--color-mint);
  font-weight: 600;
  margin-bottom: 0.35rem;
}
.home-promise__l2 {
  display: block;
  font-size: clamp(2.1rem, 5.5vw, 3.25rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  background: linear-gradient(
    100deg,
    #fff 0%,
    var(--color-accent-2) 40%,
    var(--color-accent-3) 70%,
    var(--color-primary) 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
@media (min-width: 50em) {
  .home-promise__head {
    text-align: left;
  }
  .home-promise .prose {
    margin-top: 0.5rem;
  }
}
/* Dikey tablet: metin %70 / vida %30, sol iç boşluk ~3× artırılmış */
@media (orientation: portrait) and (min-width: 40em) {
  .home-promise__row {
    grid-template-columns: minmax(0, 7fr) minmax(0, 3fr);
    gap: 1.25rem 1.5rem;
    align-items: start;
  }
  .home-promise__copy {
    padding-left: clamp(2.25rem, 6vw, 4.5rem);
  }
  .home-promise__head {
    text-align: left;
  }
  .home-promise__visual {
    justify-content: center;
  }
  .home-promise__screw-outer {
    max-width: 100%;
  }
}
.home-promise__body p {
  font-size: 1.02rem;
}
.home-strip {
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
  padding: 1.35rem 1.5rem;
  background: linear-gradient(95deg, rgba(18, 26, 50, 0.85), rgba(var(--color-primary-rgb), 0.12));
  gap: 1rem 1.5rem;
  justify-content: space-between;
}
.home-strip__left {
  display: flex;
  flex-direction: column;
  gap: 0.5rem 1rem;
  min-width: min(100%, 280px);
  flex: 1;
}
@media (min-width: 40em) {
  .home-strip__left {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
  }
}
.home-strip__tag {
  display: inline-block;
  font-weight: 700;
  color: var(--color-accent-2);
  font-size: 0.95rem;
  letter-spacing: 0.04em;
}
.home-strip__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 0.6rem;
  align-items: center;
}
.home-strip__pill {
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--color-muted);
  background: var(--color-surface-2);
  border: 1px solid var(--color-line);
  padding: 0.3rem 0.65rem;
  border-radius: 99px;
}
/* Sol alt köşe WhatsApp */
.wa-fab {
  position: fixed;
  left: max(1rem, env(safe-area-inset-left));
  bottom: max(1.1rem, env(safe-area-inset-bottom));
  z-index: 500;
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(160deg, #2fe065, #0d8f4a);
  color: #fff;
  box-shadow: 0 4px 24px rgba(18, 160, 78, 0.55);
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
}
.wa-fab:hover {
  transform: scale(1.06);
  color: #fff;
  box-shadow: 0 6px 30px rgba(18, 160, 78, 0.65);
}
.wa-fab__ring {
  position: absolute;
  inset: -3px;
  border-radius: 50%;
  border: 2px solid rgba(47, 224, 101, 0.45);
  animation: wa-pulse 2.4s ease-out infinite;
  pointer-events: none;
}
@keyframes wa-pulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.75;
  }
  50% {
    transform: scale(1.1);
    opacity: 0;
  }
}
.wa-fab__ico {
  position: relative;
  z-index: 1;
  display: block;
  filter: drop-shadow(0 1px 0 rgba(0, 0, 0, 0.2));
}
/* Hero */
.hero {
  min-height: min(78vh, 800px);
  position: relative;
  overflow: hidden;
}
.hero--split {
  min-height: min(78vh, 820px);
  display: block;
  overflow: hidden;
  background: #0b1020;
}
.hero--split__inner {
  display: grid;
  min-height: min(78vh, 820px);
  grid-template-columns: 1fr;
}
/* İkili sütun yalnızca geniş + yatay: büyük dikey tablet (ör. iPad Pro portre) slayt üstte, vitrin altta */
@media (min-width: 64em) and (orientation: landscape) {
  .hero--split__inner {
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, min(32rem, 50vw));
    align-items: stretch;
    min-height: min(78vh, 820px);
  }
  .hero--split__slider {
    min-width: 0;
    min-height: min(78vh, 820px);
  }
  .hero-spotlight {
    min-height: min(78vh, 820px);
  }
}
.hero--split__slider {
  min-height: min(50vh, 400px);
  position: relative;
  display: flex;
  flex-direction: column;
}
@media (max-width: 63.99em) {
  .hero--split {
    min-height: 0;
  }
  .hero--split__inner {
    min-height: 0;
  }
  .hero--split__slider .hero-slider {
    min-height: min(60vh, 520px) !important;
  }
  /* Dar telefon / yatay: vitrin gizli */
  .hero-spotlight {
    display: none;
  }
}
/*
 * Dikey tablet / geniş portre: tek sütun slayt; öne çıkan vitrin tüm dikey tablette gizli.
 */
@media (orientation: portrait) and (min-width: 40em) {
  .hero.hero--split {
    overflow: visible;
  }
  .hero--split__inner {
    grid-template-columns: 1fr !important;
    min-height: 0;
    align-content: start;
  }
  .hero--split {
    min-height: 0;
    overflow: visible;
  }
  .hero--split__slider {
    min-height: min(40vh, 360px);
    order: 0;
    position: relative;
    z-index: auto;
    width: 100%;
  }
  .hero--split__slider .hero-slider {
    min-height: min(40vh, 360px) !important;
  }
  .hero-spotlight {
    display: none !important;
  }
}
/* Çok dar portre telefon: vitrin yine kapalı */
@media (orientation: portrait) and (max-width: 39.99em) {
  .hero-spotlight {
    display: none !important;
  }
}
/* SAĞ: ürün vitrini (ana sayfa) */
.hero-spotlight {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 0;
  background: linear-gradient(180deg, #121a32, #0e152a);
  border-left: 1px solid var(--color-line);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.03);
}
.hero-spotlight__stack {
  flex: 1 1 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  /* Üst boşluk: “Öne çıkan” kicker kaldırıldı, hafif nefes payı */
  padding: 0.45rem 0.7rem 0.5rem;
  overflow-y: auto;
}
/* Yatay + geniş: 1/2/3 alt alta; kartlar sütun yüksekliğini eşit paylaşır, Tüm ürünlere kadar yayılır */
@media (min-width: 64em) and (orientation: landscape) {
  .hero-spotlight {
    min-height: min(78vh, 820px);
    height: 100%;
  }
  .hero-spotlight__kicker {
    padding: 0.35rem 0.5rem 0;
    flex-shrink: 0;
  }
  .hero-spotlight__stack[data-cols="1"],
  .hero-spotlight__stack[data-cols="2"],
  .hero-spotlight__stack[data-cols="3"] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0.35rem;
    padding: 0 0.4rem 0.1rem;
    flex: 1 1 0;
    min-height: 0;
  }
  .hero-spotlight__stack[data-cols] .hero-spotlight__card--mini {
    flex: 1 1 0;
    min-height: 0;
    max-height: none;
    width: 100%;
  }
  .hero-spotlight__stack[data-cols] .hero-spotlight__body {
    padding: 0.4rem 0.4rem 0.45rem;
    flex: 0 0 auto;
  }
  .hero-spotlight__stack[data-cols] .hero-spotlight__name {
    font-size: 0.82rem;
    line-height: 1.2;
  }
  .hero-spotlight__stack[data-cols] .hero-spotlight__short {
    font-size: 0.7rem;
    line-height: 1.32;
    -webkit-line-clamp: 2;
  }
  .hero-spotlight__stack[data-cols] .hero-spotlight__card--mini .hero-spotlight__media {
    flex: 1 1 0;
    min-height: 0;
    max-height: none;
    aspect-ratio: auto;
    flex-shrink: 1;
  }
  .hero-spotlight__stack[data-cols] .hero-spotlight__img {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
  }
  .hero-spotlight__all {
    padding: 0.2rem 0.35rem 0.4rem;
    flex-shrink: 0;
  }
  .hero-spotlight__all-row {
    gap: 0.2rem 0.35rem;
  }
  .hero-spotlight__all-link {
    padding: 0.3rem 0.45rem;
  }
  .hero-spotlight__nav {
    width: 2.1rem;
    height: 2.1rem;
  }
}
.hero-spotlight__all {
  margin: 0;
  margin-top: 0;
  flex-shrink: 0;
  padding: 0.5rem 0.4rem 0.7rem;
  border-top: 1px solid var(--color-line);
  text-align: center;
}
.hero-spotlight__all-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.35rem 0.5rem;
}
.hero-spotlight__nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(0, 0, 0, 0.3);
  color: var(--color-text);
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
  cursor: pointer;
  padding: 0;
  line-height: 0;
  transition: background 0.2s, border-color 0.2s, color 0.2s, transform 0.15s;
  flex-shrink: 0;
}
.hero-spotlight__nav-ico {
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 600;
}
.hero-spotlight__nav:hover,
.hero-spotlight__nav:focus-visible {
  background: rgba(var(--color-primary-rgb), 0.3);
  border-color: var(--color-accent-3);
  color: #fff;
  outline: none;
}
.hero-spotlight__nav:focus-visible {
  box-shadow: 0 0 0 2px var(--color-accent-3);
}
.hero-spotlight__nav:active {
  transform: scale(0.96);
}
.hero-spotlight__all-link {
  font-size: 0.78rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-accent-2);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  flex: 0 1 auto;
  padding: 0.4rem 0.55rem;
  border-radius: var(--radius-sm);
  transition: color 0.2s, background 0.2s, box-shadow 0.2s;
}
.hero-spotlight__all-link:hover,
.hero-spotlight__all-link:focus-visible {
  color: #fff;
  background: rgba(var(--color-primary-rgb), 0.15);
  box-shadow: 0 0 0 1px rgba(var(--color-primary-rgb), 0.35);
}
@media (max-width: 63.99em) {
  .hero-spotlight {
    border-left: none;
  }
}
.hero-spotlight__kicker {
  margin: 0;
  padding: 0.9rem 1.1rem 0.3rem;
  text-transform: uppercase;
  font-size: 0.7rem;
  letter-spacing: 0.12em;
  color: var(--color-accent-2);
  font-weight: 600;
  font-family: var(--font-display);
}
.hero-spotlight__card {
  display: flex;
  flex: 0 1 auto;
  flex-direction: column;
  margin: 0;
  padding: 0;
  border-radius: var(--radius);
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  background: linear-gradient(145deg, #1a2544, #10182e);
  border: 1px solid var(--color-line);
  transition: box-shadow 0.3s, border-color 0.3s, transform 0.25s ease;
  min-height: 0;
}
@media (min-width: 64em) {
  .hero-spotlight__card--mini {
    max-height: min(40vh, 280px);
  }
}
.hero-spotlight__card--mini {
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.2);
}
.hero-spotlight__card:hover,
.hero-spotlight__card:focus-visible {
  color: var(--color-text);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(var(--color-primary-rgb), 0.2);
  border-color: rgba(var(--color-primary-rgb), 0.35);
  transform: translateY(-2px) scale(1.01);
}
.hero-spotlight__card:focus-visible {
  outline: 2px solid var(--color-accent-3);
  outline-offset: 2px;
}
.hero-spotlight__media {
  position: relative;
  aspect-ratio: 16/9;
  min-height: 0;
  max-height: 140px;
  overflow: hidden;
  background: #0a0f1c;
  flex-shrink: 0;
  isolation: isolate;
}
@media (min-width: 64em) {
  .hero-spotlight__stack:not([data-cols]) .hero-spotlight__card--mini .hero-spotlight__media {
    max-height: 120px;
  }
}
.hero-spotlight__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.2s ease, transform 0.5s ease;
  display: block;
  backface-visibility: hidden;
}
.hero-spotlight__img.hero-spotlight__img--swap {
  opacity: 0.88;
}
.hero-spotlight__img:not(.hero-spotlight__img--swap) {
  opacity: 1;
}
.hero-spotlight__card:hover .hero-spotlight__img,
.hero-spotlight__card:focus-visible .hero-spotlight__img {
  transform: scale(1.05);
}
.hero-spotlight__body {
  padding: 0.6rem 0.75rem 0.7rem;
  min-width: 0;
  flex: 0 0 auto;
}
.hero-spotlight__name {
  font-size: 0.95rem;
  line-height: 1.2;
  margin: 0 0 0.3rem;
  color: #fff;
}
.hero-spotlight__short {
  margin: 0;
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-muted);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.hero-slider {
  flex: 1 1 auto;
  min-height: min(78vh, 800px);
  position: relative;
  display: flex;
  flex-direction: column;
}
@media (max-width: 63.99em) {
  .hero-slider {
    min-height: min(60vh, 520px);
  }
}
.hero-slider__track {
  min-height: inherit;
  position: relative;
}
.hero-slider__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  background-color: #1a2544;
  background-image: var(--slide-bg, linear-gradient(160deg, #1a2544, #0b1020));
  background-size: cover;
  background-position: center;
  transition: opacity 0.7s ease;
  display: flex;
  align-items: center;
}
.hero-slider__slide--active {
  opacity: 1;
  pointer-events: auto;
  z-index: 1;
}
.hero-slider__slide::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, rgba(11, 16, 32, 0.92) 0%, rgba(11, 16, 32, 0.55) 50%, rgba(11, 16, 32, 0.35) 100%);
  z-index: 0;
}
.hero-slider__content {
  position: relative;
  z-index: 2;
  padding-top: 2rem;
  padding-bottom: 3rem;
}
/* Dizüstü / yatay split: slayt + vitrin metinlerinde (özellikle solda) nefes */
@media (min-width: 64em) {
  .hero--split .hero-slider__content.container {
    padding-left: clamp(1.6rem, 0.5rem + 1.5vw, 2.8rem);
    padding-right: clamp(1.5rem, 0.45rem + 1.1vw, 2.4rem);
  }
  .hero-spotlight__stack {
    padding-left: 1.15rem;
    padding-right: 1.1rem;
  }
  .hero-spotlight__all {
    padding-left: 0.9rem;
    padding-right: 0.9rem;
  }
}
.hero-slider__title {
  font-size: clamp(1.9rem, 4.5vw, 3.25rem);
  max-width: 18ch;
  margin-bottom: 1rem;
  color: #fff;
  /* Çok satırlı başlıkta satır boylarını dengele (sonda tek kelime bırakmayı azaltır) */
  text-wrap: balance;
}
.hero-slider__title span {
  color: var(--color-accent-2);
}
.hero-slider__subtitle {
  max-width: 50ch;
  color: #c4cde4;
  font-size: 1.1rem;
  margin-bottom: 1.75rem;
  /* Paragrafta sonda dul/yetim satır (tek kelime) riskini azaltır; destek: Chromium / Safari 17.4+ */
  text-wrap: pretty;
  hyphens: auto;
  -webkit-hyphens: auto;
}
.hero-slider__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
}
@media (max-width: 63.99em) {
  .hero-slider__actions {
    display: none;
  }
}
.hero-slider__arrows {
  position: absolute;
  bottom: max(1.1rem, env(safe-area-inset-bottom, 0px));
  right: max(0.75rem, env(safe-area-inset-right, 0px));
  top: auto;
  z-index: 3;
  display: flex;
  gap: 0.45rem;
}
.hero-slider__arrow {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-size: 1.45rem;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
  transition: background 0.2s, border-color 0.2s, box-shadow 0.2s, transform 0.12s;
}
.hero-slider__arrow:hover {
  background: rgba(var(--color-primary-rgb), 0.4);
  border-color: var(--color-accent-3);
  box-shadow: 0 4px 20px rgba(0, 101, 247, 0.35);
}
.hero-slider__arrow:focus-visible {
  outline: 2px solid var(--color-accent-3);
  outline-offset: 2px;
}
.hero-slider__arrow:active {
  transform: scale(0.95);
}
.hero-slider__dots {
  position: absolute;
  bottom: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  display: flex;
  gap: 0.5rem;
}
.hero-slider__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.35);
  border: none;
  padding: 0;
  cursor: pointer;
  transition: background 0.2s, transform 0.2s;
}
.hero-slider__dot--active {
  background: var(--color-accent);
  transform: scale(1.25);
}

/* Sections */
.section {
  padding: 4rem 0;
}
.section--tight {
  padding-top: 0;
  margin-top: -2.5rem;
  position: relative;
  z-index: 2;
}
.section--surface {
  background: linear-gradient(180deg, #0e1530, #0b1020);
  border-top: 1px solid var(--color-line);
}
.section__head {
  text-align: center;
  max-width: 56ch;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2.5rem;
}
.section__kicker {
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.75rem;
  color: var(--color-accent-2);
  font-weight: 600;
  margin-bottom: 0.5rem;
}
.section__title {
  font-size: clamp(1.65rem, 2.5vw, 2.1rem);
  color: #fff;
}
.section__text {
  color: var(--color-muted);
  margin: 0.5rem 0 0;
}

/* Cards & grid */
.grid-3 {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: 1fr;
}
@media (min-width: 40em) {
  .grid-3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 60em) {
  .grid-3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
/* Dikey tablet: Kurumsal üçlü kart tek satırda (Hedefiniz net…) */
@media (orientation: portrait) and (min-width: 40em) and (max-width: 63.99em) {
  .home-kurumsal .grid-3 {
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
  }
}

/* Ana sayfa — Seçili ürünler: yatay kaydırma (parmak + fare tekeri + oklar); blur yok */
.home-products-grid {
  display: block;
}
/* Ana sayfa: “Tüm ürünler” sonrası boşluk + Kurumsal üstü çizgi */
#ornek-urunler {
  padding-bottom: 1.25rem;
}
#ornek-urunler .home-all-products-cta {
  text-align: center;
  margin: 1.25rem 0 0;
}
.home-kurumsal {
  border-top: 1px solid var(--color-line);
  padding-top: 1.75rem;
  padding-bottom: 4rem;
}
#ornek-urunler,
#homeProductsPreFooter {
  overflow-x: hidden; /* 100vw tam ekran vitrin: çift yatay scrollbar engeli */
}
#ornek-urunler .home-products-grid,
#homeProductsPreFooter .home-products-grid {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
/* Mobilde / tablette: 100vw taşma + mikro skala kart yok; container ile hizalı, güvenli alan */
@media (max-width: 63.99em) {
  #ornek-urunler .home-products-grid {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }
  #homeProductsPreFooter .home-products-grid {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: max(1.25rem, env(safe-area-inset-left));
    padding-right: max(1.25rem, env(safe-area-inset-right));
  }
}
#homeProductsPreFooter {
  padding-top: 2rem;
  padding-bottom: 1rem;
}
#homeProductsPreFooter .home-prefooter-slogan {
  text-align: center;
  max-width: 50ch;
  margin: 0 auto;
  padding: 2.8rem 1.25rem 1.4rem;
  font-family: var(--font-display);
  font-size: clamp(1.02rem, 2vw, 1.25rem);
  font-weight: 600;
  line-height: 1.45;
  color: #fff;
  letter-spacing: 0.02em;
}
.home-carousel-stack {
  display: grid;
  gap: 0.9rem;
}
.home-carousel {
  display: grid;
  grid-template-columns: minmax(2.5rem, 2.75rem) minmax(0, 1fr) minmax(2.5rem, 2.75rem);
  align-items: stretch;
  column-gap: 0.4rem;
  width: 100%;
  max-width: 100%;
}
.home-carousel__shell {
  overflow: hidden;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  min-height: 10rem;
}
.home-carousel__track {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  gap: 0.75rem;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 0.35rem 0 0.55rem;
  box-sizing: border-box;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: max(0.5rem, env(safe-area-inset-left));
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: rgba(var(--color-primary-rgb), 0.55) rgba(255, 255, 255, 0.06);
  touch-action: pan-x pinch-zoom;
}
.home-carousel__track::-webkit-scrollbar {
  height: 5px;
}
.home-carousel__track::-webkit-scrollbar-track {
  margin: 0 0.5rem;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 999px;
}
.home-carousel__track::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: linear-gradient(
    90deg,
    rgba(var(--color-primary-rgb), 0.75),
    rgba(66, 224, 245, 0.5)
  );
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 0 12px rgba(var(--color-primary-rgb), 0.25);
}
.home-carousel__track::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(
    90deg,
    rgba(var(--color-primary-rgb), 0.9),
    rgba(66, 224, 245, 0.65)
  );
}
/* Masaüstü: birinci sıra 5+3 net+kenar flu; ikinci sıra 3’lü tam net */
.home-carousel--peek-5 .home-carousel__shell {
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent 0%,
    #000 5%,
    #000 95%,
    transparent 100%
  );
  mask-image: linear-gradient(
    90deg,
    transparent 0%,
    #000 5%,
    #000 95%,
    transparent 100%
  );
}
.home-carousel--peek-3 .home-carousel__shell {
  -webkit-mask-image: none;
  mask-image: none;
}
.home-carousel--peek .home-carousel__track {
  overflow-x: hidden;
  justify-content: center;
  scroll-snap-type: none;
  overscroll-behavior-x: auto;
  touch-action: manipulation;
  scrollbar-width: none;
}
.home-carousel--peek .home-carousel__track::-webkit-scrollbar {
  display: none;
  height: 0;
}
/*
 * Varsayılan: iki sütun. --peek-5: 5 sütun + kenar --edge. --peek-3: 3 sütun hepsi net.
 */
.home-carousel__item {
  --home-car-gap: 0.75rem;
  flex: 0 0 calc((100% - var(--home-car-gap)) / 2);
  width: calc((100% - var(--home-car-gap)) / 2);
  max-width: calc((100% - var(--home-car-gap)) / 2);
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  scroll-snap-align: start;
  opacity: 1;
  filter: none;
  box-sizing: border-box;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  -webkit-tap-highlight-color: transparent;
}
.home-carousel--peek-5 .home-carousel__item {
  --home-car-gap: 0.75rem;
  flex: 0 0 calc((100% - 4 * var(--home-car-gap)) / 5);
  width: calc((100% - 4 * var(--home-car-gap)) / 5);
  max-width: calc((100% - 4 * var(--home-car-gap)) / 5);
  scroll-snap-align: none;
  transition:
    opacity 0.32s ease,
    filter 0.32s ease,
    transform 0.32s ease,
    box-shadow 0.3s ease,
    border-color 0.2s ease;
}
.home-carousel--peek-5 .home-carousel__item--edge {
  opacity: 0.5;
  filter: blur(2.5px) brightness(0.8);
  transform: scale(0.91);
  pointer-events: auto;
}
.home-carousel--peek-5 .home-carousel__item--in {
  opacity: 1;
  filter: none;
  transform: scale(1);
  z-index: 0;
}
.home-carousel--peek-5 .home-carousel__item--in:not(.home-carousel__item--center) {
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.2);
}
.home-carousel--peek-5 .home-carousel__item--center {
  z-index: 1;
  transform: scale(1.04);
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.38);
}
/* İkinci carousel: 3 ürün, üçü de net, orta hafif vurgulu */
.home-carousel--peek-3 .home-carousel__item {
  --home-car-gap: 0.75rem;
  flex: 0 0 calc((100% - 2 * var(--home-car-gap)) / 3);
  width: calc((100% - 2 * var(--home-car-gap)) / 3);
  max-width: calc((100% - 2 * var(--home-car-gap)) / 3);
  scroll-snap-align: none;
  opacity: 1;
  filter: none;
  transform: scale(1);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.2s ease;
}
.home-carousel--peek-3 .home-carousel__item--in {
  z-index: 0;
  box-shadow: 0 6px 22px rgba(0, 0, 0, 0.22);
}
.home-carousel--peek-3 .home-carousel__item--in:not(.home-carousel__item--center) {
  transform: scale(0.99);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.18);
}
.home-carousel--peek-3 .home-carousel__item--center {
  z-index: 1;
  transform: scale(1.04);
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.36);
}
@media (prefers-reduced-motion: reduce) {
  .home-carousel--peek-5 .home-carousel__item--edge,
  .home-carousel--peek-5 .home-carousel__item--in,
  .home-carousel--peek-5 .home-carousel__item--center,
  .home-carousel--peek-3 .home-carousel__item--in,
  .home-carousel--peek-3 .home-carousel__item--center {
    transition: border-color 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
  }
  .home-carousel--peek-5 .home-carousel__item--center,
  .home-carousel--peek-3 .home-carousel__item--center,
  .home-carousel--peek-3 .home-carousel__item--in:not(.home-carousel__item--center) {
    transform: none;
  }
  .home-carousel--peek-5 .home-carousel__item--edge,
  .home-carousel--peek-5 .home-carousel__item--in:not(.home-carousel__item--center) {
    transform: none;
  }
}
/* Mobil / dar tablet: tek ürün veya 2 sütun dönen vitrin (yatay kaydırma yok) */
.home-carousel--mobile-rotate .home-carousel__shell {
  min-height: 10.5rem;
}
.home-carousel--mobile-rotate .home-carousel__track {
  overflow: hidden;
  justify-content: center;
  align-items: stretch;
  flex-wrap: nowrap;
  touch-action: pan-y;
  scroll-snap-type: none;
  scrollbar-width: none;
  padding-top: 0.45rem;
  padding-bottom: 0.5rem;
}
.home-carousel--mobile-rotate .home-carousel__track::-webkit-scrollbar {
  display: none;
  height: 0;
  width: 0;
}
.home-carousel--mobile-rotate .home-carousel__item.home-carousel__item--mobile-1 {
  flex: 0 0 100%;
  width: 100%;
  max-width: min(100%, 24rem);
  min-width: 0;
  margin-left: auto;
  margin-right: auto;
  scroll-snap-align: none;
  opacity: 1;
  filter: none;
}
.home-carousel--mobile-rotate .home-carousel__item.home-carousel__item--mobile-2 {
  --home-car-gap: 0.75rem;
  flex: 0 0 calc((100% - var(--home-car-gap)) / 2);
  width: calc((100% - var(--home-car-gap)) / 2);
  max-width: calc((100% - var(--home-car-gap)) / 2);
  min-width: 0;
  scroll-snap-align: none;
  opacity: 1;
  filter: none;
}
/* Görsel: sabit oran (tüm kartlarda aynı piksel yüksekliği) */
.home-carousel__item .product-card__img-wrap {
  flex: 0 0 auto;
}
/* Uzun başlık/özet tüm satıra yükseklik farkı yaratmasın */
.home-carousel__item .product-card__title {
  flex: 0 0 auto;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  line-height: 1.25;
  min-height: 2.5em; /* 2 satırlık alan: tek satırlı isim olsa da kutu aynı */
}
/* Metin: sabit “slot”, alt satıra inince taşsın; kartlar aynı kutu yüksekliğinde dursun */
.home-carousel__item .product-card__text {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 3.5em; /* 3 satır: kısa özet olsa da kutu aynı */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}
/* Detay: kartın dibinde hizala */
.home-carousel__item .product-card__link {
  flex: 0 0 auto;
  margin-top: auto;
}
.home-carousel__arrow {
  position: relative;
  z-index: 2;
  width: 2.5rem;
  height: 2.5rem;
  min-width: 2.5rem;
  min-height: 2.5rem;
  border-radius: 999px;
  border: 1px solid var(--color-line);
  background: rgba(18, 26, 50, 0.85);
  color: #fff;
  cursor: pointer;
  display: grid;
  place-items: center;
  place-self: center;
  box-shadow: var(--shadow);
}
.home-carousel__arrow:hover,
.home-carousel__arrow:focus-visible {
  border-color: rgba(var(--color-primary-rgb), 0.5);
  background: rgba(18, 26, 50, 0.95);
}
/* Mobil / tablet: iki kart iz genişliğine sığar; açıklama kısa */
@media (max-width: 63.99em) {
  .home-carousel {
    grid-template-columns: minmax(2.25rem, 2.5rem) minmax(0, 1fr) minmax(2.25rem, 2.5rem);
    column-gap: 0.3rem;
  }
  .home-carousel__shell {
    min-height: 9.5rem;
  }
  .home-carousel__item {
    scroll-snap-align: start;
  }
  .home-carousel__item .product-card__title {
    font-size: clamp(0.82rem, 2.5vw, 1rem);
    -webkit-line-clamp: 1;
    line-clamp: 1;
    min-height: 0;
  }
  .home-carousel__item .product-card__text {
    font-size: 0.76rem;
    line-height: 1.32;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    min-height: 0;
  }
  .home-carousel__item .product-card__link {
    font-size: 0.8rem;
    padding: 0 1rem 0.85rem;
  }
  .home-carousel__arrow {
    align-self: center;
  }
}
@media (max-width: 63.99em) and (orientation: landscape) {
  .home-carousel__shell {
    min-height: 8.5rem;
  }
  .home-carousel__item .product-card__img-wrap {
    aspect-ratio: 16 / 10;
    max-height: 28vw;
  }
}
/* Çok dar ekran: yatay kaydırmada ok yok; mobil dönen vitrinde oklar dursun */
@media (max-width: 35.99em) {
  .home-carousel:not(.home-carousel--mobile-rotate) {
    grid-template-columns: 0 minmax(0, 1fr) 0;
    column-gap: 0;
  }
  .home-carousel:not(.home-carousel--mobile-rotate) .home-carousel__arrow {
    display: none;
  }
  .home-carousel--mobile-rotate {
    grid-template-columns: minmax(1.9rem, 2.1rem) minmax(0, 1fr) minmax(1.9rem, 2.1rem);
    column-gap: 0.2rem;
  }
  .home-carousel--mobile-rotate .home-carousel__arrow {
    display: grid;
    width: 2.1rem;
    height: 2.1rem;
    min-width: 2.1rem;
    min-height: 2.1rem;
    font-size: 0.95rem;
  }
}

.card {
  background: var(--color-surface);
  border: 1px solid var(--color-line);
  border-radius: var(--radius);
  padding: 1.5rem;
  box-shadow: var(--shadow);
  transition: border-color 0.2s, transform 0.2s;
}
.card:hover {
  border-color: rgba(var(--color-primary-rgb), 0.4);
  transform: translateY(-2px);
}

.value-card {
  text-align: center;
}
.value-card h3 {
  color: #fff;
  font-size: 1.1rem;
}
.value-card p {
  color: var(--color-muted);
  margin: 0;
  font-size: 0.95rem;
}
.value-card__icon {
  width: 48px;
  height: 48px;
  margin: 0 auto 1rem;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(var(--color-primary-rgb), 0.2), rgba(18, 26, 50, 0.9));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.35rem;
}

.product-card {
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.product-card__img-wrap {
  aspect-ratio: 16/10;
  overflow: hidden;
  background: var(--color-surface-2);
}
.product-card__img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s;
}
.product-card:hover .product-card__img-wrap img {
  transform: scale(1.04);
}
.product-card__title {
  font-size: 1.1rem;
  color: #fff;
  margin: 1.15rem 1.25rem 0.4rem;
}
.product-card__text,
.product-card__link {
  margin: 0 1.25rem 1.25rem;
  font-size: 0.92rem;
  color: var(--color-muted);
}
.product-card__text {
  flex: 1;
}
.product-card__link {
  color: var(--color-accent-2);
  font-weight: 600;
  margin-top: 0.25rem;
  display: inline-block;
  text-decoration: none;
  align-self: flex-start;
  margin-top: auto;
  padding: 0 1.25rem 1.25rem;
  margin-left: 0;
  margin-bottom: 0;
}
.product-card__link:hover {
  color: #fff;
}

/* Ana sayfa ürün kartı: hover’da büyüteç + detay */
.product-card__img-wrap--home-hover {
  position: relative;
}
.product-card__img-wrap--home-hover .home-product-card__actions {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.5rem;
  background: rgba(7, 10, 20, 0.55);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s;
}
@media (hover: hover) {
  .home-product-card:hover
    .product-card__img-wrap--home-hover
    .home-product-card__actions,
  .home-product-card:focus-within
    .product-card__img-wrap--home-hover
    .home-product-card__actions {
    opacity: 1;
    pointer-events: auto;
  }
  .home-product-card:hover .product-card__img-wrap--home-hover img,
  .home-product-card:focus-within .product-card__img-wrap--home-hover img {
    transform: scale(1.04);
  }
}
@media (hover: none) {
  .product-card__img-wrap--home-hover .home-product-card__actions {
    opacity: 1;
    pointer-events: auto;
    background: linear-gradient(180deg, rgba(7, 10, 20, 0.2) 0%, rgba(7, 10, 20, 0.5) 100%);
    align-items: flex-end;
    padding-bottom: 0.6rem;
  }
}
.home-product-card__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border: none;
  border-radius: 50%;
  background: #fff;
  color: #0b1020;
  cursor: pointer;
  text-decoration: none;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
  transition: transform 0.15s, background 0.15s, color 0.15s;
}
.home-product-card__btn:hover,
.home-product-card__btn:focus-visible {
  transform: scale(1.05);
  background: #f0f1f3;
  outline: none;
}
.home-product-card__ico {
  display: block;
  flex-shrink: 0;
}

.home-product-modal[hidden] {
  display: none !important;
}
.home-product-modal {
  position: fixed;
  inset: 0;
  z-index: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right))
    max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
  box-sizing: border-box;
}
.home-product-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.72);
  border: none;
  cursor: pointer;
  padding: 0;
  margin: 0;
  appearance: none;
  -webkit-appearance: none;
}
.home-product-modal__panel {
  position: relative;
  z-index: 1;
  max-width: min(90vw, 56rem);
  max-height: min(85vh, 900px);
  width: 100%;
  display: flex;
  flex-direction: column;
  background: #111;
  border-radius: var(--radius);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.home-product-modal__label {
  margin: 0;
  padding: 0.75rem 1rem;
  font-size: 0.95rem;
  color: #fff;
  background: rgba(0, 0, 0, 0.35);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.home-product-modal__img-wrap {
  flex: 1;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0a0a0a;
  padding: 0.5rem;
}
.home-product-modal__img-wrap img {
  max-width: 100%;
  max-height: min(70vh, 800px);
  width: auto;
  height: auto;
  object-fit: contain;
  vertical-align: middle;
  display: block;
}
.home-product-modal__x {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  z-index: 2;
  width: 2.5rem;
  height: 2.5rem;
  border: none;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s;
}
.home-product-modal__x:hover,
.home-product-modal__x:focus-visible {
  background: rgba(0, 0, 0, 0.75);
  outline: none;
}

/* CTA bar */
.cta-bar {
  background: linear-gradient(90deg, rgba(var(--color-primary-rgb), 0.12), rgba(18, 26, 50, 0.8));
  border: 1px solid rgba(var(--color-primary-rgb), 0.25);
  border-radius: var(--radius);
  padding: 1.5rem 1.75rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.cta-bar p {
  margin: 0;
  color: var(--color-text);
  font-weight: 500;
}

/* Page simple */
.page-hero {
  padding: 2.5rem 0 2rem;
  background: linear-gradient(180deg, #121a32, var(--color-bg));
  border-bottom: 1px solid var(--color-line);
}
/* İletişim: site header'ının hemen altı, tam genişlik harita (üst metin yok) */
.contact-map-band {
  width: 100%;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid var(--color-line);
}
.contact-map-band__map {
  width: 100%;
  position: relative;
  line-height: 0;
  background: #0a0d18;
}
.contact-map-band__frame {
  display: block;
  width: 100%;
  /* Önce ~52vh / 560; ~%25 inceltme */
  height: min(39vh, 420px);
  min-height: 210px;
  border: 0;
  border-top: 1px solid var(--color-line);
}
.page-hero h1 {
  font-size: clamp(1.75rem, 3vw, 2.35rem);
  color: #fff;
  margin-bottom: 0.5rem;
}
.page-hero p {
  color: var(--color-muted);
  margin: 0;
  max-width: 60ch;
}

/* Ürünlerimiz + Hakkımızda: üst açıklama satırı tam satır */
body[data-page="products"] .page-hero p,
body[data-page="about"] .page-hero p {
  max-width: none;
}
/* Hakkımızda: gövde metni tüm satıra yayılsın (70ch sınırı yok) */
body[data-page="about"] .prose.about-prose,
body[data-page="about"] .about-prose {
  max-width: none;
}
.prose {
  max-width: 70ch;
}
/* Hakkımızda: kicker + paragraflar tek metin sütunu, sağda dikey görsel */
.about-top {
  display: grid;
  gap: 1.15rem 1.75rem;
  align-items: start;
  margin-bottom: 1.75rem;
}
.about-top--with-media .about-top__text {
  min-width: 0;
}
.about-top--with-media .about-top__text .about-kicker {
  margin-bottom: 1.25rem;
}
.about-top__fig {
  margin: 0;
  min-width: 0;
  line-height: 0;
  align-self: start;
  justify-self: end;
  max-width: 20rem;
  width: 100%;
}
.about-top__img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: center;
  /* Dikey (portre) kutu */
  aspect-ratio: 2 / 3;
  max-height: min(75vh, 40rem);
  border-radius: var(--radius);
  border: 1px solid var(--color-line);
  box-shadow: var(--shadow);
  background: var(--color-surface-2);
}
@media (min-width: 50em) {
  .about-top--with-media {
    grid-template-columns: minmax(0, 1fr) min(14rem, 24vw);
    gap: 1.5rem 2rem;
  }
  .about-top--with-media .about-top__fig {
    max-width: none;
    width: 100%;
  }
}
@media (max-width: 49.99em) {
  .about-top--with-media {
    margin-bottom: 1.4rem;
  }
  .about-top--with-media .about-top__fig {
    max-width: none;
    justify-self: stretch;
  }
  .about-top__img {
    max-height: min(52vh, 22rem);
    aspect-ratio: 2 / 3;
  }
}
.prose p {
  color: var(--color-muted);
  margin: 0 0 1rem;
}
.prose p:last-child {
  margin-bottom: 0;
}
.prose p.about-kicker,
.about-kicker {
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  font-weight: 600;
  font-family: var(--font-display);
  color: var(--color-accent-2) !important;
  margin-bottom: 1.25rem;
  letter-spacing: -0.01em;
}
code {
  font-size: 0.88em;
  background: var(--color-surface-2);
  padding: 0.1em 0.35em;
  border-radius: 4px;
  border: 1px solid var(--color-line);
  font-family: ui-monospace, "Cascadia Code", monospace;
}

/* Stats */
.stats {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-top: 2rem;
}
.stat {
  flex: 1 1 140px;
  padding: 1.25rem;
  background: var(--color-surface);
  border: 1px solid var(--color-line);
  border-radius: var(--radius-sm);
  text-align: center;
}
.stat strong {
  display: block;
  font-size: 1.75rem;
  color: var(--color-accent-2);
  font-family: var(--font-display);
  margin-bottom: 0.25rem;
}
.stat span {
  font-size: 0.85rem;
  color: var(--color-muted);
}

/* Catalog (e-katalog sayfası: önizleme + indir) */
.section--catalog {
  padding-top: 0.5rem;
}
.catalog-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.35rem;
}
.catalog-toolbar__title {
  font-size: 1.1rem;
  color: #fff;
  margin: 0;
  font-weight: 600;
  font-family: var(--font-display);
}
.catalog-hint {
  font-size: 0.9rem;
  color: var(--color-muted);
  margin: 0 0 1rem;
  max-width: 64ch;
  line-height: 1.5;
}
.catalog-viewer {
  position: relative;
  width: 100%;
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid var(--color-line);
  box-shadow: var(--shadow);
  background: #0a0d18;
  min-height: 320px;
}
.catalog-viewer__frame {
  display: block;
  width: 100%;
  height: min(78vh, 900px);
  min-height: 400px;
  border: 0;
  background: #111522;
}
.catalog-viewer__frame[hidden] {
  display: none;
}
.catalog-viewer__empty {
  padding: 2.5rem 1.5rem;
  text-align: center;
  color: var(--color-muted);
  min-height: 220px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.75rem;
}
.catalog-viewer__empty[hidden] {
  display: none;
}
/* Eski kutu (başka sayfada kullanılırsa) */
.catalog-box {
  background: var(--color-surface);
  border: 1px solid var(--color-line);
  border-radius: var(--radius);
  padding: 2.5rem;
  text-align: center;
  max-width: 560px;
  margin: 0 auto 2rem;
  box-shadow: var(--shadow);
}
.catalog-box__icon {
  font-size: 3.5rem;
  margin-bottom: 1rem;
  line-height: 1;
}

/* Form */
.form {
  max-width: 520px;
}
.form__row {
  margin-bottom: 1.15rem;
}
.form__row label {
  display: block;
  font-size: 0.88rem;
  font-weight: 500;
  color: #c4cde4;
  margin-bottom: 0.35rem;
}
.form__row input,
.form__row textarea {
  width: 100%;
  padding: 0.75rem 0.9rem;
  font-family: var(--font);
  font-size: 1rem;
  color: var(--color-text);
  background: var(--color-surface);
  border: 1px solid var(--color-line);
  border-radius: var(--radius-sm);
  transition: border-color 0.2s;
}
.form__row input:focus,
.form__row textarea:focus {
  outline: none;
  border-color: var(--color-accent);
}
.form__row textarea {
  min-height: 150px;
  resize: vertical;
}
.form__note {
  font-size: 0.82rem;
  color: var(--color-muted);
  margin-top: 0.75rem;
}
.contact-grid {
  display: grid;
  gap: 2.5rem;
  align-items: start;
}
@media (min-width: 56em) {
  .contact-grid {
    grid-template-columns: 1fr 1.1fr;
  }
}
.contact-block {
  background: var(--color-surface);
  border: 1px solid var(--color-line);
  border-radius: var(--radius);
  padding: 1.5rem;
  margin-top: 1.5rem;
}
.contact-block h3 {
  color: #fff;
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 0.5rem;
}
.contact-block--slogan h3,
.contact-block__slogan {
  text-transform: none;
  letter-spacing: -0.02em;
  font-size: 1.05rem;
  line-height: 1.3;
  font-weight: 600;
  font-family: var(--font-display);
  color: var(--color-accent-2);
  margin-bottom: 0.75rem;
}
.contact-block__lede {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.65;
  color: #c4cde4;
}
.contact-block__footnote {
  margin: 0.85rem 0 0;
  font-size: 0.78rem;
  line-height: 1.5;
  color: var(--color-muted);
}
.contact-block a {
  word-break: break-all;
}
.map-embed {
  position: relative;
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid var(--color-line);
  aspect-ratio: 16/10;
  min-height: 200px;
}
.map-embed iframe {
  width: 100%;
  height: 100%;
  min-height: 200px;
  border: 0;
}

/* Sosyal medya (footer + iletişim) */
.social {
  margin-top: 0.9rem;
}
/* Topbar: genel .social üst boşluğu, dil bloğu ile hizayı bozmasın (sonraki kural) */
.topbar .social,
.social--topbar.topbar__social,
.social--topbar {
  margin-top: 0;
  margin-bottom: 0;
}
.footer__col {
  min-width: 0;
  align-self: start;
}
.footer__brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  max-width: 100%;
}
/* Sosyal üstte, logo altta — arada net ayırıcı (layout.js sırası) */
.footer__col--brand .social {
  margin-top: 0;
  margin-bottom: 0;
  width: 100%;
  max-width: 100%;
  padding-bottom: 1rem;
  margin-bottom: 1.1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.footer__brand .social__list {
  gap: 0.4rem;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.footer__brand .social__link {
  width: 2.2rem;
  height: 2.2rem;
  min-width: 2.2rem;
  border-radius: 8px;
}
.footer__brand .social__link svg {
  width: 16px;
  height: 16px;
}
.footer__brand .footer__logo-link {
  margin-top: 0;
}
.contact-social-wrap .social--contact {
  margin-top: 0.25rem;
}
.social__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.8rem;
}
.social__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 10px;
  color: var(--color-muted);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--color-line);
  transition: color 0.2s, background 0.2s, border-color 0.2s, transform 0.15s;
}
.social__link:hover {
  color: #fff;
  background: rgba(0, 101, 247, 0.12);
  border-color: rgba(0, 101, 247, 0.45);
  transform: translateY(-1px);
}
.contact__social-title {
  color: var(--color-text);
  font-weight: 600;
}

/* Footer */
.footer {
  background: #070a16;
  border-top: 1px solid var(--color-line);
  margin-top: auto;
  padding-top: 2.5rem;
}
.footer__grid {
  display: grid;
  align-items: start; /* 3 sütun üstten aynı çizgide */
  gap: 2rem;
  padding-bottom: 2rem;
}
@media (min-width: 50em) {
  .footer__grid {
    grid-template-columns: 1.15fr 1.1fr 0.95fr;
    gap: 1.75rem 2.25rem;
  }
}
.footer__logo-link {
  flex-shrink: 0;
  line-height: 0;
  border-radius: 16px;
  padding: 2px;
  overflow: visible;
  transition: transform 0.3s ease, filter 0.3s ease;
  display: inline-block;
}
.footer__logo-link:hover,
.footer__logo-link:focus-visible {
  transform: scale(1.05);
  filter: drop-shadow(0 0 20px rgba(var(--color-primary-rgb), 0.45));
}
.footer__logo {
  display: block;
  width: 192px;
  height: 192px;
  max-width: 192px;
  max-height: 192px;
  object-fit: contain;
  border-radius: 12px;
  transition: transform 0.3s ease;
}
.footer__logo-link:hover .footer__logo,
.footer__logo-link:focus-visible .footer__logo {
  transform: scale(1.02);
}
@media (max-width: 40em) {
  .footer__logo {
    width: 156px;
    height: 156px;
    max-width: min(156px, 88vw);
    max-height: min(156px, 88vw);
  }
}
.footer__title {
  color: #fff;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 0.6rem;
}
.footer__line {
  color: var(--color-muted);
  font-size: 0.9rem;
  margin: 0.25rem 0;
}
.footer__links {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer__links li {
  margin-bottom: 0.4rem;
}
.footer__links a {
  color: var(--color-muted);
  text-decoration: none;
}
.footer__links a:hover {
  color: #fff;
}
.footer__bottom {
  border-top: 1px solid var(--color-line);
  padding: 1rem 0 1.35rem;
  text-align: center;
  font-size: 0.8rem;
  line-height: 1.4;
  color: var(--color-muted);
}
.footer__bottom p {
  margin: 0;
}
.footer__copy {
  max-width: 100%;
  display: block;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.footer__legal-inline {
  color: var(--color-muted);
  display: inline;
  font-size: 0.78em;
  opacity: 0.9;
}

/* Reveal on scroll */
.reveal {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.reveal--visible {
  opacity: 1;
  transform: none;
}
/* Ana sayfa ürün carousel: yatay taşma + IO; reveal gizli kalmasın */
.home-carousel .reveal {
  opacity: 1;
  transform: none;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/* Ürün listesi: kartın tamamı detay sayfasına gider */
a.product-card--link {
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: border-color 0.2s, transform 0.2s, box-shadow 0.2s;
}
a.product-card--link:hover,
a.product-card--link:focus-visible {
  color: inherit;
  outline: none;
}
a.product-card--link .product-card__text {
  color: var(--color-muted);
  flex: 1;
}

/* ——— Ürün detay (urun.html) ——— */
.main-product-detail {
  padding-bottom: 2.5rem;
}
.product-detail-outer--empty,
.product-detail--empty {
  padding: 2rem 0 3.5rem;
  text-align: center;
  max-width: 36rem;
  margin: 0 auto;
}
.pd-breadcrumb,
.product-detail--empty .pd-breadcrumb {
  text-align: left;
  max-width: none;
  font-size: 0.8rem;
  color: var(--color-muted);
  margin-bottom: 1.5rem;
}
.pd-breadcrumb a {
  color: var(--color-muted);
  text-decoration: none;
  transition: color 0.2s;
}
.pd-breadcrumb a:hover {
  color: var(--color-accent-2);
}
.pd-breadcrumb__sep {
  margin: 0 0.4rem;
  opacity: 0.45;
  user-select: none;
}
.pd-breadcrumb__cur {
  color: #fff;
  font-weight: 500;
}
.product-detail--shell {
  max-width: 64rem;
  margin: 0 auto;
}
.pd-hero {
  margin-bottom: 1.5rem;
}
.pd-title {
  font-size: clamp(1.6rem, 3.2vw, 2.2rem);
  line-height: 1.2;
  margin: 0 0 0.75rem;
  color: #fff;
  letter-spacing: -0.03em;
  text-wrap: balance;
}
.pd-bento {
  display: grid;
  gap: 1.5rem 2.25rem;
  grid-template-columns: 1fr;
  align-items: start;
  margin-top: 0.25rem;
}
@media (min-width: 50em) {
  .pd-bento {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    align-items: stretch;
  }
}
.pd-bento__gal,
.pd-bento__prose {
  min-width: 0;
}
.pd-mainph {
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid var(--color-line);
  background: var(--color-surface-2);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.32);
  aspect-ratio: 16/10;
  position: relative;
}
.pd-mainph__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease;
}
.pd-bento__gal:hover .pd-mainph__img {
  transform: scale(1.02);
}
.pd-mainph__ph {
  min-height: 12rem;
  background: linear-gradient(145deg, #1a2544, #0b1020);
  aspect-ratio: 16/10;
}
.pd-thumbs {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 0.5rem;
  margin: 0.6rem 0 0;
  padding: 0;
}
.pd-thumbs__it {
  margin: 0;
}
.pd-thumbs__btn {
  display: block;
  padding: 0;
  border: 1px solid var(--color-line);
  border-radius: 6px;
  background: #0a0f1c;
  cursor: pointer;
  overflow: hidden;
  line-height: 0;
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
  opacity: 0.7;
  width: 3.2rem;
  height: 2.1rem;
}
.pd-thumbs__btn--active,
.pd-thumbs__btn:hover,
.pd-thumbs__btn:focus-visible {
  opacity: 1;
  border-color: var(--color-accent-3);
  box-shadow: 0 0 0 1px rgba(0, 101, 247, 0.35);
  outline: none;
}
.pd-thumbs__btn img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pd-lead {
  font-size: 1.05rem;
  line-height: 1.55;
  color: #c4cde4;
  margin: 0 0 1rem;
  text-wrap: pretty;
}
.pd-bento__prose .pd-prose {
  color: var(--color-muted);
  font-size: 0.98rem;
  line-height: 1.65;
}
.pd-bento__prose .pd-prose p {
  margin: 0 0 0.85em;
  text-wrap: pretty;
  hyphens: auto;
  -webkit-hyphens: auto;
}
.product-detail__blocks {
  max-width: 50rem;
  margin: 2.25rem auto 0;
  padding-top: 0.5rem;
}
.product-detail__blocks--solo {
  text-align: center;
  max-width: 32rem;
  margin-top: 1.5rem;
}
.pd-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem 0.8rem;
  margin: 0;
  padding: 0.25rem 0 0;
  justify-content: center;
  align-items: center;
  border-top: 1px solid var(--color-line);
  margin-top: 1.5rem;
  padding-top: 1.5rem;
}
.pd-cta + * {
  margin-top: 0.5rem;
}
.product-detail--empty .product-detail__empty-h {
  font-size: 1.15rem;
  margin: 0.5rem 0 1.25rem;
  color: #c4cde4;
}
.pd-block {
  margin-top: 2.25rem;
  padding: 0;
}
.pd-block:first-of-type,
.product-detail__blocks .pd-block:first-of-type {
  margin-top: 0;
  padding-top: 0.25rem;
  border-top: 1px solid var(--color-line);
}
.pd-block__title {
  font-size: 1.15rem;
  margin: 0 0 0.6rem;
  color: #fff;
  text-wrap: balance;
}
.pd-prose--tight p {
  margin: 0 0 0.6em;
  color: var(--color-muted);
  line-height: 1.6;
  font-size: 0.95rem;
  text-wrap: pretty;
  hyphens: auto;
  -webkit-hyphens: auto;
}
.pd-table__caption {
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-accent-2);
  font-weight: 600;
  margin: 0 0 0.5rem;
}
.pd-table-wrap {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid var(--color-line);
  border-radius: var(--radius);
  background: rgba(18, 26, 50, 0.45);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
}
.pd-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  min-width: 20rem;
}
.pd-table th,
.pd-table td {
  padding: 0.6rem 0.85rem;
  text-align: left;
  border-bottom: 1px solid var(--color-line);
  color: #c4cde4;
  vertical-align: top;
}
.pd-table th {
  color: #fff;
  font-weight: 600;
  background: rgba(0, 101, 247, 0.12);
  text-wrap: balance;
}
.pd-table tbody tr:last-child th,
.pd-table tbody tr:last-child td {
  border-bottom: none;
}
.pd-figure {
  margin: 2rem 0 0;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  padding: 0;
  border: 1px solid var(--color-line);
  border-radius: var(--radius);
  overflow: hidden;
  background: #0a0f1c;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.28);
}
.pd-figure__inner {
  aspect-ratio: 16/10;
  max-height: min(56vh, 32rem);
  position: relative;
  overflow: hidden;
}
.pd-figure__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.pd-figure:hover .pd-figure__img {
  transform: scale(1.02);
}
.pd-figure__cap {
  padding: 0.65rem 0.9rem 0.85rem;
  font-size: 0.82rem;
  color: var(--color-muted);
  line-height: 1.45;
  text-wrap: pretty;
  background: var(--color-surface);
  margin: 0;
}
.product-detail__loading {
  text-align: center;
  color: var(--color-muted);
  margin: 3rem 0;
  font-size: 0.95rem;
}
@media (min-width: 50em) {
  .main-product-detail .pd-figure__inner {
    max-height: min(48vh, 28rem);
  }
}
@media (prefers-reduced-motion: reduce) {
  .pd-mainph__img,
  .pd-figure__img,
  .pd-bento__gal .pd-mainph__img {
    transform: none !important;
  }
  .pd-bento__gal:hover .pd-mainph__img,
  .pd-figure:hover .pd-figure__img {
    transform: none !important;
  }
}

/* Layout */
.page-wrap {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
main {
  flex: 1;
}

/* Fix: nav mobile — btn is sibling, need to fix hamburger with JS class on btn only - already have aria expanded */
