/* ==========================================================================
   Ürün sayfaları (CamERP · 1DCut · 2DCut) — ortak bloklar
   Spec şeridi (A), çıplak ekran (B), mobil üçlü (C), detay kırpımları (D),
   kesim planı (E), mağaza/geçiş şeritleri
   ========================================================================== */

.tone-2 {
  color: var(--fg-3);
}

/* ---------- Hero ---------- */
.p-hero {
  padding-top: 96px;
}

.p-hero__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-40);
  margin-top: 35px;
}

.p-hero__title {
  flex: none;
}

.p-hero__lead {
  width: 432px;
  flex: none;
  margin-bottom: 2px;
}

.p-spec {
  margin-top: 64px;
}

/* ---------- Bölüm etiketi ---------- */
.p-section-label {
  margin-bottom: 32px;
}

/* ---------- Akış karoları ---------- */
.p-flow {
  padding-top: 24px;
}

.flow {
  --tiles-cols: 6;
  --tile-h: 219px;
}

.flow .tile {
  padding: 22px 20px 20px;
}

.flow .tile .t-small {
  margin-top: 6px;
  font-size: var(--fs-xs);
}

/* ---------- Ekranlar (çıplak ekran + numaralı kırpımlar) ---------- */
.p-screens {
  padding-top: var(--section);
}

.p-screens__scroller {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--gutter);
  width: 100%;
  max-width: var(--container);
  margin-inline: auto;
  padding-inline: var(--margin);
}

.p-screens__main {
  grid-column: 1 / -1;
  --ph-ratio: 1282 / 720;
}

.p-crop .ph {
  --ph-ratio: 1 / 1;
}

.p-crop .shot {
  --ph-ratio: 460 / 300;
  --shot-pos: 0% 0%;
}

.p-crop figcaption {
  display: flex;
  gap: 14px;
  margin-top: 16px;
  font-size: var(--fs-small);
  line-height: 1.45;
}

.p-crop__n {
  flex: none;
  padding-top: 0.15em;
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tr-mono);
  color: var(--kerf-text);
}

/* ---------- Modüller ---------- */
.p-modules {
  margin-top: var(--section);
  padding-block: 120px 170px;
}

.modules {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: var(--gutter);
  row-gap: 0;
  margin-top: 46px;
}

.module {
  padding-block: 20px 34px;
  border-top: 1px solid var(--rule);
}

.module summary {
  display: block;
  list-style: none;
  font-weight: 600;
  cursor: default;
}

.module summary::-webkit-details-marker {
  display: none;
}

.module p {
  margin-top: 10px;
}

/* ---------- Mobil üçlü ---------- */
.p-mobile__grid {
  display: grid;
  grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
  column-gap: var(--gutter);
  align-items: center;
}

.p-mobile__grid > :first-child {
  grid-column: 1 / span 5;
}

.p-mobile__grid--text > :first-child {
  grid-column: 1 / span 7;
}

.p-mobile__text {
  max-width: 460px;
  margin-top: 20px;
}

.phones-3 {
  grid-column: 7 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}

.phones-3 > :nth-child(2) {
  margin-top: -56px;
}

.ph--accent {
  --ph-bg: var(--accent-soft, #dde7f1);
}

/* ---------- Kimin ekranı / sektörler ---------- */
.p-who {
  padding-bottom: var(--section);
}

.who {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--gutter);
  list-style: none;
  padding: 0;
}

.who p {
  margin-top: 6px;
}

/* ---------- Kapanış + kardeş ürünler ---------- */
.p-cta {
  border-top: 1px solid var(--line-strong);
  padding-block: 62px 96px;
}

.p-cta__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-24);
  flex-wrap: wrap;
  padding-bottom: 60px;
  border-bottom: 1px solid var(--line);
}

.p-cta__row .btn {
  min-height: 52px;
}

.p-siblings {
  padding-top: 26px;
}

.p-siblings > .label {
  margin-bottom: 22px;
}

.sibling__name {
  letter-spacing: -0.05em;
}

/* Satır içi kesim lejantı */
.legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 24px;
  margin-top: 16px;
  list-style: none;
  padding: 0;
}

.legend li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.legend i {
  display: inline-block;
  width: 10px;
  height: 10px;
  background: var(--sw);
  border: 1px solid var(--sw-border, transparent);
}

/* ---------- Responsive ---------- */
@media (max-width: 1279px) {
  .flow {
    --tile-h: 190px;
  }
}

@media (max-width: 1279px) {
  .p-hero__head {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-24);
  }

  .p-hero__lead {
    width: auto;
    max-width: 560px;
  }
}

@media (max-width: 1023px) {

  .flow {
    --tiles-cols: 3;
  }

  .modules {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .p-mobile__grid > :first-child,
  .phones-3 {
    grid-column: 1 / -1;
  }

  .phones-3 {
    margin-top: 96px;
    max-width: 640px;
  }

  .who {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: var(--space-40);
  }
}

@media (max-width: 767px) {
  .p-hero {
    padding-top: 40px;
  }

  .p-hero__head {
    margin-top: 20px;
  }

  .p-spec {
    margin-top: 32px;
  }

  .p-flow {
    padding-top: 0;
  }

  .flow {
    --tiles-cols: 1;
    --tile-h: 0;
  }

  .flow .tile {
    flex-direction: row-reverse;
    align-items: center;
    min-height: 64px;
    padding: 14px 20px;
  }

  .flow .tile .t-small {
    display: none !important;
  }

  .flow .tile .t-h6 {
    font-size: 1.25rem;
  }

  .p-screens {
    padding-top: 72px;
  }

  /* Ekranlar: yatay kaydırma */
  .p-screens__scroller {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: var(--margin);
    padding-bottom: 16px;
    scrollbar-width: thin;
    scrollbar-color: var(--fg-3) transparent;
  }

  .p-screens__main,
  .p-crop {
    flex: none;
    width: 84vw;
    scroll-snap-align: start;
  }

  .p-screens__main {
    --ph-ratio: 4 / 3;
  }

  .p-modules {
    margin-top: 72px;
    padding-block: 72px;
  }

  .modules {
    grid-template-columns: 1fr;
    margin-top: 24px;
    border-top: 1px solid var(--ink);
  }

  .module {
    padding-block: 16px;
  }

  .module:first-child {
    border-top: 0;
  }

  .js .module summary {
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .js .module summary::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 10px;
    border-color: transparent transparent transparent currentColor;
    transition: transform var(--transition-fast);
  }

  .js .module[open] summary::before {
    transform: rotate(90deg);
  }

  .phones-3 {
    margin-top: 72px;
    gap: 10px;
  }

  .phones-3 > :nth-child(2) {
    margin-top: -32px;
  }

  .who {
    grid-template-columns: 1fr;
    row-gap: var(--space-24);
  }

  .p-cta {
    padding-block: 48px 64px;
  }

  .p-cta__row {
    flex-direction: column;
    align-items: stretch;
    padding-bottom: 40px;
  }

  .p-cta__row .btn-row {
    flex-direction: column;
  }

  .p-cta__row .btn {
    width: 100%;
  }
}
