/* ════════════════════════════════════════════════════════
   Eksenium Teklif — YAZDIRMA / PDF
   Kaynak: EKSENIUM-KAGIT-SPEC.md (açık zemin dili).
   Ekran koyu kalır; bu dosya yalnız media="print" ile yüklenir.
   Kağıt beyaz (yazdırma) · mürekkep #0A2540 · aksan şekil #057AE4 · aksan
   metin #0561B4 · kutu yok, 5px kural çizgisi, saç çizgisi satırlar,
   gölge/parıltı yok, uppercase transform yok (İ tuzağı).
   ════════════════════════════════════════════════════════ */

/* Yan boşluk @page'de DEĞİL gövdede: Chrome yazdırma penceresinde "Kenar boşlukları:
   Yok" seçiliyse @page sıfırlanıyor, metin kağıdın kenarına dayanıyordu (İsa, 2026-09-21).
   Gövde yan dolgusu her sayfada geçerlidir; üst/alt ise yalnız @page ile sayfa sayfa
   verilebilir, o kısım pencere ayarına bağlı kalır ("Varsayılan" doğru seçim). */
@page { size: A4; margin: 16mm 0 18mm; }
body { padding: 0 16mm !important; }

/* Zemin BEYAZ: Chrome yazdırmada @page kenar boşluklarını boyamaz, renkli zemin
   yalnız içerik kutusuna basılıp kenarlarda beyaz çerçeve bırakıyordu (İsa, 2026-09-14).
   Kağıt dilinin soğuk beyazı ekran içindir; basılı sayfada beyaz doğru. */
html, body {
  background: #FFFFFF !important;
  color: #0A2540 !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
  font-size: 11.5pt;
  line-height: 1.5;
}

/* ── ekrana ait her şey kapanır ── */
body::before, body::after, .stars, .hero-glow, .hero-orb, .cta-orbit, .scroll-cue,
.progress, .sec::before, .quote::before, .p-grand::after, .golive20, .noscript-note,
#zoho, #eksenium, .btn-onay, .cta-alt, .cta h2, .ipucu, .pdf-al,
[id^="zsiq"], .zsiq_floatmain, .zsiq_custommain, iframe { display: none !important; }

/* reveal animasyonu gizli bırakmasın */
.js .rev, .rev { opacity: 1 !important; transform: none !important; transition: none !important; filter: none !important; }
* { animation: none !important; text-shadow: none !important; box-shadow: none !important; }

.wrap { max-width: none; padding: 0; }
.sec { padding: 0; margin: 0 0 9mm; }
p, li { orphans: 3; widows: 3; }

/* ── Sayfa kırılma disiplini: bloklar bütün kalır ──
   Bir blok kalan alana sığmıyorsa Chrome onu bir sonraki sayfaya taşır
   (avoid, bloğun tek sayfaya sığması koşuluyla). */
#yol { page-break-inside: avoid; break-inside: avoid; }
/* fiyat yeni sayfaya ZORLANMAZ: sığıyorsa aynı sayfada devam eder (kısa teklif 2 sayfa
   kalsın), sığmıyorsa .price'ın avoid kuralı onu bütün olarak sonraki sayfaya taşır */
/* etiket + başlık + tablo + toplamlar tek blok; sığmazsa hepsi birlikte sonraki sayfaya */
.fiyat-blok { page-break-inside: avoid; break-inside: avoid; }
/* bölüm etiketi ve başlığı altındaki içerikten kopmasın */
.eyebrow, .sec h2 { page-break-after: avoid; break-after: avoid; }
.scope-note { page-break-inside: avoid; break-inside: avoid; }   /* şartlar sığıyorsa tek parça */
.scope-note .sn-blok { page-break-inside: avoid; break-inside: avoid; }  /* sığmıyorsa başlık+paragraf çiftleri bölünmez */
.cta { page-break-inside: avoid; break-inside: avoid; page-break-after: avoid; break-after: avoid; }
.foot { page-break-inside: avoid; break-inside: avoid; page-break-before: avoid; break-before: avoid; }

/* ── mürekkep atamaları (koyu dilden gelen beyazlar) ── */
.quote-tag, .hero-h1, .hero-h1 em, .hero-hitap, .hero-sub, .hero-meta,
.sec h2, .eyebrow, .eyebrow::before, .lead,
.timeline h3, .timeline p, .tl-dot,
.scope-list li, .scope-list li::before, .scope-list .sc-t,
.mini-h, .tick-list li, .tick-list li::before, .sector-list strong, .sector-list span, .gl-not,
.p-head > div, .p-row > div, .p-row .p-name, .p-row .p-total, .p-net, .p-list, .p-desc, .p-desc p, .p-dahil,
.p-sum .p-label, .p-sum .p-val, .p-grand .p-label, .p-grand .p-val,
.scope-note, .scope-note .sn-p, .scope-note .sn-h, .scope-note strong,
.cta-valid, .cta-terms, .cta-terms p, .cta-terms .ct-label,
.foot, .foot-line a, .foot-note, .foot-tech { color: #0A2540 !important; }
.sertifika .mini-h, .sert-list strong { color: #0A2540 !important; }
.sert-list em { color: rgba(10, 37, 64, .7) !important; }

.hero-h1 em, .metric strong, .t-ic {
  background: none !important; -webkit-text-fill-color: currentColor !important; color: #0A2540 !important;
}
.hero-h1 em { font-style: italic; padding-right: .05em; filter: none !important; -webkit-background-clip: border-box !important; background-clip: border-box !important; }

/* ── antet: logo lacivert, teklif künyesi sağda ── */
.topbar {
  position: static; background: none; border: 0;
  -webkit-backdrop-filter: none; backdrop-filter: none;
  padding: 0 0 6mm; margin: 0 0 8mm; border-bottom: 5px solid #0A2540;
}
.topbar-in { max-width: none; padding: 0; height: auto; }
.logo svg { height: 30px; }
/* lockup'ın kendi açılış animasyonu opacity:0'dan başlar; animasyon kapalıyken
   hiç açılmaz ve logo kaybolur → son durumunu zorla (SVG'nin reduced-motion dalıyla aynı) */
.logo svg #aglobe, .logo svg #aleaf, .logo svg .alt { opacity: 1 !important; transform: none !important; }
.logo svg #afloat { transform: none !important; }
.logo svg [fill="#FFFFFF"], .logo svg path, .logo svg use { fill: #0A2540 !important; }
.quote-tag { font-size: 10pt; letter-spacing: .04em; color: rgba(10, 37, 64, .58) !important; }

/* ── kapak (hero) sade metin bloğu ── */
.hero { padding: 0; min-height: 0; margin-bottom: 10mm; text-align: left; }
.hero-hitap { font-size: 10pt; letter-spacing: .16em; color: rgba(10, 37, 64, .58) !important; margin-bottom: 3mm; }
.hero-h1 { font-size: 26pt; font-weight: 700; letter-spacing: -.02em; line-height: 1.1; max-width: none; margin: 0 0 4mm; }
.hero-sub { font-size: 12pt; max-width: none; margin: 0 0 4mm; }
.hero-meta {
  display: block; font-size: 9.5pt; letter-spacing: .04em; font-variant-numeric: tabular-nums;
  color: rgba(10, 37, 64, .58) !important; padding-top: 3mm; border-top: 1px solid rgba(10, 37, 64, .16);
}

/* ── bölüm başlığı: 5px kural çizgisi, etiket, başlık ── */
.eyebrow {
  font-size: 9pt; font-weight: 600; letter-spacing: .16em;
  color: rgba(10, 37, 64, .58) !important; margin: 0 0 2mm;
  padding-top: 3mm; border-top: 5px solid #0A2540;
}
.sec h2 { font-size: 17pt; font-weight: 700; letter-spacing: -.02em; margin: 0 0 4mm; page-break-after: avoid; }

/* kapsam listesi: ekranda iki sütun + 56px hayalet numara; kağıtta tek sütun,
   numara solda küçük, metin girintili */
.scope-list { display: block !important; columns: auto; margin: 0; }
.scope-list li {
  position: relative; font-size: 11pt; line-height: 1.45;
  padding: 2.4mm 0 2.4mm 12mm !important;
  border-bottom: 1px solid rgba(10, 37, 64, .16); page-break-inside: avoid;
}
.scope-list .sc-t { font-size: 11pt; font-weight: 700; }
.scope-list .sc-d { margin-top: .8mm; font-size: 10pt; color: rgba(10, 37, 64, .72) !important; }
.scope-list li::before {
  position: absolute; left: 0; top: 2.6mm !important;
  font-size: 9.5pt !important; font-weight: 700; line-height: 1.45;
  letter-spacing: 0; color: #0561B4 !important;
}

/* yol haritası: ekranda 5 sütun + mutlak nokta + bağlayıcı çizgi; kağıtta satır satır */
.timeline { display: block !important; margin: 0; }
.timeline > li {
  position: relative; display: block;
  padding: 2.6mm 0 2.6mm 12mm !important;
  border-bottom: 1px solid rgba(10, 37, 64, .16); page-break-inside: avoid;
}
.timeline > li::before, .timeline > li::after { display: none !important; }
.tl-dot {
  position: absolute; left: 0; top: 2.8mm !important;
  width: 7mm !important; height: 7mm !important;
  background: none !important; border: 1.5px solid #0A2540; border-radius: 50%;
  font-size: 9pt !important; font-weight: 700; color: #0A2540 !important; box-shadow: none !important;
}
.timeline h3 { font-size: 11pt; margin: 0 0 1mm; }
.timeline p { font-size: 10pt; margin: 0; max-width: none; }
.tl-gun { display: inline-block; font-size: 9pt; color: #0561B4 !important; margin-bottom: 1mm; }

/* GoLive20 ekleri: "20. günün sonunda elinizde" + "sizden beklenenler" listeleri.
   Ekranda gövde rengi açık kalıyordu, kağıtta soluk basılıyordu (2026-09-21). */
/* kağıt genişliği 680px mobil eşiğinin altında kaldığı için .duo tek sütuna düşüyordu;
   iki liste yan yana dursun ki yol haritasıyla aynı sayfaya sığsın */
.gl-duo { display: grid !important; grid-template-columns: 1fr 1fr; gap: 10mm; margin-top: 6mm; page-break-inside: avoid; break-inside: avoid; }
.sector-list li { padding: 1.8mm 0; border-bottom: 1px solid rgba(10, 37, 64, .16); }
.sector-list strong { font-size: 10pt; }
.sector-list span { font-size: 9pt; color: rgba(10, 37, 64, .7) !important; }
.mini-h { font-size: 9pt; letter-spacing: .14em; margin: 0 0 2mm; page-break-after: avoid; }
.tick-list li { font-size: 10pt; line-height: 1.45; padding: 1.8mm 0 1.8mm 6mm; border-bottom: 1px solid rgba(10, 37, 64, .16); }
.tick-list li::before { color: #0561B4 !important; }
.gl-not { margin-top: 5mm; font-size: 10pt; }

/* ── fiyat tablosu ── */
.price { margin-top: 0; --pcols: 1fr 12mm 30mm 32mm; }   /* kağıt dar: ad+açıklama sütunu geniş kalsın */
.p-head { border-bottom: 1.5px solid #0A2540; }
.p-head > div { font-size: 8.5pt; letter-spacing: .14em; color: rgba(10, 37, 64, .58) !important; padding: 0 0 2mm; }
.p-row { border-bottom: 1px solid rgba(10, 37, 64, .16); page-break-inside: avoid; }
.p-row > div { padding: 3mm 0; }
.p-row .p-name { font-size: 11pt; font-weight: 600; }
.p-row .p-qty, .p-row .p-unit, .p-row .p-total { font-size: 10.5pt; }
.p-row .p-meta { display: none !important; }
/* satır açıklaması: kağıtta gövde boyu, başlıkla aynı mürekkep ama hafif */
.p-desc { margin-top: 1.6mm; max-width: none; font-size: 9.5pt; line-height: 1.5; color: rgba(10, 37, 64, .82) !important; }
.p-desc .p-desc-more { display: block !important; }   /* kağıtta tamamı açık */
.p-desc-tog { display: none !important; }
.p-desc p + p { margin-top: 1.6mm; }
.p-desc .p-desc-h { font-size: 8pt; letter-spacing: .14em; color: rgba(10, 37, 64, .58) !important; }
.p-row.has-desc .p-qty, .p-row.has-desc .p-unit { padding-top: 3.4mm; }
.p-row .p-total.p-dahil { font-size: 10.5pt; font-weight: 600; }
.p-list { color: rgba(10, 37, 64, .5) !important; }
.p-link { color: inherit !important; border: 0 !important; }
.p-link-t { border: 0 !important; }
.p-arrow { display: none !important; }

.p-sums { margin-top: 3mm; }
.p-sum { padding-block: 1.6mm; }
.p-sum .p-label { font-size: 10pt; color: rgba(10, 37, 64, .58) !important; }
.p-sum .p-val { font-size: 11pt; font-weight: 600; }
.p-sum.p-disc .p-val { color: #0561B4 !important; }

/* genel toplam: kural çizgisi + 200 ağırlık dev rakam (kağıt dilinin imzası) */
.p-grand {
  background: none !important; border: 0; border-top: 5px solid #0A2540;
  margin-top: 4mm; padding: 4mm 0 0; border-radius: 0;
  page-break-inside: avoid;
}
.p-grand .p-label { font-size: 9.5pt; letter-spacing: .16em; font-weight: 600; color: rgba(10, 37, 64, .58) !important; }
.p-grand .p-val { font-size: 30pt; font-weight: 200; letter-spacing: -.01em; font-variant-numeric: tabular-nums; }

/* şartlar */
.scope-note { margin-top: 8mm; max-width: none; font-size: 10.5pt; color: rgba(10, 37, 64, .82) !important; }
.scope-note .sn-p { margin: 0 0 3mm; }
.scope-note .sn-h { font-size: 9pt; font-weight: 700; letter-spacing: .15em; margin: 0 0 2mm; page-break-after: avoid; }
.scope-note .sn-blok + .sn-blok { margin-top: 5mm; }

/* ── kapanış: geçerlilik, ödeme şartları, iletişim ── */
.cta { text-align: left; padding: 0; margin-top: 8mm; }
.cta-valid { font-size: 10.5pt; margin: 0 0 5mm; padding-top: 3mm; border-top: 5px solid #0A2540; }
.cta-terms { max-width: none; margin: 5mm 0 0; padding: 0; border: 0; text-align: left; }
.cta-terms .ct-label { font-size: 9pt; letter-spacing: .16em; color: rgba(10, 37, 64, .58) !important; margin-bottom: 2mm; }
.cta-terms p { font-size: 10.5pt; }

/* ── alt bilgi: tek kompakt şerit, kapanış bloğundan kopmaz ── */
.foot { margin-top: 6mm; padding: 3mm 0 0; border-top: 1px solid rgba(10, 37, 64, .16); background: none; }
.foot-in { padding: 0; display: flex; align-items: center; gap: 4mm; flex-wrap: wrap; }
.foot-brands { justify-content: flex-start; gap: 3mm; margin: 0; }
.foot-mark { fill: #0A2540 !important; height: 6mm; width: auto; }
.foot-partner { height: 7mm; width: auto; filter: none; }
.foot-div { background: rgba(10, 37, 64, .16); }
.foot-line, .foot-note { font-size: 8.5pt; text-align: left; margin: 0; }
.foot-tech { flex-basis: 100%; font-size: 8pt; text-align: left; margin: 0; opacity: .7; }
.foot-line a { text-decoration: none; }
.foot-note { color: rgba(10, 37, 64, .58) !important; }

/* iletişim satırı yazdırmada metin olarak (butonlar gizli) */
.print-iletisim { display: block !important; font-size: 10.5pt; margin: 4mm 0 0; }
.print-iletisim a { color: #0561B4 !important; text-decoration: none; }

/* sertifikalar: fiyatın altında tek satır, mühür küçük; bölünmesin */
.sertifika { margin-top: 6mm; padding-top: 4mm; border-top: 1px solid rgba(10, 37, 64, .16); page-break-inside: avoid; break-inside: avoid; }
.sert-list { gap: 3mm 8mm; }
.sert-list img { width: 11mm; height: 11mm; filter: contrast(1.001); }   /* Preview boş ICC tuzağı */
.sert-list strong { font-size: 9.5pt; }
.sert-list em { font-size: 8.5pt; }
