/* ==========================================================================
   Katalog: hizmet ve ürün sayfaları
   services · service · products · product-group · product
   Yalnızca base.css tokenları. Önekler: cat- (ortak) · svc- (hizmet) · grp- (grup) · prd- (ürün)
   ========================================================================== */

/* ---------------------------------------------------------------- Ortak: etiket, çip */
.cat-label { margin: 0 0 var(--s-1); font-size: var(--fs-xs); font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--steel-600); }
.cat-label--light { color: var(--on-dark-muted); }
.cat-label-heading { display: flex; align-items: center; gap: var(--s-2); margin-bottom: var(--s-3); font-family: var(--font-body); font-size: var(--fs-xs); font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--text-soft); }
.cat-label-heading::after { content: ""; flex: 1; height: 1px; background: var(--line); }

.cat-chips { list-style: none; display: flex; flex-wrap: wrap; gap: var(--s-1); }
.cat-chip { position: relative; z-index: 2; transition: border-color var(--t-fast), color var(--t-fast), background-color var(--t-fast); }
.cat-chip .icon { color: var(--steel-600); transition: color var(--t-fast); }
a.cat-chip:hover { border-color: var(--red); color: var(--text); background: var(--red-50); }
a.cat-chip:hover .icon { color: var(--red); }
.cat-chip__count { margin-left: calc(var(--s-1) / 2); padding-left: var(--s-1); border-left: 1px solid var(--line-strong); font-family: var(--font-display); font-weight: 700; font-size: var(--fs-sm); color: var(--text); }
.cat-chip--more { font-weight: 600; color: var(--text); background: var(--steel-100); }
.cat-chips--lg .chip { min-height: 40px; padding-inline: var(--s-2); font-size: var(--fs-sm); }

/* Stretched link kartlarında klavye odağı */
.svc-tile:has(.svc-tile__title a:focus-visible),
.grp-card:has(.grp-card__title a:focus-visible) { outline: 2px solid var(--red); outline-offset: 3px; }
.svc-tile__title a:focus-visible, .grp-card__title a:focus-visible { outline: none; }

/* ---------------------------------------------------------------- Ortak: bölüm menüsü (yapışkan) */
.cat-subnav {
  position: sticky; top: var(--header-h); z-index: 40;
  background: var(--surface); border-bottom: 1px solid var(--line); box-shadow: var(--shadow-sm);
  overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
.cat-subnav::-webkit-scrollbar { display: none; }
.cat-subnav__inner { display: flex; align-items: center; gap: var(--s-3); min-height: calc(var(--s-6) - var(--s-1)); }
.cat-subnav__list { list-style: none; display: flex; gap: var(--s-3); flex: 1; min-width: max-content; }
.cat-subnav__list a {
  position: relative; display: inline-flex; align-items: center; min-height: calc(var(--s-6) - var(--s-1));
  font-size: var(--fs-sm); font-weight: 600; color: var(--text-muted); white-space: nowrap; transition: color var(--t-fast);
}
.cat-subnav__list a::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--red); transform: scaleX(0); transform-origin: left; transition: transform var(--t) var(--ease); }
.cat-subnav__list a:hover { color: var(--text); }
.cat-subnav__list a:hover::after { transform: scaleX(.4); }
.cat-subnav__list a.is-active { color: var(--text); }
.cat-subnav__list a.is-active::after { transform: scaleX(1); box-shadow: 0 0 10px var(--red-glow); }
.cat-subnav__cta { display: none; flex: none; }
/* Uzun dilde liste kaba sığmazsa kayar; "Teklif İste" sağ kenarda yapışık kalır (site.js .is-overflow: altından geçen
   bağlantılar beyaza solar). İç kap içerik genişliğine uzar ki yapışkan düğme kabın sonunda kalabilsin. */
.cat-subnav__inner { min-width: max-content; }
@media (min-width: 900px) {
  .cat-subnav__cta { display: inline-flex; position: sticky; right: var(--gutter); z-index: 1; }
  .cat-subnav.is-overflow .cat-subnav__cta { box-shadow: calc(var(--s-3) * -1) 0 var(--s-2) var(--s-1) var(--surface); }
}

/* Menü altında kalmasın diye çapa boşluğu (html scroll-padding'e eklenir) */
.cat-anchor { scroll-margin-top: var(--s-4); }

/* ---------------------------------------------------------------- Ortak: boş durum */
.cat-empty { display: grid; justify-items: center; gap: var(--s-2); padding: var(--s-6) var(--s-3); text-align: center; border: 1px dashed var(--line-strong); }
.cat-empty:not(.u-steel) { background: var(--surface); }
.cat-empty h2, .cat-empty h3 { font-family: var(--font-display); font-size: clamp(1.625rem, 1.3rem + 1.2vw, 2.25rem); font-weight: 700; line-height: 1; text-transform: uppercase; }
.cat-empty p { max-width: calc(58 * var(--ch-body)); margin: 0; color: var(--text-muted); }
.cat-empty__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--s-1); margin-top: var(--s-1); }
.cat-empty--steel { border: 1px solid rgba(13, 15, 17, .2); color: var(--ink); }
.cat-empty--steel p { color: var(--graphite); }

/* ---------------------------------------------------------------- Ortak: iletişim kartı (koyu çelik) */
.cat-contact { display: grid; gap: var(--s-2); padding: var(--s-3); border-top: 2px solid var(--red); box-shadow: var(--shadow-lg); }
@media (max-width: 479px) { .cat-contact { padding: var(--s-3) var(--s-2); } } /* dar kapta düğme etiketi sığsın */
@media (min-width: 640px) { .cat-contact { padding: var(--s-4); } }
.cat-contact > * { margin: 0; }
.cat-contact__label { font-family: var(--font-display); font-size: clamp(1.5rem, 1.3rem + .6vw, 1.75rem); font-weight: 700; line-height: 1.02; text-transform: uppercase; color: #fff; }
.cat-contact__text { font-size: var(--fs-sm); color: var(--on-dark-muted); }
.cat-contact__person { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-1); font-weight: 600; color: var(--on-dark); }
.cat-contact__person .icon { color: var(--red); }
.cat-contact__person small { font-weight: 400; color: var(--on-dark-muted); }
.cat-contact__phone { display: inline-flex; align-items: center; gap: var(--s-1); justify-self: start; white-space: nowrap; font-family: var(--font-display); font-size: 2rem; font-weight: 700; letter-spacing: .02em; line-height: 1.1; color: #fff; transition: color var(--t-fast); }
.cat-contact__phone .icon { width: 26px; height: 26px; color: var(--red); }
.cat-contact__phone:hover { color: var(--steel-200); }
.cat-contact__actions { display: grid; gap: var(--s-1); }
.cat-contact__note { display: flex; align-items: center; gap: var(--s-1); font-size: var(--fs-sm); color: var(--on-dark-muted); }
.cat-contact__note .icon { color: var(--red); }

/* ---------------------------------------------------------------- Ortak: termin paneli */
.cat-termin { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); background: var(--surface); border: 1px solid rgba(13, 15, 17, .16); border-top: 3px solid var(--red); box-shadow: var(--shadow-md); }
.cat-termin__item { display: flex; flex-direction: column; padding: var(--s-2); }
.cat-termin__item + .cat-termin__item { border-left: 1px solid var(--line); }
.cat-termin strong { font-family: var(--font-display); font-size: clamp(1.75rem, 1.2rem + 2.2vw, 3rem); font-weight: 700; line-height: 1; letter-spacing: .01em; color: var(--ink); font-variant-numeric: tabular-nums; }
.cat-termin span { font-size: var(--fs-xs); font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--red-700); }
.cat-termin small { margin-top: var(--s-1); font-size: var(--fs-sm); line-height: 1.4; color: var(--text-muted); }
@media (min-width: 640px) { .cat-termin__item { padding: var(--s-3); } }
/* Dar kapta (telefon; 1024-1279 px'te yarım sütun) üç sütunda açıklama (ru "Стандартное изготовление", nl) kelime
   ortasından kırılıyordu: satırlar. Kap genişliğine göre; kapsayıcı yoksa (eski tarayıcı) 419 px medya kuralı. */
.svc-more__body { container-type: inline-size; }
@media (max-width: 419px) {
  .cat-termin { grid-template-columns: 1fr; }
  .cat-termin__item { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 0 var(--s-1); }
  .cat-termin__item + .cat-termin__item { border-left: 0; border-top: 1px solid var(--line); }
  .cat-termin small { flex-basis: 100%; margin-top: calc(var(--s-1) / 2); }
}
@container (max-width: 520px) {
  .cat-termin { grid-template-columns: 1fr; }
  .cat-termin__item { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 0 var(--s-1); }
  .cat-termin__item + .cat-termin__item { border-left: 0; border-top: 1px solid var(--line); }
  .cat-termin small { flex-basis: 100%; margin-top: calc(var(--s-1) / 2); }
}

/* ---------------------------------------------------------------- Ortak: ürün ızgarası */
.cat-products { display: grid; gap: var(--s-1); }
@media (min-width: 640px) { .cat-products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-2); } }
@media (min-width: 900px) { .cat-products { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .cat-products { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--s-3); } }
/* "Tümünü göster" (catalog.js): ilk N kart görünür, fazlası katlanır; JS yoksa hepsi görünür */
.cat-products > .is-collapsed { display: none; }
.cat-more { display: flex; justify-content: center; margin-top: var(--s-4); }
.cat-more__btn[hidden] { display: none; }

/* Ürün kartı yatay satır (.product-card--row) ve bağlam satırı (.product-card__context) base.css'te (her sayfada). */

/* Süzgeç çipleri (alt grup) + canlı sonuç bildirimi (catalog.js) */
.cat-filter { display: flex; flex-wrap: wrap; gap: var(--s-1); margin-bottom: var(--s-3); }
.cat-filter__chip { min-height: calc(var(--s-5) - var(--s-1)); padding-inline: var(--s-2); font-size: var(--fs-sm); cursor: pointer; }
.cat-filter__chip:focus-visible { outline: 2px solid var(--red); outline-offset: 2px; }
.cat-filter__chip[aria-pressed="true"],
.cat-filter__chip[aria-pressed="true"]:hover { color: #fff; border-color: var(--graphite); }
.cat-filter__chip[aria-pressed="true"] .cat-chip__count { color: #fff; border-left-color: rgba(255, 255, 255, .35); }
@media (max-width: 639px) {
  .cat-filter { flex-wrap: nowrap; margin-inline: calc(var(--gutter) * -1); padding: 0 var(--gutter) 2px; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .cat-filter::-webkit-scrollbar { display: none; }
  .cat-filter__chip { flex: none; }
}

/* ---------------------------------------------------------------- Ortak: küçük sektör kartları */
.cat-sectors { display: grid; gap: var(--s-2); grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); }
.cat-sectors--few { grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); }
.sector-card.cat-sector-card { min-height: 288px; padding-top: calc(var(--s-2) + 40px); }
.cat-sector-card .sector-card__top { top: var(--s-2); left: var(--s-2); right: var(--s-2); }
.cat-sector-card .sector-card__top .icon-box { width: 40px; height: 40px; }
.cat-sector-card .sector-card__top .icon-box .icon { width: 20px; height: 20px; }
.cat-sector-card .sector-card__body { padding: var(--s-2) var(--s-3) var(--s-3); }
.cat-sector-card .sector-card__title { font-size: clamp(1.375rem, 1.2rem + .6vw, 1.75rem); }
/* Roboto Condensed dilleri (ru/bg/el/az) Barlow'dan geniş: 4 sütunlu ızgarada (1440) tek kelime "Корабостроене",
   "Ελασματουργεία", "Yanğınsöndürmə" kutuya sığsın, kelime ortasından bölünmesin */
html:is([lang="ru"], [lang="bg"], [lang="el"], [lang="az"]) .cat-sector-card .sector-card__title { font-size: clamp(1.25rem, 1.05rem + .6vw, 1.5rem); }

/* ---------------------------------------------------------------- Ortak: SSS bölmesi */
.cat-faq { display: grid; gap: var(--s-4); }
.cat-faq__head > * { margin: 0; }
.cat-faq__head h2 { margin-bottom: var(--s-2); }
@media (min-width: 1024px) { .cat-faq__head h2 { font-size: clamp(2rem, 1.2rem + 1.6vw, 2.75rem); } } /* 4/12 dar sütun: uzun kelime (nl, el) */
.cat-faq__head p { margin-bottom: var(--s-3); max-width: calc(40 * var(--ch-body)); }
@media (min-width: 1024px) {
  .cat-faq { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: var(--s-6); align-items: start; }
  .cat-faq__head { position: sticky; top: calc(var(--header-h) + var(--s-6) + var(--s-2)); }
}

/* ---------------------------------------------------------------- Ortak: teklif bölümü (koyu) */
.cat-quote { position: relative; overflow: hidden; }
.cat-quote__rule { position: absolute; left: 0; top: 0; width: var(--s-8); }
.cat-quote__grid { display: grid; gap: var(--s-5); }
.cat-quote__grid > * { min-width: 0; }
@media (min-width: 1024px) { .cat-quote__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--s-6); align-items: start; } }
.cat-quote h2 { max-width: calc(20 * var(--ch-display)); color: #fff; font-size: clamp(2rem, 1.4rem + 2vw, 3rem); }
.cat-quote .lead { margin: var(--s-2) 0 var(--s-4); }
.cat-quote__list { margin-bottom: var(--s-4); font-size: .9375rem; color: var(--on-dark); }
.cat-quote__form { padding: var(--s-3); background: var(--graphite-2); border: 1px solid var(--line-dark); border-top: 2px solid var(--red); box-shadow: var(--shadow-lg); }
@media (min-width: 640px) { .cat-quote__form { padding: var(--s-4); } }
.cat-quote__form .form { scroll-margin-top: var(--s-6); }
.cat-quote__form [type="submit"] { width: 100%; white-space: normal; }
@media (min-width: 640px) { .cat-quote__form [type="submit"] { width: auto; } }
@media (max-width: 479px) { .cat-quote__form { padding: var(--s-2); } }
/* channels partial'ı koyu zeminde */
.cat-quote__channels .channels { grid-template-columns: 1fr; background: var(--line-dark); border-color: var(--line-dark); }
@media (min-width: 640px) and (max-width: 1023px) { .cat-quote__channels .channels { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.cat-quote__channels .channel { padding: var(--s-2) var(--s-3); background: var(--graphite); color: var(--on-dark); }
.cat-quote__channels .channel:hover { background: var(--graphite-3); }
.cat-quote__channels .channel small { color: var(--on-dark-muted); }
.cat-quote__channels .icon-box { width: 40px; height: 40px; background: var(--graphite-3); border-color: var(--line-dark); color: var(--on-dark); }
.cat-quote__channels .icon-box .icon { width: 20px; height: 20px; }

/* ---------------------------------------------------------------- Ortak: diğer hizmet / grup çipleri */
.cat-others { display: grid; gap: var(--s-2); }
.cat-others__title { font-size: clamp(1.5rem, 1.3rem + .8vw, 2rem); }
@media (min-width: 900px) { .cat-others { grid-template-columns: minmax(0, 3fr) minmax(0, 9fr); gap: var(--s-4); align-items: start; } }

/* ==========================================================================
   /hizmetler/ — hizmet karoları
   ========================================================================== */
.svc-answer { max-width: 920px; margin-top: var(--s-5); }

.svc-grid { display: grid; gap: var(--s-3); }
@media (min-width: 640px) {
  .svc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .svc-tile--row { grid-column: 1 / -1; }
}
@media (min-width: 1024px) {
  .svc-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .svc-tile--lead-7 { grid-column: span 7; }
  .svc-tile--lead-5 { grid-column: span 5; }
  .svc-tile--col-4 { grid-column: span 4; }
  .svc-tile--col-6 { grid-column: span 6; }
  .svc-tile--row { grid-column: 1 / -1; }
}

.svc-tile { position: relative; display: flex; flex-direction: column; background: var(--surface); border: 1px solid var(--line); transition: border-color var(--t) var(--ease), box-shadow var(--t) var(--ease), transform var(--t) var(--ease); }
.svc-tile::after { content: ""; position: absolute; left: -1px; bottom: -1px; z-index: 1; width: var(--s-5); height: 3px; background: var(--red); box-shadow: 0 0 14px var(--red-glow); transition: width 420ms var(--ease); }
.svc-tile:hover { border-color: var(--line-strong); box-shadow: var(--shadow-md); transform: translateY(-2px); }
.svc-tile:hover::after { width: calc(100% + 2px); }

.svc-tile__media { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: var(--graphite); }
.svc-tile__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 700ms var(--ease), filter var(--t); filter: saturate(.9); }
.svc-tile:hover .svc-tile__media img { transform: scale(1.04); filter: saturate(1); }
.svc-tile__no { position: absolute; left: var(--s-2); top: var(--s-2); padding: calc(var(--s-1) / 2) var(--s-1); font-family: var(--font-display); font-size: var(--fs-sm); font-weight: 700; letter-spacing: .14em; color: #fff; background: rgba(13, 15, 17, .78); }
.svc-tile__icon { position: absolute; right: var(--s-2); top: var(--s-2); background: rgba(13, 15, 17, .78); border-color: rgba(255, 255, 255, .16); color: #fff; transition: background-color var(--t-fast), border-color var(--t-fast); }
.svc-tile:hover .svc-tile__icon { background: var(--red); border-color: var(--red); }

.svc-tile__body { display: flex; flex-direction: column; gap: var(--s-2); flex: 1; padding: var(--s-3); }
.svc-tile__title { font-size: var(--fs-lg); font-weight: 600; line-height: 1.3; }
.svc-tile__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.svc-tile__summary { margin: 0; font-size: .9375rem; color: var(--text-muted); }
.svc-tile__sectors { margin-top: auto; padding-top: var(--s-2); border-top: 1px solid var(--line); }
.svc-tile__summary + .svc-tile__more, .svc-tile__title + .svc-tile__more { margin-top: auto; }
.svc-tile__more { display: flex; align-items: center; justify-content: space-between; gap: var(--s-1); font-size: var(--fs-sm); font-weight: 600; color: var(--text); }
.svc-tile__more .icon { width: 18px; height: 18px; color: var(--red); transition: transform var(--t-fast) var(--ease); }
.svc-tile:hover .svc-tile__more .icon { transform: translateX(4px); }

/* Öne çıkan iki karo (7/5) */
.svc-tile--lead .svc-tile__title { font-family: var(--font-display); font-size: clamp(1.75rem, 1.35rem + 1.3vw, 2.5rem); font-weight: 700; line-height: 1; text-transform: uppercase; letter-spacing: .005em; }
.svc-tile--lead .svc-tile__summary { font-size: var(--fs-base); }
@media (min-width: 1024px) {
  .svc-tile--lead .svc-tile__media { aspect-ratio: auto; height: clamp(240px, 25vw, 360px); }
  .svc-tile--lead .svc-tile__body { padding: var(--s-4); gap: var(--s-3); }
  .svc-tile--col-6 .svc-tile__media { aspect-ratio: auto; height: clamp(220px, 18vw, 260px); }
  .svc-tile--row { flex-direction: row; }
  .svc-tile--row .svc-tile__media { flex: none; width: 42%; aspect-ratio: auto; min-height: 280px; }
  .svc-tile--row .svc-tile__body { padding: var(--s-4); }
}

/* "Parça satmaktan fazlası" — metalik tezgâh yüzeyi */
.svc-more { border-top: 1px solid rgba(13, 15, 17, .2); border-bottom: 1px solid rgba(13, 15, 17, .2); }
.svc-more__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--s-5); }
@media (min-width: 1024px) { .svc-more__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--s-6); align-items: start; } }
/* 1024-1279: sol sütun 5/12'de ~380 px; uzun dil düğme etiketi (ru, el, fil ~390-440 px) tek satıra sığsın diye eşit bölme */
@media (min-width: 1024px) and (max-width: 1279px) { .svc-more__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.svc-more .eyebrow { color: var(--graphite); }
.svc-more h2 { max-width: calc(16 * var(--ch-display)); color: var(--ink); } /* 12ch'de el/nl uzun kelimesi sığmıyordu */
.svc-more__text { max-width: calc(48 * var(--ch-body)); margin: var(--s-3) 0 var(--s-4); font-size: var(--fs-md); line-height: 1.65; color: var(--graphite); }
.svc-principles { list-style: none; counter-reset: principle; margin-bottom: var(--s-4); border-bottom: 1px solid rgba(13, 15, 17, .22); }
.svc-principles li { counter-increment: principle; display: grid; grid-template-columns: var(--s-6) minmax(0, 1fr); gap: 0 var(--s-2); padding: var(--s-3) 0; border-top: 1px solid rgba(13, 15, 17, .22); transition: border-color var(--t); }
.svc-principles li::before { content: counter(principle, decimal-leading-zero); grid-row: span 2; font-family: var(--font-display); font-size: 2.5rem; font-weight: 700; line-height: .9; color: var(--ink); }
.svc-principles li:hover { border-top-color: var(--red); }
.svc-principles h3 { margin-bottom: var(--s-1); font-size: var(--fs-lg); color: var(--ink); }
.svc-principles p { margin: 0; font-size: .9375rem; color: var(--graphite); }

/* ==========================================================================
   /hizmetler/{slug}/ — hizmet detayı
   ========================================================================== */
.svc-overview { display: grid; gap: var(--s-5); }
.svc-overview__main .answer-box { margin-bottom: var(--s-4); }
.svc-overview__main .answer-box p { font-size: var(--fs-md); line-height: 1.6; }
.svc-aside { display: grid; gap: var(--s-3); align-content: start; }
@media (min-width: 1024px) {
  .svc-overview { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--s-6); align-items: start; }
}
/* Yapışkan yalnızca kutu pencereye sığıyorsa: site.js [data-sticky-fit] ölçer, sığmıyorsa .is-unstuck (A11Y-2).
   min-height koşulu JS'siz durum için kaba bir alt sınır. */
@media (min-width: 1024px) and (min-height: 860px) {
  .svc-aside { position: sticky; top: calc(var(--header-h) + var(--s-6) + var(--s-2)); }
}
.svc-benefits { padding: var(--s-4) var(--s-3); background: var(--bg); border: 1px solid var(--line); }
.svc-aside__title { margin-bottom: var(--s-3); font-size: clamp(1.5rem, 1.3rem + .6vw, 1.875rem); }
.svc-benefits__list { gap: var(--s-2); }
.svc-benefits__list strong { display: block; font-weight: 600; line-height: 1.35; }
.svc-benefits__list span { display: block; margin-top: calc(var(--s-1) / 2); font-size: .9375rem; line-height: 1.5; color: var(--text-muted); }

/* Süreç zaman çizelgesi: mobilde dikey, masaüstünde yatay */
.svc-process .section-head h2 { color: #fff; }
.svc-process__note { margin: 0; font-family: var(--font-display); font-size: var(--fs-lg); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--on-dark-muted); }
.svc-timeline { position: relative; list-style: none; display: grid; }
.svc-timeline__step { position: relative; padding: 0 0 var(--s-4) calc(var(--s-5) + var(--s-3)); }
.svc-timeline__step::before { content: ""; position: absolute; left: calc(var(--s-3) - 1px); top: 0; bottom: 0; width: 2px; background: linear-gradient(180deg, var(--red), rgba(225, 31, 38, .12)); }
.svc-timeline__step:last-child { padding-bottom: 0; }
.svc-timeline__step:last-child::before { display: none; }
.svc-timeline__no { position: absolute; left: 0; top: 0; z-index: 1; display: grid; place-items: center; width: var(--s-5); height: var(--s-5); font-family: var(--font-display); font-size: var(--fs-lg); font-weight: 700; letter-spacing: .06em; color: #fff; background: var(--graphite); border: 1px solid var(--red); box-shadow: 0 0 16px var(--red-glow); transition: background-color var(--t-fast); }
.svc-timeline__step:hover .svc-timeline__no { background: var(--red); }
.svc-timeline h3 { margin-bottom: var(--s-1); padding-top: var(--s-1); font-size: var(--fs-lg); color: #fff; }
.svc-timeline p { margin: 0; font-size: .9375rem; color: var(--on-dark-muted); }
@media (min-width: 900px) {
  .svc-timeline { grid-template-columns: repeat(var(--steps, 4), minmax(0, 1fr)); gap: var(--s-4) var(--s-3); }
  .svc-timeline::before { content: ""; position: absolute; left: 0; right: 0; top: calc(var(--s-3) - 1px); height: 2px; background: linear-gradient(90deg, var(--red) 0%, rgba(225, 31, 38, .35) 70%, rgba(225, 31, 38, .08) 100%); box-shadow: 0 0 12px var(--red-glow); }
  .svc-timeline__step { padding: calc(var(--s-5) + var(--s-3)) 0 0; }
  .svc-timeline__step::before { display: none; }
}

/* ==========================================================================
   /urunler/ — ürün grupları
   ========================================================================== */
/* Hero içi arama */
.cat-search { position: relative; display: flex; width: 100%; max-width: 580px; background: var(--surface); border: 1px solid var(--surface); box-shadow: var(--shadow-lg); transition: box-shadow var(--t-fast); }
.cat-search:focus-within { box-shadow: 0 0 0 3px rgba(225, 31, 38, .5), var(--shadow-lg); }
.cat-search__icon { position: absolute; left: var(--s-2); top: 50%; transform: translateY(-50%); color: var(--steel-600); pointer-events: none; }
.cat-search__icon .icon { width: 20px; height: 20px; }
.cat-search__input { flex: 1; width: 0; min-width: 0; min-height: 56px; padding: 0 var(--s-2) 0 calc(var(--s-5) + var(--s-1)); font-size: var(--fs-base); color: var(--text); background: transparent; border: 0; }
.cat-search__input::placeholder { color: var(--text-soft); }
.cat-search__input:focus { outline: none; }
.cat-search__btn { --btn-h: 56px; flex: none; border-radius: 0; }
.cat-search__btn:hover { transform: none; }
.cat-search__btn .icon { display: none; width: 22px; height: 22px; }
/* Dar ekranda düğme yalnızca ok simgesi (erişilebilir ad metinde kalır); ipucu metni kesilmesin */
@media (max-width: 479px) {
  .cat-search__btn { width: 56px; padding: 0; }
  .cat-search__btn .icon { display: block; }
  .cat-search__btn-text { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}
.cat-search__hint { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-1) var(--s-2); width: 100%; margin: var(--s-1) 0 0; font-size: var(--fs-sm); color: var(--on-dark-muted); }
.cat-search__hint a { color: var(--on-dark); border-bottom: 1px solid rgba(255, 255, 255, .28); transition: color var(--t-fast), border-color var(--t-fast); }
.cat-search__hint a:hover { color: #fff; border-color: var(--red); }
.cat-search__alt { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-1) var(--s-3); width: 100%; margin: var(--s-2) 0 0; padding-top: var(--s-2); border-top: 1px solid var(--line-dark); font-size: var(--fs-sm); font-weight: 600; }
.cat-search__alt a { display: inline-flex; align-items: center; gap: var(--s-1); color: var(--on-dark); transition: color var(--t-fast); }
.cat-search__alt a:hover { color: #fff; }
.cat-search__alt .icon { width: 18px; height: 18px; color: var(--red); }
.cat-search__wa .icon { color: var(--wa); }
.cat-search__alt a.cat-search__wa:hover { color: var(--wa); }

/* Sektöre göre ürün bul şeridi */
.cat-sectorbar { border-bottom: 1px solid rgba(13, 15, 17, .2); }
.cat-sectorbar__inner { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--s-2); padding-block: var(--s-3); }
.cat-sectorbar__title { display: flex; align-items: center; gap: var(--s-1); font-family: var(--font-display); font-size: var(--fs-lg); font-weight: 700; letter-spacing: .06em; line-height: 1.1; text-transform: uppercase; color: var(--ink); }
.cat-sectorbar__title .icon { color: var(--red-700); }
.cat-sectorbar__list { list-style: none; display: flex; gap: var(--s-1); margin-inline: calc(var(--gutter) * -1); padding: 0 var(--gutter) 2px; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x proximity; scroll-padding-inline: var(--gutter); -webkit-overflow-scrolling: touch; }
.cat-sectorbar__list::-webkit-scrollbar { display: none; }
.cat-sectorbar__link { display: inline-flex; align-items: center; gap: var(--s-1); min-height: 44px; padding: 0 var(--s-2); font-size: var(--fs-sm); font-weight: 600; white-space: nowrap; color: var(--ink); background: var(--surface); border: 1px solid rgba(13, 15, 17, .16); scroll-snap-align: start; transition: background-color var(--t-fast), color var(--t-fast), border-color var(--t-fast), box-shadow var(--t-fast); }
.cat-sectorbar__link .icon { width: 18px; height: 18px; color: var(--steel-600); transition: color var(--t-fast); }
.cat-sectorbar__link small { font-size: var(--fs-xs); font-weight: 500; color: var(--text-soft); }
.cat-sectorbar__link:hover { color: #fff; background: var(--graphite); border-color: var(--graphite); box-shadow: var(--shadow-md); }
.cat-sectorbar__link:hover .icon { color: var(--red); }
.cat-sectorbar__link:hover small { color: var(--on-dark-muted); }
@media (min-width: 1024px) {
  .cat-sectorbar__inner { grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: var(--s-4); }
  .cat-sectorbar__title { white-space: nowrap; } /* yan sütunda tek satır; telefonda uzun dil başlığı (ru, bg) satır kırar */
  .cat-sectorbar__list { flex-wrap: wrap; margin-inline: 0; padding: 0; overflow: visible; }
}

/* Seçim notu (üstte) + kısa cevap (altta) */
.grp-intro__note { display: flex; gap: var(--s-1); max-width: calc(88 * var(--ch-body)); margin: 0 0 var(--s-4); font-size: .9375rem; line-height: 1.55; color: var(--text-muted); }
.grp-intro__note .icon { flex: none; margin-top: 3px; color: var(--red); }
.grp-intro__note a { color: var(--red-700); text-decoration: underline; text-underline-offset: 3px; }
.grp-answer { max-width: 920px; margin-top: var(--s-5); }

/* Grup mozaiği: öne çıkan + 7/5 · 5/7 çiftler */
.grp-mosaic { display: grid; gap: var(--s-3); }
@media (min-width: 640px) and (max-width: 1023px) {
  .grp-mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grp-card--lead, .grp-card--row { grid-column: 1 / -1; }
}
@media (min-width: 1024px) {
  .grp-mosaic { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .grp-card--lead, .grp-card--row { grid-column: 1 / -1; }
  .grp-card--w7 { grid-column: span 7; }
  .grp-card--w5 { grid-column: span 5; }
}

.grp-card { position: relative; display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--line); transition: border-color var(--t) var(--ease), box-shadow var(--t) var(--ease); }
.grp-card:not(.u-steel) { background: var(--surface); }
.grp-card::after { content: ""; position: absolute; left: 0; bottom: 0; z-index: 1; width: var(--s-5); height: 3px; background: var(--red); box-shadow: 0 0 14px var(--red-glow); transition: width 420ms var(--ease); }
.grp-card:hover { border-color: var(--line-strong); box-shadow: var(--shadow-md); }
.grp-card:hover::after { width: 100%; }

.grp-card__media { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: var(--graphite); }
.grp-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 700ms var(--ease); }
.grp-card:hover .grp-card__media img { transform: scale(1.04); }
.grp-card__no { position: absolute; right: var(--s-2); top: var(--s-2); padding: calc(var(--s-1) / 2) var(--s-1); font-family: var(--font-display); font-size: var(--fs-sm); font-weight: 700; letter-spacing: .14em; color: #fff; background: rgba(13, 15, 17, .78); }

.grp-card__body { display: flex; flex-direction: column; gap: var(--s-2); flex: 1; padding: var(--s-3); }
@media (min-width: 640px) { .grp-card__body { padding: var(--s-4); } }
.grp-card__kicker { display: flex; align-items: center; gap: var(--s-1); margin: 0; font-size: var(--fs-xs); font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--steel-600); }
.grp-card__kicker .icon { color: var(--red); }
.grp-card__title { font-size: clamp(1.75rem, 1.35rem + 1.3vw, 2.5rem); line-height: 1; }
.grp-card__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.grp-card__summary { margin: 0; color: var(--text-muted); }

.grp-card__subs { position: relative; z-index: 2; list-style: none; border-top: 1px solid var(--line); }
.grp-card__subs a { display: flex; align-items: center; gap: var(--s-1); min-height: 44px; padding: var(--s-1) 0; font-size: .9375rem; font-weight: 500; border-bottom: 1px solid var(--line); transition: color var(--t-fast), padding var(--t-fast) var(--ease), background-color var(--t-fast); }
.grp-card__subs a span { flex: 1; }
.grp-card__subs small { min-width: var(--s-3); padding: 0 calc(var(--s-1) / 2); font-family: var(--font-display); font-size: var(--fs-sm); font-weight: 700; text-align: center; color: var(--text); background: var(--steel-100); }
.grp-card__subs .icon { color: var(--red); }
.grp-card__subs a:hover { padding-left: var(--s-1); color: var(--red-700); }

.grp-card__cta { display: inline-flex; align-items: center; gap: var(--s-1); align-self: flex-start; min-height: 44px; margin-top: auto; padding: 0 var(--s-3); font-size: var(--fs-sm); font-weight: 600; color: #fff; background: var(--graphite); transition: background-color var(--t-fast), box-shadow var(--t-fast); }
.grp-card__cta .icon { width: 18px; height: 18px; transition: transform var(--t-fast) var(--ease); }
.grp-card:hover .grp-card__cta { background: var(--red); box-shadow: var(--shadow-red); }
.grp-card:hover .grp-card__cta .icon { transform: translateX(4px); }

/* Öne çıkan ilk grup: fırçalanmış çelik gövde */
.grp-card--lead { border-color: rgba(13, 15, 17, .22); }
.grp-card--lead .grp-card__kicker { color: var(--graphite); }
.grp-card--lead .grp-card__kicker .icon { color: var(--red-700); }
.grp-card--lead .grp-card__title { color: var(--ink); font-size: clamp(2rem, 1.4rem + 2vw, 3.25rem); }
.grp-card--lead .grp-card__summary { color: var(--graphite); font-size: var(--fs-md); }
.grp-card--lead .grp-card__subs, .grp-card--lead .grp-card__subs a { border-color: rgba(13, 15, 17, .2); }
.grp-card--lead .grp-card__subs small { background: var(--surface); }
.grp-card--lead .grp-card__subs a:hover { padding-left: var(--s-1); color: var(--ink); background: var(--surface); }
@media (min-width: 1024px) {
  .grp-card--lead, .grp-card--row { display: grid; }
  .grp-card--lead { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
  .grp-card--row { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
  .grp-card--lead .grp-card__media, .grp-card--row .grp-card__media { aspect-ratio: auto; height: auto; min-height: 420px; }
  .grp-card--lead .grp-card__media img, .grp-card--row .grp-card__media img { position: absolute; inset: 0; }
  .grp-card--row .grp-card__media { order: 2; min-height: 320px; }
  .grp-card--lead .grp-card__body { padding: var(--s-5); justify-content: center; }
  .grp-card--w7 .grp-card__media, .grp-card--w5 .grp-card__media { aspect-ratio: auto; height: clamp(240px, 23vw, 320px); }
}

/* ==========================================================================
   /urunler/{grup}/ — ürün grubu
   ========================================================================== */
.grp-subs { display: grid; gap: var(--s-2); grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); }
.grp-sub { display: flex; align-items: center; gap: var(--s-2); padding: var(--s-1) var(--s-2) var(--s-1) var(--s-1); background: var(--surface); border: 1px solid var(--line); transition: border-color var(--t-fast), box-shadow var(--t) var(--ease); }
.grp-sub__img { flex: none; width: calc(var(--s-6) + var(--s-2)); aspect-ratio: 1; overflow: hidden; background: var(--steel-100); }
.grp-sub__img img { width: 100%; height: 100%; object-fit: cover; transition: transform 600ms var(--ease); }
.grp-sub__body { display: grid; gap: calc(var(--s-1) / 2); flex: 1; min-width: 0; }
.grp-sub__body strong { font-weight: 600; line-height: 1.3; }
.grp-sub__body small { font-size: var(--fs-sm); color: var(--text-soft); }
.grp-sub > .icon { width: 20px; height: 20px; color: var(--red); transition: transform var(--t-fast) var(--ease); }
.grp-sub:hover { border-color: var(--graphite); box-shadow: var(--shadow-md); }
.grp-sub:hover .grp-sub__img img { transform: scale(1.06); }
.grp-sub:hover > .icon { transform: translateX(4px); }

.grp-siblings { background: var(--surface); border-bottom: 1px solid var(--line); }
.grp-siblings__inner { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); padding-block: var(--s-2); }
.grp-siblings__all { display: inline-flex; align-items: center; gap: var(--s-1); font-size: var(--fs-sm); font-weight: 600; transition: color var(--t-fast); }
.grp-siblings__all:hover { color: var(--red-700); }
@media (min-width: 768px) { .grp-siblings__all { padding-right: var(--s-2); border-right: 1px solid var(--line); } }

.grp-toolbar { display: grid; gap: var(--s-3); margin-bottom: var(--s-4); padding-bottom: var(--s-3); border-bottom: 1px solid var(--line-strong); }
.grp-toolbar > * { min-width: 0; }
.grp-toolbar h2 { font-size: clamp(1.875rem, 1.4rem + 1.6vw, 2.75rem); max-width: calc(20 * var(--ch-display)); }
.grp-toolbar .eyebrow { margin-bottom: var(--s-1); }
@media (min-width: 1024px) {
  .grp-toolbar { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: end; gap: var(--s-5); }
  .grp-toolbar__sectors { justify-self: end; text-align: right; }
  .grp-toolbar__sectors .cat-chips { justify-content: flex-end; }
}
/* Mobilde sektör çipleri tek satırda yana kayar; ürün listesi aşağı itilmez */
@media (max-width: 639px) {
  .grp-toolbar__sectors .cat-chips { flex-wrap: nowrap; margin-inline: calc(var(--gutter) * -1); padding: 0 var(--gutter) 2px; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .grp-toolbar__sectors .cat-chips::-webkit-scrollbar { display: none; }
  .grp-toolbar__sectors .cat-chips li { flex: none; }
}

/* Teknik rehberler (article-card): mobilde de tam kart (görsel + özet; masaüstüyle aynı içerik), tek sütun */
@media (max-width: 639px) {
  .grp-articles { gap: var(--s-2); }
  .grp-articles .article-card__body { padding: var(--s-2) var(--s-2) var(--s-3); }
}

.grp-guide { display: grid; gap: var(--s-5); }
.grp-guide > * { min-width: 0; } /* içerikteki geniş tablo (.prose-table) ızgara sütununu taşırmasın */
.grp-guide h2 { max-width: calc(18 * var(--ch-display)); margin-bottom: var(--s-3); }
@media (min-width: 1024px) {
  .grp-guide { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--s-6); align-items: start; }
  .grp-guide__aside { position: sticky; top: calc(var(--header-h) + var(--s-4)); }
}

/* ==========================================================================
   /urun/{slug}/ — ürün detayı
   ========================================================================== */
.prd-top { padding: var(--s-3) 0 var(--s-5); background: var(--surface); }
.prd-top .breadcrumb { margin-bottom: var(--s-3); }
/* Mobil: başlık bloğu → galeri → bilgi; masaüstü: galeri solda (iki satır), başlık + bilgi sağda */
.prd-top__grid { display: grid; gap: var(--s-3); grid-template-areas: "head" "gallery" "info"; }
.prd-top__grid > * { min-width: 0; }
.prd-head { grid-area: head; display: grid; gap: var(--s-2); align-content: start; }
.prd-head > * { margin: 0; }
.prd-gallery { grid-area: gallery; }
.prd-info { grid-area: info; }
@media (min-width: 1024px) {
  .prd-top { padding: var(--s-4) 0 var(--s-6); }
  .prd-top__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); grid-template-rows: auto 1fr; grid-template-areas: "gallery head" "gallery info"; gap: var(--s-3) var(--s-6); align-items: start; }
  .prd-head { gap: var(--s-3); }
  .prd-gallery { position: sticky; top: calc(var(--header-h) + var(--s-3)); }
}
/* Mobil kısa breadcrumb: yalnızca bir üst bağlantı, sola bakan okla (UX-11) */
@media (max-width: 639px) {
  .prd-top { padding-top: var(--s-2); }
  .prd-top .breadcrumb { margin-bottom: var(--s-2); }
  .prd-top .breadcrumb li { display: none; }
  .prd-top .breadcrumb li:nth-last-child(2) { display: inline-flex; }
  .prd-top .breadcrumb li:nth-last-child(2)::before { transform: rotate(-135deg); margin: 0 0 0 calc(var(--s-1) / 2); }
  .prd-top .breadcrumb li:nth-last-child(2) a { display: inline-flex; align-items: center; min-height: var(--s-4); font-weight: 600; color: var(--text); }
  .prd-head .prd-info__group { display: none; }
}
/* Mobil hızlı teklif + kısa özellik çipleri (masaüstünde bilgi sütunundaki kutu ve tablo var) */
.prd-head__chips { list-style: none; display: flex; flex-wrap: wrap; gap: var(--s-1); }
.prd-head__chips li { padding: calc(var(--s-1) / 2) var(--s-2); font-size: var(--fs-sm); font-weight: 600; color: var(--graphite); background: var(--steel-100); border: 1px solid var(--line); }
/* Teklif + WhatsApp: yan yana sığmıyorsa (uzun dil etiketi) WhatsApp alt satıra geçer; etiket taşmaz */
.prd-head__cta { display: flex; flex-wrap: wrap; gap: var(--s-1); }
.prd-head__cta .btn { flex: 1 1 auto; padding-inline: var(--s-2); }
@media (min-width: 1024px) { .prd-head__chips, .prd-head__cta { display: none; } }

/* Galeri: metalik tezgâh çerçevesi içinde ana görsel */
.prd-gallery__main { position: relative; display: block; aspect-ratio: 4 / 3; padding: var(--s-1); border: 1px solid rgba(13, 15, 17, .22); box-shadow: var(--shadow-md); cursor: zoom-in; }
.prd-gallery__main img { width: 100%; height: 100%; object-fit: cover; background: var(--graphite); transition: opacity var(--t); }
.prd-gallery__main.is-loading img { opacity: .45; }
.prd-gallery__main--empty { cursor: default; }
.prd-gallery__main--empty img { object-fit: contain; background: var(--steel-100); }
@media (min-width: 640px) { .prd-gallery__main { padding: var(--s-2); } }
@media (min-width: 1024px) { .prd-gallery__main { aspect-ratio: 5 / 4; } }
.prd-gallery__zoom { position: absolute; right: var(--s-2); bottom: var(--s-2); display: inline-flex; align-items: center; gap: var(--s-1); padding: var(--s-1) var(--s-2); font-size: var(--fs-sm); font-weight: 600; color: #fff; background: var(--graphite); transition: background-color var(--t-fast); }
@media (min-width: 640px) { .prd-gallery__zoom { right: var(--s-3); bottom: var(--s-3); } }
a.prd-gallery__main:hover .prd-gallery__zoom { background: var(--red); }
.prd-gallery__thumbs { display: flex; gap: var(--s-1); margin-top: var(--s-2); padding-bottom: 2px; overflow-x: auto; scrollbar-width: thin; }
.prd-gallery__thumb { flex: none; width: calc(var(--s-6) + var(--s-1)); aspect-ratio: 1; padding: 0; overflow: hidden; background: var(--steel-100); border: 2px solid var(--line); transition: border-color var(--t-fast), box-shadow var(--t-fast); }
@media (min-width: 640px) { .prd-gallery__thumb { width: var(--s-7); } }
.prd-gallery__thumb img { width: 100%; height: 100%; object-fit: cover; }
.prd-gallery__thumb:hover { border-color: var(--steel-500); }
.prd-gallery__thumb.is-active { border-color: var(--red); box-shadow: var(--shadow-red); }
/* "Görseller temsilidir" notu (A2.7): galerinin altında küçük, sakin; mobilde de görünür */
.prd-gallery__note { display: flex; align-items: flex-start; gap: var(--s-1); margin: var(--s-2) 0 0; font-size: var(--fs-sm); line-height: 1.5; color: var(--text-muted); }
.prd-gallery__note .icon { flex: none; margin-top: 2px; color: var(--steel-500); }

/* Bilgi sütunu */
.prd-info { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--s-3); align-content: start; }
.prd-info > * { margin: 0; }
.prd-info__group { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-1); font-size: var(--fs-xs); font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--steel-600); }
.prd-info__group::before { content: ""; width: var(--s-4); height: 2px; background: var(--red); }
.prd-info__group a { transition: color var(--t-fast); }
.prd-info__group a:hover { color: var(--red-700); }
.prd-info__title { font-size: clamp(2.25rem, 1.6rem + 2vw, 3.5rem); line-height: .95; }
.prd-info__code { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-1); font-size: var(--fs-sm); color: var(--text-muted); }
.prd-info__code strong { padding: 0 var(--s-1); font-family: var(--font-display); font-size: var(--fs-lg); font-weight: 700; letter-spacing: .06em; color: var(--text); background: var(--steel-100); border: 1px solid var(--line); }
.prd-info__summary { font-size: var(--fs-md); line-height: 1.6; color: var(--text-muted); }
.prd-info__sectors .cat-label { margin-bottom: var(--s-1); }
.prd-specs th { width: 38%; }
.prd-specs-wrap { display: grid; gap: var(--s-1); }
.prd-specs__ask { display: inline-flex; align-items: center; gap: var(--s-1); justify-self: start; min-height: var(--s-4); font-size: var(--fs-sm); font-weight: 600; color: var(--red-700); text-decoration: underline; text-underline-offset: 3px; transition: color var(--t-fast); }
.prd-specs__ask .icon { color: var(--red); }
.prd-specs__ask:hover { color: var(--text); }

/* Teklif kutusu */
.prd-cta { display: grid; gap: var(--s-2); padding: var(--s-3); border-top: 2px solid var(--red); box-shadow: var(--shadow-lg); }
.prd-cta > * { margin: 0; }
.prd-cta__title { font-family: var(--font-display); font-size: clamp(1.5rem, 1.3rem + .8vw, 1.875rem); font-weight: 700; line-height: 1; text-transform: uppercase; color: #fff; }
.prd-cta__text { font-size: .9375rem; color: var(--on-dark-muted); }
/* Teklif tam satır; WhatsApp + ara yan yana, sığmıyorsa (dar sütun, uzun etiket) alt alta */
.prd-cta__actions { display: flex; flex-wrap: wrap; gap: var(--s-1); }
.prd-cta__actions .btn { flex: 1 1 auto; padding-inline: var(--s-2); }
.prd-cta__actions .btn-primary { flex-basis: 100%; }
.prd-cta__note { display: flex; align-items: flex-start; gap: var(--s-1); padding-top: var(--s-2); font-size: var(--fs-sm); line-height: 1.5; color: var(--on-dark); border-top: 1px solid var(--line-dark); }
.prd-cta__note .icon { margin-top: 1px; color: var(--red); }

/* Açıklama + sipariş öncesi kontrol listesi */
.prd-desc { display: grid; gap: var(--s-5); }
.prd-desc h2 { margin-bottom: var(--s-3); }
@media (min-width: 1024px) { .prd-desc { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--s-6); align-items: start; } }
.prd-desc__aside { display: grid; gap: var(--s-3); align-content: start; }
.prd-checklist { display: grid; gap: var(--s-3); padding: var(--s-4) var(--s-3); background: var(--bg); border: 1px solid var(--line); border-left: 3px solid var(--red); }
.prd-checklist__title { font-family: var(--font-display); font-size: clamp(1.375rem, 1.2rem + .6vw, 1.625rem); font-weight: 700; line-height: 1.05; text-transform: uppercase; letter-spacing: .01em; }
.prd-checklist .list-check { font-size: .9375rem; }
.prd-reading { padding: var(--s-3); background: var(--surface); border: 1px solid var(--line); }
.prd-reading__title { margin-bottom: var(--s-1); font-family: var(--font-display); font-size: var(--fs-lg); font-weight: 700; line-height: 1.1; text-transform: uppercase; letter-spacing: .02em; }
.prd-reading__list { list-style: none; }
.prd-reading__list li + li { border-top: 1px solid var(--line); }
.prd-reading__list a { display: flex; align-items: flex-start; gap: var(--s-1); padding: var(--s-1) 0; font-weight: 600; line-height: 1.4; transition: color var(--t-fast); }
.prd-reading__list a .icon { flex: none; margin-top: 2px; color: var(--red); }
.prd-reading__list small { display: block; margin-top: calc(var(--s-1) / 4); font-size: var(--fs-xs); font-weight: 500; color: var(--text-soft); }
.prd-reading__list a:hover { color: var(--red-700); }
.prd-desc + .prd-size-empty { margin-top: var(--s-5); }

/* Ölçü tablosu */
.prd-size__hint { display: inline-flex; align-items: center; gap: var(--s-1); margin: 0; font-size: var(--fs-sm); color: var(--text-soft); }
.prd-size__hint .icon { color: var(--red); }
.prd-size__note { margin: var(--s-2) 0 0; font-size: var(--fs-sm); color: var(--text-muted); }
.prd-size-empty { display: grid; gap: var(--s-3); padding: var(--s-4) var(--s-3); background: var(--surface); border: 1px solid var(--line); border-left: 3px solid var(--red); }
@media (max-width: 479px) { .prd-size-empty { padding: var(--s-3) var(--s-2); } }
.prd-size-empty h3 { margin-bottom: var(--s-1); font-size: var(--fs-lg); }
.prd-size-empty p { max-width: calc(62 * var(--ch-body)); margin: 0; color: var(--text-muted); }
.prd-size-empty__actions { display: flex; flex-wrap: wrap; gap: var(--s-1); }
@media (min-width: 900px) {
  .prd-size-empty { grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--s-4); padding: var(--s-4); }
  .prd-size-empty__actions { flex-direction: column; }
}

/* Yazdırma satırı (firma · telefon · sayfa adresi): ekranda yok, kağıtta ürün bloğunun üstünde */
.prd-print-contact { display: none; }

/* ---------------------------------------------------------------- Yazdırma / PDF (ürün sayfası)
   Kağıtta: ürün adı, kod, grup, özet, küçük ana görsel, teknik özet tablosu, açıklama, ölçü tablosu (ya da "talep
   üzerine" notu) ve iletişim satırı — 1-2 A4. Menü, bölüm menüsü, dock, footer, CTA kutuları, form, hizmetler, SSS,
   ilgili yazı/ürün listeleri basılmaz. Tablo stili teknik tablolarla (tech.css @media print) aynı: gri başlık,
   #bbb çizgi, kaydırma kabı açık, satır bölünmez. */
@media print {
  @page { margin: 12mm; }
  .topbar, .site-header, .drawer, .contact-dock, .site-footer, .cta-band, .pre-footer, .skip-link, .preview-bar, .lightbox,
  .cat-subnav, .cat-quote, .prd-top .breadcrumb, .prd-head__chips, .prd-head__cta, .prd-gallery__thumbs, .prd-gallery__zoom,
  .prd-info__sectors, .prd-specs__ask, .prd-cta, .prd-desc__aside, .prd-size-empty .icon-box, .prd-size-empty__actions,
  .prd-size__hint, #hizmetler, #sss, [aria-labelledby="benzer-urunler"] { display: none !important; }
  body { background: #fff !important; color: #000; font-size: 10.5pt; }
  .section, .section--white, .section--light, .prd-top, .u-steel, .u-steel-dark { background: none !important; color: #000 !important; box-shadow: none !important; }
  .section, .prd-top { padding-block: 6pt !important; }
  .container { max-width: none !important; padding-inline: 0 !important; }
  a { color: #000 !important; text-decoration: none !important; }

  .prd-print-contact { display: flex; flex-wrap: wrap; gap: 2pt 12pt; margin: 0 0 10pt; padding-bottom: 6pt; border-bottom: 1.5pt solid #000; font-size: 9pt; }
  .prd-print-contact strong { font-family: var(--font-display); font-size: 11pt; letter-spacing: .04em; }
  /* Üst blok: solda küçük ana görsel, sağda başlık + teknik özet */
  .prd-top__grid { grid-template-columns: 52mm minmax(0, 1fr) !important; grid-template-rows: auto 1fr; grid-template-areas: "gallery head" "gallery info" !important; gap: 4pt 10mm !important; }
  .prd-gallery { position: static !important; }
  .prd-gallery__main { aspect-ratio: 1 / 1 !important; padding: 0 !important; border: 1px solid #999 !important; box-shadow: none !important; }
  .prd-gallery__main img { background: none !important; }
  .prd-head { gap: 3pt !important; }
  .prd-head .prd-info__group { display: flex !important; color: #333 !important; font-size: 8pt; }
  .prd-info__title { font-size: 20pt !important; line-height: 1.05; color: #000 !important; }
  .prd-info__code strong { background: none !important; border-color: #999 !important; }
  .prd-info__summary { font-size: 10pt; color: #222 !important; }
  .prd-info { gap: 6pt !important; }
  .prd-specs, .prd-specs th, .prd-specs td { border-color: #bbb !important; }
  .prd-specs th, .prd-specs td { padding: 3pt 6pt !important; font-size: 9pt; }
  .prd-specs th { background: #eee !important; color: #000 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .prd-specs-wrap, .prd-specs { break-inside: avoid; }

  /* Açıklama: başlık hiyerarşisi H1 > H2 > H3, gövde okunur boyda */
  #aciklama .eyebrow { display: none; }
  h2, .section-head h2 { font-size: 13pt !important; margin-bottom: 4pt !important; color: #000 !important; }
  h3 { font-size: 11pt !important; }
  .prd-desc { display: block !important; }
  .prose { max-width: none !important; font-size: 10pt; line-height: 1.5; color: #000 !important; }
  .prose > * + * { margin-top: 4pt !important; }
  .prose ul li::before { background: #000 !important; }
  .prd-desc + .prd-size-empty { margin-top: 8pt !important; }
  .prd-size-empty { display: block !important; padding: 6pt 8pt !important; border: 1px solid #999 !important; border-left-width: 3pt !important; break-inside: avoid; }
  .prd-size-empty p { max-width: none !important; font-size: 9.5pt; color: #222 !important; }

  /* Ölçü tablosu (doluysa): teknik tablolarla aynı kağıt dili */
  #olcu .section-head { margin-bottom: 4pt !important; }
  .table-scroll { overflow: visible !important; border: 1px solid #999 !important; }
  .table-scroll table { min-width: 0 !important; width: 100%; font-size: 8pt; }
  .table-scroll th, .table-scroll td { padding: 3pt !important; white-space: normal !important; border-color: #bbb !important; color: #000 !important; background: none !important; }
  /* başlık ve alt başlık satırları gri (seçiciler base.css ile aynı; :has() ayrı kuralda) */
  .table-scroll th, .table-scroll thead td, .table-scroll table.has-subhead > thead > tr:nth-child(2) > * { background: #e5e5e5 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .table-scroll table:not(:has(> thead)) > tbody:first-of-type > tr:first-child > td,
  .table-scroll table.has-subhead:not(:has(> thead)) > tbody:first-of-type > tr:nth-child(2) > * { background: #e5e5e5 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .table-scroll thead { display: table-header-group; }
  .table-scroll tr { break-inside: avoid; }
  .prd-size__note { font-size: 8.5pt; color: #333 !important; }
}
