/* ==================================================================
   ANA SAYFA v88 — Hizmet katmanlari (.tb-hk), Canli altyapi (.tb-ca),
   Uzmanla gorusun (.tb-uz). Turkbil paleti; hareket olculu.
   ================================================================== */
/* ---------- HIZMET KATMANLARI ---------- */
.tb-hk { position: relative; padding-block: clamp(3rem, 6vw, 5.5rem) clamp(2.6rem, 5vw, 4.5rem); background: radial-gradient(60% 55% at 85% 20%, rgba(53,100,175,.1), transparent 60%), var(--tb-surface-2); }
.tb-hk-izgara { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.4rem; align-items: start; }
@media (min-width: 1100px) { .tb-hk-izgara { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 3.4rem; } .tb-hk-sag { position: sticky; top: 110px; } }
.tb-hk h2 { margin: 0 0 .8rem; font: 700 clamp(2rem, 3.8vw, 3rem)/1.08 var(--tb-font-baslik); letter-spacing: -.03em; color: var(--tb-ink); }
.tb-hk h2 > span { display: block; }
.tb-hk-lead { margin: 0 0 1.8rem; max-width: 56ch; font-size: 1.02rem; line-height: 1.65; color: var(--tb-ink-soft); }
.tb-hk-grup { position: relative; padding: 1.1rem 0 1.3rem 1.4rem; border-left: 2px solid var(--tb-line); transition: border-color .25s; }
.tb-hk-grup::before { content: ""; position: absolute; left: -7px; top: 1.45rem; width: 12px; height: 12px; border-radius: 50%; background: var(--tb-surface); border: 2px solid var(--basic-primary, #3564AF); transition: background .25s, box-shadow .25s; }
.tb-hk-grup.aktif { border-color: var(--basic-primary, #3564AF); } .tb-hk-grup.aktif::before { background: var(--basic-primary, #3564AF); box-shadow: 0 0 0 5px rgba(53,100,175,.15); }
.tb-hk-grup-bas { display: grid; grid-template-columns: auto auto minmax(0, 1fr); align-items: baseline; column-gap: .6rem; margin-bottom: .8rem; }
.tb-hk-grup-bas > i { color: var(--basic-primary, #3564AF); font-size: 1.05rem; align-self: center; }
.tb-hk-grup-bas b { font: 700 1.1rem/1.2 var(--tb-font-baslik); color: var(--tb-ink); }
.tb-hk-grup-bas span { font-size: .86rem; color: var(--tb-ink-soft); }
.tb-hk-liste { display: grid; grid-template-columns: repeat(auto-fill, minmax(215px, 1fr)); gap: .6rem; }
.tb-hk-kart { position: relative; display: grid; grid-template-columns: 34px minmax(0, 1fr) 18px; grid-template-rows: auto auto; column-gap: .6rem; align-items: center; padding: .7rem .8rem; border-radius: 12px; background: var(--tb-surface); border: 1px solid var(--tb-line); color: var(--tb-ink); text-decoration: none; box-shadow: var(--tb-shadow); transition: transform .2s, border-color .2s, box-shadow .2s; }
.tb-hk-kart > i:first-child { grid-row: 1 / span 2; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 9px; font-size: 1rem; color: var(--basic-primary, #3564AF); background: rgba(53,100,175,.1); border: 1px solid rgba(53,100,175,.18); }
.tb-hk-kart b { font: 700 .92rem/1.2 var(--tb-font-baslik); }
.tb-hk-kart small { grid-column: 2; font-size: .76rem; color: var(--tb-ink-soft); }
.tb-hk-kart small strong { color: var(--tb-ink); font-weight: 700; }
.tb-hk-ok { grid-row: 1 / span 2; grid-column: 3; color: var(--tb-ink-soft); font-size: .9rem; transition: transform .2s, color .2s; }
.tb-hk-kart:hover, .tb-hk-kart:focus-visible { transform: translateY(-2px); border-color: rgba(53,100,175,.5); box-shadow: 0 14px 28px -16px rgba(53,100,175,.55); color: var(--tb-ink); outline: none; }
.tb-hk-kart:hover .tb-hk-ok { transform: translateX(3px); color: var(--basic-primary, #3564AF); }
.tb-hk-kart-sahne { position: relative; isolation: isolate; overflow: hidden; border-radius: 24px; color: #fff; background: radial-gradient(80% 60% at 20% 0%, #1B3A6E 0%, transparent 55%), linear-gradient(160deg, #0F1F3F 0%, #0B1526 55%, #0A1730 100%); box-shadow: 0 40px 80px -36px rgba(11,21,38,.85), inset 0 1px 0 rgba(255,255,255,.08); }
.tb-hk-kart-sahne::before { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1.5px; pointer-events: none; z-index: 3; background: linear-gradient(135deg, rgba(141,184,255,.8), rgba(53,100,175,.15) 40%, rgba(240,69,107,.5) 100%); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }
.tb-hk-tuval { position: relative; z-index: 1; display: block; width: 100%; aspect-ratio: 4 / 5; max-height: min(760px, calc(100vh - 140px)); }   /* 2026-10-13: 640px tavani Bursa kaidesini kirpiyordu; sahne artik her durumda sigdirilir */
[data-bs-theme="dark"] .tb-hk-kart { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.1); }
[data-bs-theme="dark"] .tb-hk-kart > i:first-child { color: #AFC8EA; background: rgba(141,184,255,.1); border-color: rgba(141,184,255,.2); }
/* ---------- CANLI ALTYAPI ---------- */
.tb-ca { position: relative; isolation: isolate; overflow: hidden; color: #fff; padding-block: clamp(3rem, 6vw, 5.5rem); background: linear-gradient(160deg, #0F1F3F 0%, #0B1526 55%, #0A1730 100%); }
.tb-ca::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(55% 60% at 80% 40%, rgba(141,184,255,.14), transparent 70%), radial-gradient(rgba(255,255,255,.05) .8px, transparent .9px); background-size: auto, 22px 22px; }
.tb-ca::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, transparent, #8DB8FF 30%, #F0456B 70%, transparent); }
.tb-ca-izgara { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.4rem; align-items: center; }
@media (min-width: 1100px) { .tb-ca-izgara { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 3.4rem; } }
.tb-ca h2 { margin: 0 0 .8rem; font: 700 clamp(2rem, 3.8vw, 3rem)/1.08 var(--tb-font-baslik); letter-spacing: -.03em; color: #fff; }
.tb-ca h2 > span { display: block; }
.tb-ca-lead { margin: 0 0 1.6rem; max-width: 50ch; font-size: 1.02rem; line-height: 1.65; color: rgba(255,255,255,.78); }
/* 2026-10-13 (kullanici: kartlar siteye uymadi): kutu/ikon-kutusu yok. Sayfadaki tek kutu sagdaki
   grafik karti; soldaki iki deger Barlow tabular sayilarla kutusuz "gosterge okumasi". Ust cizgi
   bolumun kendi kirmizi->mavi cizgisinin kucuk bir yankisi. Halka yesil degil marka mavisi. */
.tb-ca-kpi { list-style: none; margin: 1.7rem 0 0; padding: 1.25rem 0 0; display: grid; grid-template-columns: repeat(2, minmax(0, max-content)); column-gap: clamp(2rem, 4vw, 3.6rem); row-gap: 1.2rem; position: relative; }
.tb-ca-kpi::before { content: ""; position: absolute; left: 0; top: 0; width: 100%; max-width: 420px; height: 1px; background: linear-gradient(90deg, #F0456B 0%, #8DB8FF 45%, transparent 100%); opacity: .7; }
.tb-ca-kpi li { display: grid; grid-template-columns: 38px minmax(0, 1fr); column-gap: .85rem; align-items: center; }
.tb-ca-kpi li > i { display: grid; place-items: center; width: 38px; height: 38px; font-size: 1.35rem; color: #8DB8FF; filter: drop-shadow(0 0 10px rgba(141,184,255,.55)); }
.tb-ca-kpi b { display: block; font: 700 2.05rem/1 var(--tb-font-baslik); letter-spacing: -.03em; color: #fff; font-variant-numeric: tabular-nums; white-space: nowrap; }
.tb-ca-kpi b em { font-style: normal; font-size: .9rem; font-weight: 600; letter-spacing: 0; color: rgba(255,255,255,.55); margin-inline-start: .15rem; }
.tb-ca-kpi small { display: block; margin-top: .35rem; font-size: .78rem; line-height: 1.35; color: rgba(255,255,255,.6); white-space: nowrap; }
.tb-ca-halka { position: relative; display: block; width: 38px; height: 38px; }
.tb-ca-halka svg { width: 38px; height: 38px; transform: rotate(-90deg); overflow: visible; }
.tb-ca-halka .iz { fill: none; stroke: rgba(255,255,255,.1); stroke-width: 8; }
.tb-ca-halka .deger { fill: none; stroke: #8DB8FF; stroke-width: 8; stroke-linecap: round; stroke-dasharray: 276.46; transition: stroke-dashoffset .8s ease; filter: drop-shadow(0 0 6px rgba(141,184,255,.7)); }
@media (max-width: 420px) { .tb-ca-kpi { grid-template-columns: minmax(0, 1fr); } }
.tb-ca-taze { display: inline-flex; align-items: center; gap: .45rem; font-size: .78rem; color: rgba(255,255,255,.55); }
.tb-ca-taze i { width: 7px; height: 7px; border-radius: 50%; background: #4ED68A; box-shadow: 0 0 8px rgba(78,214,138,.9); animation: tb-ca-nabiz 1.8s ease-in-out infinite; }
.tb-ca.bayat .tb-ca-taze i { background: #F5B942; box-shadow: 0 0 8px rgba(245,185,66,.9); animation: none; }
@keyframes tb-ca-nabiz { 50% { opacity: .35; } }
.tb-ca-sag { position: relative; }
.tb-ca-kart { position: relative; isolation: isolate; overflow: hidden; border-radius: 24px; background: #07101F; box-shadow: 0 40px 80px -36px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.08); }
.tb-ca-kart::before { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1.5px; pointer-events: none; z-index: 3; background: linear-gradient(135deg, rgba(141,184,255,.8), rgba(53,100,175,.15) 40%, rgba(78,214,138,.5) 100%); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }
.tb-ca-tuval { position: relative; z-index: 1; display: block; width: 100%; aspect-ratio: 16 / 10; }
/* ---------- UZMANLA GORUSUN ---------- */
.tb-uz { padding-block: 0 clamp(2.6rem, 5vw, 4.5rem); background: var(--tb-surface-2); }
.tb-uz-kart { position: relative; isolation: isolate; overflow: hidden; display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.4rem; align-items: center; padding: clamp(1.4rem, 3vw, 2.4rem); border-radius: 24px; color: #fff; background: linear-gradient(160deg, #0F1F3F 0%, #0B1526 55%, #0A1730 100%); box-shadow: 0 40px 80px -36px rgba(11,21,38,.85); }
@media (min-width: 992px) { .tb-uz-kart { grid-template-columns: minmax(0, 1.3fr) auto; gap: 2.4rem; } }
.tb-uz-kart::before { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1.5px; pointer-events: none; z-index: 3; background: linear-gradient(135deg, rgba(141,184,255,.8), rgba(53,100,175,.15) 40%, rgba(240,69,107,.5) 100%); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }
.tb-uz-tuval { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; }
.tb-uz-metin, .tb-uz-eylem { position: relative; z-index: 1; }
.tb-uz-metin h2 { margin: 0 0 .5rem; font: 700 clamp(1.5rem, 2.6vw, 2.1rem)/1.15 var(--tb-font-baslik); letter-spacing: -.02em; color: #fff; }
.tb-uz-metin p { margin: 0; max-width: 56ch; font-size: 1rem; line-height: 1.6; color: rgba(255,255,255,.78); }
.tb-uz-eylem { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1rem; }
.tb-uz-wa { color: #fff; background: linear-gradient(135deg, #0AA74B, #4ED68A); box-shadow: 0 16px 34px -14px rgba(10,167,75,.9); border: 0; gap: .5rem; }
.tb-uz-tel { color: #fff; background: linear-gradient(135deg, #3564AF, #5B8DEF); box-shadow: 0 16px 34px -14px rgba(53,100,175,.9); border: 0; gap: .5rem; }
.tb-uz-wa:hover, .tb-uz-tel:hover { color: #fff; transform: translateY(-1px); }
.tb-uz-ileti { display: inline-flex; align-items: center; gap: .4rem; color: rgba(255,255,255,.85); font-weight: 600; text-decoration: none; }
.tb-uz-ileti:hover { color: #8DB8FF; }
@media (max-width: 575.98px) { .tb-hk-liste { grid-template-columns: minmax(0, 1fr); } .tb-hk-grup-bas { grid-template-columns: auto minmax(0, 1fr); } .tb-hk-grup-bas span { grid-column: 1 / -1; } .tb-hk-kart-sahne, .tb-ca-kart, .tb-uz-kart { border-radius: 18px; } }
@media (prefers-reduced-motion: reduce) { .tb-hk-kart, .tb-hk-ok, .tb-ca-halka .deger { transition: none; } .tb-ca-taze i { animation: none; } }

/* 2026-10-17 (kullanici): "monitor edin" bolumunun arkasina ALT BILGI (footer) zemini: ayni koyu gradyan +
   ayni akan dalga cizgileri (turkbil-footer.js, [data-tb-dalga]). Eski isik/nokta deseni (::before) kaldirildi;
   ustteki ince renkli ayrac cizgisi (::after) kalir. Once giris sahnesi denendi, kullanici bunu istedi. */
.tb-ca, [data-bs-theme="dark"] .tb-ca { background: linear-gradient(180deg, #0A1526 0%, #060D1A 100%); }
.tb-ca::before { content: none; }
.tb-ca > .tb-footer-canvas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 0; }
.tb-ca > .tb-shell { position: relative; z-index: 1; }

/* @@ LOGO-KIRMIZISI-AYDINLIK BASLA (acik-kip.py uretir, elle duzenleme) @@ */
html:not([data-bs-theme="dark"]) .tb-hk-kart-sahne::before{background: linear-gradient(135deg, rgba(141,184,255,.8), rgba(53,100,175,.15) 40%, rgba(220,115,128,.5) 100%)}
html:not([data-bs-theme="dark"]) .tb-ca::after{background: linear-gradient(90deg, transparent, #8DB8FF 30%, #DC7380 70%, transparent)}
html:not([data-bs-theme="dark"]) .tb-ca-kpi::before{background: linear-gradient(90deg, #DC7380 0%, #8DB8FF 45%, transparent 100%)}
html:not([data-bs-theme="dark"]) .tb-uz-kart::before{background: linear-gradient(135deg, rgba(141,184,255,.8), rgba(53,100,175,.15) 40%, rgba(220,115,128,.5) 100%)}
/* @@ LOGO-KIRMIZISI-AYDINLIK BITIR @@ */

/* @@ ELLE-AYDINLIK @@ */
/* KATMAN KULESI KARTI — AYDINLIK KIP (2026-10-17): koyu kart kagit sayfada delik gibi duruyordu.
   Porselen dili: beyazdan acik maviye kart, ince lacivert->logo kirmizisi cerceve, yumusak golge.
   Kule cizimi turkbil-ana.js KULE_ACIK paletinde. Karanlik kip DEGISMEDI. */
html:not([data-bs-theme="dark"]) .tb-hk-kart-sahne {
    color: #1B2A45;
    background: radial-gradient(80% 60% at 20% 0%, #FFFEFB 0%, transparent 60%), radial-gradient(70% 45% at 50% 92%, rgba(196,22,43,.05) 0%, transparent 70%), linear-gradient(165deg, #FAF8F3 0%, #F3F0EA 60%, #F3F0EA 100%);
    box-shadow: 0 40px 80px -46px rgba(30,34,44,.45), inset 0 1px 0 rgba(255,254,251,.9);
}
html:not([data-bs-theme="dark"]) .tb-hk-kart-sahne::before { background: linear-gradient(135deg, rgba(53,100,175,.45), rgba(53,100,175,.10) 45%, rgba(196,22,43,.38) 100%); }
