/* ==========================================================================
   T-255: sayfa tasarımcısı — yeni blok türleri + blok düzeyi stil (arka plan / dikey boşluk / genişlik).
   Yalnız tema tokenları (hex/rgb yok); mevcut vitrin bileşenleriyle (.home-section, .home-head, .pc ürün kartı, .home-more) birlikte çalışır.
   ========================================================================== */

/* ---------- Blok düzeyi stil (Index.cshtml sarmalayıcısı: .pb-block + sınıflar) ---------- */
.pb-bg-surface, .pb-bg-accent { padding-block: var(--space-8); margin-top: var(--home-gap, 48px); }
.pb-bg-surface { background: var(--color-surface); }
.pb-bg-accent { background: color-mix(in srgb, var(--color-primary) 9%, var(--color-surface)); }
/* home.css'teki .pb-block > .home-section:first-child (ve hero sonrası) kurallarını yenmek için özgüllük yüksek: üst boşluğu yalnız padding verir */
.pb-block.pb-bg-surface > .home-section.home-section:first-child, .pb-block.pb-bg-accent > .home-section.home-section:first-child { margin-top: 0; }
.pb-bg-surface.pb-pad-s, .pb-bg-accent.pb-pad-s { padding-block: var(--space-4); }
.pb-bg-surface.pb-pad-l, .pb-bg-accent.pb-pad-l { padding-block: var(--space-12); }
.pb-pad-s:not(.pb-bg-surface):not(.pb-bg-accent) > .home-section { margin-top: var(--space-4); }
.pb-pad-l:not(.pb-bg-surface):not(.pb-bg-accent) > .home-section { margin-top: calc(var(--home-gap, 48px) * 1.6); }
.pb-block.pb-bg-surface:first-child, .pb-block.pb-bg-accent:first-child { margin-top: 0; }
.pb-full > .home-section.mos-wrap, .pb-full > .mos-wrap { max-width: none; }
.pb-full .pb-banner__img, .pb-full .pb-video__frame { border-radius: 0; }

/* ---------- ortak başlık ekleri ---------- */
.pb-head__sub { margin: var(--space-1) 0 0; color: var(--color-muted); font-size: 1rem; max-width: 60ch; }
.pb-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2); min-height: var(--control-h, 44px); padding: 0 var(--space-6, 24px); border: 1px solid var(--color-primary); border-radius: var(--radius-btn, var(--radius-pill)); background: var(--color-primary); color: var(--color-on-primary); font-weight: 700; text-decoration: none; cursor: pointer; transition: background var(--dur, .2s) var(--ease, ease); }
.pb-btn:hover { background: var(--color-primary-hover, var(--color-primary)); color: var(--color-on-primary); }
.pb-btn--outline { background: transparent; color: var(--color-primary-text, var(--color-primary)); }
.pb-btn--outline:hover { background: color-mix(in srgb, var(--color-primary) 10%, transparent); color: var(--color-primary-text, var(--color-primary)); }
.pb-btn--sm { min-height: 38px; padding: 0 var(--space-4, 16px); font-size: .9rem; }

/* ---------- 1. Akıllı ürün şeridi / ızgarası ---------- */
.pb-pstrip { display: flex; gap: var(--gap-grid, 24px); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; padding: var(--space-1) var(--space-1) var(--space-3); margin: 0 calc(-1 * var(--space-1)); }
.pb-pstrip > .pb-pcell { flex: 0 0 calc((100% - 3 * var(--gap-grid, 24px)) / 4); min-width: 0; scroll-snap-align: start; }
.pb-pgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--gap-grid, 24px); }
.pb-pcell { min-width: 0; }
@media (min-width: 768px) { .pb-pgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 992px) { .pb-pgrid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 991.98px) { .pb-pstrip > .pb-pcell { flex-basis: calc((100% - 2 * var(--gap-grid, 24px)) / 3); } }
@media (max-width: 767.98px) {
  .pb-pstrip, .pb-pgrid { gap: var(--space-3, 12px); }
  .pb-pstrip > .pb-pcell { flex-basis: 44%; }
}
/* "Tümünü gör" mobilde de başlığın yanında (patron 2026-10-22 kuralı, home.css .home-head--tabs ile aynı); başlıkta bağlantı varsa alttaki .home-more düğmesi hiç gösterilmez */
.home-section:has(.pb-head .home-head__link) .home-more { display: none; }

/* ---------- 2. Görsel banner ---------- */
.pb-banners__row { display: grid; gap: var(--gap-grid, 24px); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 768px) {
  .pb-banners--2 .pb-banners__row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pb-banners--3 .pb-banners__row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.pb-banner { min-width: 0; overflow: hidden; border-radius: var(--radius-lg); }
.pb-banner__link { display: block; }
.pb-banner__img { display: block; width: 100%; height: auto; border-radius: var(--radius-lg); transition: transform 300ms var(--ease, ease); }
.pb-banner__link:hover .pb-banner__img { transform: scale(1.02); }
.pb-banner__link:focus-visible { outline: none; box-shadow: var(--focus-ring); border-radius: var(--radius-lg); }
.pb-aspect--16-9 .pb-banner__img { aspect-ratio: 16 / 9; object-fit: cover; }
.pb-aspect--3-1 .pb-banner__img { aspect-ratio: 3 / 1; object-fit: cover; }
.pb-aspect--1-1 .pb-banner__img { aspect-ratio: 1 / 1; object-fit: cover; }
@media (max-width: 767.98px) { .pb-aspect--3-1 .pb-banner__img { aspect-ratio: 16 / 9; } }
@media (prefers-reduced-motion: reduce) { .pb-banner__img { transition: none; } .pb-banner__link:hover .pb-banner__img { transform: none; } }

/* ---------- 3. Metin ---------- */
.pb-text__inner { margin-inline: 0; }
.pb-text--narrow .pb-text__inner { max-width: 560px; }
.pb-text--medium .pb-text__inner { max-width: 760px; }
.pb-text--full .pb-text__inner { max-width: none; }
.pb-text--center .pb-text__inner { margin-inline: auto; text-align: center; }
.pb-text--right .pb-text__inner { margin-inline-start: auto; text-align: right; }
.pb-text--center .pb-head__sub, .pb-text--right .pb-head__sub { margin-inline: auto; }
.pb-text--right .pb-head__sub { margin-inline-end: 0; }
.pb-text__title { margin-bottom: var(--space-3); }
.pb-text__body { color: var(--color-text); line-height: 1.7; font-size: 1.0625rem; }
.pb-text__body > :first-child { margin-top: 0; }
.pb-text__body > :last-child { margin-bottom: 0; }
.pb-text__body h2, .pb-text__body h3, .pb-text__body h4 { font-family: var(--font-heading); font-weight: var(--fw-heading, 700); letter-spacing: var(--ls-tight, 0); margin: 1.4em 0 .5em; }
.pb-text__body a { color: var(--color-primary-text); text-decoration: underline; text-underline-offset: 3px; }
.pb-text__body ul, .pb-text__body ol { padding-inline-start: 1.4em; }
.pb-text--center .pb-text__body ul, .pb-text--center .pb-text__body ol, .pb-text--right .pb-text__body ul, .pb-text--right .pb-text__body ol { text-align: left; display: inline-block; }
.pb-text__body blockquote { margin: 1em 0; padding: .25em 1em; border-inline-start: 3px solid var(--color-primary); color: var(--color-muted); }

/* ---------- 4. Görsel + metin ---------- */
.pb-it { display: grid; gap: var(--space-6, 24px); align-items: center; grid-template-columns: minmax(0, 1fr); }
.pb-it__media img { display: block; width: 100%; height: auto; border-radius: var(--radius-xl, 24px); }
.pb-it__text p { margin: 0 0 var(--space-3); color: var(--color-muted); line-height: 1.7; font-size: 1.0625rem; }
.pb-it__text .home-head__title { margin-bottom: var(--space-3); }
.pb-it__text .pb-btn { margin-top: var(--space-3); }
@media (min-width: 768px) {
  .pb-it:not(.pb-it--solo) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-10, 40px); }
  .pb-it--right:not(.pb-it--solo) .pb-it__media { order: 2; }
}

/* ---------- 5. Video ---------- */
.pb-video__frame { position: relative; aspect-ratio: 16 / 9; overflow: hidden; border-radius: var(--radius-xl, 24px); background: var(--color-secondary, var(--color-surface)); box-shadow: var(--shadow-sm); }
.pb-video__lite, .pb-video__el, .pb-video__frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.pb-video__el { object-fit: cover; background: var(--color-secondary, var(--color-surface)); }
.pb-video__play { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: transparent; cursor: pointer; }
.pb-video__play img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.pb-video__icon { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 72px; height: 72px; display: grid; place-items: center; border-radius: 50%; background: var(--color-primary); color: var(--color-on-primary); font-size: 2.25rem; box-shadow: var(--shadow-md); transition: transform var(--dur, .2s) var(--ease, ease); }
.pb-video__play:hover .pb-video__icon { transform: translate(-50%, -50%) scale(1.08); }
.pb-video__play:focus-visible { outline: none; box-shadow: inset var(--focus-ring); }

/* ---------- 6. Geri sayımlı fırsat ---------- */
.pb-deal__box { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-5, 20px) var(--space-8, 32px); padding: var(--space-8, 32px); border-radius: var(--radius-xl, 24px); background: color-mix(in srgb, var(--color-primary) 10%, var(--color-surface)); border: 1px solid color-mix(in srgb, var(--color-primary) 22%, transparent); }
.pb-deal__text { flex: 1 1 260px; min-width: 0; }
.pb-deal__timer { display: flex; gap: var(--space-3, 12px); }
.pb-deal__unit { display: grid; justify-items: center; min-width: 64px; padding: var(--space-3, 12px) var(--space-2, 8px); border-radius: var(--radius-lg); background: var(--color-surface); box-shadow: var(--shadow-sm); }
.pb-deal__unit b { font-family: var(--font-heading); font-weight: var(--fw-heading, 700); font-size: 1.75rem; line-height: 1; font-variant-numeric: tabular-nums; color: var(--color-text); }
.pb-deal__unit small { margin-top: 4px; font-size: var(--fs-caption, .75rem); color: var(--color-muted); text-transform: uppercase; letter-spacing: .05em; }
.pb-deal__shelf { margin-top: var(--space-6, 24px); }
@media (max-width: 767.98px) {
  .pb-deal__box { padding: var(--space-5, 20px); }
  .pb-deal__timer { width: 100%; }
  .pb-deal__unit { flex: 1 1 0; min-width: 0; }
  .pb-deal__box .pb-btn { width: 100%; }
}

/* ---------- 7. Kupon kutusu ---------- */
.pb-coupon { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-4, 16px) var(--space-6, 24px); padding: var(--space-5, 20px) var(--space-6, 24px); border: 2px dashed color-mix(in srgb, var(--color-primary) 55%, transparent); border-radius: var(--radius-xl, 24px); background: var(--color-surface); }
.pb-coupon__icon { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: color-mix(in srgb, var(--color-primary) 14%, var(--color-surface)); color: var(--color-primary-text, var(--color-primary)); font-size: 1.5rem; flex: none; }
.pb-coupon__text { flex: 1 1 220px; min-width: 0; }
.pb-coupon__title { margin: 0 0 var(--space-1); font-family: var(--font-heading); font-weight: var(--fw-heading, 700); font-size: var(--fs-h3, 1.25rem); color: var(--color-text); }
.pb-coupon__text p { margin: 0; color: var(--color-muted); }
.pb-coupon__text small { display: block; margin-top: var(--space-1); color: var(--color-muted); }
.pb-coupon__code { display: flex; align-items: center; gap: var(--space-3, 12px); }
.pb-coupon__value { padding: var(--space-2, 8px) var(--space-4, 16px); border-radius: var(--radius-btn, 8px); background: color-mix(in srgb, var(--color-primary) 10%, var(--color-surface)); color: var(--color-text); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 1.125rem; font-weight: 700; letter-spacing: .06em; }
@media (max-width: 575.98px) { .pb-coupon__code { width: 100%; } .pb-coupon__code .pb-btn { flex: 1; } .pb-coupon__value { flex: 1; text-align: center; } }

/* ---------- 8. Ücretsiz kargo çubuğu ---------- */
.pb-ship { display: flex; align-items: center; gap: var(--space-4, 16px); padding: var(--space-4, 16px) var(--space-5, 20px); border-radius: var(--radius-lg); background: color-mix(in srgb, var(--color-primary) 9%, var(--color-surface)); border: 1px solid color-mix(in srgb, var(--color-primary) 20%, transparent); }
.pb-ship > i { font-size: 1.5rem; color: var(--color-primary-text, var(--color-primary)); flex: none; }
.pb-ship__body { flex: 1; min-width: 0; }
.pb-ship__msg { margin: 0 0 var(--space-2, 8px); color: var(--color-text); }
.pb-ship__bar { height: 8px; border-radius: 999px; background: color-mix(in srgb, var(--color-text) 12%, transparent); overflow: hidden; }
.pb-ship__bar > span { display: block; height: 100%; border-radius: 999px; background: var(--color-primary); transition: width 400ms var(--ease, ease); }
.pb-ship.is-reached .pb-ship__bar > span { background: var(--color-success, var(--color-primary)); }
@media (prefers-reduced-motion: reduce) { .pb-ship__bar > span { transition: none; } }

/* ---------- 9. Marka logo şeridi ---------- */
.pb-logos { display: flex; gap: var(--space-4, 16px); overflow-x: auto; margin: 0; padding: var(--space-1) 0 var(--space-3); list-style: none; scroll-snap-type: x proximity; scrollbar-width: thin; }
.pb-logos > li { flex: none; scroll-snap-align: start; }
.pb-logo { display: grid; place-items: center; width: 168px; height: 88px; padding: var(--space-3, 12px); border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: var(--radius-lg); background: var(--color-surface); transition: box-shadow var(--dur, .2s) var(--ease, ease), border-color var(--dur, .2s) var(--ease, ease); }
.pb-logo img { display: block; max-width: 100%; max-height: 64px; width: auto; height: auto; object-fit: contain; }
.pb-logo:hover { box-shadow: var(--shadow-md); border-color: color-mix(in srgb, var(--color-primary) 40%, transparent); }
.pb-logo:focus-visible { outline: none; box-shadow: var(--focus-ring); }
@media (min-width: 992px) { .pb-logos { flex-wrap: wrap; overflow: visible; } }
@media (max-width: 767.98px) { .pb-logo { width: 132px; height: 72px; } .pb-logo img { max-height: 48px; } }

/* ---------- 10. Koleksiyon kartları ---------- */
.pb-colls { display: grid; gap: var(--gap-grid, 24px); grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 768px) {
  .pb-colls--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pb-colls--3, .pb-colls--5, .pb-colls--6 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pb-colls--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.pb-coll { display: flex; flex-direction: column; gap: var(--space-3, 12px); text-decoration: none; color: var(--color-text); min-width: 0; }
.pb-coll__img { display: grid; place-items: center; aspect-ratio: 4 / 3; overflow: hidden; border-radius: var(--radius-xl, 24px); background: color-mix(in srgb, var(--color-primary) 9%, var(--color-surface)); color: var(--color-primary-text, var(--color-primary)); }
.pb-coll__img img { width: 100%; height: 100%; object-fit: cover; transition: transform 300ms var(--ease, ease); }
.pb-coll__img svg { width: 44px; height: 44px; }
.pb-coll__name { font-weight: 700; font-family: var(--font-heading); }
.pb-coll:hover .pb-coll__img img { transform: scale(1.04); }
.pb-coll:hover .pb-coll__name { color: var(--color-primary-text, var(--color-primary)); }
.pb-coll:focus-visible { outline: none; box-shadow: var(--focus-ring); border-radius: var(--radius-lg); }
@media (prefers-reduced-motion: reduce) { .pb-coll__img img { transition: none; } .pb-coll:hover .pb-coll__img img { transform: none; } }

/* ---------- 11. Sayılarla güven ---------- */
.pb-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4, 16px); margin: 0; padding: 0; list-style: none; }
@media (min-width: 768px) {
  .pb-stats--1 { grid-template-columns: minmax(0, 1fr); }
  .pb-stats--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pb-stats--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) { .pb-stats--3 > .pb-stat:last-child, .pb-stats--1 > .pb-stat { grid-column: 1 / -1; } }
.pb-stat { display: grid; justify-items: center; gap: var(--space-1, 4px); padding: var(--space-6, 24px) var(--space-4, 16px); text-align: center; border-radius: var(--radius-xl, 24px); background: var(--color-surface); box-shadow: var(--shadow-sm); }
.pb-stat > i { font-size: 1.5rem; color: var(--color-primary-text, var(--color-primary)); }
.pb-stat__value { font-family: var(--font-heading); font-weight: var(--fw-heading, 700); font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.25rem); line-height: 1.1; color: var(--color-text); font-variant-numeric: tabular-nums; }
.pb-stat__label { color: var(--color-muted); font-size: .95rem; }

/* ---------- 12. Ayraç ---------- */
.pb-spacer { height: var(--pb-spacer, 32px); position: relative; }
.pb-spacer--s { --pb-spacer: 16px; }
.pb-spacer--m { --pb-spacer: 40px; }
.pb-spacer--l { --pb-spacer: 80px; }
.pb-spacer--line::after { content: ""; position: absolute; left: 50%; top: 50%; width: min(100% - 2 * var(--gutter, 16px), var(--container-max, 1320px)); height: 1px; transform: translateX(-50%); background: color-mix(in srgb, var(--color-text) 16%, transparent); }

/* ---------- 13–16. Kurumsal kartlar ---------- */
.pb-cards, .pb-cardstrip, .pb-team { margin: 0; padding: 0; list-style: none; }
.pb-cards { display: grid; gap: var(--space-4, 16px); grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 768px) { .pb-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 992px) { .pb-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); } .pb-cards--sp { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767.98px) { .pb-cards--sp { grid-template-columns: minmax(0, 1fr); } }
.pb-cardstrip { display: flex; gap: var(--space-4, 16px); overflow-x: auto; padding: var(--space-1) 0 var(--space-3); scroll-snap-type: x proximity; scrollbar-width: thin; }
.pb-cardstrip > .pb-card { flex: 0 0 168px; scroll-snap-align: start; }
.pb-card { min-width: 0; border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: var(--radius-lg); background: var(--color-surface); }
.pb-card--logo { display: grid; }
.pb-card__inner, .pb-card__link { display: grid; justify-items: center; align-content: center; gap: var(--space-2, 8px); padding: var(--space-4, 16px); text-align: center; color: var(--color-text); text-decoration: none; }
.pb-card__logo { display: block; max-width: 100%; max-height: 56px; width: auto; height: auto; object-fit: contain; }
.pb-card__name { font-weight: 600; font-size: .95rem; overflow-wrap: anywhere; }
.pb-card__link:hover { color: var(--color-primary-text, var(--color-primary)); }
.pb-card--logo > .pb-card__inner, .pb-card--logo > .pb-card__link { min-height: 96px; }
.pb-card__link:focus-visible { outline: none; box-shadow: var(--focus-ring); border-radius: var(--radius-lg); }
.pb-card--sp { display: flex; flex-direction: column; gap: var(--space-2, 8px); padding: var(--space-5, 20px); }
.pb-card__title { margin: 0; font-family: var(--font-heading); font-weight: var(--fw-heading, 700); font-size: var(--fs-h3, 1.25rem); color: var(--color-text); }
.pb-card__meta, .pb-card__text { margin: 0; color: var(--color-muted); font-size: .95rem; }
.pb-card__meta i { color: var(--color-primary-text, var(--color-primary)); }
.pb-card__actions { display: flex; flex-wrap: wrap; gap: var(--space-2, 8px); margin-top: auto; padding-top: var(--space-3, 12px); }

.pb-team { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-8, 32px) var(--gap-grid, 24px); }
.pb-person { flex: 0 1 calc(50% - var(--gap-grid, 24px)); display: grid; align-content: start; justify-items: center; gap: var(--space-1, 4px); text-align: center; min-width: 0; }
@media (min-width: 768px) { .pb-person { flex-basis: 240px; } }
.pb-person__photo { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; background: color-mix(in srgb, var(--color-primary) 10%, var(--color-surface)); }
.pb-person__photo--empty { display: grid; place-items: center; font-size: 2.5rem; color: var(--color-primary-text, var(--color-primary)); }
.pb-person__name { margin-top: var(--space-2, 8px); color: var(--color-text); }
.pb-person__role { color: var(--color-primary-text, var(--color-primary)); font-size: .9rem; font-weight: 600; }
.pb-person__bio { margin: var(--space-1, 4px) 0 0; color: var(--color-muted); font-size: .9rem; }

/* ==========================================================================
   T-256: sayfa tasarimcisi Parca 2b - sekmeli urunler, tek urun, birlikte al, yorum ozeti, SSS (satir sonu), adimlar, hikaye, arama, iletisim bandi.
   Yalniz tema tokenlari; dugmeler .pb-btn (--radius-btn), kartlar mevcut yuzey/kenarlik dili.
   ========================================================================== */

/* ---------- Sekmeli urunler (baslik + sekmeler = "Cok Satan Urunler" bileseni: home-head--tabs / home-tabs) ---------- */
.pb-tabs__sub { margin: calc(-1 * var(--space-3, 12px)) 0 var(--space-4, 16px); }
.pb-tabs__panel[hidden] { display: none; }
.pb-tabs__panel:focus-visible { outline: none; box-shadow: var(--focus-ring); border-radius: var(--radius-lg); }
.pb-tabs__loading { display: flex; gap: var(--gap-grid, 24px); overflow: hidden; }
.pb-tabs__loading > span { flex: 0 0 calc((100% - 3 * var(--gap-grid, 24px)) / 4); aspect-ratio: 3 / 4; border-radius: var(--radius-lg); background: linear-gradient(90deg, color-mix(in srgb, var(--color-text) 6%, transparent), color-mix(in srgb, var(--color-text) 12%, transparent), color-mix(in srgb, var(--color-text) 6%, transparent)); background-size: 200% 100%; animation: pb-shimmer 1.2s linear infinite; }
@keyframes pb-shimmer { to { background-position: -200% 0; } }
@media (max-width: 767.98px) { .pb-tabs__loading > span { flex-basis: 44%; } }
@media (prefers-reduced-motion: reduce) { .pb-tabs__loading > span { animation: none; } }
.pb-tabs__empty, .pb-tabs__error { margin: var(--space-6, 24px) 0; color: var(--color-muted); text-align: center; }
.pb-tabs__error .pb-btn { margin-top: var(--space-3, 12px); }
/* Sekmeli bloğun "Tümünü gör"ü başlıkta (data-pb-more); sekme içeriğindeki bağlantı yalnız adres taşır */
.pb-tabs .pb-tabs__more { display: none !important; }

/* ---------- Tek urun vitrini ---------- */
.pb-sp { display: grid; gap: var(--space-5, 20px); align-items: center; grid-template-columns: minmax(0, 1fr); padding: var(--space-4, 16px); border: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent); border-radius: var(--radius-xl, 24px); background: var(--color-surface); box-shadow: var(--shadow-sm); }
.pb-sp__media { position: relative; display: block; overflow: hidden; aspect-ratio: 4 / 3; border-radius: var(--radius-lg); background: color-mix(in srgb, var(--color-primary) 6%, var(--color-surface)); }
.pb-sp__img { display: block; width: 100%; height: 100%; object-fit: cover; }
.pb-sp__media .img-ph { display: grid; place-items: center; width: 100%; height: 100%; color: var(--color-primary-text, var(--color-primary)); }
.pb-sp__media .img-ph__icon { width: 56px; height: 56px; }
.pb-sp__badge { position: absolute; top: var(--space-3, 12px); left: var(--space-3, 12px); padding: 4px 10px; border-radius: var(--radius-sm); background: var(--color-danger); color: var(--color-surface); font: 700 .8125rem var(--font-body); }
.pb-sp__body { display: grid; gap: var(--space-2, 8px); justify-items: start; min-width: 0; }
.pb-sp__brand { margin: 0; color: var(--color-primary-text, var(--color-primary)); font-size: .8125rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.pb-sp__name { margin: 0; font-family: var(--font-heading); font-weight: var(--fw-heading, 700); font-size: clamp(1.375rem, 1.1rem + 1.2vw, 2rem); line-height: 1.2; letter-spacing: var(--ls-tight, 0); }
.pb-sp__name a { color: var(--color-text); text-decoration: none; }
.pb-sp__name a:hover { color: var(--color-primary-text, var(--color-primary)); }
.pb-sp__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--space-2, 8px) var(--space-3, 12px); margin: var(--space-1, 4px) 0 0; }
.pb-sp__now { font: 800 1.75rem var(--font-body); color: var(--color-text); font-variant-numeric: tabular-nums; }
.pb-sp__now small { font-size: .9rem; font-weight: 600; color: var(--color-muted); }
.pb-sp__old { color: var(--color-subtle); text-decoration: line-through; font-size: 1.0625rem; font-variant-numeric: tabular-nums; }
.pb-sp__desc { margin: 0; color: var(--color-muted); font-size: 1rem; line-height: 1.6; max-width: 56ch; }
.pb-sp__cta { display: flex; flex-wrap: wrap; gap: var(--space-3, 12px); margin-top: var(--space-3, 12px); }
@media (min-width: 768px) {
  .pb-sp { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--space-10, 40px); padding: var(--space-5, 20px); }
  .pb-sp__media { aspect-ratio: 1 / 1; }
  .pb-sp--right .pb-sp__media { order: 2; }
}
@media (max-width: 575.98px) {
  .pb-sp__cta { width: 100%; }
  .pb-sp__cta > .pb-btn { flex: 1 1 100%; }
}

/* ---------- Birlikte al ---------- */
.pb-bundle { display: grid; gap: var(--space-4, 16px); grid-template-columns: minmax(0, 1fr); }
.pb-bundle__list { display: flex; gap: var(--space-5, 20px); margin: 0; padding: var(--space-1) var(--space-1) var(--space-3); list-style: none; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: thin; }
.pb-bundle__item { position: relative; flex: 1 1 0; min-width: 168px; display: grid; gap: var(--space-2, 8px); align-content: start; padding: var(--space-3, 12px); border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: var(--radius-lg); background: var(--color-surface); scroll-snap-align: start; transition: opacity var(--dur, .2s) var(--ease, ease), border-color var(--dur, .2s) var(--ease, ease); }
.pb-bundle__item.is-on { border-color: color-mix(in srgb, var(--color-primary) 45%, transparent); }
.pb-bundle__item:not(.is-on) { opacity: .6; }
.pb-bundle__item + .pb-bundle__item::before { content: "+"; position: absolute; top: 38%; left: calc(-1 * var(--space-5, 20px) / 2 - 11px); z-index: 1; width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; background: var(--color-primary); color: var(--color-on-primary); font: 700 .9rem/1 var(--font-body); }
.pb-bundle__check { position: absolute; top: var(--space-2, 8px); left: var(--space-2, 8px); z-index: 2; }
.pb-bundle__cb { width: 20px; height: 20px; margin: 0; accent-color: var(--color-primary); cursor: pointer; }
.pb-bundle__cb:focus-visible { outline: none; box-shadow: var(--focus-ring); }
.pb-bundle__media { display: block; overflow: hidden; aspect-ratio: 1 / 1; border-radius: var(--radius-md); background: color-mix(in srgb, var(--color-primary) 6%, var(--color-surface)); }
.pb-bundle__img { display: block; width: 100%; height: 100%; object-fit: cover; }
.pb-bundle__media .img-ph { display: grid; place-items: center; width: 100%; height: 100%; color: var(--color-primary-text, var(--color-primary)); }
.pb-bundle__media .img-ph__icon { width: 36px; height: 36px; }
.pb-bundle__info { display: grid; gap: var(--space-1, 4px); min-width: 0; }
.pb-bundle__name { color: var(--color-text); font-weight: 600; line-height: 1.3; text-decoration: none; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.6em; }
.pb-bundle__name:hover { color: var(--color-primary-text, var(--color-primary)); }
.pb-bundle__unit { color: var(--color-muted); font-size: .875rem; }
.pb-bundle__sel { width: 100%; height: 36px; font-size: .875rem; }
.pb-bundle__price { font: 800 1.0625rem var(--font-body); color: var(--color-text); font-variant-numeric: tabular-nums; }
/* Toplam + "Hepsini sepete ekle →" başlığın sağında, "Tümünü gör" ile aynı yazı bağlantısı görünümü (düğme değil; patron 2026-10-27) */
.pb-bundle__sum { display: flex; align-items: baseline; gap: var(--space-3, 12px); flex-shrink: 0; }
.pb-bundle__total { display: flex; align-items: baseline; gap: var(--space-2, 8px); margin: 0; white-space: nowrap; }
.pb-bundle__label { color: var(--color-muted); font-size: .875rem; }
.pb-bundle__old { color: var(--color-subtle); font-size: .875rem; text-decoration: line-through; font-variant-numeric: tabular-nums; }
.pb-bundle__old[hidden] { display: none; }
.pb-bundle__now { font-weight: 700; color: var(--color-text); font-variant-numeric: tabular-nums; }
.pb-bundle__add { background: none; border: 0; cursor: pointer; font: inherit; font-weight: 600; }
.pb-bundle__add[disabled] { opacity: .55; cursor: not-allowed; text-decoration: none; }
@media (min-width: 992px) { .pb-bundle__list { overflow: visible; } }
@media (max-width: 767.98px) {
  .pb-bundle__head { flex-wrap: wrap; row-gap: var(--space-1, 4px); }
  .pb-bundle__sum { flex: 1 0 100%; flex-wrap: wrap; justify-content: space-between; row-gap: var(--space-1, 4px); }
  .pb-bundle__label { display: none; }   /* dar ekranda yalnız tutar + bağlantı; ürün sayısı kartlarda görünüyor */
  .pb-bundle__list { gap: var(--space-4, 16px); }
  .pb-bundle__item { flex: 0 0 62%; }
  .pb-bundle__item + .pb-bundle__item::before { left: calc(-1 * var(--space-4, 16px) / 2 - 11px); }
}

/* ---------- Yorum ozeti ---------- */
.pb-stars { margin: 0; display: inline-flex; gap: 2px; color: var(--home-star, var(--color-warning)); font-size: 1rem; line-height: 1; }
.pb-rev { display: grid; gap: var(--space-5, 20px); grid-template-columns: minmax(0, 1fr); }
.pb-rev__sum { display: grid; gap: var(--space-2, 8px); justify-items: start; align-content: start; padding: var(--space-5, 20px) var(--space-6, 24px); border: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent); border-radius: var(--radius-xl, 24px); background: var(--color-surface); box-shadow: var(--shadow-sm); }
.pb-rev__avg { margin: 0; display: flex; align-items: baseline; gap: var(--space-1, 4px); color: var(--color-muted); }
.pb-rev__avg b { font: var(--fw-heading, 700) 3rem/1 var(--font-heading); color: var(--color-text); font-variant-numeric: tabular-nums; }
.pb-rev__total { margin: 0; color: var(--color-muted); font-size: .9375rem; }
.pb-rev__bars { width: 100%; margin: var(--space-3, 12px) 0 0; padding: 0; list-style: none; display: grid; gap: 6px; }
.pb-rev__bars li { display: grid; grid-template-columns: 34px minmax(0, 1fr) 30px; align-items: center; gap: var(--space-2, 8px); }
.pb-rev__bar-label { display: inline-flex; align-items: center; gap: 3px; font-size: .875rem; color: var(--color-text); font-variant-numeric: tabular-nums; }
.pb-rev__bar-label i { color: var(--home-star, var(--color-warning)); font-size: .75rem; }
.pb-rev__bar-n { color: var(--color-muted); font-size: .8125rem; text-align: right; font-variant-numeric: tabular-nums; }
.pb-rev__track { width: 100%; height: 8px; border: 0; border-radius: 999px; background: color-mix(in srgb, var(--color-text) 10%, transparent); overflow: hidden; appearance: none; -webkit-appearance: none; }
.pb-rev__track::-webkit-progress-bar { background: transparent; }
.pb-rev__track::-webkit-progress-value { border-radius: 999px; background: var(--home-star, var(--color-warning)); }
.pb-rev__track::-moz-progress-bar { border-radius: 999px; background: var(--home-star, var(--color-warning)); }
.pb-rev__list { margin: 0; padding: var(--space-1) var(--space-1) var(--space-3); list-style: none; display: flex; gap: var(--space-3, 12px); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
.pb-rev__item { flex: 0 0 82%; scroll-snap-align: start; display: grid; gap: var(--space-2, 8px); align-content: start; padding: var(--space-4, 16px) var(--space-5, 20px); border: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent); border-radius: var(--radius-lg); background: var(--color-surface); }
.pb-rev__quote { margin: 0; color: var(--color-text); line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; }
.pb-rev__who { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 2px var(--space-3, 12px); }
.pb-rev__name { font-weight: 700; color: var(--color-text); }
.pb-rev__verified { display: inline-flex; align-items: center; gap: 4px; color: var(--color-success-text, var(--color-primary-text)); font-size: .8125rem; }
@media (min-width: 768px) {
  .pb-rev__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: visible; padding: 0; }
  .pb-rev__item { flex: none; }
}
@media (min-width: 992px) {
  .pb-rev:not(.pb-rev--solo) { grid-template-columns: 300px minmax(0, 1fr); align-items: start; gap: var(--space-6, 24px); }
  .pb-rev__list { grid-template-columns: minmax(0, 1fr); }
  .pb-rev__list--many { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pb-rev--solo .pb-rev__sum { max-width: 420px; }
}

/* ---------- SSS: bloga yazilan cevaplarda satir sonlari korunur ---------- */
.pb-faq--lines .hs__qa > div { white-space: pre-line; }

/* ---------- Nasil siparis verilir ---------- */
.pb-steps { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--space-3, 12px); grid-template-columns: minmax(0, 1fr); }
.pb-step { display: flex; align-items: flex-start; gap: var(--space-4, 16px); padding: var(--space-4, 16px); border: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent); border-radius: var(--radius-lg); background: var(--color-surface); }
.pb-step__icon { position: relative; flex: none; display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: color-mix(in srgb, var(--color-primary) 12%, var(--color-surface)); color: var(--color-primary-text, var(--color-primary)); font-size: 1.5rem; }
.pb-step__no { position: absolute; top: -4px; right: -4px; min-width: 22px; height: 22px; padding: 0 5px; border-radius: 11px; background: var(--color-primary); color: var(--color-on-primary); font: 700 .75rem/22px var(--font-body); text-align: center; box-sizing: border-box; }
.pb-step__body { min-width: 0; }
.pb-step__title { margin: 0 0 var(--space-1, 4px); font-family: var(--font-heading); font-weight: var(--fw-heading, 700); font-size: 1.125rem; color: var(--color-text); }
.pb-step__text { margin: 0; color: var(--color-muted); font-size: .95rem; line-height: 1.5; }
@media (min-width: 768px) {
  .pb-steps { grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: var(--space-5, 20px); }
  .pb-step { flex-direction: column; align-items: center; text-align: center; padding: var(--space-6, 24px) var(--space-4, 16px); border-radius: var(--radius-xl, 24px); box-shadow: var(--shadow-sm); }
  .pb-step__icon { width: 64px; height: 64px; font-size: 1.75rem; }
}

/* ---------- Hikayemiz / zaman cizelgesi ---------- */
.pb-tl { position: relative; margin: 0; padding: 0; list-style: none; display: grid; gap: var(--space-5, 20px); }
.pb-tl::before { content: ""; position: absolute; top: 8px; bottom: 8px; left: 7px; width: 2px; background: color-mix(in srgb, var(--color-text) 14%, transparent); }
.pb-tl__item { position: relative; padding-left: 36px; }
.pb-tl__dot { position: absolute; left: 0; top: 18px; width: 16px; height: 16px; border-radius: 50%; background: var(--color-primary); box-shadow: 0 0 0 4px var(--color-bg, var(--color-surface)); }
.pb-tl__card { padding: var(--space-4, 16px) var(--space-5, 20px); border: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent); border-radius: var(--radius-lg); background: var(--color-surface); box-shadow: var(--shadow-sm); }
.pb-tl__year { display: inline-block; margin-bottom: var(--space-1, 4px); color: var(--color-primary-text, var(--color-primary)); font: 800 1.125rem var(--font-body); letter-spacing: .02em; }
.pb-tl__img { display: block; width: 100%; max-height: 220px; margin: var(--space-2, 8px) 0 var(--space-3, 12px); object-fit: cover; border-radius: var(--radius-md); }
.pb-tl__title { margin: 0 0 var(--space-1, 4px); font-family: var(--font-heading); font-weight: var(--fw-heading, 700); font-size: 1.1875rem; color: var(--color-text); }
.pb-tl__text { margin: 0 0 var(--space-2, 8px); color: var(--color-muted); line-height: 1.6; }
.pb-tl__text:last-child { margin-bottom: 0; }
@media (min-width: 768px) {
  /* iki sutun, her madde 2 satira yayilir ve bir sonraki 1 satir kayik baslar -> dönüşümlü maddeler iç içe geçer (bos yarim sayfa kalmaz) */
  .pb-tl { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 72px; row-gap: 0; }
  .pb-tl::before { left: 50%; transform: translateX(-50%); }
  .pb-tl__item { padding: 0 0 var(--space-5, 20px); }
  .pb-tl__item:nth-child(odd) { grid-column: 1; }
  .pb-tl__item:nth-child(even) { grid-column: 2; }
  .pb-tl__item:nth-child(1) { grid-row: 1 / span 2; } .pb-tl__item:nth-child(2) { grid-row: 2 / span 2; } .pb-tl__item:nth-child(3) { grid-row: 3 / span 2; }
  .pb-tl__item:nth-child(4) { grid-row: 4 / span 2; } .pb-tl__item:nth-child(5) { grid-row: 5 / span 2; } .pb-tl__item:nth-child(6) { grid-row: 6 / span 2; }
  .pb-tl__item:nth-child(7) { grid-row: 7 / span 2; } .pb-tl__item:nth-child(8) { grid-row: 8 / span 2; } .pb-tl__item:nth-child(9) { grid-row: 9 / span 2; }
  .pb-tl__item:nth-child(10) { grid-row: 10 / span 2; } .pb-tl__item:nth-child(11) { grid-row: 11 / span 2; } .pb-tl__item:nth-child(12) { grid-row: 12 / span 2; }
  .pb-tl__dot { left: auto; right: -44px; }
  .pb-tl__item:nth-child(even) .pb-tl__dot { right: auto; left: -44px; }
}

/* ---------- Arama kutusu ---------- */
.pb-search { text-align: center; }
.pb-search .home-head { justify-content: center; }
.pb-search .pb-head__sub { margin-inline: auto; }
.pb-search__form { position: relative; max-width: 760px; margin-inline: auto; text-align: left; }
.pb-search__field { display: flex; align-items: center; gap: var(--space-3, 12px); min-height: 60px; padding: 6px 6px 6px var(--space-4, 16px); border: 1px solid var(--color-border-input, var(--color-border)); border-radius: var(--radius-btn, 12px); background: var(--color-surface); box-shadow: var(--shadow-sm); transition: border-color var(--dur, .2s) var(--ease, ease), box-shadow var(--dur, .2s) var(--ease, ease); }
.pb-search__field:focus-within { border-color: var(--color-primary); box-shadow: var(--focus-ring); }
.pb-search__icon { flex: none; color: var(--color-muted); font-size: 1.25rem; }
.pb-search__input { flex: 1; min-width: 0; height: 46px; padding: 0; border: 0; outline: 0; background: transparent; color: var(--color-text); font: 500 1.0625rem var(--font-body); }
.pb-search__input::placeholder { color: var(--color-muted); }
.pb-search__input::-webkit-search-cancel-button { display: none; }
.pb-search__btn { flex: none; }
.pb-search__panel { position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 30; max-height: min(60vh, 420px); overflow-y: auto; padding: var(--space-2, 8px); border: 1px solid var(--color-border); border-radius: var(--radius-lg); background: var(--color-surface); box-shadow: var(--shadow-lg); }
.pb-search__panel[hidden] { display: none; }
.pb-search__group { padding: var(--space-2, 8px) var(--space-3, 12px) var(--space-1, 4px); color: var(--color-muted); font: 700 .75rem var(--font-body); letter-spacing: .06em; text-transform: uppercase; }
.pb-search__opt { display: flex; align-items: center; gap: var(--space-3, 12px); padding: var(--space-2, 8px) var(--space-3, 12px); border-radius: var(--radius-md); color: var(--color-text); text-decoration: none; }
.pb-search__opt:hover, .pb-search__opt[aria-selected="true"] { background: color-mix(in srgb, var(--color-primary) 10%, var(--color-surface)); }
.pb-search__opt:focus-visible { outline: none; box-shadow: var(--focus-ring); }
.pb-search__opt img { flex: none; width: 40px; height: 40px; border-radius: var(--radius-sm); object-fit: cover; background: color-mix(in srgb, var(--color-primary) 6%, var(--color-surface)); }
.pb-search__opt-name { flex: 1; min-width: 0; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pb-search__opt-meta { flex: none; color: var(--color-muted); font-size: .875rem; font-variant-numeric: tabular-nums; }
.pb-search__opt--all { justify-content: center; margin-top: var(--space-1, 4px); color: var(--color-primary-text, var(--color-primary)); font-weight: 700; }
.pb-search__chips { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-2, 8px); margin: var(--space-4, 16px) 0 0; padding: 0; list-style: none; }
.pb-chip { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border: 1px solid var(--color-border-input, var(--color-border)); border-radius: var(--radius-btn, 12px); background: var(--color-surface); color: var(--color-text); font: 500 .875rem var(--font-body); text-decoration: none; white-space: nowrap; transition: border-color var(--dur, .2s) var(--ease, ease), color var(--dur, .2s) var(--ease, ease); }
.pb-chip:hover { border-color: var(--color-primary); color: var(--color-primary-text, var(--color-primary)); }
.pb-chip:focus-visible { outline: none; box-shadow: var(--focus-ring); }
@media (max-width: 767.98px) {
  .pb-search__field { min-height: 52px; padding-left: var(--space-3, 12px); }
  .pb-search__input { height: 40px; font-size: 1rem; }
  .pb-search__btn { padding: 0 var(--space-4, 16px); min-height: 40px; }
  .pb-search__chips { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; margin-inline: calc(-1 * var(--gutter, 16px)); padding: 0 var(--gutter, 16px) var(--space-1, 4px); scrollbar-width: none; }
  .pb-search__chips::-webkit-scrollbar { display: none; }
}

/* ---------- Iletisim bandi ---------- */
.pb-contact { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-4, 16px) var(--space-6, 24px); padding: var(--space-5, 20px) var(--space-6, 24px); border: 1px solid color-mix(in srgb, var(--color-primary) 22%, transparent); border-radius: var(--radius-xl, 24px); background: color-mix(in srgb, var(--color-primary) 8%, var(--color-surface)); }
.pb-contact__icon { flex: none; display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--color-primary); color: var(--color-on-primary); font-size: 1.5rem; }
.pb-contact__text { flex: 1 1 240px; min-width: 0; }
.pb-contact__title { margin: 0 0 var(--space-1, 4px); font-family: var(--font-heading); font-weight: var(--fw-heading, 700); font-size: var(--fs-h3, 1.25rem); color: var(--color-text); }
.pb-contact__text p { margin: 0; color: var(--color-muted); }
.pb-contact__actions { display: flex; flex-wrap: wrap; gap: var(--space-3, 12px); }
@media (max-width: 575.98px) {
  .pb-contact { padding: var(--space-4, 16px); }
  .pb-contact__actions { width: 100%; }
  .pb-contact__actions > .pb-btn { flex: 1 1 100%; }
}

/* ---------- T-271: sayfa yuvaları (kategori sayfası üstü/altı, ürün sayfası altı, boş sepet) ---------- */
/* Yuva sarmalayıcısı .home sınıfını blok stilleri için taşır (--home-gap, odak halkası); ana sayfanın zemini/alt boşluğu alışveriş sayfasına taşınmaz. */
.home.pb-slot { background: transparent; padding-bottom: 0; --home-gap: clamp(24px, 3vw, 40px); }
.pb-slot { margin-block: var(--space-4, 16px); }
.pb-slot > .pb-block:first-child > .home-section:first-child, .pb-slot > .home-section:first-child { margin-top: 0; }
/* Kategori ve sepet sayfalarında yuva zaten .mos-page içindedir: bloğun kendi yan boşluğu ikinci kez eklenmesin (ürün sayfasında yuva sayfa kökündedir, boşluk korunur) */
.mos-page .pb-slot .mos-wrap { padding-inline: 0; }
