/* ============================================================
   KiraGöz v3 — Design System
   Estetik yön: Refined Legal / Editorial — Güven, Otorite, Netlik
   Fontlar: Fraunces (display) + DM Sans (body)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,500;0,9..144,700;0,9..144,900;1,9..144,400;1,9..144,700&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,300;1,9..40,400&display=swap');

/* ── TOKENS ─────────────────────────────────────────────── */
:root {
  --ink:       #1A1209;
  --ink-mid:   #3D2E1A;
  --ink-light: #6B5B45;
  --paper:     #F9F6F0;
  --paper-2:   #F2EDE4;
  --paper-3:   #E8E0D4;
  --white:     #FFFFFF;
  --gold:      #C49A28;
  --gold-light:#D4AD40;
  --gold-dim:  rgba(196,154,40,0.12);
  --gold-brd:  rgba(196,154,40,0.28);
  --red:       #B33A2A;
  --red-bg:    rgba(179,58,42,0.08);
  --green:     #2A6642;
  --green-bg:  rgba(42,102,66,0.08);
  --blue:      #1D4E7A;
  --blue-bg:   rgba(29,78,122,0.08);

  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-xl: 24px;
  --radius-full: 100px;

  --shadow-sm:  0 2px 8px rgba(26,18,9,0.06);
  --shadow-md:  0 8px 28px rgba(26,18,9,0.1);
  --shadow-lg:  0 20px 60px rgba(26,18,9,0.14);
  --shadow-gold:0 8px 28px rgba(196,154,40,0.22);

  --t-fast: 0.14s ease;
  --t-base: 0.24s ease;
  --t-slow: 0.4s ease;

  --navbar-h: 68px;
  --max-w: 1160px;
}

/* ── RESET ───────────────────────────────────────────────── */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body {
  font-family:'DM Sans', sans-serif;
  background:var(--paper);
  color:var(--ink);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img, svg { display:block; max-width:100%; }
a { text-decoration:none; color:inherit; }
button, input, select, textarea { font-family:inherit; }
ul, ol { list-style:none; }

/* ── TYPOGRAPHY ──────────────────────────────────────────── */
.font-display { font-family:'Fraunces', serif; }
h1,h2,h3,h4,h5 { font-family:'Fraunces', serif; line-height:1.12; letter-spacing:-0.4px; }
h1 { font-size:clamp(36px,5vw,64px); }
h2 { font-size:clamp(28px,3.5vw,48px); }
h3 { font-size:clamp(20px,2.5vw,28px); }
p  { line-height:1.7; }

/* ── SCROLLBAR ───────────────────────────────────────────── */
::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-track { background:transparent; }
::-webkit-scrollbar-thumb { background:var(--paper-3); border-radius:4px; }

/* ── BUTTONS ─────────────────────────────────────────────── */
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  border:none; cursor:pointer; font-weight:600; font-size:15px;
  border-radius:var(--radius-md); padding:13px 26px;
  transition:all var(--t-base); white-space:nowrap; letter-spacing:0.1px;
}
.btn:active { transform:scale(0.97); }

.btn-primary {
  background:var(--ink); color:var(--paper);
  box-shadow: 0 2px 0 rgba(0,0,0,0.4);
}
.btn-primary:hover { background:var(--ink-mid); transform:translateY(-2px); box-shadow:0 6px 20px rgba(26,18,9,0.3); }

.btn-gold {
  background:var(--gold); color:#fff;
  box-shadow:0 2px 0 rgba(120,80,0,0.35);
  font-weight:700;
}
.btn-gold:hover { background:#A8821F; transform:translateY(-2px); box-shadow:var(--shadow-gold); color:#fff; }

.btn-outline {
  background:transparent; color:var(--ink);
  border:1.5px solid var(--paper-3);
}
.btn-outline:hover { border-color:var(--ink); background:var(--ink); color:var(--paper); }

.btn-ghost { background:transparent; color:var(--ink-light); }
.btn-ghost:hover { background:var(--ink); color:var(--paper); }

.btn-sm  { padding:9px 18px; font-size:13px; }
.btn-lg  { padding:16px 36px; font-size:17px; }
.btn-full { width:100%; }
.btn-pill { border-radius:var(--radius-full); }

/* ── BADGE ───────────────────────────────────────────────── */
.badge {
  display:inline-flex; align-items:center; gap:6px;
  padding:4px 12px; border-radius:var(--radius-full);
  font-size:11px; font-weight:700; letter-spacing:0.8px; text-transform:uppercase;
}
.badge-gold  { background:var(--gold-dim); color:var(--gold); border:1px solid var(--gold-brd); }
.badge-ink   { background:var(--ink); color:var(--paper); }
.badge-green { background:var(--green-bg); color:var(--green); }
.badge-red   { background:var(--red-bg); color:var(--red); }
.badge-paper { background:var(--paper-2); color:var(--ink-light); border:1px solid var(--paper-3); }

/* ── NAVBAR ──────────────────────────────────────────────── */
.navbar {
  position:fixed; top:0; left:0; right:0; z-index:900;
  height:var(--navbar-h);
  background:rgba(249,246,240,0.95);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--paper-3);
}
.navbar-inner {
  display:flex; align-items:center; justify-content:space-between;
  height:100%; max-width:var(--max-w); margin:0 auto; padding:0 5%;
}
/* ── LOGO ────────────────────────────────────────────────── */
.logo {
  display:flex; align-items:center; gap:11px;
  font-family:'Fraunces', serif; font-size:22px; font-weight:700;
  color:var(--ink); letter-spacing:-0.5px; text-decoration:none;
}
.logo-mark {
  width:38px; height:38px; flex-shrink:0;
  transition:transform var(--t-base);
}
.logo:hover .logo-mark { transform:scale(1.08) rotate(-4deg); }
.logo-text { line-height:1; }
.logo-text-kira { color:var(--ink); }
.logo-text-goz  { color:var(--gold); }
/* Footer logo: light version */
.logo-light .logo-text-kira { color:var(--paper); }
.logo-light .logo-text-goz  { color:var(--gold-light); }

.nav-links {
  display:flex; align-items:center; gap:4px;
}
.nav-links a {
  font-size:14px; font-weight:500; color:var(--ink-light);
  padding:8px 14px; border-radius:var(--radius-sm);
  transition:all var(--t-fast);
}
.nav-links a:hover, .nav-links a.active { color:var(--ink); background:var(--paper-2); }

.nav-actions { display:flex; align-items:center; gap:10px; }

/* Hamburger */
.hamburger {
  display:none; flex-direction:column; justify-content:center;
  align-items:center; gap:5px; width:42px; height:42px;
  background:none; border:none; cursor:pointer;
  border-radius:var(--radius-sm); transition:background var(--t-fast);
}
.hamburger:hover { background:var(--paper-2); }
.hamburger span {
  display:block; width:22px; height:2px;
  background:var(--ink); border-radius:2px;
  transition:all 0.3s cubic-bezier(.4,0,.2,1); transform-origin:center;
}
.hamburger.open span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity:0; transform:scaleX(0); }
.hamburger.open span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }

/* Mobile drawer */
.mobile-drawer {
  position:fixed; inset:0; background:var(--paper); z-index:899;
  transform:translateX(110%);
  transition:transform 0.32s cubic-bezier(.4,0,.2,1);
  padding:calc(var(--navbar-h) + 28px) 28px 40px;
  display:flex; flex-direction:column; gap:4px; overflow-y:auto;
}
.mobile-drawer.open { transform:translateX(0); }
.mobile-drawer a {
  display:block; font-size:20px; font-weight:500; color:var(--ink);
  padding:16px 0; border-bottom:1px solid var(--paper-3);
}
.mobile-drawer-cta { margin-top:24px; display:flex; flex-direction:column; gap:12px; }

/* ── SECTION / LAYOUT ────────────────────────────────────── */
.container { max-width:var(--max-w); margin:0 auto; padding:0 5%; }
.section { padding:96px 5%; }
.section-sm { padding:64px 5%; }
.section-eyebrow {
  font-size:11px; font-weight:700; letter-spacing:1.8px;
  text-transform:uppercase; color:var(--gold); margin-bottom:16px;
}

/* ── HERO ────────────────────────────────────────────────── */
.hero {
  min-height:100vh; display:flex; align-items:center;
  background:var(--ink); position:relative; overflow:hidden;
  padding-top:var(--navbar-h);
}
.hero-grain {
  position:absolute; inset:0; opacity:0.04; pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
  background-size:200px;
}
.hero-geo {
  position:absolute; right:-100px; top:50%; transform:translateY(-50%);
  width:600px; height:600px; border-radius:50%;
  background:radial-gradient(circle, rgba(196,154,40,0.07) 0%, transparent 70%);
  pointer-events:none;
}
.hero-inner {
  max-width:var(--max-w); margin:0 auto; padding:80px 5%;
  display:grid; grid-template-columns:1fr 480px; gap:80px; align-items:center; width:100%;
}
.hero-eyebrow { color:var(--gold); font-size:11px; font-weight:700; letter-spacing:1.8px; text-transform:uppercase; margin-bottom:24px; }
.hero-title {
  font-family:'Fraunces', serif; font-size:clamp(40px,5.5vw,72px);
  color:var(--paper); line-height:1.06; letter-spacing:-1px;
  margin-bottom:24px;
}
.hero-title em { color:var(--gold); font-style:normal; }
.hero-subtitle { font-size:18px; color:rgba(249,246,240,0.5); line-height:1.7; font-weight:300; max-width:480px; margin-bottom:36px; }
.hero-cta-row { display:flex; gap:12px; flex-wrap:wrap; }
.hero-stats { display:flex; gap:36px; margin-top:48px; padding-top:36px; border-top:1px solid rgba(249,246,240,0.08); }
.hero-stat-num { font-family:'Fraunces',serif; font-size:32px; font-weight:700; color:var(--paper); }
.hero-stat-label { font-size:12px; color:rgba(249,246,240,0.4); margin-top:2px; }

/* ── CALC WIDGET ─────────────────────────────────────────── */
.calc-widget {
  background:var(--paper); border-radius:20px; padding:32px;
  box-shadow:var(--shadow-lg); border:1px solid var(--paper-3);
  position:relative;
}
.calc-widget::before {
  content:''; position:absolute; top:-1px; left:32px; right:32px; height:3px;
  background:linear-gradient(90deg, transparent, var(--gold), transparent);
  border-radius:0 0 2px 2px;
}
.calc-label { font-size:11px; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; color:var(--gold); margin-bottom:20px; }
.form-group { margin-bottom:16px; }
.form-label { font-size:12px; font-weight:600; color:var(--ink-light); margin-bottom:6px; display:block; }
.form-input {
  width:100%; padding:12px 14px; border:1.5px solid var(--paper-3);
  border-radius:var(--radius-md); font-size:14px; color:var(--ink);
  background:var(--paper); transition:border-color var(--t-fast);
  outline:none;
}
.form-input:focus { border-color:var(--gold); }
.form-select { appearance:none; cursor:pointer; }
.form-select-wrap { position:relative; }
.form-select-wrap::after {
  content:'▾'; position:absolute; right:14px; top:50%; transform:translateY(-50%);
  color:var(--ink-light); font-size:12px; pointer-events:none;
}
.calc-result {
  margin-top:16px; padding:18px; border-radius:var(--radius-md);
  border:1px solid var(--paper-3); background:var(--paper-2);
  display:none; animation:fadeUp 0.3s ease;
}
.calc-result.show { display:block; }
.calc-row { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:8px; font-size:13px; }
.calc-row:last-child { margin-bottom:0; }
.calc-lbl { color:var(--ink-light); }
.calc-val { font-weight:700; color:var(--ink); }
.calc-val.ok  { color:var(--green); }
.calc-val.bad { color:var(--red); }
.calc-verdict { text-align:center; font-size:13px; font-weight:600; margin-top:14px; padding-top:14px; border-top:1px solid var(--paper-3); }
.calc-verdict.ok  { color:var(--green); }
.calc-verdict.bad { color:var(--red); }
.calc-cta { margin-top:14px; text-align:center; }

/* ── CARDS ───────────────────────────────────────────────── */
.card { background:var(--white); border-radius:var(--radius-lg); border:1px solid var(--paper-3); box-shadow:var(--shadow-sm); }
.card-padded { padding:28px 32px; }

.feature-card {
  padding:32px 28px; border-radius:var(--radius-lg);
  background:var(--white); border:1px solid var(--paper-3);
  transition:all var(--t-base); position:relative; overflow:hidden;
}
.feature-card-accent {
  position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg, var(--gold), var(--gold-light));
  transform:scaleX(0); transform-origin:left; transition:transform var(--t-base);
}
.feature-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-md); }
.feature-card:hover .feature-card-accent { transform:scaleX(1); }
.feature-icon { font-size:28px; margin-bottom:18px; }
.feature-title { font-size:18px; font-weight:700; color:var(--ink); margin-bottom:10px; font-family:'Fraunces',serif; }
.feature-desc { font-size:14px; color:var(--ink-light); line-height:1.65; font-weight:300; }

/* ── DOC CARD ────────────────────────────────────────────── */
.doc-card {
  background:var(--white); border:1px solid var(--paper-3);
  border-radius:var(--radius-lg); padding:28px 32px;
  display:flex; align-items:flex-start; gap:20px;
  transition:all var(--t-base); cursor:pointer; position:relative; overflow:hidden;
}
.doc-card:hover { border-color:var(--gold-brd); box-shadow:var(--shadow-md); transform:translateY(-2px); }
.doc-card-icon {
  width:52px; height:52px; background:var(--paper-2);
  border-radius:var(--radius-md); display:flex; align-items:center; justify-content:center;
  font-size:24px; flex-shrink:0;
}
.doc-card-body { flex:1; }
.doc-card-title { font-family:'Fraunces',serif; font-size:17px; font-weight:600; color:var(--ink); margin-bottom:6px; }
.doc-card-desc { font-size:13px; color:var(--ink-light); line-height:1.6; margin-bottom:12px; }
.doc-card-price { display:flex; align-items:center; gap:10px; }
.doc-price-amount { font-family:'Fraunces',serif; font-size:22px; font-weight:700; color:var(--ink); }
.doc-price-note { font-size:12px; color:var(--ink-light); }
.doc-card-badge {
  position:absolute; top:16px; right:16px;
  background:var(--gold); color:var(--ink);
  font-size:10px; font-weight:700; padding:3px 10px; border-radius:var(--radius-full);
  letter-spacing:0.5px; text-transform:uppercase;
}

/* ── BLOG CARD ───────────────────────────────────────────── */
.blog-card {
  background:var(--white); border:1px solid var(--paper-3);
  border-radius:var(--radius-lg); overflow:hidden;
  transition:all var(--t-base);
}
.blog-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-md); border-color:var(--paper-3); }
.blog-card-body { padding:24px 28px 28px; }
.blog-card-meta { font-size:11px; font-weight:700; letter-spacing:0.8px; text-transform:uppercase; color:var(--gold); margin-bottom:12px; }
.blog-card-title { font-family:'Fraunces',serif; font-size:19px; font-weight:600; color:var(--ink); line-height:1.3; margin-bottom:10px; }
.blog-card-excerpt { font-size:14px; color:var(--ink-light); line-height:1.6; margin-bottom:18px; }
.blog-card-footer { display:flex; align-items:center; justify-content:space-between; }
.blog-read-time { font-size:12px; color:var(--ink-light); }

/* ── ALERT ───────────────────────────────────────────────── */
.alert {
  padding:16px 20px; border-radius:var(--radius-md);
  display:flex; gap:12px; align-items:flex-start; font-size:14px; line-height:1.6;
}
.alert-gold   { background:var(--gold-dim); border:1px solid var(--gold-brd); color:var(--ink-mid); }
.alert-red    { background:var(--red-bg); border:1px solid rgba(179,58,42,0.2); color:var(--ink-mid); }
.alert-green  { background:var(--green-bg); border:1px solid rgba(42,102,66,0.2); color:var(--ink-mid); }
.alert-icon   { font-size:18px; flex-shrink:0; margin-top:1px; }

/* ── TABLE ───────────────────────────────────────────────── */
.data-table { width:100%; border-collapse:collapse; font-size:14px; }
.data-table th {
  text-align:left; font-size:11px; font-weight:700; letter-spacing:1px;
  text-transform:uppercase; color:var(--ink-light);
  padding:12px 16px; border-bottom:2px solid var(--paper-3);
}
.data-table td { padding:13px 16px; border-bottom:1px solid var(--paper-2); }
.data-table tr:last-child td { border-bottom:none; }
.data-table tr:hover td { background:var(--paper); }
.data-table .rate-badge {
  display:inline-block; padding:3px 10px;
  border-radius:var(--radius-full); font-size:12px; font-weight:700;
  background:var(--gold-dim); color:var(--gold);
}

/* ── TABS ────────────────────────────────────────────────── */
.tab-bar { display:flex; gap:0; border-bottom:2px solid var(--paper-3); margin-bottom:28px; }
.tab-btn {
  padding:12px 20px; font-size:14px; font-weight:600; color:var(--ink-light);
  border:none; background:none; cursor:pointer; font-family:inherit;
  border-bottom:2px solid transparent; margin-bottom:-2px;
  transition:all var(--t-fast);
}
.tab-btn:hover { color:var(--ink); }
.tab-btn.active { color:var(--ink); border-bottom-color:var(--ink); }
.tab-content { display:none; }
.tab-content.active { display:block; animation:fadeIn 0.2s ease; }

/* ── GUIDES ──────────────────────────────────────────────── */
.guide-grid { display:grid; grid-template-columns:300px 1fr; gap:32px; align-items:start; }
.guide-sidebar { position:sticky; top:calc(var(--navbar-h) + 24px); }
.guide-list { background:var(--white); border:1px solid var(--paper-3); border-radius:var(--radius-lg); overflow:hidden; }
.guide-list-header { padding:20px 24px; border-bottom:1px solid var(--paper-2); }
.guide-list-header h3 { font-family:'Fraunces',serif; font-size:16px; color:var(--ink); }
.guide-item {
  display:flex; align-items:center; gap:12px;
  padding:14px 20px; cursor:pointer; transition:background var(--t-fast);
  border-left:3px solid transparent;
}
.guide-item:hover { background:var(--paper); }
.guide-item.active { background:var(--gold-dim); border-left-color:var(--gold); }
.guide-item-icon { font-size:20px; flex-shrink:0; }
.guide-item-text { font-size:13px; font-weight:600; color:var(--ink); line-height:1.3; }
.guide-item-tag {
  font-size:10px; font-weight:700; padding:2px 8px;
  border-radius:var(--radius-full); white-space:nowrap;
  background:var(--gold-dim); color:var(--gold);
}
.guide-item-tag.urgent { background:var(--red-bg); color:var(--red); }
.guide-article { display:none; }
.guide-article.show { display:block; animation:fadeUp 0.3s ease; }
.guide-article-header {
  background:var(--ink); border-radius:var(--radius-lg);
  padding:36px 40px; margin-bottom:24px; position:relative; overflow:hidden;
}
.guide-article-header::before {
  content:''; position:absolute; right:0; top:0; bottom:0; width:40%;
  background:radial-gradient(ellipse at right, rgba(196,154,40,0.1) 0%, transparent 70%);
}
.guide-article-icon { font-size:36px; margin-bottom:12px; position:relative; z-index:1; }
.guide-article-title { font-family:'Fraunces',serif; font-size:26px; color:var(--paper); margin-bottom:8px; position:relative; z-index:1; }
.guide-article-sub { font-size:15px; color:rgba(249,246,240,0.5); position:relative; z-index:1; }
.guide-law-badge {
  display:inline-flex; align-items:center; gap:6px;
  background:rgba(196,154,40,0.15); border:1px solid rgba(196,154,40,0.3);
  color:var(--gold-light); padding:4px 12px; border-radius:var(--radius-full);
  font-size:11px; font-weight:700; letter-spacing:0.3px;
}
.guide-steps { margin-top:24px; }
.guide-step {
  display:flex; gap:20px; padding:20px 0;
  border-bottom:1px solid var(--paper-2);
}
.guide-step:last-child { border-bottom:none; }
.step-circle {
  width:40px; height:40px; border-radius:50%;
  background:var(--ink); color:var(--paper);
  display:flex; align-items:center; justify-content:center;
  font-family:'Fraunces',serif; font-size:16px; font-weight:700; flex-shrink:0;
}
.step-body h4 { font-size:15px; font-weight:700; color:var(--ink); margin-bottom:6px; }
.step-body p  { font-size:14px; color:var(--ink-light); line-height:1.6; }
.guide-placeholder {
  background:var(--white); border:1px solid var(--paper-3);
  border-radius:var(--radius-lg); padding:80px 40px; text-align:center;
}
.guide-placeholder .ph-icon { font-size:52px; margin-bottom:16px; }
.guide-placeholder h3 { font-family:'Fraunces',serif; font-size:20px; color:var(--ink); margin-bottom:8px; }
.guide-placeholder p { font-size:15px; color:var(--ink-light); }

/* ── BLOG ARTICLE ────────────────────────────────────────── */
.article-hero { background:var(--ink); padding:80px 5%; }
.article-body { max-width:740px; margin:0 auto; padding:60px 5%; }
.article-body h2 { font-family:'Fraunces',serif; font-size:26px; color:var(--ink); margin:40px 0 16px; }
.article-body h3 { font-family:'Fraunces',serif; font-size:20px; color:var(--ink); margin:32px 0 12px; }
.article-body p  { font-size:16px; color:var(--ink-mid); line-height:1.8; margin-bottom:18px; }
.article-body ul { margin:16px 0 20px 20px; }
.article-body li { font-size:15px; color:var(--ink-mid); line-height:1.7; margin-bottom:8px; list-style:disc; }
.article-body strong { color:var(--ink); font-weight:700; }
.article-body blockquote {
  border-left:3px solid var(--gold); padding:16px 24px;
  background:var(--paper-2); border-radius:0 var(--radius-md) var(--radius-md) 0;
  margin:24px 0; font-style:italic; color:var(--ink-mid);
}
.article-cta {
  background:var(--ink); border-radius:var(--radius-xl); padding:40px;
  text-align:center; margin:48px 0;
}
.article-cta h3 { font-family:'Fraunces',serif; color:var(--paper); font-size:22px; margin-bottom:10px; }
.article-cta p  { color:rgba(249,246,240,0.5); margin-bottom:24px; font-size:14px; }

/* ── PRICING / BELGE ─────────────────────────────────────── */
.pricing-hero {
  background:var(--ink); padding:80px 5% 60px; text-align:center;
}
.pricing-grid {
  max-width:960px; margin:0 auto;
  display:grid; grid-template-columns:repeat(3,1fr); gap:20px;
}
.price-card {
  background:var(--white); border:2px solid var(--paper-3);
  border-radius:var(--radius-xl); padding:36px 28px; text-align:center;
  transition:all var(--t-base); position:relative;
}
.price-card:hover { border-color:var(--gold-brd); box-shadow:var(--shadow-md); transform:translateY(-3px); }
.price-card.featured { border-color:var(--gold); background:var(--ink); }
.price-card-icon { font-size:36px; margin-bottom:16px; }
.price-card-title { font-family:'Fraunces',serif; font-size:20px; color:var(--ink); margin-bottom:8px; }
.price-card.featured .price-card-title { color:var(--paper); }
.price-card-desc { font-size:14px; color:var(--ink-light); margin-bottom:20px; line-height:1.6; }
.price-card.featured .price-card-desc { color:rgba(249,246,240,0.5); }
.price-amount {
  font-family:'Fraunces',serif; font-size:48px; font-weight:900; color:var(--ink); line-height:1;
  margin-bottom:4px;
}
.price-card.featured .price-amount { color:var(--paper); }
.price-once { font-size:13px; color:var(--ink-light); margin-bottom:24px; }
.price-card.featured .price-once { color:rgba(249,246,240,0.4); }
.price-features { text-align:left; margin-bottom:28px; }
.price-features li { display:flex; gap:10px; font-size:14px; padding:8px 0; color:var(--ink-mid); }
.price-card.featured .price-features li { color:rgba(249,246,240,0.8); }
.price-features .check { color:var(--green); flex-shrink:0; }
.price-badge {
  position:absolute; top:-14px; left:50%; transform:translateX(-50%);
  background:var(--gold); color:var(--ink);
  font-size:11px; font-weight:700; padding:4px 18px; border-radius:var(--radius-full);
  letter-spacing:0.5px; text-transform:uppercase; white-space:nowrap;
}

/* ── ÖDEME MODALI ────────────────────────────────────────── */
.modal-overlay {
  position:fixed; inset:0; background:rgba(26,18,9,0.6);
  z-index:9000; display:none; align-items:center; justify-content:center;
  padding:20px; backdrop-filter:blur(4px);
}
.modal-overlay.open { display:flex; }
.modal-box {
  background:var(--white); border-radius:var(--radius-xl);
  width:100%; max-width:520px; max-height:90vh; overflow-y:auto;
  box-shadow:var(--shadow-lg); animation:modalIn 0.28s ease;
}
@keyframes modalIn { from { opacity:0; transform:scale(0.95) translateY(20px); } to { opacity:1; transform:none; } }
.modal-header { padding:28px 32px; border-bottom:1px solid var(--paper-2); }
.modal-header h3 { font-family:'Fraunces',serif; font-size:22px; color:var(--ink); }
.modal-body { padding:28px 32px; }
.modal-footer { padding:20px 32px; border-top:1px solid var(--paper-2); display:flex; gap:12px; justify-content:flex-end; }
.doc-form-group { margin-bottom:18px; }
.doc-form-label { font-size:12px; font-weight:700; color:var(--ink-light); margin-bottom:6px; display:block; text-transform:uppercase; letter-spacing:0.5px; }

/* ── PAYMENT FLOW ────────────────────────────────────────── */
.payment-step { display:none; }
.payment-step.active { display:block; }
.payment-box {
  background:var(--paper-2); border:1px solid var(--paper-3);
  border-radius:var(--radius-lg); padding:24px; margin-bottom:20px;
}
.payment-box h4 { font-family:'Fraunces',serif; font-size:16px; margin-bottom:12px; color:var(--ink); }
.payment-provider-btns { display:flex; flex-direction:column; gap:10px; }
.payment-provider-btn {
  display:flex; align-items:center; gap:14px;
  padding:16px 20px; border:2px solid var(--paper-3);
  border-radius:var(--radius-md); cursor:pointer; background:var(--white);
  transition:all var(--t-fast); font-size:14px; font-weight:600; color:var(--ink);
}
.payment-provider-btn:hover { border-color:var(--gold-brd); background:var(--gold-dim); }
.payment-provider-btn .prov-icon { font-size:22px; }
.payment-provider-btn .prov-name { flex:1; text-align:left; }
.payment-provider-btn .prov-badge { font-size:11px; color:var(--ink-light); }

/* ── FOOTER ──────────────────────────────────────────────── */
.footer { background:var(--ink); padding:72px 5% 40px; }
.footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:48px; margin-bottom:56px; }
.footer-brand p { font-size:13px; color:rgba(249,246,240,0.55); margin-top:14px; line-height:1.6; max-width:220px; font-weight:300; }
.footer-col h5 { font-size:11px; font-weight:700; letter-spacing:1.8px; text-transform:uppercase; color:var(--gold); margin-bottom:18px; }
.footer-col a { display:block; font-size:13px; color:rgba(249,246,240,0.65); margin-bottom:10px; transition:color var(--t-fast); font-weight:400; }
.footer-col a:hover { color:#fff; }
.footer-bottom { border-top:1px solid rgba(249,246,240,0.1); padding-top:28px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px; }
.footer-copy { font-size:12px; color:rgba(249,246,240,0.45); }
.footer-legal { font-size:11px; color:rgba(249,246,240,0.35); max-width:440px; text-align:right; line-height:1.5; }

/* ── AD ZONES ────────────────────────────────────────────── */
.ad-zone {
  background:rgba(26,18,9,0.03); border:1px dashed var(--paper-3);
  border-radius:var(--radius-md); display:flex; align-items:center; justify-content:center;
  color:var(--paper-3); font-size:11px; letter-spacing:0.8px; text-transform:uppercase;
  min-height:90px; overflow:hidden;
}
.ad-zone-banner { min-height:90px; }
.ad-zone-rect   { min-height:280px; }

/* ── COOKIE BANNER ───────────────────────────────────────── */
.cookie-banner {
  position:fixed; bottom:0; left:0; right:0;
  background:var(--ink); border-top:3px solid var(--gold);
  padding:16px 5%; z-index:8000;
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
  transform:translateY(100%); transition:transform 0.4s ease;
}
.cookie-banner.show { transform:translateY(0); }
.cookie-banner p { font-size:13px; color:rgba(249,246,240,0.65); max-width:680px; line-height:1.5; }
.cookie-banner a { color:var(--gold); text-decoration:underline; }
.cookie-btns { display:flex; gap:10px; flex-shrink:0; }

/* ── ANIMATIONS ──────────────────────────────────────────── */
@keyframes fadeUp { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:none; } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }

.reveal { opacity:0; transform:translateY(20px); transition:opacity 0.6s ease, transform 0.6s ease; }
.reveal.visible { opacity:1; transform:none; }
.reveal-delay-1 { transition-delay:0.1s; }
.reveal-delay-2 { transition-delay:0.2s; }
.reveal-delay-3 { transition-delay:0.3s; }

/* ── TOAST ───────────────────────────────────────────────── */
#toastContainer { position:fixed; bottom:28px; right:28px; z-index:9999; display:flex; flex-direction:column; gap:10px; }
.toast {
  padding:14px 20px; border-radius:var(--radius-md);
  font-size:14px; font-weight:500; box-shadow:var(--shadow-md);
  display:flex; align-items:center; gap:10px; max-width:340px; line-height:1.4;
  animation:fadeUp 0.3s ease;
}
.toast-success { background:var(--green); color:white; }
.toast-danger  { background:var(--red); color:white; }
.toast-info    { background:var(--ink); color:var(--paper); }

/* ── UTILS ───────────────────────────────────────────────── */
.flex { display:flex; }
.flex-center { display:flex; align-items:center; justify-content:center; }
.gap-8  { gap:8px; }
.gap-12 { gap:12px; }
.gap-16 { gap:16px; }
.gap-24 { gap:24px; }
.mt-12  { margin-top:12px; }
.mt-16  { margin-top:16px; }
.mt-24  { margin-top:24px; }
.mt-32  { margin-top:32px; }
.mb-8   { margin-bottom:8px; }
.mb-16  { margin-bottom:16px; }
.mb-24  { margin-bottom:24px; }
.text-center { text-align:center; }
.text-muted  { color:var(--ink-light); }

/* ── RESPONSIVE ──────────────────────────────────────────── */
@media (max-width:1024px) {
  .hero-inner { grid-template-columns:1fr; gap:48px; }
  .guide-grid { grid-template-columns:1fr; }
  .guide-sidebar { position:static; }
  .pricing-grid { grid-template-columns:1fr 1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:768px) {
  :root { --navbar-h:58px; }
  .nav-links { display:none; }
  .nav-actions .btn-primary { display:none; }
  .hamburger { display:flex; }
  .section { padding:72px 5%; }
  .hero-inner { padding:60px 5%; }
  .footer-grid { grid-template-columns:1fr; gap:32px; }
  .footer-legal { text-align:left; }
  .footer-bottom { flex-direction:column; align-items:flex-start; }
}

@media (max-width:640px) {
  .pricing-grid { grid-template-columns:1fr; max-width:380px; margin:0 auto; }
  .hero-stats { gap:20px; flex-wrap:wrap; }
  .hero-cta-row .btn-lg { width:100%; }
  .guide-grid { grid-template-columns:1fr; }
  .modal-box { max-height:85vh; }
  .modal-header, .modal-body, .modal-footer { padding-left:20px; padding-right:20px; }
  .cookie-banner { flex-direction:column; }
  .cookie-btns { width:100%; }
  .cookie-btns .btn { flex:1; }
}
