/* =========================================================================
   SMSOnayVer.com — İç Sayfalar (servis/ülke/satış/kurumsal/blog)
   ========================================================================= */

/* ---- Sayfa başlığı (dark hero) ---- */
.page-hero {
  position: relative; overflow: hidden; color: #fff;
  background: radial-gradient(800px 400px at 85% -20%, rgba(37,99,235,.35), transparent 60%),
              linear-gradient(180deg, var(--navy-950), var(--navy-900));
  padding-block: var(--sp-12) var(--sp-16);
}
.page-hero::before { content:""; position:absolute; inset:0;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:44px 44px; mask-image:radial-gradient(900px 400px at 60% 0,#000 30%,transparent 75%); }
.page-hero .inner { position: relative; }
.page-hero h1 { font-size: var(--fs-4xl); margin-block: var(--sp-3); }
.page-hero p { color: rgba(255,255,255,.78); font-size: var(--fs-lg); max-width: 640px; }

/* ---- Servis arama (hero içi) ---- */
.svc-search { position: relative; display: flex; gap: var(--sp-2); max-width: 560px; margin-top: var(--sp-6); }
.svc-search > svg { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--muted); pointer-events: none; }
.svc-search input {
  flex: 1; height: 52px; padding: 0 var(--sp-4) 0 46px; border-radius: var(--r-full);
  border: none; background: #fff; color: var(--ink); font-size: var(--fs-base);
}
.svc-search input:focus { outline: none; box-shadow: 0 0 0 4px rgba(37,99,235,.25); }
.svc-search .btn { height: 52px; }

/* ---- Breadcrumb ---- */
.breadcrumb { display: flex; flex-wrap: wrap; gap: var(--sp-2); font-size: var(--fs-sm); color: rgba(255,255,255,.6); }
.breadcrumb a { color: rgba(255,255,255,.8); }
.breadcrumb a:hover { color: var(--green-400); }
.breadcrumb span { color: rgba(255,255,255,.4); }
.page-hero.light-crumb .breadcrumb { color: var(--muted); }

/* ---- Fiyat tablosu (servis/ülke detay) ---- */
.price-table { width: 100%; border-collapse: separate; border-spacing: 0; background: #fff;
  border: 1px solid var(--slate-200); border-radius: var(--r-lg); overflow: hidden; }
.price-table th, .price-table td { padding: var(--sp-4) var(--sp-5); text-align: left; }
.price-table thead th { background: var(--surface-2); font-size: var(--fs-sm); color: var(--muted);
  text-transform: uppercase; letter-spacing: .03em; border-bottom: 1px solid var(--slate-200); }
.price-table tbody tr { border-bottom: 1px solid var(--slate-100); transition: background var(--t-fast); }
.price-table tbody tr:hover { background: var(--surface-2); }
.price-table tbody tr:last-child { border-bottom: none; }
.price-table .name { font-weight: 600; color: var(--navy-900); display: flex; align-items: center; gap: 10px; }
.price-table .flag { font-size: 1.4rem; }
.price-table .svc-mini { width: 30px; height: 30px; border-radius: 8px; display: grid; place-items: center; color: #fff; font-weight: 800; font-size: var(--fs-sm); }
.price-table .price { font-weight: 800; color: var(--navy-900); font-size: var(--fs-lg); }
.price-table .stock-ok { color: var(--green-600); font-weight: 600; font-size: var(--fs-sm); }
.price-table .stock-no { color: var(--muted); font-size: var(--fs-sm); }
.price-table .go { text-align: right; }

.stock-badge { display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:600; }
.stock-badge.ok { color: var(--green-600); }
.stock-badge.low { color: #B45309; }

/* ---- İki kolon layout (içerik + sidebar) ---- */
.split { display: grid; grid-template-columns: 1fr 340px; gap: var(--sp-10); align-items: start; }
.sidebar-card { background: #fff; border: 1px solid var(--slate-200); border-radius: var(--r-lg); padding: var(--sp-6); position: sticky; top: 92px; }
.sidebar-card h3 { color: var(--navy-900); font-size: var(--fs-lg); margin-bottom: var(--sp-4); }

/* ---- Prose (SEO içerik) ---- */
.prose { color: var(--slate-600); max-width: 800px; }
.prose h2 { color: var(--navy-900); font-size: var(--fs-2xl); margin: var(--sp-8) 0 var(--sp-3); }
.prose h3 { color: var(--navy-800); font-size: var(--fs-xl); margin: var(--sp-6) 0 var(--sp-3); }
.prose p { margin-bottom: var(--sp-4); line-height: var(--lh-base); }
.prose ul { margin: var(--sp-4) 0; display: grid; gap: var(--sp-2); }
.prose ul li { padding-left: var(--sp-5); position: relative; }
.prose ul li::before { content:"▹"; position:absolute; left:0; color: var(--primary); }
.prose strong { color: var(--navy-800); }

/* ---- Satış (buy) kartı ---- */
.buy-card { background: linear-gradient(160deg,var(--navy-900),var(--navy-800)); color:#fff; border-radius: var(--r-xl); padding: var(--sp-8); box-shadow: var(--shadow-lg); }
.buy-card .row { display:flex; justify-content:space-between; align-items:center; padding: var(--sp-3) 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.buy-card .row:last-of-type { border: none; }
.buy-card .row .lbl { color: rgba(255,255,255,.7); }
.buy-card .total { font-size: var(--fs-2xl); font-weight: 800; color: var(--green-400); }
.buy-card .mini { font-size: var(--fs-sm); color: rgba(255,255,255,.6); margin-top: var(--sp-3); }
.buy-card select { width:100%; height:50px; border-radius: var(--r-md); border:1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.08); color:#fff; padding:0 var(--sp-4); font-size: var(--fs-base); margin-top: 6px; }
.buy-card select option { color: #111; }
.buy-card label { font-size: var(--fs-sm); color: rgba(255,255,255,.8); }

/* ---- Blog kartları ---- */
.post-grid { display:grid; grid-template-columns: repeat(auto-fill,minmax(320px,1fr)); gap: var(--sp-6); }
.post-card { background:#fff; border:1px solid var(--slate-200); border-radius: var(--r-lg); overflow:hidden; transition: transform var(--t-med), box-shadow var(--t-med); }
.post-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); }
.post-card .cover { aspect-ratio: 16/9; background: linear-gradient(135deg,var(--navy-800),var(--blue-500)); display:grid; place-items:center; color:rgba(255,255,255,.5); font-weight:700; font-size: 2rem; overflow:hidden; }
.post-card .cover img { width:100%; height:100%; object-fit:cover; display:block; }
.post-card .body { padding: var(--sp-5); }
.post-card .cat { font-size: var(--fs-xs); color: var(--primary); font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.post-card h3 { color: var(--navy-900); font-size: var(--fs-lg); margin: var(--sp-2) 0; }
.post-card p { color: var(--muted); font-size: var(--fs-sm); }
.post-card .meta { margin-top: var(--sp-3); font-size: var(--fs-xs); color: var(--muted); }

/* ---- Pagination ---- */
.pagination { display:flex; gap:6px; justify-content:center; margin-top: var(--sp-10); }
.pagination a, .pagination span { padding: 8px 14px; border-radius: var(--r-md); border:1px solid var(--slate-200); color: var(--navy-800); font-weight:600; font-size: var(--fs-sm); }
.pagination a:hover { border-color: var(--primary); color: var(--primary); }
.pagination .current { background: var(--primary); color:#fff; border-color: var(--primary); }

/* ---- Boş durum ---- */
.empty { text-align:center; padding: var(--sp-16); color: var(--muted); }

/* ---- Flash / uyarı ---- */
.alert { padding: var(--sp-4) var(--sp-5); border-radius: var(--r-md); margin-bottom: var(--sp-5); font-size: var(--fs-sm); font-weight: 500; }
.alert-success { background: rgba(16,185,129,.1); color: var(--green-600); border: 1px solid rgba(16,185,129,.25); }
.alert-error { background: rgba(220,38,38,.08); color: #B91C1C; border: 1px solid rgba(220,38,38,.2); }
.alert-info { background: rgba(37,99,235,.08); color: var(--blue-600); border: 1px solid rgba(37,99,235,.2); }

@media (max-width: 900px) {
  .split { grid-template-columns: 1fr; }
  .sidebar-card { position: static; }
  .price-table thead { display: none; }
  .price-table td { display:flex; justify-content:space-between; align-items:center; gap: var(--sp-3); padding: var(--sp-3) var(--sp-4); }
  .price-table td::before { content: attr(data-label); color: var(--muted); font-weight:600; }
  .price-table td.go::before { display:none; }
  .price-table tr { display:block; border-bottom: 8px solid var(--surface-2); }
}
@media (max-width: 480px) {
  .page-hero { padding-block: var(--sp-10) var(--sp-12); }
  .svc-search { flex-direction: column; }
  .svc-search .btn { width: 100%; height: 48px; }
  .svc-search input { height: 48px; }
  .post-grid { grid-template-columns: 1fr; }
  .prose h2 { font-size: var(--fs-xl); }
  .prose { font-size: var(--fs-base); }
  .price-table .go .btn { width: 100%; }
  .pagination a, .pagination span { padding: 7px 11px; }
}

/* ---- Blog / haber yazı sayfası: kompakt hero + hero-içerik arası boşluğu azalt ----
   Çift sınıf (0,2,0) özgüllüğü ile mobil media query'deki .page-hero kuralını da geçer. */
.page-hero.page-hero--article { padding-block: var(--sp-6) var(--sp-6); }
.section.section--tight-top   { padding-top: var(--sp-8); }

/* =========================================================================
   Kurumsal / Yasal sayfalar (Hakkımızda, İletişim, sözleşmeler, politikalar)
   ========================================================================= */
.page-hero .updated { display:inline-block; margin-top: var(--sp-3); font-size: var(--fs-sm); color: rgba(255,255,255,.55); }

/* --- Yasal doküman: içerik + yapışkan içindekiler (TOC) --- */
.legal-layout { display: grid; grid-template-columns: 1fr 280px; gap: var(--sp-10); align-items: start; }
.legal-body { color: var(--slate-600); max-width: none; }
.legal-body > *:first-child { margin-top: 0; }
.legal-toc { position: sticky; top: 92px; }
.legal-toc__title { font-size: var(--fs-xs); text-transform: uppercase; letter-spacing:.06em; color: var(--muted); font-weight:700; margin-bottom: var(--sp-3); }
.legal-toc nav { display: grid; gap: 1px; border-left: 2px solid var(--slate-200); max-height: 72vh; overflow-y: auto; }
.legal-toc a { display:block; padding: 6px 0 6px var(--sp-4); margin-left:-2px; border-left:2px solid transparent; color: var(--muted); font-size: var(--fs-sm); line-height:1.35; }
.legal-toc a:hover { color: var(--navy-900); }
.legal-toc a.active { color: var(--primary); border-left-color: var(--primary); font-weight:600; }

.legal-body h2 { color: var(--navy-900); font-size: var(--fs-xl); margin: var(--sp-8) 0 var(--sp-3); scroll-margin-top: 88px; }
.legal-body h3 { color: var(--navy-800); font-size: var(--fs-lg); margin: var(--sp-5) 0 var(--sp-2); }
.legal-body p { margin-bottom: var(--sp-4); line-height: var(--lh-base); }
.legal-body ul, .legal-body ol { margin: var(--sp-3) 0 var(--sp-4) var(--sp-5); display: grid; gap: 6px; }
.legal-body li { line-height: var(--lh-base); }
.legal-body strong { color: var(--navy-800); }
.legal-body a { color: var(--primary); text-decoration: underline; }
.legal-body table { width:100%; border-collapse: collapse; margin: var(--sp-4) 0; font-size: var(--fs-sm); }
.legal-body th, .legal-body td { border:1px solid var(--slate-200); padding: 10px 12px; text-align:left; vertical-align: top; }
.legal-body th { background: var(--surface-2); color: var(--navy-900); font-weight:700; }
.legal-lead { font-size: var(--fs-lg); color: var(--slate-600); margin-bottom: var(--sp-5); line-height: var(--lh-base); }
.legal-note { background: var(--surface-2); border:1px solid var(--slate-200); border-left:3px solid var(--primary); border-radius: var(--r-md); padding: var(--sp-4) var(--sp-5); margin: var(--sp-5) 0; font-size: var(--fs-sm); }
.legal-parties { display:grid; gap: var(--sp-4); grid-template-columns: 1fr 1fr; margin: var(--sp-4) 0 var(--sp-6); }
.legal-parties .party { background:#fff; border:1px solid var(--slate-200); border-radius: var(--r-lg); padding: var(--sp-5); }
.legal-parties h4 { color: var(--navy-900); font-size: var(--fs-sm); text-transform:uppercase; letter-spacing:.04em; margin-bottom: var(--sp-3); }
.legal-parties dl { display:grid; grid-template-columns: auto 1fr; gap: 5px var(--sp-3); font-size: var(--fs-sm); margin:0; }
.legal-parties dt { color: var(--muted); }
.legal-parties dd { color: var(--navy-800); font-weight:600; margin:0; }

/* --- Hakkımızda --- */
.about-lead { font-size: var(--fs-xl); color: var(--slate-600); line-height: var(--lh-base); max-width: 860px; }
.about-stats { display:grid; grid-template-columns: repeat(4,1fr); gap: var(--sp-4); margin: var(--sp-10) 0; }
.about-stat { background:#fff; border:1px solid var(--slate-200); border-radius: var(--r-lg); padding: var(--sp-6); text-align:center; }
.about-stat b { display:block; font-size: var(--fs-3xl); color: var(--navy-900); font-weight:800; line-height:1.1; }
.about-stat span { color: var(--muted); font-size: var(--fs-sm); }
.about-section { margin-top: var(--sp-12); }
.about-section h2 { color: var(--navy-900); font-size: var(--fs-2xl); margin-bottom: var(--sp-3); }
.about-section > p { color: var(--slate-600); line-height: var(--lh-base); max-width: 860px; margin-bottom: var(--sp-4); }
.about-grid { display:grid; grid-template-columns: repeat(3,1fr); gap: var(--sp-5); margin-top: var(--sp-6); }
.about-card { background:#fff; border:1px solid var(--slate-200); border-radius: var(--r-lg); padding: var(--sp-6);
  display:grid; grid-template-columns: auto 1fr; align-items:center; column-gap: var(--sp-4); row-gap: var(--sp-3); }
.about-card .ic { width:44px; height:44px; border-radius: 12px; display:grid; place-items:center; background: rgba(37,99,235,.1); color: var(--primary); margin-bottom:0; flex:none; }
.about-card h3 { color: var(--navy-900); font-size: var(--fs-lg); margin:0; }
.about-card p { grid-column: 1 / -1; color: var(--slate-600); font-size: var(--fs-sm); line-height: var(--lh-base); margin:0; }
.mv-grid { display:grid; grid-template-columns: 1fr 1fr; gap: var(--sp-5); margin-top: var(--sp-6); }
.mv-card { background: linear-gradient(160deg,var(--navy-900),var(--navy-800)); color:#fff; border-radius: var(--r-xl); padding: var(--sp-8); }
.mv-card h3 { color:#fff; font-size: var(--fs-xl); margin-bottom: var(--sp-3); }
.mv-card p { color: rgba(255,255,255,.82); line-height: var(--lh-base); }

/* --- İletişim --- */
.contact-grid { display:grid; grid-template-columns: 1fr 1.15fr; gap: var(--sp-10); align-items:start; }
.contact-info { display:grid; gap: var(--sp-4); }
.contact-item { display:flex; gap: var(--sp-4); align-items:flex-start; background:#fff; border:1px solid var(--slate-200); border-radius: var(--r-lg); padding: var(--sp-5); }
.contact-item .ic { width:44px; height:44px; flex:none; border-radius:12px; display:grid; place-items:center; background: rgba(37,99,235,.1); color: var(--primary); }
.contact-item b { display:block; color: var(--navy-900); font-size: var(--fs-base); margin-bottom: 2px; }
.contact-item span, .contact-item a { color: var(--muted); font-size: var(--fs-sm); }
.contact-item a:hover { color: var(--primary); }
.contact-form { background:#fff; border:1px solid var(--slate-200); border-radius: var(--r-xl); padding: var(--sp-8); box-shadow: var(--shadow-md); }
.contact-form .field { margin-bottom: var(--sp-4); }
.contact-form .field-row { display:grid; grid-template-columns:1fr 1fr; gap: var(--sp-4); }
.contact-form label { display:block; font-size: var(--fs-sm); font-weight:600; color: var(--navy-800); margin-bottom: 6px; }
.contact-form input, .contact-form textarea, .contact-form select { width:100%; border:1px solid var(--slate-200); border-radius: var(--r-md); padding: 11px 14px; font-size: var(--fs-base); color: var(--ink); background:#fff; font-family: inherit; }
.contact-form input:focus, .contact-form textarea:focus, .contact-form select:focus { outline:none; border-color: var(--primary); box-shadow:0 0 0 4px rgba(37,99,235,.12); }
.contact-form textarea { min-height: 140px; resize: vertical; }

/* --- Çerez onay banner --- */
.cookie-bar { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 60; max-width: 760px; margin-inline:auto; background: var(--navy-900); color:#fff; border-radius: var(--r-lg); box-shadow: var(--shadow-lg); padding: var(--sp-4) var(--sp-5); display:flex; align-items:center; gap: var(--sp-4); flex-wrap: wrap; }
.cookie-bar p { flex:1; min-width: 220px; font-size: var(--fs-sm); color: rgba(255,255,255,.85); line-height:1.5; margin:0; }
.cookie-bar p a { color: var(--green-400); text-decoration: underline; }
.cookie-bar .actions { display:flex; gap: 8px; flex: none; }
/* Koyu zemin: outline buton beyaz kalsın (dark-on-dark önlenir) */
.cookie-bar .btn-outline { color:#fff; border-color: rgba(255,255,255,.45); background: transparent; }
.cookie-bar .btn-outline:hover { color:#fff; background: rgba(255,255,255,.12); border-color:#fff; }
.cookie-bar[hidden] { display:none; }

@media (max-width: 900px) {
  .legal-layout { grid-template-columns: 1fr; }
  .legal-toc { display:none; }
  .contact-grid { grid-template-columns: 1fr; }
  .about-stats { grid-template-columns: repeat(2,1fr); }
  .about-grid { grid-template-columns: 1fr; }
  .mv-grid { grid-template-columns: 1fr; }
  .legal-parties { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .about-stats { grid-template-columns: 1fr 1fr; }
  .about-stat b { font-size: var(--fs-2xl); }
  .contact-form { padding: var(--sp-5); }
  .contact-form .field-row { grid-template-columns: 1fr; }
  .cookie-bar { left:8px; right:8px; bottom: 76px; padding: var(--sp-3) var(--sp-4); }
  .cookie-bar .actions { width:100%; }
  .cookie-bar .actions .btn { flex:1; }
}
