/* ==========================================================================
   Tesviko — Design System v1.0
   Grant, Incentive & Funding Operating System
   Palette: #081F5C navy · #0F3DFF royal · #4A6CFF light · #F8FAFF soft · #FFF
   Type: Poppins
   ========================================================================== */

:root {
  /* Brand */
  --navy: #081F5C;
  --navy-2: #0a2670;
  --royal: #0F3DFF;
  --blue: #4A6CFF;
  --blue-soft: #7B95FF;
  --soft: #F8FAFF;
  --soft-2: #EEF2FF;
  --white: #FFFFFF;

  /* Brand green (Tesviko — pazarlama/CTA aksanı + logo) */
  --brand-green: #16B364;
  --brand-green-2: #0E9E54;
  --brand-green-3: #12D07A;
  --brand-green-soft: #E7F8EE;

  /* Ink */
  --ink: #0B1437;
  --ink-2: #2A3356;
  --muted: #6B7494;
  --muted-2: #9AA1BC;
  --line: #E6EAF5;
  --line-2: #F0F3FB;

  /* Semantic */
  --green: #12B76A;
  --green-soft: #E7F8F0;
  --amber: #F79009;
  --amber-soft: #FEF4E6;
  --red: #F04438;
  --red-soft: #FEECEB;
  --purple: #7A5AF8;
  --purple-soft: #EFEBFE;

  /* Gradients */
  --grad-hero: linear-gradient(135deg, #081F5C 0%, #0A2780 45%, #0F3DFF 100%);
  --grad-blue: linear-gradient(135deg, #0F3DFF 0%, #4A6CFF 100%);
  --grad-cta: linear-gradient(120deg, #0B2A8F 0%, #0F3DFF 60%, #4A6CFF 100%);
  --grad-green: linear-gradient(135deg, #0E9E54 0%, #16B364 55%, #12D07A 100%);
  --grad-logo: linear-gradient(135deg, #12D07A 0%, #16B364 45%, #0F3DFF 100%);

  /* Shadow */
  --sh-sm: 0 1px 2px rgba(8,31,92,0.06);
  --sh: 0 4px 16px rgba(8,31,92,0.08);
  --sh-md: 0 12px 32px rgba(8,31,92,0.10);
  --sh-lg: 0 24px 64px rgba(8,31,92,0.14);
  --sh-blue: 0 16px 40px rgba(15,61,255,0.24);
  --sh-green: 0 16px 40px rgba(22,179,100,0.28);

  /* Radius */
  --r-sm: 12px;
  --r: 16px;
  --r-md: 20px;
  --r-lg: 24px;
  --r-xl: 32px;

  --font: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --max: 1240px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
body {
  font-family: var(--font);
  color: var(--ink);
  background: var(--white);
  font-size: 15px;
  line-height: 1.6;
  overflow-x: hidden;
}
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; color: inherit; }
img, svg { display: block; max-width: 100%; }
::selection { background: var(--royal); color: #fff; }

/* Scrollbar */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--soft); }
::-webkit-scrollbar-thumb { background: var(--line); border-radius: 10px; border: 2px solid var(--soft); }
::-webkit-scrollbar-thumb:hover { background: var(--muted-2); }

/* ===== Buttons ===== */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 12px 22px; border-radius: 12px; font-weight: 600; font-size: 14px;
  transition: all .2s ease; white-space: nowrap; line-height: 1;
}
.btn-primary { background: var(--royal); color: #fff; box-shadow: var(--sh-blue); }
.btn-primary:hover { background: #0a32d8; transform: translateY(-2px); box-shadow: 0 20px 48px rgba(15,61,255,.32); }
.btn-light { background: #fff; color: var(--navy); border: 1.5px solid var(--line); }
.btn-light:hover { border-color: var(--blue); color: var(--royal); }
.btn-ghost-light { background: rgba(255,255,255,.08); color: #fff; border: 1.5px solid rgba(255,255,255,.25); backdrop-filter: blur(8px); }
.btn-ghost-light:hover { background: rgba(255,255,255,.16); }
.btn-navy { background: var(--navy); color: #fff; }
.btn-navy:hover { background: var(--navy-2); transform: translateY(-2px); }
.btn-success { background: var(--brand-green); color: #fff; box-shadow: var(--sh-green); }
.btn-success:hover { background: var(--brand-green-2); transform: translateY(-2px); box-shadow: 0 20px 48px rgba(22,179,100,.34); }
.btn-success:hover svg { transform: translateX(3px); }
.btn-sm { padding: 9px 16px; font-size: 13px; border-radius: 10px; }
.btn-lg { padding: 15px 28px; font-size: 15px; border-radius: 14px; }
.btn svg { transition: transform .2s; }
.btn-primary:hover svg, .btn-navy:hover svg { transform: translateX(3px); }

/* ===== Pills / Badges ===== */
.pill {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 5px 12px; border-radius: 100px; font-size: 12px; font-weight: 600;
}
.pill-blue { background: var(--soft-2); color: var(--royal); }
.pill-green { background: var(--green-soft); color: var(--green); }
.pill-amber { background: var(--amber-soft); color: var(--amber); }
.pill-red { background: var(--red-soft); color: var(--red); }
.pill-purple { background: var(--purple-soft); color: var(--purple); }
.pill-navy { background: rgba(8,31,92,.08); color: var(--navy); }
.pill-success { background: var(--brand-green-soft); color: var(--brand-green-2); }

/* ===== Cards ===== */
.card {
  background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg);
  box-shadow: var(--sh-sm); transition: all .25s ease;
}
.card-hover:hover { transform: translateY(-4px); box-shadow: var(--sh-md); border-color: var(--blue-soft); }
.glass {
  background: rgba(255,255,255,.7); backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,.5);
}

/* ===== Section utility ===== */
.section { max-width: var(--max); margin: 0 auto; padding: 90px 32px; }
.section-center { text-align: center; }
.eyebrow {
  font-size: 13px; font-weight: 600; color: var(--royal);
  letter-spacing: .04em; text-transform: uppercase; margin-bottom: 12px;
}
.h-title { font-size: clamp(28px, 4vw, 40px); font-weight: 700; letter-spacing: -0.02em; line-height: 1.15; color: var(--ink); }
.h-title .accent { color: var(--royal); }
.h-sub { font-size: 16px; color: var(--muted); margin-top: 14px; max-width: 560px; }
.section-center .h-sub { margin-left: auto; margin-right: auto; }

/* ===== Icon chip ===== */
.ichip {
  width: 52px; height: 52px; border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  background: var(--soft-2); color: var(--royal); flex-shrink: 0;
}
.ichip svg { width: 24px; height: 24px; }
.ichip-green { background: var(--green-soft); color: var(--green); }
.ichip-amber { background: var(--amber-soft); color: var(--amber); }
.ichip-purple { background: var(--purple-soft); color: var(--purple); }
.ichip-navy { background: rgba(8,31,92,.07); color: var(--navy); }
.ichip-success { background: var(--brand-green-soft); color: var(--brand-green-2); }

/* ===== Logo lockup ===== */
.brand { display: flex; align-items: center; gap: 11px; }
.brand-mark {
  width: 38px; height: 38px; border-radius: 11px;
  background: var(--grad-logo); display: flex; align-items: center; justify-content: center;
  position: relative; box-shadow: 0 10px 26px rgba(22,179,100,.28); flex-shrink: 0;
}
.brand-mark svg { width: 22px; height: 22px; }
.brand-name { display: block; font-size: 21px; font-weight: 800; letter-spacing: -0.02em; color: var(--ink); line-height: 1; }
.brand-tag { display: block; font-size: 9.5px; font-weight: 500; color: var(--muted); letter-spacing: .02em; margin-top: 3px; line-height: 1; }
.brand.on-dark .brand-name { color: #fff; }
.brand.on-dark .brand-tag { color: rgba(255,255,255,.6); }

/* ===== Animations ===== */
@keyframes fadeUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes pulse { 0% { box-shadow: 0 0 0 0 rgba(18,183,106,.5);} 70%{ box-shadow:0 0 0 8px rgba(18,183,106,0);} 100%{box-shadow:0 0 0 0 rgba(18,183,106,0);} }
@keyframes spin { to { transform: rotate(360deg); } }
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .6s ease, transform .6s ease; }
.reveal.in { opacity: 1; transform: translateY(0); }

/* ===== Dashboard shell (shared by firma/danisman/admin) ===== */
.app { display: grid; grid-template-columns: 260px 1fr; min-height: 100vh; background: var(--soft); }
.sidebar {
  background: #fff; border-right: 1px solid var(--line); padding: 22px 16px;
  display: flex; flex-direction: column; gap: 6px; position: sticky; top: 0; height: 100vh; overflow-y: auto;
}
.sidebar .brand { padding: 4px 8px 18px; }
.nav-group-label {
  font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--muted-2); padding: 16px 12px 6px;
}
.nav-item {
  display: flex; align-items: center; gap: 11px; padding: 10px 12px; border-radius: 11px;
  font-size: 14px; font-weight: 500; color: var(--ink-2); transition: all .18s;
}
.nav-item svg { width: 19px; height: 19px; stroke-width: 1.8; color: var(--muted); flex-shrink: 0; }
.nav-item:hover { background: var(--soft); }
.nav-item.active { background: var(--soft-2); color: var(--royal); font-weight: 600; }
.nav-item.active svg { color: var(--royal); }
.nav-item .count { margin-left: auto; font-size: 11px; font-weight: 700; background: var(--soft-2); color: var(--royal); padding: 1px 7px; border-radius: 100px; }
.nav-item.active .count { background: var(--royal); color: #fff; }

.main { display: flex; flex-direction: column; min-width: 0; }
.topbar {
  display: flex; align-items: center; gap: 18px; padding: 16px 30px;
  background: rgba(255,255,255,.85); backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 20;
}
.search-box {
  display: flex; align-items: center; gap: 10px; background: var(--soft); border: 1px solid var(--line);
  border-radius: 11px; padding: 9px 14px; flex: 1; max-width: 380px; color: var(--muted);
}
.search-box input { border: none; background: none; outline: none; font-family: var(--font); font-size: 14px; flex: 1; color: var(--ink); }
.icon-btn {
  width: 40px; height: 40px; border-radius: 11px; background: var(--soft); border: 1px solid var(--line);
  display: flex; align-items: center; justify-content: center; color: var(--ink-2); position: relative; transition: all .18s;
}
.icon-btn:hover { border-color: var(--blue); color: var(--royal); }
.icon-btn .dot { position: absolute; top: 8px; right: 9px; width: 7px; height: 7px; border-radius: 50%; background: var(--red); border: 1.5px solid #fff; }
.avatar {
  width: 40px; height: 40px; border-radius: 11px; background: var(--grad-blue); color: #fff;
  display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 15px;
}
.content { padding: 30px; display: flex; flex-direction: column; gap: 22px; }
.page-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.page-head h1 { font-size: 25px; font-weight: 700; letter-spacing: -.02em; }
.page-head p { color: var(--muted); font-size: 14px; margin-top: 2px; }

/* Stat cards */
.stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.stat {
  background: #fff; border: 1px solid var(--line); border-radius: var(--r); padding: 20px;
  display: flex; flex-direction: column; gap: 12px; transition: all .22s;
}
.stat:hover { box-shadow: var(--sh); border-color: var(--blue-soft); }
.stat .top { display: flex; align-items: center; justify-content: space-between; }
.stat .label { font-size: 13px; color: var(--muted); font-weight: 500; }
.stat .val { font-size: 28px; font-weight: 700; letter-spacing: -.02em; line-height: 1; }
.stat .delta { font-size: 12px; font-weight: 600; display: inline-flex; align-items: center; gap: 3px; }
.stat .delta.up { color: var(--green); }
.stat .delta.down { color: var(--red); }

/* Panels */
.panel { background: #fff; border: 1px solid var(--line); border-radius: var(--r-md); padding: 22px; }
.panel-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.panel-head h3 { font-size: 16px; font-weight: 700; }
.panel-head a { font-size: 13px; color: var(--royal); font-weight: 600; }

/* Table */
.tbl { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.tbl th { text-align: left; font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); font-weight: 600; padding: 0 14px 12px; border-bottom: 1px solid var(--line); }
.tbl td { padding: 14px; border-bottom: 1px solid var(--line-2); }
.tbl tr:last-child td { border-bottom: none; }
.tbl tr:hover td { background: var(--soft); }

/* Progress */
.bar { height: 7px; border-radius: 100px; background: var(--line); overflow: hidden; }
.bar > i { display: block; height: 100%; border-radius: 100px; background: var(--grad-blue); }

/* Responsive dashboard */
@media (max-width: 1024px) {
  .app { grid-template-columns: 1fr; }
  .sidebar { display: none; }
  .stat-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .stat-grid { grid-template-columns: 1fr; }
  .content { padding: 18px; }
  .topbar { padding: 12px 18px; }
}

/* ==========================================================================
   Public site shell — marketing / program / catalog / tools pages
   (shared by destekler/* so each page stays lean)
   ========================================================================== */
.site-nav { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.88); backdrop-filter: blur(14px); border-bottom: 1px solid var(--line); }
.site-nav .inner {
  max-width: var(--max); margin: 0 auto; padding: 0 32px; height: 70px;
  display: flex; align-items: center; gap: 10px;
}
.site-nav .brand { flex: 0 0 auto; }
.site-nav .links { display: flex; align-items: center; gap: 2px; margin-left: 16px; flex: 1 1 auto; min-width: 0; }
.site-nav .cta { margin-left: auto; display: flex; gap: 10px; align-items: center; flex: 0 0 auto; }

.crumbs { max-width: var(--max); margin: 0 auto; padding: 16px 32px 0; font-size: 12.5px; color: var(--muted); display: flex; gap: 7px; align-items: center; flex-wrap: wrap; }
.crumbs a:hover { color: var(--royal); }
.crumbs .sep { color: var(--muted-2); }

.site-footer { background: var(--navy); color: #fff; margin-top: 50px; }
.site-footer .inner { max-width: var(--max); margin: 0 auto; padding: 50px 32px 26px; display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 28px; }
.site-footer h5 { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: rgba(255,255,255,.5); margin-bottom: 13px; }
.site-footer a { display: block; font-size: 13.5px; color: rgba(255,255,255,.78); margin-bottom: 9px; }
.site-footer a:hover { color: #fff; }
.site-footer .bottom { border-top: 1px solid rgba(255,255,255,.1); padding: 16px 32px; max-width: var(--max); margin: 0 auto; display: flex; justify-content: space-between; font-size: 12.5px; color: rgba(255,255,255,.5); flex-wrap: wrap; gap: 8px; }

/* Hero banner (catalog + program detail) with side analysis card */
.phero { background: var(--grad-hero); color: #fff; position: relative; overflow: hidden; }
.phero::before { content:""; position:absolute; top:-30%; right:-6%; width:460px; height:460px; background: radial-gradient(circle, rgba(74,108,255,.40), transparent 62%); pointer-events:none; }
.phero .inner { max-width: var(--max); margin: 0 auto; padding: 50px 32px 58px; position: relative; display: grid; grid-template-columns: 1.05fr .95fr; gap: 40px; align-items: center; }
.phero .eyebrow { color: #9DB4FF; }
.phero h1 { font-size: clamp(28px,3.6vw,42px); font-weight: 800; letter-spacing: -.02em; line-height: 1.12; }
.phero p { color: rgba(255,255,255,.82); font-size: 16px; margin-top: 14px; max-width: 520px; }
.pbadges { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; }
.pbadge { font-size: 12px; font-weight: 600; padding: 5px 12px; border-radius: 100px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.2); }
.phero-actions { display: flex; gap: 12px; margin-top: 26px; flex-wrap: wrap; }

/* Analysis card (banner quick form) */
.acard { background: #fff; border-radius: var(--r-lg); padding: 22px; box-shadow: var(--sh-lg); color: var(--ink); }
.acard h3 { font-size: 16.5px; font-weight: 700; }
.acard .sub { font-size: 12.5px; color: var(--muted); margin: 4px 0 16px; }

/* Form fields */
.ff { margin-bottom: 12px; }
.ff label { font-size: 11px; font-weight: 600; color: var(--muted); text-transform: uppercase; letter-spacing: .04em; display: block; margin-bottom: 5px; }
.ff input, .ff select, .ff textarea { width: 100%; padding: 11px 12px; border: 1px solid var(--line); border-radius: 10px; font-family: var(--font); font-size: 14px; color: var(--ink); background: #fff; outline: none; transition: border .15s; }
.ff input:focus, .ff select:focus, .ff textarea:focus { border-color: var(--royal); }
.ff-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }

/* Fact grid (detail key numbers) */
.facts { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.fact { background: #fff; border: 1px solid var(--line); border-radius: var(--r); padding: 16px; }
.fact .k { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); }
.fact .v { font-size: 19px; font-weight: 800; letter-spacing: -.02em; margin-top: 6px; line-height: 1.15; }

/* Prose */
.prose { max-width: 760px; }
.prose h2 { font-size: 22px; font-weight: 700; letter-spacing: -.01em; margin: 30px 0 12px; }
.prose p { color: var(--ink-2); margin-bottom: 12px; }
.prose ul, .prose ol { margin: 0 0 14px 20px; color: var(--ink-2); }
.prose li { margin-bottom: 7px; }

/* Catalog grid */
.cfilters { display: flex; gap: 8px; flex-wrap: wrap; }
.cchip { padding: 8px 15px; border-radius: 100px; font-size: 13px; font-weight: 600; background: #fff; border: 1px solid var(--line); color: var(--ink-2); cursor: pointer; transition: all .15s; }
.cchip:hover { border-color: var(--blue-soft); }
.cchip.on { background: var(--royal); color: #fff; border-color: var(--royal); }
.cgrid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.ccard { display: flex; flex-direction: column; gap: 9px; padding: 20px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); transition: all .2s; }
.ccard:hover { transform: translateY(-4px); box-shadow: var(--sh-md); border-color: var(--blue-soft); }
.ccard .top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.ccard .src { font-size: 11px; font-weight: 700; color: var(--royal); text-transform: uppercase; letter-spacing: .03em; }
.ccard h3 { font-size: 16px; font-weight: 700; line-height: 1.3; }
.ccard p { font-size: 13px; color: var(--muted); flex: 1; }
.ccard .meta { display: flex; gap: 14px; font-size: 12px; color: var(--ink-2); font-weight: 600; }
.ccard .go { font-size: 13px; font-weight: 600; color: var(--royal); display: inline-flex; align-items: center; gap: 5px; }

/* CTA band */
.ctaband { background: var(--grad-cta); border-radius: var(--r-xl); padding: 48px 36px; text-align: center; color: #fff; position: relative; overflow: hidden; }
.ctaband::before { content:""; position:absolute; inset:0; background: radial-gradient(circle at 70% -10%, rgba(255,255,255,.18), transparent 55%); }
.ctaband h2 { font-size: clamp(24px,3vw,34px); font-weight: 800; letter-spacing: -.02em; position: relative; }
.ctaband p { color: rgba(255,255,255,.82); margin-top: 10px; font-size: 15.5px; position: relative; }
.ctaband .row { display: flex; gap: 12px; justify-content: center; margin-top: 22px; flex-wrap: wrap; position: relative; }

/* Analysis results */
.results { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; }
.rcard { display: flex; gap: 14px; align-items: flex-start; padding: 18px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-md); }
.rcard .ring { width: 54px; height: 54px; border-radius: 50%; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 14px; color: #fff; }
.rcard h4 { font-size: 15px; font-weight: 700; }
.rcard .src { font-size: 11.5px; color: var(--muted); margin: 1px 0 7px; }
.rcard .amt { font-size: 12.5px; font-weight: 600; color: var(--ink-2); }

/* FAQ (shared <details>) */
.faqs { max-width: 820px; }
.faqd { background:#fff; border:1px solid var(--line); border-radius: var(--r); margin-bottom: 12px; overflow:hidden; transition: box-shadow .2s; }
.faqd[open] { box-shadow: var(--sh); border-color: var(--blue-soft); }
.faqd summary { list-style:none; cursor:pointer; padding: 17px 20px; font-weight:600; font-size:15px; display:flex; justify-content:space-between; align-items:center; gap:16px; }
.faqd summary::-webkit-details-marker { display:none; }
.faqd summary::after { content:"+"; font-size:23px; line-height:1; color:var(--royal); font-weight:400; transition:transform .2s; }
.faqd[open] summary::after { transform:rotate(45deg); }
.faqd p { padding: 0 20px 18px; color: var(--muted); font-size: 14px; margin:0; }

/* Appointment booking */
.book-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 20px; align-items: start; }
.daygrid { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; }
.day { border: 1px solid var(--line); border-radius: 12px; padding: 12px 8px; text-align: center; cursor: pointer; transition: all .15s; background: #fff; }
.day:hover { border-color: var(--blue-soft); }
.day.on { background: var(--royal); border-color: var(--royal); color: #fff; }
.day.off { opacity: .4; pointer-events: none; }
.day .d { font-size: 19px; font-weight: 800; }
.day .m { font-size: 10.5px; text-transform: uppercase; color: var(--muted); }
.day.on .m { color: rgba(255,255,255,.8); }
.slots { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin-top: 14px; }
.slot { border: 1px solid var(--line); border-radius: 10px; padding: 10px; text-align: center; font-size: 13px; font-weight: 600; cursor: pointer; background: #fff; transition: all .15s; }
.slot:hover { border-color: var(--blue-soft); }
.slot.on { background: var(--royal); border-color: var(--royal); color: #fff; }
.conf { display: none; text-align: center; padding: 30px; }
.conf.show { display: block; }
.conf .ok { width: 64px; height: 64px; border-radius: 50%; background: var(--green-soft); color: var(--green); display: flex; align-items: center; justify-content: center; margin: 0 auto 16px; }

@media (max-width: 900px) {
  /* .site-nav .links → mega menü bloğundaki 1080px çekmecesi yönetir */
  .phero .inner { grid-template-columns: 1fr; }
  .facts { grid-template-columns: repeat(2,1fr); }
  .cgrid { grid-template-columns: 1fr; }
  .results { grid-template-columns: 1fr; }
  .book-grid { grid-template-columns: 1fr; }
  .site-footer .inner { grid-template-columns: 1fr 1fr; }
  .ff-row { grid-template-columns: 1fr; }
}

/* ==========================================================================
   Başvuru sihirbazı (multi-step application wizard) — shared by basvuru/*
   Authentic per-institution application flow rendered by assets/basvuru.js
   ========================================================================== */
.wiz-wrap { max-width: 1000px; margin: 0 auto; display: grid; grid-template-columns: 1.55fr .95fr; gap: 20px; align-items: start; }
.wiz-main { background: #fff; border: 1px solid var(--line); border-radius: var(--r-md); padding: 26px; }
.wiz-side { display: flex; flex-direction: column; gap: 16px; position: sticky; top: 86px; }

/* Stepper */
.steps { display: flex; margin-bottom: 26px; }
.steps .s { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 7px; position: relative; text-align: center; }
.steps .s::before { content: ""; position: absolute; top: 16px; left: -50%; width: 100%; height: 2px; background: var(--line); z-index: 0; }
.steps .s:first-child::before { display: none; }
.steps .s.done::before { background: var(--green); }
.steps .s .num { width: 33px; height: 33px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 700; background: #fff; border: 2px solid var(--line); color: var(--muted); z-index: 1; transition: all .2s; }
.steps .s.on .num { background: var(--royal); border-color: var(--royal); color: #fff; box-shadow: 0 0 0 4px var(--soft-2); }
.steps .s.done .num { background: var(--green); border-color: var(--green); color: #fff; }
.steps .s .lbl { font-size: 11px; color: var(--muted); max-width: 110px; line-height: 1.3; }
.steps .s.on .lbl { color: var(--ink); font-weight: 600; }

/* Step panels */
.wiz-step { display: none; animation: fadeUp .35s ease; }
.wiz-step.on { display: block; }
.wiz-step .step-title { font-size: 18px; font-weight: 700; letter-spacing: -.01em; }
.wiz-step .step-intro { font-size: 13px; color: var(--muted); margin: 4px 0 18px; }
.wiz-sub { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--royal); margin: 20px 0 10px; padding-top: 14px; border-top: 1px solid var(--line-2); }
.wiz-sub:first-of-type { border-top: none; padding-top: 0; }

.ff-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; }
.ff-grid .full { grid-column: 1 / -1; }
.ff .req { color: var(--red); }
.ff .hint { font-size: 11px; color: var(--muted-2); font-weight: 500; text-transform: none; letter-spacing: 0; margin-top: 5px; display: block; }
.ff.invalid input, .ff.invalid select, .ff.invalid textarea { border-color: var(--red); background: var(--red-soft); }
.ff textarea { min-height: 92px; resize: vertical; line-height: 1.5; }

/* Mock file upload */
.upload { display: flex; align-items: center; gap: 12px; border: 1.5px dashed var(--line); border-radius: 11px; padding: 13px 15px; cursor: pointer; transition: all .18s; background: var(--soft); }
.upload:hover { border-color: var(--blue-soft); background: var(--soft-2); }
.upload.has { border-style: solid; border-color: var(--green); background: var(--green-soft); }
.upload .ic { width: 38px; height: 38px; border-radius: 10px; background: #fff; border: 1px solid var(--line); display: flex; align-items: center; justify-content: center; color: var(--royal); flex-shrink: 0; }
.upload.has .ic { color: var(--green); border-color: var(--green); }
.upload .t { font-size: 13px; font-weight: 600; }
.upload .d { font-size: 11.5px; color: var(--muted); }
.upload input[type=file] { display: none; }

/* Agreement / checkbox */
.check { display: flex; align-items: flex-start; gap: 10px; padding: 13px 15px; border: 1px solid var(--line); border-radius: 11px; background: var(--soft); font-size: 13px; color: var(--ink-2); cursor: pointer; }
.check input { width: 18px; height: 18px; margin-top: 1px; accent-color: var(--royal); flex-shrink: 0; }
.check.invalid { border-color: var(--red); background: var(--red-soft); }

/* Wizard nav */
.wiz-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--line); }
.wiz-actions .spacer { flex: 1; }

/* Review summary (final step) */
.review { border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; }
.review .grp { padding: 14px 16px; border-bottom: 1px solid var(--line-2); }
.review .grp:last-child { border-bottom: none; }
.review .grp h5 { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); margin-bottom: 9px; }
.review .ln { display: flex; justify-content: space-between; gap: 16px; font-size: 13px; padding: 3px 0; }
.review .ln span { color: var(--muted); }
.review .ln b { font-weight: 600; text-align: right; }

/* Side summary card */
.sumcard { background: #fff; border: 1px solid var(--line); border-radius: var(--r-md); padding: 20px; }
.sumcard h3 { font-size: 15px; font-weight: 700; margin-bottom: 4px; }
.sumcard .kk { font-size: 12px; color: var(--muted); }
.sumline { display: flex; align-items: center; gap: 11px; padding: 11px 0; border-bottom: 1px solid var(--line-2); }
.sumline:last-child { border-bottom: none; }
.sumline .k { font-size: 11px; color: var(--muted); }
.sumline .v { font-size: 13.5px; font-weight: 700; }
.callout { background: var(--soft-2); border: 1px solid var(--blue-soft); border-radius: var(--r); padding: 14px 16px; font-size: 12.5px; color: var(--ink-2); line-height: 1.6; }
.callout b { color: var(--navy); }

/* Reference box (success) */
.refbox { display: inline-flex; flex-direction: column; gap: 2px; background: var(--soft-2); border: 1px dashed var(--royal); border-radius: 12px; padding: 12px 20px; margin: 6px 0 18px; }
.refbox .k { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); }
.refbox .v { font-size: 20px; font-weight: 800; letter-spacing: .02em; color: var(--navy); font-family: "JetBrains Mono", ui-monospace, monospace; }

/* ==========================================================================
   Operasyon paneli (operations back-office) — dashboard/operasyon.html
   ========================================================================== */
/* Status badges (shared application lifecycle) */
.st { display: inline-flex; align-items: center; gap: 5px; font-size: 11px; font-weight: 700; padding: 3px 10px; border-radius: 7px; white-space: nowrap; }
.st::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.st-taslak { background: rgba(8,31,92,.07); color: var(--navy); }
.st-gonderildi { background: var(--soft-2); color: var(--royal); }
.st-incelemede { background: var(--amber-soft); color: var(--amber); }
.st-eksik { background: var(--red-soft); color: var(--red); }
.st-onaylandi { background: var(--green-soft); color: var(--green); }
.st-reddedildi { background: var(--red-soft); color: var(--red); }

/* Toolbar / segmented filters */
.toolbar { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.seg { display: inline-flex; background: var(--soft); border: 1px solid var(--line); border-radius: 11px; padding: 3px; gap: 2px; flex-wrap: wrap; }
.seg button { padding: 7px 13px; border-radius: 8px; font-size: 12.5px; font-weight: 600; color: var(--ink-2); transition: all .15s; }
.seg button.on { background: #fff; color: var(--royal); box-shadow: var(--sh-sm); }
.seg button .c { font-size: 10.5px; color: var(--muted); margin-left: 5px; }
.seg button.on .c { color: var(--royal); }

.tbl .row-click { cursor: pointer; }
.tbl .mono { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 12px; color: var(--muted); }
.tbl .av { width: 26px; height: 26px; border-radius: 8px; background: var(--soft-2); color: var(--royal); display: inline-flex; align-items: center; justify-content: center; font-size: 10.5px; font-weight: 700; }
.daypill { font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 6px; }
.daypill.urgent { background: var(--red-soft); color: var(--red); }
.daypill.soon { background: var(--amber-soft); color: var(--amber); }
.daypill.ok { background: var(--green-soft); color: var(--green); }

/* Slide-over drawer */
.drawer-bg { position: fixed; inset: 0; background: rgba(8,20,55,.42); backdrop-filter: blur(2px); opacity: 0; pointer-events: none; transition: opacity .25s; z-index: 60; }
.drawer-bg.open { opacity: 1; pointer-events: auto; }
.drawer { position: fixed; top: 0; right: 0; height: 100vh; width: 440px; max-width: 92vw; background: #fff; border-left: 1px solid var(--line); box-shadow: var(--sh-lg); transform: translateX(100%); transition: transform .28s cubic-bezier(.4,0,.2,1); z-index: 61; display: flex; flex-direction: column; }
.drawer.open { transform: translateX(0); }
.drawer .dh { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 22px 24px; border-bottom: 1px solid var(--line); }
.drawer .dh h3 { font-size: 17px; font-weight: 700; }
.drawer .db { padding: 22px 24px; overflow-y: auto; flex: 1; display: flex; flex-direction: column; gap: 18px; }
.drawer .df { padding: 16px 24px; border-top: 1px solid var(--line); display: flex; gap: 10px; flex-wrap: wrap; }
.kv { display: grid; grid-template-columns: 130px 1fr; gap: 6px 12px; font-size: 13px; }
.kv .k { color: var(--muted); }
.kv .v { font-weight: 600; }
.timeline { display: flex; flex-direction: column; gap: 0; }
.timeline .ev { display: flex; gap: 12px; padding-bottom: 16px; position: relative; }
.timeline .ev::before { content: ""; position: absolute; left: 5px; top: 14px; bottom: -2px; width: 2px; background: var(--line); }
.timeline .ev:last-child::before { display: none; }
.timeline .ev .dotm { width: 12px; height: 12px; border-radius: 50%; background: var(--royal); border: 2px solid #fff; box-shadow: 0 0 0 2px var(--soft-2); flex-shrink: 0; margin-top: 2px; z-index: 1; }
.timeline .ev .tx b { font-size: 13px; font-weight: 600; display: block; }
.timeline .ev .tx span { font-size: 11.5px; color: var(--muted); }

/* Tabs */
.tabs { display: flex; gap: 4px; border-bottom: 1px solid var(--line); margin-bottom: 18px; flex-wrap: wrap; }
.tabs button { padding: 10px 14px; font-size: 13.5px; font-weight: 600; color: var(--muted); border-bottom: 2px solid transparent; margin-bottom: -1px; }
.tabs button.on { color: var(--royal); border-bottom-color: var(--royal); }
.tabpane { display: none; }
.tabpane.on { display: block; }

.empty { text-align: center; padding: 40px 20px; color: var(--muted); }
.empty svg { width: 40px; height: 40px; margin: 0 auto 12px; color: var(--muted-2); }

/* ==========================================================================
   Raporlar — basit (kütüphanesiz) CSS grafikleri
   ========================================================================== */
.chart { display: flex; flex-direction: column; gap: 13px; }
.chartrow { display: grid; grid-template-columns: 150px 1fr 64px; align-items: center; gap: 12px; font-size: 13px; }
.chartrow .lbl { color: var(--ink-2); font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.chartrow .track { height: 11px; background: var(--line-2); border-radius: 100px; overflow: hidden; }
.chartrow .fill { height: 100%; border-radius: 100px; background: var(--grad-blue); min-width: 3px; transition: width .5s cubic-bezier(.4,0,.2,1); }
.chartrow .num { text-align: right; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--ink); }
.chartrow .num small { color: var(--muted); font-weight: 600; font-size: 11px; }

/* Vertical column chart (aylık trend) */
.cols { display: flex; align-items: flex-end; gap: 10px; height: 180px; padding-top: 10px; }
.cols .col { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 8px; height: 100%; justify-content: flex-end; }
.cols .col .bararea { width: 100%; display: flex; align-items: flex-end; justify-content: center; flex: 1; }
.cols .col .b { width: 60%; max-width: 46px; background: var(--grad-blue); border-radius: 8px 8px 0 0; min-height: 4px; position: relative; transition: height .5s cubic-bezier(.4,0,.2,1); }
.cols .col .b .v { position: absolute; top: -20px; left: 50%; transform: translateX(-50%); font-size: 12px; font-weight: 700; color: var(--ink); }
.cols .col .x { font-size: 11px; color: var(--muted); font-weight: 600; white-space: nowrap; }

/* Donut summary (legend rows) */
.legend { display: flex; flex-direction: column; gap: 9px; }
.legend .lg { display: flex; align-items: center; gap: 9px; font-size: 13px; }
.legend .lg .sw { width: 12px; height: 12px; border-radius: 4px; flex-shrink: 0; }
.legend .lg .nm { color: var(--ink-2); }
.legend .lg .vn { margin-left: auto; font-weight: 700; }

@media (max-width: 600px) { .chartrow { grid-template-columns: 96px 1fr 48px; } }

@media (max-width: 900px) {
  .wiz-wrap { grid-template-columns: 1fr; }
  .wiz-side { position: static; }
  .ff-grid { grid-template-columns: 1fr; }
  .steps .s .lbl { display: none; }
}

/* ==========================================================================
   Landing / marketing v2 — Tesviko (görsel referansla birebir)
   Paylaşılan pazarlama bileşenleri (index + destekler/* yeniden kabuk)
   ========================================================================== */

/* --------------------------------------------------------------------------
   Mega menü (.site-nav genişletmesi) — tüm public sayfalarda tek kaynak
   Masaüstü: hover/focus ile tam genişlik panel. Mobil: CSS-only çekmece.
   -------------------------------------------------------------------------- */
.site-nav .brand-name { font-size: 19px; }

/* Üst seviye öğe */
.navwrap { position: static; display: flex; align-items: center; }
.navtop {
  display: inline-flex; align-items: center; gap: 5px; white-space: nowrap;
  padding: 9px 12px; border-radius: 10px; font-size: 14px; font-weight: 500;
  color: var(--ink-2); transition: background .15s, color .15s;
}
.navtop:hover, .navtop.on { color: var(--royal); background: var(--soft-2); }
.navtop .car { width: 13px; height: 13px; color: var(--muted-2); transition: transform .18s, color .18s; }
.navwrap:hover .navtop, .navwrap:focus-within .navtop { color: var(--royal); background: var(--soft-2); }
.navwrap:hover .navtop .car, .navwrap:focus-within .navtop .car { transform: rotate(180deg); color: var(--royal); }

/* Panel — nav'a hizalı tam genişlik */
.mega {
  position: absolute; top: 100%; left: 0; right: 0; z-index: 60;
  background: #fff; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);
  box-shadow: var(--sh-md);
  opacity: 0; visibility: hidden; transform: translateY(-6px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
.navwrap:hover > .mega, .navwrap:focus-within > .mega { opacity: 1; visibility: visible; transform: translateY(0); }
.mega-inner {
  max-width: var(--max); margin: 0 auto; padding: 26px 32px 24px;
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) 288px; gap: 10px 26px; align-items: start;
}
.mega-col { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.mega-h {
  font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--muted-2); padding: 4px 10px 8px;
}
.mega-link { display: flex; align-items: flex-start; gap: 11px; padding: 9px 10px; border-radius: 12px; transition: background .15s; }
.mega-link:hover { background: var(--soft); }
.mega-link .mi {
  width: 34px; height: 34px; border-radius: 10px; flex-shrink: 0;
  background: var(--soft-2); color: var(--royal);
  display: flex; align-items: center; justify-content: center;
}
.mega-link .mi svg { width: 17px; height: 17px; }
.mega-link:hover .mi { background: var(--royal); color: #fff; }
.mega-link .mt { min-width: 0; }
.mega-link b { display: block; font-size: 13.5px; font-weight: 600; color: var(--ink); line-height: 1.35; }
.mega-link span { display: block; font-size: 11.5px; color: var(--muted); line-height: 1.45; }
.mega-link:hover b { color: var(--royal); }

/* Panel sağ tanıtım kartı */
.mega-feat {
  background: var(--grad-hero); color: #fff; border-radius: var(--r); padding: 20px;
  display: flex; flex-direction: column; gap: 9px; position: relative; overflow: hidden;
}
.mega-feat::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 88% -20%, rgba(22,179,100,.34), transparent 58%); pointer-events: none; }
.mega-feat .fk { font-size: 10.5px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: #8EE6A0; position: relative; }
.mega-feat b { font-size: 15.5px; font-weight: 700; line-height: 1.3; position: relative; }
.mega-feat p { font-size: 12px; color: rgba(255,255,255,.78); line-height: 1.5; position: relative; }
.mega-feat .btn { margin-top: 4px; align-self: flex-start; position: relative; }

/* Mobil hamburger + akordeon (CSS-only) */
.navtoggle, .megatoggle { position: absolute; opacity: 0; width: 1px; height: 1px; }
.megatoggle, .megaexp { display: none; }
.navburger {
  display: none; margin-left: auto; width: 42px; height: 42px; border-radius: 12px;
  border: 1px solid var(--line); background: #fff; cursor: pointer;
  align-items: center; justify-content: center; color: var(--ink); flex: 0 0 auto;
}
.navburger svg { width: 20px; height: 20px; }
.navtoggle:focus-visible ~ .navburger { outline: 2px solid var(--royal); outline-offset: 2px; }

@media (max-width: 1200px) {
  .site-nav .inner { height: 64px; gap: 8px; padding: 0 18px; }
  .navburger { display: flex; }
  .site-nav .links {
    display: none; position: absolute; top: 100%; left: 0; right: 0;
    flex-direction: column; align-items: stretch; gap: 0; margin: 0; padding: 10px 18px 20px;
    background: #fff; border-top: 1px solid var(--line); box-shadow: var(--sh-md);
    max-height: calc(100vh - 64px); overflow-y: auto;
  }
  .navtoggle:checked ~ .links { display: flex; }
  .navwrap { display: block; position: relative; border-bottom: 1px solid var(--line-2); }
  .navtop { width: 100%; padding: 13px 44px 13px 10px; font-size: 15px; font-weight: 600; }
  .navtop .car { display: none; }

  /* Akordeon: bölümler kapalı başlar, chevron ile açılır */
  .megaexp {
    display: flex; align-items: center; justify-content: center; cursor: pointer;
    position: absolute; top: 4px; right: 0; width: 40px; height: 40px; border-radius: 10px; color: var(--muted);
  }
  .megaexp .car { width: 18px; height: 18px; transition: transform .18s; }
  .megatoggle:checked ~ .megaexp .car { transform: rotate(180deg); color: var(--royal); }
  .megatoggle:focus-visible ~ .megaexp { outline: 2px solid var(--royal); outline-offset: -2px; }
  .mega {
    position: static; opacity: 1; visibility: visible; transform: none;
    box-shadow: none; border: 0; border-left: 2px solid var(--line-2); margin: 0 0 8px 10px;
    display: none;
  }
  .megatoggle:checked ~ .mega { display: block; }
  .mega-inner { padding: 0 0 4px 8px; grid-template-columns: 1fr; gap: 4px; }
  .mega-feat { display: none; }

  /* Mobil bar CTA'sı: yalnızca birincil eylem, hamburger en sağda */
  .site-nav .cta { display: flex; order: 2; margin-left: auto; }
  .site-nav .cta .btn-light { display: none; }
  .navburger { order: 3; margin-left: 8px; }
}
@media (max-width: 420px) {
  .site-nav .cta { display: none; }
}

/* Kurum gridi (institutions) */
.orglogos { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.orglogo { background: #fff; border: 1px solid var(--line); border-radius: var(--r); padding: 18px 12px; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 11px; min-height: 116px; justify-content: center; transition: all .2s; }
.orglogo:hover { transform: translateY(-3px); box-shadow: var(--sh); border-color: var(--blue-soft); }
.orglogo .mono { width: 48px; height: 48px; border-radius: 13px; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 14px; color: #fff; letter-spacing: -.02em; }
.orglogo .nm { font-size: 11px; font-weight: 700; color: var(--ink-2); line-height: 1.3; }

/* AI 5 adım yatay akış (.flow) */
.flow { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.flow .fstep { text-align: center; position: relative; padding: 0 6px; }
.flow .fstep::before { content: ""; position: absolute; top: 33px; left: -50%; width: 100%; height: 2px; background: repeating-linear-gradient(90deg, var(--line) 0 7px, transparent 7px 15px); z-index: 0; }
.flow .fstep:first-child::before { display: none; }
.flow .fcirc { width: 66px; height: 66px; border-radius: 50%; margin: 0 auto 16px; display: flex; align-items: center; justify-content: center; background: #fff; border: 1px solid var(--line); position: relative; z-index: 1; box-shadow: var(--sh-sm); }
.flow .fcirc svg { width: 27px; height: 27px; }
.flow .fnum { position: absolute; bottom: -3px; right: calc(50% - 38px); width: 23px; height: 23px; border-radius: 50%; color: #fff; font-size: 11px; font-weight: 800; display: flex; align-items: center; justify-content: center; border: 2.5px solid #fff; }
.flow h4 { font-size: 14.5px; font-weight: 700; margin-bottom: 5px; }
.flow p { font-size: 12px; color: var(--muted); line-height: 1.5; }

/* Hesaplama araç kartları (.toolcard) */
.toolgrid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.toolcard { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 22px; display: flex; flex-direction: column; gap: 10px; transition: all .2s; }
.toolcard:hover { transform: translateY(-4px); box-shadow: var(--sh-md); border-color: var(--blue-soft); }
.toolcard .ic { width: 46px; height: 46px; border-radius: 12px; display: flex; align-items: center; justify-content: center; }
.toolcard .ic svg { width: 22px; height: 22px; }
.toolcard h3 { font-size: 14.5px; font-weight: 700; line-height: 1.3; }
.toolcard p { font-size: 12.5px; color: var(--muted); flex: 1; line-height: 1.5; }
.toolcard .go { font-size: 13px; font-weight: 700; color: var(--brand-green-2); display: inline-flex; align-items: center; gap: 5px; }

/* Koyu istatistik bandı (.statband) */
.statband { background: var(--grad-hero); border-radius: var(--r-xl); padding: 36px 30px; display: grid; grid-template-columns: repeat(6, 1fr); gap: 18px; position: relative; overflow: hidden; }
.statband::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 82% -25%, rgba(22,179,100,.28), transparent 55%); pointer-events: none; }
.statband .si { text-align: center; color: #fff; position: relative; display: flex; flex-direction: column; align-items: center; gap: 5px; }
.statband .si .ic { width: 44px; height: 44px; border-radius: 12px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); display: flex; align-items: center; justify-content: center; margin-bottom: 5px; }
.statband .si .ic svg { width: 21px; height: 21px; }
.statband .si b { font-size: 25px; font-weight: 800; letter-spacing: -.02em; line-height: 1; }
.statband .si span { font-size: 11.5px; color: rgba(255,255,255,.72); }

/* Güven rozetleri (.trustbadges) — koyu zemin üstü */
.trustbadges { display: flex; gap: 20px; flex-wrap: wrap; }
.trustbadge { display: flex; align-items: center; gap: 8px; font-size: 12.5px; font-weight: 600; color: #fff; }
.trustbadge svg { width: 18px; height: 18px; color: #8EE6A0; }

/* Fiyatlandırma kartları (.pricec) — PRD §10 */
.pricegrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; }
.pricec { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 26px; display: flex; flex-direction: column; transition: all .2s; position: relative; }
.pricec:hover { box-shadow: var(--sh-md); border-color: var(--blue-soft); }
.pricec.feat { border-color: var(--brand-green); box-shadow: var(--sh-green); }
.pricec .pname { font-size: 14px; font-weight: 700; color: var(--royal); }
.pricec.feat .pname { color: var(--brand-green-2); }
.pricec .price { font-size: 34px; font-weight: 800; letter-spacing: -.02em; margin: 6px 0 2px; }
.pricec .price small { font-size: 14px; font-weight: 600; color: var(--muted); }
.pricec .pdesc { font-size: 12.5px; color: var(--muted); margin-bottom: 16px; }
.pricec ul { list-style: none; display: flex; flex-direction: column; gap: 9px; margin: 0 0 18px; flex: 1; }
.pricec li { font-size: 13px; color: var(--ink-2); display: flex; gap: 8px; align-items: flex-start; }
.pricec li svg { width: 16px; height: 16px; color: var(--brand-green); flex-shrink: 0; margin-top: 2px; }
.pricec .ptag { position: absolute; top: -11px; right: 18px; background: var(--brand-green); color: #fff; font-size: 10.5px; font-weight: 700; padding: 3px 11px; border-radius: 100px; }

@media (max-width: 1024px) {
  .orglogos { grid-template-columns: repeat(3, 1fr); }
  .flow { grid-template-columns: repeat(2, 1fr); gap: 22px 10px; }
  .flow .fstep::before { display: none; }
  .toolgrid { grid-template-columns: repeat(2, 1fr); }
  .statband { grid-template-columns: repeat(3, 1fr); gap: 24px 18px; }
  .pricegrid { grid-template-columns: 1fr; max-width: 460px; margin: 0 auto; }
}
@media (max-width: 600px) {
  .orglogos { grid-template-columns: repeat(2, 1fr); }
  .toolgrid { grid-template-columns: 1fr; }
  .statband { grid-template-columns: repeat(2, 1fr); }
}

/* ==========================================================================
   v3 (2026-10-30) — Tasarım görseli + tesvikapp.com düzeni
   Ortak kabuk: yeni logo, koyu menü çeşidi (.nav-dark), bülten + çok sütunlu
   alt bilgi (.sfoot), iç sayfa ilkelleri (.pg-*), kurum amblemleri (.emb).
   Ana sayfaya özel bölümler index.html <style> bloğunda.
   ========================================================================== */
:root {
  --night: #050D35;
  --night-2: #071552;
  --deep: #0A1C66;
  --deep-2: #0D2A8A;
  --green-glow: #2BD97F;
  --cyan: #19B5E8;
  --orange: #F97316;
  --orange-soft: #FFF1E6;
  --grad-night: linear-gradient(160deg, #04103F 0%, #071B66 48%, #0A2A9C 100%);
  --grad-foot: linear-gradient(180deg, #0B1648 0%, #050B2C 100%);
  --grad-band: linear-gradient(120deg, #0A1F78 0%, #0B2A9A 55%, #0A2F8F 100%);
  --grad-cta2: linear-gradient(100deg, #1240D8 0%, #1A5BEA 45%, #14A3C4 78%, #1FC46B 100%);
  --sh-glow-green: 0 0 0 6px rgba(43,217,127,.12), 0 14px 34px rgba(18,208,122,.35);
}

/* ---- Logo ---- */
.brand-logo { width: 44px; height: 44px; flex-shrink: 0; }
.brand .brand-name { font-size: 23px; font-weight: 700; letter-spacing: -.02em; }
.brand .brand-tag { font-size: 10.5px; margin-top: 4px; }
.site-nav .brand-name { font-size: 22px; }

/* ---- Koyu menü (ana sayfa: kahraman üstünde saydam, kayınca gece mavisi) ---- */
.site-nav.nav-dark { position: fixed; left: 0; right: 0; top: 0; background: transparent; border-bottom-color: transparent; backdrop-filter: none; transition: background .25s, border-color .25s, box-shadow .25s; }
.site-nav.nav-dark.is-stuck { background: rgba(5,13,53,.92); backdrop-filter: blur(14px); border-bottom-color: rgba(255,255,255,.08); box-shadow: 0 10px 30px rgba(2,6,30,.35); }
.site-nav.nav-dark .inner { height: 84px; }
.site-nav.nav-dark .brand-name { color: #fff; }
.site-nav.nav-dark .brand-tag { color: rgba(255,255,255,.72); }
.site-nav.nav-dark .navtop { color: rgba(255,255,255,.9); background: transparent; position: relative; }
.site-nav.nav-dark .navtop .car { color: #fff; opacity: .85; }
.site-nav.nav-dark .navtop:hover, .site-nav.nav-dark .navwrap:hover .navtop, .site-nav.nav-dark .navwrap:focus-within .navtop { color: #fff; background: rgba(255,255,255,.07); }
.site-nav.nav-dark .navwrap:hover .navtop .car, .site-nav.nav-dark .navwrap:focus-within .navtop .car { color: #fff; }
.site-nav.nav-dark .navtop.on { color: #fff; background: transparent; }
.site-nav.nav-dark .navtop.on::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: -14px; height: 2px; border-radius: 2px; background: linear-gradient(90deg, var(--cyan), var(--blue)); }
.site-nav.nav-dark .cta .btn-light { background: transparent; color: #fff; border-color: rgba(255,255,255,.55); }
.site-nav.nav-dark .cta .btn-light:hover { background: rgba(255,255,255,.1); border-color: #fff; color: #fff; }
.site-nav.nav-dark .navburger { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.2); color: #fff; }
.site-nav .cta .btn-sm { padding: 11px 18px; font-size: 13.5px; }
@media (max-width: 1200px) {
  .site-nav.nav-dark .inner { height: 66px; }
  .site-nav.nav-dark { background: rgba(5,13,53,.94); backdrop-filter: blur(14px); }
  .site-nav.nav-dark .links { background: #fff; }
  .site-nav.nav-dark .links .navtop { color: var(--ink-2); }
  .site-nav.nav-dark .links .navtop.on { color: var(--royal); }
  .site-nav.nav-dark .navtop.on::after { display: none; }
}

/* ---- Alt bilgi v3 (.sfoot) — bülten + marka + sütunlar + iletişim + yasal ---- */
.sfoot { background: var(--grad-foot); color: #fff; position: relative; overflow: hidden; border-top: 3px solid transparent; border-image: linear-gradient(90deg, var(--royal), var(--cyan), var(--brand-green)) 1; }
.sfoot::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1px); background-size: 22px 22px; pointer-events: none; }
.sfoot > div { position: relative; }
.sfoot-news { max-width: var(--max); margin: 0 auto; padding: 46px 32px 40px; display: grid; grid-template-columns: 1.1fr .9fr; gap: 40px; align-items: center; border-bottom: 1px solid rgba(255,255,255,.08); }
.sfoot-news .k { font-size: 11px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--green-glow); }
.sfoot-news h3 { font-size: clamp(22px, 2.4vw, 28px); font-weight: 700; letter-spacing: -.02em; line-height: 1.25; margin-top: 10px; }
.sfoot-news h3 em { font-style: normal; color: var(--green-glow); }
.sfoot-news p { font-size: 13.5px; color: rgba(255,255,255,.72); margin-top: 10px; max-width: 520px; }
.newsform { display: flex; gap: 10px; }
.newsform input { flex: 1; min-width: 0; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.96); border-radius: 12px; padding: 14px 16px; font-family: var(--font); font-size: 14px; color: var(--ink); outline: none; }
.newsform input:focus { box-shadow: 0 0 0 3px rgba(43,217,127,.35); }
.newsform .btn { padding: 14px 24px; }
.newsnote { font-size: 11.5px; color: rgba(255,255,255,.55); margin-top: 10px; }
.newsnote a { text-decoration: underline; color: rgba(255,255,255,.75); }
.newsmsg { font-size: 12.5px; color: var(--green-glow); margin-top: 8px; min-height: 18px; }
.sfoot-main { max-width: var(--max); margin: 0 auto; padding: 44px 32px 36px; display: grid; grid-template-columns: 1.35fr 1fr 1fr 1.15fr; gap: 34px; }
.sfoot-brand p { font-size: 13.5px; color: rgba(255,255,255,.72); margin-top: 16px; max-width: 340px; line-height: 1.7; }
.sfoot-social { display: flex; gap: 8px; margin-top: 22px; }
.sfoot-social a { width: 38px; height: 38px; border-radius: 11px; border: 1px solid rgba(255,255,255,.16); display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,.85); transition: all .15s; }
.sfoot-social a:hover { background: var(--brand-green); border-color: var(--brand-green); color: #fff; }
.sfoot-social svg { width: 16px; height: 16px; }
.sfoot h5 { font-size: 11px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--green-glow); margin-bottom: 16px; padding-left: 10px; border-left: 3px solid var(--green-glow); line-height: 1.1; }
.sfoot-col a { display: block; font-size: 13.5px; color: rgba(255,255,255,.8); margin-bottom: 11px; transition: color .15s, transform .15s; }
.sfoot-col a:hover { color: #fff; transform: translateX(2px); }
.sfoot-contact .ci { display: flex; gap: 12px; margin-bottom: 14px; }
.sfoot-contact .ci .ic { width: 36px; height: 36px; border-radius: 10px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.1); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.sfoot-contact .ci .ic svg { width: 16px; height: 16px; color: var(--green-glow); }
.sfoot-contact .ci small { display: block; font-size: 10px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.5); }
.sfoot-contact .ci span, .sfoot-contact .ci a { font-size: 13px; color: rgba(255,255,255,.88); line-height: 1.5; }
.sfoot-bottom { max-width: var(--max); margin: 0 auto; padding: 18px 32px 22px; border-top: 1px solid rgba(255,255,255,.08); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; font-size: 12.5px; color: rgba(255,255,255,.6); }
.sfoot-bottom b { color: #fff; }
/* Güven şeridi + güvenli ödeme + politikalar (2026-11-08) */
.sfoot-trust { max-width: var(--max); margin: 0 auto; padding: 22px 32px; border-top: 1px solid rgba(255,255,255,.08); display: flex; align-items: center; justify-content: space-between; gap: 20px 32px; flex-wrap: wrap; }
.sfoot-badges { display: grid; grid-template-columns: repeat(4, minmax(0, auto)); gap: 12px; }
.sfoot-badges .tb { display: flex; align-items: center; gap: 11px; padding: 10px 14px 10px 10px; border-radius: 14px; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.04); transition: background .15s, border-color .15s; }
.sfoot-badges .tb:hover { background: rgba(255,255,255,.08); border-color: rgba(43,217,127,.45); }
.sfoot-badges .tb-ic { width: 38px; height: 38px; border-radius: 11px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; color: #fff; background: linear-gradient(140deg, var(--cyan), var(--brand-green)); box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 6px 16px rgba(22,179,100,.25); }
.sfoot-badges .tb-ic svg { width: 19px; height: 19px; }
.sfoot-badges b { display: block; font-size: 13px; font-weight: 700; color: #fff; line-height: 1.2; white-space: nowrap; }
.sfoot-badges small { display: block; font-size: 11px; color: rgba(255,255,255,.62); margin-top: 2px; white-space: nowrap; }
.sfoot-pay { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.sfoot-pay .k { display: inline-flex; align-items: center; gap: 6px; font-size: 10.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.6); }
.sfoot-pay .k svg { width: 13px; height: 13px; color: var(--green-glow); }
.sfoot-band { display: inline-flex; align-items: center; background: #fff; border-radius: 10px; padding: 9px 14px; box-shadow: 0 6px 18px rgba(0,0,0,.18); }
.sfoot-band img { display: block; height: 24px; width: auto; max-width: 100%; }
.sfoot-eft { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 600; color: var(--night-2); background: #fff; border-radius: 10px; padding: 11px 14px; box-shadow: 0 6px 18px rgba(0,0,0,.18); white-space: nowrap; }
.sfoot-eft svg { width: 15px; height: 15px; color: var(--royal); }
.sfoot-policies { max-width: var(--max); margin: 0 auto; padding: 16px 32px; border-top: 1px solid rgba(255,255,255,.08); display: flex; flex-wrap: wrap; align-items: center; gap: 8px 22px; font-size: 12.5px; position: relative; }
.sfoot-policies .k { font-size: 10.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--green-glow); margin-right: 4px; }
.sfoot-policies a { color: rgba(255,255,255,.72); }
.sfoot-policies a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.sfoot-note { font-size: 11.5px; color: rgba(255,255,255,.55); }
@media (max-width: 1100px) { .sfoot-badges { grid-template-columns: repeat(2, minmax(0, auto)); } }
@media (max-width: 600px) {
  .sfoot-trust, .sfoot-policies { padding-left: 20px; padding-right: 20px; }
  .sfoot-badges { grid-template-columns: 1fr 1fr; width: 100%; gap: 8px; }
  .sfoot-badges .tb { padding: 8px 10px 8px 8px; gap: 9px; }
  .sfoot-badges .tb-ic { width: 32px; height: 32px; border-radius: 9px; }
  .sfoot-badges b { font-size: 12px; white-space: normal; }
  .sfoot-badges small { white-space: normal; }
  .sfoot-band { padding: 8px 10px; max-width: 100%; }
  .sfoot-band img { height: auto; width: 100%; }
  .sfoot-policies { gap: 8px 16px; }
}
@media (max-width: 1024px) {
  .sfoot-news { grid-template-columns: 1fr; gap: 22px; }
  .sfoot-main { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .sfoot-main { grid-template-columns: 1fr; gap: 28px; }
  .newsform { flex-direction: column; }
  .sfoot-news, .sfoot-main, .sfoot-bottom { padding-left: 20px; padding-right: 20px; }
}

/* ---- TeşvikBot — sağ alt köşedeki teşvik sohbet robotu (düğme + sohbet paneli; davranış assets/robot.js) ---- */
.tk-bot { display: block; width: 100%; height: 100%; overflow: visible; }
.tk-bot .tk-ant { stroke: #fff; stroke-width: 3; stroke-linecap: round; }
.tk-bot .tk-led { fill: var(--green-glow); }
.tk-bot .tk-ear, .tk-bot .tk-head { fill: #fff; }
.tk-bot .tk-neck { fill: rgba(255,255,255,.82); }
.tk-bot .tk-face { fill: var(--night-2); }
.tk-bot .tk-eye { fill: #5CE1FF; }
.tk-bot .tk-smile { fill: none; stroke: #5CE1FF; stroke-width: 2.4; stroke-linecap: round; }
.tk-bot .tk-eyes { transform-box: fill-box; transform-origin: center; animation: tk-blink 5.2s infinite; }
@keyframes tk-blink { 0%, 92%, 100% { transform: scaleY(1); } 95% { transform: scaleY(.12); } }
@keyframes tk-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
@keyframes tk-ping { 0% { box-shadow: 0 0 0 0 rgba(43,217,127,.55); } 100% { box-shadow: 0 0 0 14px rgba(43,217,127,0); } }

.tk-fab {
  position: fixed; right: 24px; bottom: 24px; z-index: 70; width: 66px; height: 66px; border-radius: 22px;
  padding: 9px 9px 7px; background: linear-gradient(145deg, var(--royal) 0%, var(--deep) 55%, var(--brand-green) 135%);
  box-shadow: 0 18px 40px rgba(10,28,102,.38), inset 0 1px 0 rgba(255,255,255,.25);
  display: flex; align-items: center; justify-content: center; cursor: pointer; border: 0;
  animation: tk-float 3.6s ease-in-out infinite; transition: box-shadow .2s, border-radius .2s;
}
.tk-fab:hover { box-shadow: 0 22px 48px rgba(10,28,102,.48), 0 0 0 5px rgba(43,217,127,.16); }
.tk-fab:focus-visible { outline: 3px solid var(--green-glow); outline-offset: 3px; }
.tk-fab-dot { position: absolute; top: -3px; right: -3px; width: 15px; height: 15px; border-radius: 50%; background: var(--green-glow); border: 3px solid #fff; animation: tk-ping 1.8s ease-out infinite; }
.tk-fab.is-open { animation: none; border-radius: 50%; }
.tk-fab.is-open .tk-fab-dot, .tk-fab.is-seen .tk-fab-dot { display: none; }

.tk-tease {
  position: fixed; right: 102px; bottom: 34px; z-index: 69; max-width: 260px;
  background: #fff; color: var(--ink); border: 1px solid var(--line); border-radius: 16px 16px 4px 16px;
  padding: 12px 34px 12px 14px; font-size: 13px; line-height: 1.5; box-shadow: 0 16px 40px rgba(11,20,55,.16);
  opacity: 0; transform: translateY(8px); transition: opacity .25s, transform .25s; pointer-events: none;
}
.tk-tease.is-on { opacity: 1; transform: none; pointer-events: auto; cursor: pointer; }
.tk-tease b { color: var(--night-2); }
.tk-tease-x { position: absolute; top: 6px; right: 6px; width: 24px; height: 24px; border-radius: 8px; border: 0; background: transparent; color: var(--muted); font-size: 16px; line-height: 1; cursor: pointer; }
.tk-tease-x:hover { background: var(--soft-2); color: var(--ink); }

.tk-panel {
  position: fixed; right: 24px; bottom: 104px; z-index: 71; width: 380px; height: min(600px, calc(100vh - 128px));
  display: flex; flex-direction: column; background: #fff; border-radius: 22px; overflow: hidden;
  box-shadow: 0 30px 80px rgba(5,13,53,.32), 0 0 0 1px rgba(10,28,102,.06);
  opacity: 0; visibility: hidden; transform: translateY(14px) scale(.98); transform-origin: bottom right;
  transition: opacity .2s, transform .2s, visibility .2s;
}
.tk-panel.is-open { opacity: 1; visibility: visible; transform: none; }
.tk-head { display: flex; align-items: center; gap: 12px; padding: 16px 16px 16px 18px; color: #fff; background: linear-gradient(120deg, var(--night) 0%, var(--deep) 55%, var(--royal) 100%); position: relative; }
.tk-head::after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 92% -30%, rgba(43,217,127,.35), transparent 55%); pointer-events: none; }
.tk-av { width: 46px; height: 46px; flex-shrink: 0; border-radius: 15px; padding: 6px 6px 5px; background: linear-gradient(145deg, var(--royal), var(--brand-green)); box-shadow: inset 0 1px 0 rgba(255,255,255,.3); }
.tk-head b { display: block; font-size: 16px; font-weight: 700; letter-spacing: -.01em; }
.tk-head small { display: flex; align-items: center; gap: 6px; font-size: 12px; color: rgba(255,255,255,.75); margin-top: 2px; }
.tk-head small::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--green-glow); box-shadow: 0 0 0 3px rgba(43,217,127,.25); }
.tk-head-x { margin-left: auto; position: relative; z-index: 1; width: 34px; height: 34px; border-radius: 10px; border: 0; background: rgba(255,255,255,.1); color: #fff; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.tk-head-x:hover { background: rgba(255,255,255,.2); }
.tk-head-x svg { width: 18px; height: 18px; }
.tk-log { flex: 1; overflow-y: auto; padding: 18px 16px 8px; background: linear-gradient(180deg, #F4F7FF, #fff 70%); display: flex; flex-direction: column; gap: 10px; scroll-behavior: smooth; }
@keyframes tk-in { from { opacity: 0; transform: translateY(6px); } }
.tk-msg { animation: tk-in .22s ease-out; max-width: 86%; font-size: 13.5px; line-height: 1.55; padding: 10px 13px; border-radius: 16px; word-wrap: break-word; }
.tk-msg.bot { align-self: flex-start; background: #fff; color: var(--ink); border: 1px solid var(--line); border-bottom-left-radius: 5px; box-shadow: 0 4px 14px rgba(11,20,55,.05); }
.tk-msg.ben { align-self: flex-end; background: var(--royal); color: #fff; border-bottom-right-radius: 5px; }
.tk-msg a { color: var(--royal); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.tk-msg ul { margin: 6px 0 0; padding-left: 18px; }
.tk-msg li { margin: 3px 0; }
.tk-msg .tk-card { display: block; margin-top: 8px; padding: 9px 11px; border-radius: 12px; background: var(--soft-2); text-decoration: none; color: var(--ink); }
.tk-msg .tk-card b { display: block; font-size: 13px; color: var(--night-2); }
.tk-msg .tk-card span { display: block; font-size: 12px; color: var(--muted); }
.tk-msg .tk-card:hover { background: #E3E9FF; }
.tk-typing { align-self: flex-start; display: inline-flex; gap: 4px; padding: 12px 14px; border-radius: 16px; background: #fff; border: 1px solid var(--line); }
.tk-typing i { width: 7px; height: 7px; border-radius: 50%; background: var(--muted-2, #A3AAC4); animation: tk-dot 1s infinite; }
.tk-typing i:nth-child(2) { animation-delay: .15s; } .tk-typing i:nth-child(3) { animation-delay: .3s; }
@keyframes tk-dot { 0%, 60%, 100% { transform: translateY(0); opacity: .5; } 30% { transform: translateY(-4px); opacity: 1; } }
.tk-chips { display: flex; flex-wrap: wrap; gap: 6px; padding: 8px 14px 10px; border-top: 1px solid var(--line); background: #fff; }
.tk-chips:empty { display: none; }
.tk-chip { font: 600 12.5px/1 var(--font); padding: 8px 12px; border-radius: 100px; border: 1px solid #D6DEFA; background: #fff; color: var(--royal); cursor: pointer; transition: background .15s, border-color .15s; }
.tk-chip:hover { background: var(--soft-2); border-color: var(--royal); }
.tk-form { display: flex; gap: 8px; padding: 10px 14px 14px; background: #fff; }
.tk-form input { flex: 1; min-width: 0; border: 1.5px solid var(--line); border-radius: 12px; padding: 11px 13px; font: 400 13.5px var(--font); color: var(--ink); outline: none; }
.tk-form input:focus { border-color: var(--royal); box-shadow: 0 0 0 3px rgba(15,61,255,.1); }
.tk-form button { width: 44px; flex-shrink: 0; border: 0; border-radius: 12px; background: var(--brand-green); color: #fff; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.tk-form button:hover { background: var(--brand-green-2); }
.tk-form button svg { width: 18px; height: 18px; }
.tk-note { font-size: 10.5px; color: var(--muted); text-align: center; padding: 0 14px 10px; background: #fff; }
@media (max-width: 640px) {
  .tk-fab { width: 58px; height: 58px; right: 16px; bottom: 16px; border-radius: 19px; padding: 8px 8px 6px; }
  .tk-tease { right: 84px; bottom: 22px; max-width: calc(100vw - 110px); }
  .tk-panel { right: 10px; left: 10px; bottom: 86px; width: auto; height: calc(100vh - 106px); height: calc(100dvh - 106px); }
}
@media (prefers-reduced-motion: reduce) { .tk-fab, .tk-fab-dot, .tk-bot .tk-eyes { animation: none; } }
@media print { .tk-fab, .tk-tease, .tk-panel { display: none !important; } }

/* ---- Kurum amblemleri (.emb) — özgün SVG işaretler, resmî logo değildir ---- */
.emb { width: 54px; height: 54px; display: block; }

/* ---- İç sayfa ilkelleri (tesvikapp düzeni) ---- */
.pg-hero { background: linear-gradient(180deg, #F6F8FF 0%, #FFFFFF 100%); border-bottom: 1px solid var(--line-2); position: relative; overflow: hidden; }
.pg-hero::after { content: ""; position: absolute; right: -120px; top: -160px; width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle, rgba(74,108,255,.14), transparent 65%); pointer-events: none; }
.pg-hero .inner { max-width: var(--max); margin: 0 auto; padding: 46px 32px 64px; position: relative; z-index: 1; }
.pg-hero.center .inner { text-align: center; }
.pg-crumbs { display: flex; gap: 9px; align-items: center; flex-wrap: wrap; font-size: 13px; color: var(--muted); margin-bottom: 26px; }
.pg-hero.center .pg-crumbs { justify-content: center; }
.pg-crumbs a:hover { color: var(--royal); }
.pg-crumbs .sep { color: var(--muted-2); font-size: 11px; }
.pg-crumbs b { color: var(--navy); font-weight: 600; }
.pg-kicker { display: inline-flex; align-items: center; gap: 8px; font-size: 11px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--royal); background: #fff; border: 1px solid var(--line); border-radius: 100px; padding: 7px 14px; box-shadow: var(--sh-sm); }
.pg-kicker::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); }
.pg-title { font-size: clamp(32px, 4.6vw, 56px); font-weight: 800; letter-spacing: -.035em; line-height: 1.08; color: var(--night-2); margin-top: 18px; }
.pg-title em { font-style: normal; background: linear-gradient(90deg, var(--royal), var(--cyan)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.pg-lead { font-size: 17px; color: var(--ink-2); margin-top: 18px; max-width: 680px; line-height: 1.7; }
.pg-hero.center .pg-lead { margin-left: auto; margin-right: auto; }
.pg-actions { display: flex; gap: 12px; margin-top: 28px; flex-wrap: wrap; }
.pg-hero.center .pg-actions { justify-content: center; }
.pg-meta { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 18px; font-size: 12.5px; color: var(--muted); }
.pg-hero.center .pg-meta { justify-content: center; }
.pg-meta span { display: inline-flex; align-items: center; gap: 6px; }
.pg-meta svg { width: 14px; height: 14px; }
.btn-deep { background: var(--deep); color: #fff; box-shadow: 0 14px 30px rgba(10,28,102,.28); }
.btn-deep:hover { background: var(--deep-2); transform: translateY(-2px); }
.btn-deep:hover svg { transform: translateX(3px); }
.btn-outline { background: #fff; color: var(--navy); border: 1.5px solid var(--line); }
.btn-outline:hover { border-color: var(--royal); color: var(--royal); }

.pg-section { max-width: var(--max); margin: 0 auto; padding: 72px 32px; }
.pg-section.tight { padding-top: 40px; padding-bottom: 40px; }
.pg-sechead { max-width: 720px; margin-bottom: 34px; }
.pg-sechead.center { text-align: center; margin-left: auto; margin-right: auto; }
.pg-line { display: inline-flex; align-items: center; gap: 12px; font-size: 11px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--royal); }
.pg-line::before { content: ""; width: 40px; height: 1.5px; background: var(--navy); }
.pg-h2 { font-size: clamp(24px, 3vw, 36px); font-weight: 800; letter-spacing: -.025em; line-height: 1.2; color: var(--night-2); margin-top: 12px; }
.pg-h2 em { font-style: normal; color: var(--royal); }
.pg-sub { font-size: 15.5px; color: var(--muted); margin-top: 12px; line-height: 1.7; }

.pg-card { background: #fff; border: 1px solid var(--line); border-radius: 20px; padding: 28px; transition: box-shadow .2s, transform .2s, border-color .2s; }
.pg-card:hover { box-shadow: var(--sh-md); border-color: #CFD8F5; }
.pg-ic { width: 48px; height: 48px; border-radius: 13px; background: var(--soft-2); color: var(--royal); display: flex; align-items: center; justify-content: center; }
.pg-ic svg { width: 22px; height: 22px; }
.pg-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.pg-grid3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.pg-grid4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.checks { list-style: none; display: flex; flex-direction: column; gap: 9px; }
.checks li { display: flex; gap: 9px; align-items: flex-start; font-size: 14px; color: var(--ink-2); }
.checks li svg { width: 17px; height: 17px; color: var(--royal); flex-shrink: 0; margin-top: 2px; }
.checks.green li svg { color: var(--brand-green); }

.cta-dark { background: linear-gradient(135deg, #0D1340 0%, #1A2478 45%, #0B5EA8 85%, #0A84C8 100%); color: #fff; position: relative; overflow: hidden; }
.cta-dark::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(rgba(255,255,255,.07) 1px, transparent 1px); background-size: 24px 24px; }
.cta-dark .inner { max-width: 860px; margin: 0 auto; padding: 78px 32px; text-align: center; position: relative; }
.cta-dark h2 { font-size: clamp(28px, 4vw, 46px); font-weight: 800; letter-spacing: -.03em; line-height: 1.15; }
.cta-dark p { font-size: 16.5px; color: rgba(255,255,255,.82); margin-top: 16px; line-height: 1.7; }
.cta-dark .acts { display: flex; gap: 12px; justify-content: center; margin-top: 30px; flex-wrap: wrap; }
.btn-white { background: #fff; color: var(--night-2); }
.btn-white:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(0,0,0,.25); }
.btn-glass { background: rgba(255,255,255,.08); color: #fff; border: 1.5px solid rgba(255,255,255,.3); }
.btn-glass:hover { background: rgba(255,255,255,.16); }

.prose2 { font-size: 15.5px; line-height: 1.85; color: var(--ink-2); }
.prose2 h2 { font-size: 26px; font-weight: 800; letter-spacing: -.02em; color: var(--night-2); margin: 40px 0 14px; padding-left: 14px; border-left: 4px solid var(--deep); line-height: 1.25; scroll-margin-top: 100px; }
.prose2 h3 { font-size: 18px; font-weight: 700; color: var(--night-2); margin: 26px 0 10px; }
.prose2 p { margin: 0 0 14px; }
.prose2 ul, .prose2 ol { margin: 0 0 16px 20px; }
.prose2 li { margin-bottom: 6px; }
.prose2 a { color: var(--royal); text-decoration: underline; text-underline-offset: 3px; }
.prose2 strong { color: var(--ink); }
.prose2 .note { background: var(--soft); border: 1px solid var(--line); border-radius: 14px; padding: 14px 18px; font-size: 14px; color: var(--muted); }

.with-aside { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 48px; align-items: start; }
.aside-sticky { position: sticky; top: 100px; display: flex; flex-direction: column; gap: 16px; }
.toc { background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 20px 22px; }
.toc .tk { font-size: 10.5px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); padding-left: 10px; border-left: 3px solid var(--deep); margin-bottom: 12px; }
.toc a { display: block; font-size: 13.5px; color: var(--ink-2); padding: 7px 10px; border-radius: 9px; }
.toc a:hover, .toc a.on { background: var(--soft-2); color: var(--royal); }
.quick-card { background: linear-gradient(160deg, #F4F7FF, #EAF0FF); border: 1px solid #DCE4FB; border-radius: 18px; padding: 22px; }
.quick-card .k { font-size: 10.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--royal); }
.quick-card b { display: block; font-size: 16px; color: var(--night-2); margin: 8px 0 14px; line-height: 1.35; }
.quick-card .btn { width: 100%; }

.faqd2 { border: 1px solid var(--line); border-radius: 16px; background: #fff; margin-bottom: 12px; transition: border-color .15s, box-shadow .15s; }
.faqd2[open] { border-color: #C9D5FB; box-shadow: var(--sh); }
.faqd2 summary { list-style: none; cursor: pointer; padding: 18px 22px; font-weight: 600; font-size: 15px; color: var(--night-2); display: flex; justify-content: space-between; gap: 16px; align-items: center; }
.faqd2 summary::-webkit-details-marker { display: none; }
.faqd2 summary::after { content: "+"; font-size: 22px; font-weight: 400; color: var(--royal); line-height: 1; transition: transform .2s; }
.faqd2[open] summary::after { transform: rotate(45deg); }
.faqd2 p { padding: 0 22px 20px; font-size: 14px; color: var(--muted); line-height: 1.75; }

.formf { display: flex; flex-direction: column; gap: 7px; }
.formf label { font-size: 13px; font-weight: 600; color: var(--night-2); }
.formf input, .formf select, .formf textarea { width: 100%; border: 1.5px solid var(--line); border-radius: 12px; padding: 13px 15px; font-family: var(--font); font-size: 14px; color: var(--ink); background: #fff; outline: none; transition: border-color .15s, box-shadow .15s; }
.formf textarea { min-height: 130px; resize: vertical; }
.formf input:focus, .formf select:focus, .formf textarea:focus { border-color: var(--royal); box-shadow: 0 0 0 3px rgba(15,61,255,.12); }
.formmsg { font-size: 13.5px; font-weight: 600; min-height: 20px; }
.formmsg.ok { color: var(--brand-green-2); }
.formmsg.err { color: var(--red); }

@media (max-width: 1024px) {
  .with-aside { grid-template-columns: 1fr; }
  .aside-sticky { position: static; }
  .pg-grid3, .pg-grid4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .pg-grid2, .pg-grid3, .pg-grid4 { grid-template-columns: 1fr; }
  .pg-hero .inner, .pg-section { padding-left: 20px; padding-right: 20px; }
}

/* ---- Menü sığdırma (v3): menü kabı 1320 px; dar masaüstünde sıkılaştır; çekmece 1200 px altında ---- */
.site-nav .inner { max-width: 1320px; }
.navtop .car { flex-shrink: 0; }
/* 2026-11-08: üst menü öğelerinin önünde ikon (.ni); bağlantılar CTA'nın altına taşmasın diye .links daralmaz */
.navtop .ni { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; color: var(--royal); opacity: .8; transition: opacity .15s, color .15s; }
.navtop .ni svg { width: 16px; height: 16px; }
.navtop:hover .ni, .navtop.on .ni, .navwrap:hover .navtop .ni, .navwrap:focus-within .navtop .ni { opacity: 1; }
.site-nav.nav-dark .navtop .ni { color: #7FD6F5; opacity: 1; }
.site-nav.nav-dark .navtop:hover .ni, .site-nav.nav-dark .navtop.on .ni, .site-nav.nav-dark .navwrap:hover .navtop .ni, .site-nav.nav-dark .navwrap:focus-within .navtop .ni { color: var(--green-glow); }
.site-nav .cta .btn svg { width: 16px; height: 16px; }
.site-nav .cta .btn-success.on { box-shadow: 0 0 0 3px rgba(22,179,100,.25); }
@media (min-width: 1201px) {
  .site-nav .links { flex: 0 1 auto; gap: 0; margin-left: 12px; }
  .site-nav .navtop { padding: 8px 7px; gap: 6px; }
  .site-nav .navtop .car { margin-left: -2px; }
}
/* Geniş ekranda menü kabı 1400 px: ikonlu 6 öğe + 2 düğme rahat sığsın (İletişim düğmelerin altına girmesin) */
@media (min-width: 1501px) {
  .site-nav .inner { max-width: 1400px; }
  .site-nav .navtop { padding: 8px 9px; }
  .site-nav .links { margin-left: 18px; }
}
@media (max-width: 1500px) and (min-width: 1201px) {
  .site-nav .navtop { padding: 8px 7px; font-size: 13.5px; gap: 5px; }
  .site-nav .links { margin-left: 8px; }
  .site-nav .cta { gap: 8px; }
  .site-nav .cta .btn-sm { padding: 10px 14px; }
}
@media (max-width: 1380px) and (min-width: 1201px) {
  .site-nav .navtop { padding: 8px 5px; font-size: 13px; }
  .navtop .ni svg { width: 15px; height: 15px; }
  .site-nav .brand-tag { display: none; }
}
/* Mobil çekmecede Demo Talep Et (masaüstünde üst bar düğmesi var) */
.nav-mcta { display: none !important; }
@media (max-width: 1200px) {
  .nav-mcta { display: block !important; }
  .nav-mcta .navtop { color: var(--brand-green-2) !important; }
  .nav-mcta .navtop .ni { background: var(--brand-green-soft, #E7F8EF) !important; color: var(--brand-green-2) !important; }
  .navtop .ni { width: 30px; height: 30px; border-radius: 9px; margin-right: 6px; background: var(--soft-2); opacity: 1; }
  .site-nav.nav-dark .links .navtop .ni { background: var(--soft-2); color: var(--royal); }
}
/* Düğme ikonları: boyut niteliği olmayan satır içi SVG'ler (ic()) için varsayılan */
.btn svg:not([width]) { width: 17px; height: 17px; flex-shrink: 0; }
/* Dar telefonda CTA gizlenince hamburger sağa yaslansın */
@media (max-width: 420px) { .site-nav .navburger { margin-left: auto; } }

/* ---- Danışman desteği bandı (.dn-band) — program sayfaları; üretici: scripts/sayfalar/_yardim.mjs danismanBandi() ---- */
.dn-band { margin-top: 44px; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 28px 36px; align-items: center; border-radius: 24px; padding: 32px 34px; color: #fff; position: relative; overflow: hidden;
  background: radial-gradient(circle at 95% -20%, rgba(43,217,127,.28), transparent 50%), linear-gradient(135deg, var(--night) 0%, var(--deep) 60%, #1236C9 100%); box-shadow: 0 24px 60px rgba(5,13,53,.22); }
.dn-band .dn-k { display: inline-flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #8EE6A0; }
.dn-band .dn-k svg { width: 15px; height: 15px; }
.dn-band h2 { font-size: clamp(20px, 2.1vw, 26px); font-weight: 800; letter-spacing: -.02em; line-height: 1.25; margin-top: 10px; color: #fff; }
.dn-band p { font-size: 14px; line-height: 1.7; color: rgba(255,255,255,.8); margin-top: 10px; max-width: 560px; }
.dn-band .dn-acts { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
.dn-band .btn-glass { background: rgba(255,255,255,.08); color: #fff; border: 1.5px solid rgba(255,255,255,.3); }
.dn-band .btn-glass:hover { background: rgba(255,255,255,.16); }
.dn-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; counter-reset: dn; }
.dn-steps li { display: flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 600; color: rgba(255,255,255,.92); background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); border-radius: 12px; padding: 10px 12px; }
.dn-steps li span { width: 24px; height: 24px; border-radius: 8px; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; font-size: 11.5px; font-weight: 800; background: linear-gradient(140deg, var(--cyan), var(--brand-green)); color: #fff; }
@media (max-width: 900px) { .dn-band { grid-template-columns: 1fr; padding: 26px 22px; } }
@media (max-width: 420px) { .dn-steps { grid-template-columns: 1fr; } }
