/* ==========================================================================
   Pasaport.com.tr — Public frontend tasarım sistemi
   Faz F (Frontend Redesign). Framework yok, build adımı yok — tek dosya,
   düz CSS. Sadece görünüm katmanı; backend/URL/SEO mantığına dokunmaz.
   ========================================================================== */

:root{
  color-scheme: light;
  --navy-900:#0b1220;
  --navy-800:#0f172a;
  --navy-700:#152238;
  --navy-600:#1e2f4d;
  --accent:#2563eb;
  --accent-600:#1d4ed8;
  --accent-soft:#eef2ff;
  --teal:#0ea5b7;
  --teal-soft:#e6fbfa;
  --surface:#ffffff;
  --surface-alt:#f7f9fc;
  --surface-muted:#f1f5f9;
  --border:#e6e9ef;
  --border-strong:#d7dce4;
  --text:#1c2434;
  --text-muted:#5b6472;
  --text-faint:#8892a0;
  --success:#0f9d63;
  --warn-bg:#fef3c7;
  --warn-text:#92400e;
  --radius-lg:18px;
  --radius-md:12px;
  --radius-sm:8px;
  --shadow-sm:0 1px 2px rgba(15,23,42,.06);
  --shadow-md:0 8px 24px rgba(15,23,42,.08);
  --shadow-lg:0 20px 48px rgba(15,23,42,.14);
  --container:1180px;
}

/* ---------- reset / base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--text);
  background:var(--surface);
  line-height:1.6;
  font-size:16px;
}
img{max-width:100%}
a{color:var(--accent-600)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{
  outline:3px solid #93c5fd;outline-offset:2px;border-radius:4px;
}
.container{max-width:var(--container);margin:0 auto;padding:0 20px}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;padding:0;margin:-1px}
.skip-link{position:absolute;left:-999px;top:auto;background:var(--navy-800);color:#fff;padding:10px 16px;border-radius:0 0 8px 0;z-index:200}
.skip-link:focus{left:0;top:0}

/* ---------- dev banner ---------- */
.dev-banner{background:var(--warn-bg);color:var(--warn-text);text-align:center;padding:7px 12px;font-size:.8rem;font-weight:600;letter-spacing:.01em}

/* ==========================================================================
   HEADER
   ========================================================================== */
header.site-header{
  background:linear-gradient(180deg,var(--navy-800) 0%,var(--navy-700) 100%);
  color:#fff;
  position:sticky;top:0;z-index:100;
  box-shadow:0 1px 0 rgba(255,255,255,.06);
}
.site-header-inner{display:flex;align-items:center;gap:20px;padding:12px 0;min-height:60px}
a.brand{color:#fff;text-decoration:none;font-weight:800;font-size:1.15rem;letter-spacing:-.01em;display:flex;align-items:center;gap:8px;white-space:nowrap}
a.brand img{height:30px;width:auto;display:block;border-radius:6px}
/* Faz F2 (madde 6) - düz wordmark: gerçek logo asseti yokken kullanılan
   varsayılan marka gösterimi. Harici font/görsel YOK - salt CSS. */
a.brand .brand-word{display:inline-flex;align-items:baseline;font-size:1.22rem;letter-spacing:-.02em}
a.brand .brand-word-main{color:#fff;font-weight:800}
a.brand .brand-word-tld{color:var(--teal);font-weight:700;opacity:.92}

nav.main-nav{display:flex;align-items:center;gap:4px;flex:1;min-width:0}
nav.main-nav a{
  color:#dbe4f5;text-decoration:none;font-size:.92rem;font-weight:600;
  padding:8px 12px;border-radius:8px;white-space:nowrap;
}
nav.main-nav a:hover{background:rgba(255,255,255,.08);color:#fff}

.header-search{position:relative;width:260px;flex:none}
/* FINAL FRONTEND IMPLEMENTATION §14 - 1024px genişlikte header (logo + 7 nav
   linki + arama kutusu) container'dan taşıyordu (yatay overflow). Nav
   flex-shrink edebilsin diye min-width:0 (yukarıda) + bu ara kırılım
   noktasında daha kompakt nav/search boyutu. */
@media (max-width:1180px) and (min-width:961px){
  nav.main-nav{gap:0}
  nav.main-nav a{padding:8px 8px;font-size:.86rem}
  .header-search{width:170px}
}
.header-search input{
  width:100%;padding:9px 12px 9px 36px;border-radius:999px;border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);color:#fff;font-size:.88rem;
}
.header-search input::placeholder{color:#a8b4c7}
.header-search input:focus{background:rgba(255,255,255,.14)}
.header-search .hs-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);opacity:.75;pointer-events:none}
.header-search .hs-icon svg{width:15px;height:15px;display:block}

.site-search-results{
  display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;color:var(--text);
  border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden;z-index:150;border:1px solid var(--border);
}
.site-search-results.open{display:block}
.site-search-results a{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 14px;font-size:.87rem;color:var(--text);text-decoration:none;border-bottom:1px solid var(--surface-muted)}
.site-search-results a:last-child{border-bottom:none}
.site-search-results a:hover{background:var(--accent-soft)}
.site-search-results .ssr-type{font-size:.68rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.03em;flex:none}

.header-burger{display:none;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);width:40px;height:40px;border-radius:10px;color:#fff;align-items:center;justify-content:center;cursor:pointer;flex:none}
.header-burger svg{width:20px;height:20px}

.mobile-menu{display:none}

@media (max-width:960px){
  nav.main-nav{display:none}
  .header-search{display:none}
  .header-burger{display:flex}
  .site-header-inner{justify-content:space-between}
  .mobile-menu{
    display:none;background:var(--navy-800);border-top:1px solid rgba(255,255,255,.1);
  }
  .mobile-menu.open{display:block}
  /* Faz F2 (madde 5) - önceki tek sütun liste + tam boy arama neredeyse tüm
     ekranı kaplıyordu. Artık: 2 sütunlu kompakt link ızgarası + daha küçük
     arama kutusu + maksimum yükseklik/scroll (uzun menü ekranı domine etmesin). */
  .mobile-menu .container{padding:12px 20px 16px;display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 60px);overflow-y:auto}
  .mobile-menu nav.mobile-menu-links{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px}
  .mobile-menu a{color:#e6ebf5;text-decoration:none;padding:9px 6px;border-radius:8px;font-weight:600;font-size:.88rem;border-bottom:1px solid rgba(255,255,255,.06)}
  .mobile-menu a:last-child{border-bottom:none}
  .mobile-menu form{margin:0 0 4px}
  .mobile-menu input[type=text]{width:100%;padding:9px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;font-size:.88rem}
  .mobile-menu input::placeholder{color:#a8b4c7}
}

/* ==========================================================================
   BREADCRUMB
   ========================================================================== */
nav.breadcrumb{font-size:.82rem;color:var(--text-faint);margin:16px 0;overflow-x:auto;white-space:nowrap}
nav.breadcrumb a{color:var(--text-faint);text-decoration:none}
nav.breadcrumb a:hover{color:var(--accent-600);text-decoration:underline}

main{padding:0 0 60px}

/* ==========================================================================
   HERO (homepage) — Faz F2 (madde 2): panoramik destinasyon görseli + kontrollü
   koyu overlay. Görsel, LocalIllustration::home() üzerinden inline
   background-image olarak home.php'den verilir (gerçek bir foto değil, salt
   local SVG illüstrasyon - bkz madde 1 / final rapor).
   ========================================================================== */
.hero{
  background-size:cover;background-position:center 60%;background-repeat:no-repeat;
  color:#fff;padding:88px 0 96px;position:relative;overflow:hidden;
}
.hero::before{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(180deg, rgba(6,12,24,.18) 0%, rgba(6,12,24,.34) 55%, rgba(6,12,24,.62) 100%),
    radial-gradient(900px 460px at 8% 15%, rgba(6,12,24,.14), transparent 60%);
  pointer-events:none;
  /* F3 VISUAL POLISH §1 - Amalfi Sahili fotoğrafı zaten doğal olarak parlak/
     canlı; gradyan sadece metnin okunurluğu için alt kısımda hafif koyulaşır,
     üst yarı neredeyse çıplak fotoğraf olarak kalır ("seyahat/destinasyon"
     hissi). backdrop-filter hafif tutuldu (fazla parlak foto için aşırı
     pozlamayı önlemek üzere). */
  backdrop-filter:saturate(1.12) brightness(1.02);
  -webkit-backdrop-filter:saturate(1.12) brightness(1.02);
}
.hero::after{
  content:"";position:absolute;inset:0;
  background-image:radial-gradient(rgba(255,255,255,.08) 1px, transparent 1px);
  background-size:22px 22px;opacity:.25;pointer-events:none;
}
.hero-inner{position:relative;max-width:640px}
.hero-kicker{margin:0 0 10px;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe;text-shadow:0 1px 8px rgba(0,0,0,.3)}
.hero h1{font-size:3.1rem;line-height:1.12;margin:0 0 14px;font-weight:800;letter-spacing:-.02em;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.hero p.hero-sub{font-size:1.1rem;color:#e7ecf3;margin:0 0 26px;max-width:520px;text-shadow:0 1px 10px rgba(0,0,0,.3)}
.hero-search{background:#fff;border-radius:16px;padding:8px;display:flex;gap:8px;box-shadow:var(--shadow-lg);max-width:520px}
.hero-search input{flex:1;border:none;padding:15px 16px;font-size:1.02rem;border-radius:10px;color:var(--text)}
.hero-search input:focus{outline:none;background:var(--surface-alt)}
.hero-search button{
  background:linear-gradient(135deg,var(--accent) 0%,var(--accent-600) 100%);color:#fff;border:none;
  padding:0 26px;border-radius:10px;font-weight:700;font-size:1rem;cursor:pointer;
}
.hero-search button:hover{filter:brightness(1.06)}
.hero-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px}
.hero-chips-label{font-size:.78rem;color:#cbd5e1;margin-right:2px}
.hero-chips a{
  color:#f1f5f9;text-decoration:none;font-size:.85rem;background:rgba(255,255,255,.14);
  backdrop-filter:blur(2px);
  border:1px solid rgba(255,255,255,.22);padding:7px 14px;border-radius:999px;font-weight:600;
}
.hero-chips a:hover{background:rgba(255,255,255,.24);color:#fff}

@media (max-width:640px){
  .hero{padding:34px 0 40px;background-position:center 68%}
  .hero h1{font-size:1.66rem;margin-bottom:10px}
  .hero p.hero-sub{font-size:.96rem;margin-bottom:18px}
  .hero-search{flex-direction:column;background:#fff;border-radius:14px}
  .hero-search input{padding:13px 14px}
  .hero-search button{padding:13px;border-radius:10px}
  .hero-chips{display:none} /* Faz F2 (madde 5) - mobil ilk viewport'ta marka+görsel+başlık+arama önceliklidir */
}

/* ==========================================================================
   SECTIONS / HEADINGS
   ========================================================================== */
.section{padding:44px 0}
/* F3 VISUAL POLISH §2 - Şehirler → Öne Çıkan İçerikler arası dikey boşluk
   referansa göre fazlaydı; üst/alt dolgu hafifçe azaltıldı (yalnız bu ülke
   sayfası bölümleri section-tight kullanıyor - diğer section'lar etkilenmez). */
.section-tight{padding:22px 0}
.section-alt{background:var(--surface-alt)}
.panel-alt{background:var(--surface-alt);border-radius:var(--radius-lg);padding:32px}
@media (max-width:640px){
  .panel-alt{padding:18px;border-radius:var(--radius-md)}
}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.section-head h2{margin:0 0 4px;font-size:1.5rem;letter-spacing:-.01em}
.section-head p{margin:0;color:var(--text-muted);font-size:.95rem}
.section-head .section-link{font-size:.86rem;font-weight:700;text-decoration:none;color:var(--accent-600);white-space:nowrap}
.section-head .section-link:hover{text-decoration:underline}

h1{font-size:1.9rem;line-height:1.22;margin:0 0 10px;letter-spacing:-.01em}
h2{font-size:1.4rem;letter-spacing:-.005em}

/* ==========================================================================
   CATEGORY GRID (homepage §5)
   ========================================================================== */
.category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
/* F3 VISUAL POLISH §1 - 1440px desktop'ta 7 kategori kartının TAMAMI tek
   satırda (referans yoğunluğu); 190px min-width'te auto-fit 1180px container
   içinde ancak 5-6 kolona sığıyordu. */
@media (min-width:1060px){
  .category-grid{grid-template-columns:repeat(7,1fr);gap:10px}
}
.category-tile{
  display:flex;flex-direction:column;gap:10px;padding:20px 18px;border-radius:var(--radius-md);
  border:1px solid var(--border);background:var(--surface);text-decoration:none;color:var(--text);
  transition:box-shadow .15s ease, transform .15s ease, border-color .15s ease;
}
@media (min-width:1060px){
  .category-tile{padding:15px 12px;gap:8px}
  .category-tile .cat-icon{width:36px;height:36px}
  .category-tile .cat-icon svg{width:19px;height:19px}
  .category-tile h3{font-size:.88rem;line-height:1.2}
  .category-tile p{font-size:.74rem;line-height:1.35}
}
.category-tile:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)}
/* Faz F2 (madde 7) - her kategori kendi --cat-color'ını taşır (bkz home.php);
   tekdüze mavi yerine ayırt edici renk + o rengin %12 opaklıklı zemini. */
.category-tile .cat-icon{
  width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;
  background:color-mix(in srgb, var(--cat-color, var(--accent)) 14%, #fff);
  color:var(--cat-color, var(--accent-600));flex:none;
}
.category-tile .cat-icon svg{width:22px;height:22px}
.category-tile h3{margin:0;font-size:1rem}
.category-tile p{margin:0;font-size:.83rem;color:var(--text-muted);line-height:1.45}

/* ==========================================================================
   CARDS (genel — ülke / editöryel / arama)
   ========================================================================== */
/* F3 VISUAL POLISH §1/§2 - auto-fill yerine auto-fit: az sayıda gerçek kart
   varken (ör. Öne Çıkan Rehberler/Son İçerikler'de 3-4 kart) kullanılmayan
   grid track'leri artık 0 genişliğe çöküyor, kartlar mevcut alanı dolduruyor
   ("3 küçük kart + büyük sağ boşluk" görünümü ortadan kalkıyor). */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;margin:20px 0}
.card-grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}

/* F3 VISUAL POLISH §2 - Almanya "Konu Başlıkları": gerçek DB'de 5 kart var,
   auto-fit 250px min ile 4+1 (yalnız kart) bırakıyordu. Sabit 3 kolon ile
   referansın önerdiği dengeli "3+2" dizilim (boş hücre kalmıyor, tek kart
   yalnız kalmıyor). */
.topics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:20px 0}
@media (max-width:900px){.topics-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.topics-grid{grid-template-columns:1fr}}

/* F3 VISUAL POLISH §2 - Şehirler: Almanya için DB'de gerçekten SADECE Berlin
   var (sahte şehir eklenmedi). Tek kart genel auto-fit grid'de küçük kalıp
   sağında/altında büyük boşluk bırakıyordu; tek şehir olduğunda kartı yatay
   "öne çıkan" bloğa çevirip country-split-main kolonunun tam genişliğine
   yayarak referanstaki görsel dengeyi (Berlin kartı ↔ Almanya bilgi paneli)
   gerçek veriyle sağlıyoruz - sahte kart/şehir YOK, sadece sunum. */
.city-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:20px 0}
.city-grid .ed-card:only-child{grid-column:1/-1;display:grid;grid-template-columns:240px 1fr}
.city-grid .ed-card:only-child .ed-media{aspect-ratio:auto;height:100%}
.city-grid .ed-card:only-child .ed-body{justify-content:center;padding:22px 26px;gap:6px}
.city-grid .ed-card:only-child h3{font-size:1.2rem}
@media (max-width:640px){
  .city-grid .ed-card:only-child{grid-template-columns:1fr}
  .city-grid .ed-card:only-child .ed-media{aspect-ratio:16/9;height:auto}
}

.ed-card{
  display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-md);
  overflow:hidden;text-decoration:none;color:inherit;background:var(--surface);
  transition:box-shadow .15s ease, transform .15s ease;
}
.ed-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.ed-card .ed-media{
  aspect-ratio:16/9;width:100%;display:block;overflow:hidden;background:var(--surface-muted);position:relative;
}
.ed-card .ed-media img{width:100%;height:100%;object-fit:cover;display:block}
.ed-card .ed-media.ed-media--ph{
  display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:1.6rem;letter-spacing:-.02em;
}
.ed-card .ed-body{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1}
.ed-tag{
  display:inline-flex;align-self:flex-start;align-items:center;font-size:.68rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.04em;color:var(--accent-600);background:var(--accent-soft);
  padding:3px 9px;border-radius:999px;
}
.ed-card h3{margin:0;font-size:1.02rem;line-height:1.35}
.ed-card p{margin:0;font-size:.86rem;color:var(--text-muted);line-height:1.5}
.ed-meta{margin-top:auto;padding-top:6px;font-size:.76rem;color:var(--text-faint);display:flex;gap:10px;align-items:center}

/* ==========================================================================
   ANA SAYFA TİCARİ KEŞİF BÖLÜMLERİ (life_abroad_paths / study_work_paths /
   investment_residency / pretravel_services) — kullanıcının verdiği referans
   ekran görüntüsüne göre. YENİ bir tasarım sistemi/renk paleti DEĞİL: aynı
   --accent/--radius/--shadow/--surface token'ları, aynı .section-head/
   .section-link deseni. pretravel_services zaten var olan .category-tile
   bileşenini AYNEN kullanıyor (aşağıda sadece o karta CTA satırı ekleniyor).
   ========================================================================== */

/* Bölüm zemin vurgusu (study_work_paths) - referans görseldeki hafif mavi
   zemin. Yeni bir renk DEĞİL, zaten var olan --accent-soft token'ı (aynı ton
   .ed-tag rozetlerinde de kullanılıyor). */
.section-tint{background:var(--accent-soft);border-radius:var(--radius-lg);padding:32px}
@media (max-width:640px){.section-tint{padding:18px;border-radius:var(--radius-md)}}

/* Kart ızgarası - sabit kolon sayısı yerine auto-fit: gerçek öğe sayısı kaç
   olursa olsun (2, 3, 4 veya 5) kartlar mevcut alanı orantılı doldurur,
   minmax değeri hedef kolon sayısını (referans görsele göre) belirler. */
.disc-grid{display:grid;gap:18px;margin:20px 0}
.disc-grid--5{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.disc-grid--4{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.disc-grid--3{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}

/* life_abroad_paths'te mobilde YATAY KAYDIRMA (spec: "ekranda ~1.15 kart
   görünsün") - diğer 3 bölüm mobilde normal grid olarak kalıyor (2x2 / tek
   sütun), sadece bu bölüm scroll-snap kullanıyor. */
@media (max-width:760px){
  .disc-grid--scroll-mobile{
    display:flex;flex-wrap:nowrap;overflow-x:auto;gap:14px;margin:20px -20px;padding:0 20px 6px;
    scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;
  }
  .disc-grid--scroll-mobile .disc-card{flex:0 0 78%;scroll-snap-align:start}
  .disc-grid--4{grid-template-columns:repeat(2,1fr)}
}

.disc-card{
  display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-md);
  overflow:hidden;text-decoration:none;color:inherit;background:var(--surface);
  transition:box-shadow .15s ease, transform .15s ease;
}
.disc-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.disc-card-media{aspect-ratio:4/3;width:100%;display:block;overflow:hidden;background:var(--surface-muted)}
.disc-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.disc-card-media--ph{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:1.6rem;letter-spacing:-.02em}
.disc-card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.disc-card-head{display:flex;align-items:center;gap:8px}
.disc-card-flag{font-size:1.2rem;line-height:1}
.disc-card-body h3{margin:0;font-size:1rem;font-weight:700;line-height:1.3;color:var(--text)}
.disc-card-body p{margin:0;font-size:.83rem;color:var(--text-muted);line-height:1.45}
.disc-cta{margin-top:auto;padding-top:6px;font-size:.83rem;font-weight:700;color:var(--accent-600)}

/* investment_residency - "büyük kart" varyantı (spec: max 3 desktop, tek
   sütun mobil - .disc-grid--3 zaten mobilde tek sütuna düşüyor çünkü 320px
   minmax bir telefon genişliğinde tek kolona sığar, ek media query
   gerekmiyor). */
.disc-card--lg .disc-card-media{aspect-ratio:16/10}
.disc-card--lg .disc-card-body{padding:20px 22px 22px;gap:8px}
.disc-card--lg h3{font-size:1.2rem}
.disc-card--lg p{font-size:.88rem}

/* pretravel_services - .category-tile'ı AYNEN kullanıyor (bkz home.php),
   sadece "Keşfet →" satırı için tek bir yeni kural. */
.category-tile .tile-cta{margin-top:2px;font-size:.8rem;font-weight:700;color:var(--accent-600)}

/* placeholder gradient tiles (görsel yoksa) — entity_type bazlı renkler */
.ph-country{background:linear-gradient(135deg,#1e3a8a,#0ea5b7)}
.ph-city{background:linear-gradient(135deg,#0f766e,#2563eb)}
.ph-landing_page{background:linear-gradient(135deg,#4338ca,#7c3aed)}
.ph-content_item{background:linear-gradient(135deg,#0369a1,#0891b2)}
.ph-default{background:linear-gradient(135deg,#334155,#1e293b)}

/* Ülke kartı — Faz F2 (madde 2): artık fotoğrafik (local illüstrasyon) üst
   görsel + alt bilgi bloğu (önceden salt metin/bayrak kartıydı). */
.country-card{
  display:flex;flex-direction:column;border:1px solid var(--border);overflow:hidden;
  border-radius:var(--radius-md);background:var(--surface);transition:box-shadow .15s ease, transform .15s ease;
}
.country-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.country-card .cc-media{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--surface-muted)}
.country-card .cc-media img{width:100%;height:100%;object-fit:cover;display:block}
.country-card .cc-body{display:flex;flex-direction:column;gap:10px;padding:16px 18px}
.country-card .cc-head{display:flex;align-items:center;gap:10px}
.country-card .cc-flag{font-size:1.7rem;line-height:1}
.country-card h3{margin:0;font-size:1.05rem}
.country-card p{margin:0;font-size:.84rem;color:var(--text-muted);line-height:1.5}
.country-card .cc-topics{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.country-card .cc-topics a{
  font-size:.78rem;color:var(--accent-600);background:var(--accent-soft);text-decoration:none;
  padding:4px 10px;border-radius:999px;font-weight:600;
}
.country-card .cc-topics a:hover{background:#dbe4fe}
.country-card .cc-cta{margin-top:auto;font-size:.85rem;font-weight:700;color:var(--accent-600);text-decoration:none}
.country-card .cc-cta:hover{text-decoration:underline}

/* F3 VISUAL POLISH §1 - "Popüler Ülkeler": 3x2 büyük katalog yerine kompakt
   yatay vitrin - 6 ülke aynı satırda/çok yakın yoğunlukta, kart = görsel +
   bayrak/isim + az sayıda kısa konu linki + CTA (uzun açıklama paragrafı
   masaüstünde gizli, siteyi sitemap gibi göstermemek için pill sayısı 2'ye
   indirildi - bkz home.php). */
@media (min-width:900px){
  .country-card-grid{gap:12px}
  .country-card-grid .cc-media{aspect-ratio:1/1}
  .country-card-grid .cc-body{padding:12px 12px;gap:7px}
  .country-card-grid p{display:none}
  .country-card-grid .cc-flag{font-size:1.25rem}
  .country-card-grid h3{font-size:.9rem}
  .country-card-grid .cc-topics{gap:5px;flex-wrap:wrap}
  .country-card-grid .cc-topics a{font-size:.7rem;padding:3px 9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}
  .country-card-grid .cc-cta{font-size:.76rem}
}
@media (min-width:900px) and (max-width:1159px){
  .country-card-grid{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:1160px){
  .country-card-grid{grid-template-columns:repeat(6,1fr)}
}

/* Basit kart (city listesi, vs — geriye dönük uyum) */
.card{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;text-decoration:none;color:inherit;display:block;background:var(--surface);transition:box-shadow .15s ease}
.card:hover{box-shadow:var(--shadow-md)}
.card .card-body{padding:14px}
.card h3{font-size:1rem;margin:0 0 4px}
.card p{font-size:.85rem;color:var(--text-muted);margin:0}

/* ==========================================================================
   COUNTRY / CITY HUB — Faz F2 (madde 3): "veri tablosu" hissi yerine
   destinasyon görselli, dergi tarzı hero.
   ========================================================================== */
.entity-hero{
  background:linear-gradient(160deg,var(--navy-800),var(--navy-600));color:#fff;
  padding:40px 28px;margin:0 0 24px;border-radius:var(--radius-lg);position:relative;overflow:hidden;
}
.entity-hero.entity-hero--photo{
  background-size:cover;background-position:center 55%;padding:56px 28px 44px;
}
.entity-hero.entity-hero--photo::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(8,14,26,.5) 0%, rgba(8,14,26,.72) 70%, rgba(8,14,26,.85) 100%);
  pointer-events:none;
}
.entity-hero-inner{max-width:100%;position:relative}
.entity-hero h1{color:#fff;margin-bottom:8px;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.entity-hero .entity-hero-desc{color:#e2e8f0;max-width:680px;margin:0;font-size:1.02rem;text-shadow:0 1px 8px rgba(0,0,0,.25)}
.entity-hero-kicker{
  display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.04em;color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24);
  padding:5px 12px 5px 8px;border-radius:999px;margin-bottom:14px;
}
.entity-hero-kicker .cc-flag{font-size:1.1rem;line-height:1}
.entity-hero-image{margin-top:20px}
.entity-hero-image img{width:100%;height:auto;display:block;border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}
.entity-body{margin-top:0}
@media (max-width:640px){
  .entity-hero{padding:24px 18px;border-radius:var(--radius-md)}
  .entity-hero.entity-hero--photo{padding:34px 18px 28px}
  /* F3 VISUAL POLISH §5 - 390px'te kicker/h1/açıklama/quick-nav arasına
     nefes payı: metin+chip yoğunluğu artık tek bir sıkışık blok gibi değil,
     okunabilir ayrı katmanlar halinde. */
  .entity-hero-kicker{margin-bottom:12px}
  .entity-hero .entity-hero-desc{margin-top:2px;font-size:.96rem;line-height:1.5}
  .quick-nav{margin-top:16px;gap:7px}
  .quick-nav a{font-size:.8rem;padding:6px 12px}
}

/* Hızlı Bilgiler — kompakt yatay şerit (önceki geniş kart/tablo hissi yerine) */
.facts-strip{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);
  padding:16px 18px;box-shadow:var(--shadow-sm);margin:-30px 0 30px;position:relative;
}
.facts-strip h2{margin:0 0 12px;font-size:1rem}
.facts-strip-row{
  display:flex;gap:0;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin;
  /* Faz F2 (madde 3, round 2 düzeltme) - içerik taşarsa (ör. uzun saat dilimi
     notu) sağ kenarda kaydırma ipucu olarak yumuşak bir solma efekti */
  mask-image:linear-gradient(90deg, #000 calc(100% - 28px), transparent 100%);
  -webkit-mask-image:linear-gradient(90deg, #000 calc(100% - 28px), transparent 100%);
}
.facts-strip-row .fact{
  display:flex;flex-direction:column;gap:2px;flex:none;padding:0 18px;border-right:1px solid var(--border);white-space:nowrap;
}
.facts-strip-row .fact:first-child{padding-left:0}
.facts-strip-row .fact:last-child{border-right:none}
.facts-strip-row .fact-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);font-weight:700}
.facts-strip-row .fact-value{font-size:.92rem;font-weight:600;color:var(--text)}
@media (max-width:640px){
  .facts-strip{margin-top:0}
  /* F3 VISUAL POLISH §5 - referans mobil ekranda (04_pasaport_mobile_reference,
     "Almanya Ülke Sayfası") "Hızlı Bilgiler" sıkışık yatay kaydırma şeridi
     DEĞİL, tek sütunlu, her satırı ince bir çizgiyle ayrılmış okunabilir bir
     liste (etiket solda, değer sağda hizalı). Aynı gerçek veri, sadece sunum -
     ülke açıklamasıyla "tek uzun blok" hissi kalmıyor. */
  .facts-strip-row{
    display:flex;flex-direction:column;gap:0;overflow-x:visible;
    mask-image:none;-webkit-mask-image:none;
  }
  .facts-strip-row .fact{
    flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px;
    padding:10px 0;border-right:none;border-bottom:1px solid var(--border);white-space:normal;
  }
  .facts-strip-row .fact:first-child{padding-top:0}
  .facts-strip-row .fact:last-child{border-bottom:none;padding-bottom:0}
}

.quick-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.quick-nav a{
  font-size:.85rem;font-weight:600;color:#e6ebf5;background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);padding:7px 14px;border-radius:999px;text-decoration:none;
}
.quick-nav a:hover{background:rgba(255,255,255,.16);color:#fff}

/* Faz F2 (madde 3) - .facts-card/.facts-grid Faz F2'de .facts-strip/.facts-strip-row
   ile değiştirildi (bkz COUNTRY/CITY HUB bloğu yukarıda); eski sınıflar artık
   hiçbir view'da kullanılmıyor, ölü CSS olarak burada bırakılmadı. */
.verified-note{font-size:.78rem;color:var(--text-faint);margin-top:12px;border-top:1px solid var(--border);padding-top:10px}

/* ==========================================================================
   ARTICLE / LANDING PAGE LAYOUT (§10)
   ========================================================================== */
.article-shell{margin-top:26px}
.article-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;align-items:start}
@media (max-width:960px){
  .article-grid{grid-template-columns:1fr}
}

article.entity-article{max-width:800px}
.article-header{margin-bottom:20px}
.article-kicker{display:flex;gap:8px;align-items:center;margin-bottom:10px;flex-wrap:wrap}
/* Faz F2 (madde 4) - PRIMARY referans (Almanya Vize Rehberi): ülke bayrağı/adı rozeti */
.article-kicker .article-country-tag{background:var(--navy-800);color:#fff}
.article-kicker .article-country-tag span{margin-right:2px}
.article-excerpt{font-size:1.08rem;color:var(--text-muted);margin:6px 0 0;line-height:1.6}
.article-meta-row{display:flex;gap:16px;flex-wrap:wrap;font-size:.82rem;color:var(--text-faint);margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.article-meta-row span{display:inline-flex;align-items:center;gap:5px}

.entity-image{width:100%;height:auto;display:block;border-radius:var(--radius-md);background:var(--surface-muted);margin:18px 0}

/* içerik gövdesi tipografisi */
.content-body{font-size:1.05rem;line-height:1.72;color:var(--text)}
.content-body h2{margin:34px 0 14px;font-size:1.36rem;letter-spacing:-.005em;scroll-margin-top:90px}
.content-body h3{margin:26px 0 10px;font-size:1.12rem;scroll-margin-top:90px}
.content-body p{margin:0 0 16px}
.content-body ul,.content-body ol{margin:0 0 16px;padding-left:1.35em}
.content-body li{margin-bottom:6px}
.content-body a{text-decoration-thickness:1px;text-underline-offset:2px}
.content-body blockquote{
  margin:20px 0;padding:14px 18px;border-left:3px solid var(--accent);background:var(--accent-soft);
  border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--navy-800);
}
.content-body table{width:100%;border-collapse:collapse;margin:18px 0;font-size:.94rem;display:block;overflow-x:auto}
.content-body th,.content-body td{border:1px solid var(--border);padding:9px 12px;text-align:left}
.content-body th{background:var(--surface-alt);font-weight:700}
.content-body img{max-width:100%;height:auto;border-radius:var(--radius-sm)}
.content-body figure{margin:22px 0}
.content-body figcaption{font-size:.82rem;color:var(--text-faint);text-align:center;margin-top:6px}
.content-body hr{border:none;border-top:1px solid var(--border);margin:28px 0}
/* callout kutuları — mevcut RTE içeriğinde sınıf varsa süslenir, yoksa etkisiz */
.content-body .callout,.content-body blockquote.callout{
  background:var(--teal-soft);border-left-color:var(--teal);
}

/* sidebar */
.article-sidebar{display:flex;flex-direction:column;gap:18px;position:sticky;top:82px}
.sidebar-box{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px 18px}
.sidebar-box h4{margin:0 0 10px;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);font-weight:800}
.toc-list{list-style:none;margin:0;padding:0;font-size:.87rem;display:flex;flex-direction:column;gap:7px;max-height:320px;overflow:auto}
.toc-list a{color:var(--text-muted);text-decoration:none;display:block;padding:2px 0}
.toc-list a:hover,.toc-list a.active{color:var(--accent-600);font-weight:600}
.toc-list .toc-h3{padding-left:14px;font-size:.83rem}
.sidebar-box .sb-related{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.sidebar-box .sb-related a{font-size:.87rem;color:var(--text);text-decoration:none;font-weight:600;line-height:1.4;display:block}
.sidebar-box .sb-related a:hover{color:var(--accent-600)}

/* FINAL CLOSEOUT #1 - content-body içine eklenen ikinci (görsel olarak
   sayfada HER ZAMAN sadece biri görünür) İçindekiler kopyası. Masaüstünde
   varsayılan olarak tamamen gizli - sidebar'daki orijinal kopya (aşağıdaki
   .article-sidebar kuralları) masaüstünde tek/değişmemiş kaynak kalır. */
.toc-inline-mobile{display:none}

@media (max-width:960px){
  .article-sidebar{position:static;flex-direction:column-reverse}
  /* F3 VISUAL POLISH §6 - mobilde sidebar tekrarları gizlenir: "Sayfa
     Bilgisi" zaten article-meta-row'da, "İlgili İçerikler" zaten sayfa
     sonundaki "Bunlar da İlginizi Çekebilir" bölümünde gösteriliyor.
     Masaüstü (>960px) davranışı tamamen aynı kalır. */
  .sidebar-page-info,.sidebar-related-box{display:none}
  /* FINAL CLOSEOUT #1 - mobilde İçindekiler artık "kısa cevap" callout'undan
     hemen sonra (content-body içinde) gösterilir: sidebar'daki ORİJİNAL TOC
     kutusu (DOM'u/masaüstü davranışı tamamen değişmeden kalır) mobilde
     gizlenir, yerine content-body içindeki .toc-inline-mobile kopyası (aynı
     site.js ile dolduruluyor) görünür olur. Ülke tanıtım kartı
     (.sidebar-promo) mobilde sidebar'ın içinde, column-reverse ile sayfa
     sonunda kalmaya devam eder - konumu DEĞİŞMEDİ. */
  .article-sidebar>[data-toc-box]{display:none}
  .toc-inline-mobile{display:block;margin:0 0 24px}
}

/* F3 VISUAL POLISH §6 - TOC artık <details>/<summary>: masaüstünde "open"
   ile önceki <h4> ile GÖRSEL OLARAK AYNI (her zaman açık); summary'nin
   varsayılan disclosure ok'u gizlenip eski h4 tipografisi uygulanır, mobilde
   ise native olarak tıklanıp kapatılabilen kompakt bir accordion olur. */
details.sidebar-box{padding:16px 18px}
details.sidebar-box summary{
  margin:0 0 10px;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);
  font-weight:800;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px;
}
details.sidebar-box summary::-webkit-details-marker{display:none}
details.sidebar-box summary::after{
  content:"";width:8px;height:8px;border-right:2px solid var(--text-faint);border-bottom:2px solid var(--text-faint);
  transform:rotate(45deg);transition:transform .15s ease;flex:none;
}
details.sidebar-box[open] summary::after{transform:rotate(-135deg)}
details.sidebar-box[open] summary{margin-bottom:10px}
details.sidebar-box:not([open]) summary{margin-bottom:0}

/* ==========================================================================
   AD UI (§14) — reklam/sponsorlu alanların editoryal içerikten net ayrımı
   ========================================================================== */
.ad-slot-label{
  font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#9aa3af;
  display:block;margin-bottom:6px;
}
/* Faz F2 (madde 8) - DEMO/görsel-QA etiketi: normal "Reklam" etiketinden
   kasıtlı olarak göze çarpan biçimde ayrışır (sarı/siyah, daha büyük). */
.ad-slot-label--demo{color:#92400e;background:#fef3c7;display:inline-block;padding:3px 9px;border-radius:6px;font-size:.68rem}
.company-box{
  border:1px solid var(--border);border-radius:var(--radius-md);padding:18px;margin:26px 0;
  background:linear-gradient(180deg,#fffdf6,#fff);position:relative;
}
.company-box::before{content:"";position:absolute;inset:0;border:1px dashed #e8ddb5;border-radius:var(--radius-md);pointer-events:none}
.company-box.company-box--demo{background:repeating-linear-gradient(135deg,#fff,#fff 12px,#fef9ec 12px,#fef9ec 24px)}
.company-box.company-box--demo::before{border-color:#f59e0b}
.company-box .cb-cta--demo{cursor:default;opacity:.85}
.company-box .cb-head{display:flex;align-items:center;gap:12px;margin-top:2px}
.company-box .cb-logo{width:56px;height:56px;border-radius:10px;object-fit:contain;background:#fff;border:1px solid var(--border);flex:none}
.company-box .cb-name{font-weight:800;font-size:1rem}
.company-box .cb-slogan{color:var(--text-muted);font-size:.88rem;margin-top:1px}
.company-box .cb-info{margin:12px 0 0;font-size:.92rem;color:var(--text)}
.company-box .cb-cta{
  display:inline-flex;margin-top:12px;background:var(--navy-800);color:#fff;text-decoration:none;
  padding:9px 18px;border-radius:var(--radius-sm);font-weight:700;font-size:.88rem;
}
.company-box .cb-cta:hover{background:var(--navy-700)}

.banner-slots{display:flex;flex-direction:column;gap:14px;margin:22px 0}
.banner-slot--filled .banner-slot-link{display:block;border-radius:var(--radius-sm);overflow:hidden}
.banner-slot-img{width:100%;height:auto;display:block}
.banner-slot-img--mobile{display:none}
@media (max-width:640px){
  .banner-slot-img--desktop{display:none}
  .banner-slot-img--mobile{display:block}
}
.banner-slot--cta{border:1px dashed var(--border-strong);border-radius:var(--radius-md);padding:16px;text-align:center;background:var(--surface-alt)}
.banner-slot-cta-link{color:var(--text-muted);text-decoration:none;font-size:.9rem;font-weight:600}
.banner-slot-cta-link:hover{text-decoration:underline;color:var(--accent-600)}
/* Faz F2 (madde 8) */
.banner-slot--demo{border:1px dashed #f59e0b;border-radius:var(--radius-md);padding:10px;background:#fffbeb}
.banner-slot--demo img{border-radius:6px}

/* ==========================================================================
   FAQ / SOURCES / RELATED (public-entity-extras)
   ========================================================================== */
.faq-item{border-bottom:1px solid var(--border);padding:15px 0}
.faq-item:last-child{border-bottom:none}
.faq-item summary{cursor:pointer;font-weight:700;font-size:.98rem;list-style:none;display:flex;justify-content:space-between;gap:10px;align-items:center}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";color:var(--accent-600);font-size:1.2rem;font-weight:400;flex:none}
.faq-item[open] summary::after{content:"–"}
.faq-item p{margin:10px 0 0;color:var(--text-muted)}

.source-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.source-list li{
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.87rem;color:var(--text-muted);
  border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;background:var(--surface-alt);
}
.source-list a{font-weight:700;color:var(--text);text-decoration:none}
.source-list a:hover{color:var(--accent-600)}
.source-badge{font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;padding:3px 9px;border-radius:999px;flex:none}
/* Faz F2 (madde 9) - Resmî/Kurumsal/Piyasa sezgisel etiketleri kaldırıldı,
   tek nötr "Kaynak" rozeti (bkz public-entity-extras.php $sourceBadge). */
.source-badge--neutral{background:var(--surface-muted);color:var(--text-muted)}
.source-ext-icon{opacity:.55}

.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:0}
/* Faz F2 (madde 4) - "ilgili destinasyon görselleri": related-grid kartları artık .ed-card ile aynı görsel desende (bkz public-entity-extras.php). */
.related-card{display:flex;flex-direction:column}
.related-card .ed-media{aspect-ratio:16/9;width:100%;display:block;overflow:hidden;background:var(--surface-muted)}
.related-card .ed-media img{width:100%;height:100%;object-fit:cover;display:block}

/* ==========================================================================
   SHARE BUTTONS (§12)
   ========================================================================== */
.share-buttons{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0;align-items:center}
.share-buttons a,.share-buttons button{
  display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;
  text-decoration:none;border:1px solid var(--border);background:var(--surface-alt);color:var(--text-muted);cursor:pointer;
  font-size:0;transition:background .15s ease, color .15s ease;
}
.share-buttons a svg,.share-buttons button svg{width:16px;height:16px}
.share-buttons a:hover,.share-buttons button:hover{background:var(--accent-soft);color:var(--accent-600)}
.share-buttons .share-label{font-size:.82rem;color:var(--text-faint);margin-right:2px}
.share-buttons button[data-share-copy]{width:auto;padding:0 14px;font-size:.82rem;gap:6px}

/* ==========================================================================
   SEARCH PAGE (§15)
   ========================================================================== */
.search-form{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 8px;background:var(--surface-alt);border:1px solid var(--border);padding:14px;border-radius:var(--radius-md)}
.search-form input[type=text]{flex:2;min-width:220px;padding:10px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:.94rem}
.search-form select{padding:10px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:.9rem;background:#fff}
.search-form button{background:var(--navy-800);color:#fff;border:none;padding:10px 22px;border-radius:var(--radius-sm);cursor:pointer;font-weight:700}
.search-form button:hover{background:var(--navy-700)}
.search-result-count{color:var(--text-muted);font-size:.9rem;margin:4px 0 18px}
.search-empty{
  text-align:center;padding:50px 20px;color:var(--text-muted);background:var(--surface-alt);
  border-radius:var(--radius-md);border:1px dashed var(--border-strong);
}
.search-empty h2{margin:0 0 8px;font-size:1.15rem;color:var(--text)}
.search-empty .empty-suggestions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:16px}
.search-empty .empty-suggestions a{
  background:#fff;border:1px solid var(--border-strong);padding:6px 14px;border-radius:999px;text-decoration:none;
  color:var(--accent-600);font-size:.85rem;font-weight:600;
}
.pagination{margin-top:26px;display:flex;gap:6px;flex-wrap:wrap}
.pagination a{
  display:inline-flex;min-width:36px;height:36px;align-items:center;justify-content:center;border-radius:8px;
  border:1px solid var(--border);text-decoration:none;color:var(--text);font-size:.88rem;
}
.pagination a.current{background:var(--navy-800);color:#fff;border-color:var(--navy-800);font-weight:700}
.pagination a:hover:not(.current){background:var(--surface-alt)}

/* ==========================================================================
   FOOTER
   ========================================================================== */
footer.site-footer{background:var(--navy-800);color:#cbd5e1;margin-top:60px;padding:48px 0 0}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.08)}
.footer-brand p{color:#94a3b8;font-size:.88rem;line-height:1.6;max-width:280px;margin:10px 0 0}
.footer-col h5{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;margin:0 0 14px}
.footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.footer-col a{color:#94a3b8;text-decoration:none;font-size:.87rem}
.footer-col a:hover{color:#fff}
.footer-bottom{padding:18px 0;text-align:center;font-size:.8rem;color:#64748b}

@media (max-width:800px){
  .footer-top{grid-template-columns:1fr 1fr;gap:26px}
}
@media (max-width:480px){
  .footer-top{grid-template-columns:1fr}
}

/* ==========================================================================
   MISC / responsive helpers
   ========================================================================== */
.badge{display:inline-block;font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:999px}
@media (max-width:640px){
  .section{padding:30px 0}
  h1{font-size:1.5rem}
}

/* ==========================================================================
   FINAL FRONTEND IMPLEMENTATION - gerçek fotoğraf sistemine geçiş sonrası
   eklenen yapısal bileşenler (§6 ülke sayfası bilgi paneli/banner, §7 makale
   sidebar promo kartı + ilgili içerik küçük görselleri + paylaşım satırı
   hizalaması, §7 "Kısa cevap" callout güçlendirmesi).
   ========================================================================== */

/* paylaşım ikonları artık meta satırıyla aynı satırda, sağa yaslı */
.article-meta-row{align-items:center}
.article-meta-row .share-buttons{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.article-meta-row .share-buttons a,.article-meta-row .share-buttons button{
  display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;
  background:var(--surface-alt);color:var(--text-muted);border:1px solid var(--border);text-decoration:none;
}
.article-meta-row .share-buttons a svg,.article-meta-row .share-buttons button svg{width:15px;height:15px}
.article-meta-row .share-buttons a:hover,.article-meta-row .share-buttons button:hover{background:var(--accent-soft);color:var(--accent-600)}
.article-meta-row .share-buttons .share-label{display:none}
.article-meta-row .share-buttons button span{display:none}
@media (max-width:640px){
  .article-meta-row{gap:10px}
  .article-meta-row .share-buttons{margin-left:0;width:100%;order:9}
}

/* "Kısa cevap" callout - içeriğin KENDİ metni (body_html), sadece görsel güçlendirme */
.content-body blockquote:first-child{
  display:flex;gap:12px;align-items:flex-start;background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);
  border-left:4px solid var(--accent);border-radius:var(--radius-md);padding:16px 18px;color:var(--navy-800);
}
.content-body blockquote:first-child::before{
  content:"i";flex:none;width:22px;height:22px;border-radius:50%;background:var(--accent);color:#fff;font-weight:800;font-size:.8rem;
  display:flex;align-items:center;justify-content:center;font-style:normal;margin-top:2px;
}
.content-body blockquote:first-child p{margin:0}

/* Ülke sayfası: Şehirler + "Ülke Hakkında" bilgi paneli iki kolonlu yerleşim */
.country-split{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start}
.country-split-main{min-width:0}
.country-about-panel{
  background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:20px;display:flex;flex-direction:column;gap:6px;
}
.country-about-map{position:relative;display:flex;align-items:center;justify-content:center;padding:14px 0 4px}
.country-about-map svg{width:96px;height:96px}
.country-about-flag{
  position:absolute;bottom:2px;left:50%;transform:translateX(-50%);background:var(--surface);
  border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700;
  box-shadow:var(--shadow-sm,0 1px 3px rgba(0,0,0,.08));white-space:nowrap;
}
.country-about-panel h3{margin:10px 0 2px;font-size:1.02rem}
.country-about-panel p{margin:0 0 6px;font-size:.87rem;color:var(--text-muted);line-height:1.55}
.country-about-link{font-size:.85rem;font-weight:700;color:var(--accent-600);text-decoration:none}
@media (max-width:900px){
  .country-split{grid-template-columns:1fr}
}

/* Ülke sayfası alt promosyon/tanıtım şeridi (gerçek reklam altyapısının YERİNE geçmez - editoryal) */
.country-cta-banner{
  position:relative;border-radius:var(--radius-lg);overflow:hidden;background-size:cover;background-position:center;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:34px 30px;margin-top:8px;
}
.country-cta-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,18,32,.82) 10%,rgba(11,18,32,.35) 80%)}
.country-cta-banner-inner{position:relative;z-index:1;color:#fff;max-width:520px}
.country-cta-banner-inner h2{margin:0 0 6px;font-size:1.3rem;color:#fff}
.country-cta-banner-inner p{margin:0;color:#dbe3f0;font-size:.92rem}
.country-cta-banner-btn{
  position:relative;z-index:1;background:#fff;color:var(--navy-800);font-weight:700;font-size:.88rem;
  padding:11px 20px;border-radius:999px;text-decoration:none;white-space:nowrap;
}
.country-cta-banner-btn:hover{background:var(--accent-soft)}
@media (max-width:640px){
  .country-cta-banner{padding:24px 20px}
  .country-cta-banner-inner h2{font-size:1.1rem}
}

/* Makale sidebar - ülke tanıtım kartı (fotoğraflı) */
.sidebar-promo{
  display:block;position:relative;border-radius:var(--radius-md);overflow:hidden;min-height:150px;
  background-size:cover;background-position:center;text-decoration:none;isolation:isolate;
}
.sidebar-promo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,18,32,.15) 0%,rgba(11,18,32,.88) 100%);z-index:-1}
.sidebar-promo-body{padding:16px;color:#fff;display:flex;flex-direction:column;gap:4px;height:100%;justify-content:flex-end}
.sidebar-promo-body h4{margin:0;font-size:.98rem;color:#fff;text-transform:none;letter-spacing:0;font-weight:800}
.sidebar-promo-body p{margin:0;font-size:.8rem;color:#dbe3f0}
.sidebar-promo-btn{margin-top:4px;font-size:.8rem;font-weight:700;color:#fff}

/* Makale sidebar - ilgili içerikler küçük görsel */
.sb-related--photo{gap:11px}
.sb-related--photo li{display:flex;align-items:center;gap:10px}
.sb-related-thumb{flex:none;width:44px;height:44px;border-radius:var(--radius-sm);overflow:hidden;background:var(--surface-muted)}
.sb-related-thumb img{width:100%;height:100%;object-fit:cover;display:block}

/* FINAL FRONTEND IMPLEMENTATION §8 - mobil kompaktlık: "Ne arıyorsunuz?"
   kategori ızgarası referans mobil ekranda 3 kolonlu, sadece ikon+başlık
   (açıklama metni yok); "Popüler Ülkeler" kartları 2 kolonlu, kompakt. */
@media (max-width:640px){
  .category-grid{grid-template-columns:repeat(3,1fr);gap:8px}
  .category-tile{padding:12px 8px;text-align:center;align-items:center;gap:6px}
  .category-tile .cat-icon{width:34px;height:34px}
  .category-tile .cat-icon svg{width:18px;height:18px}
  .category-tile h3{font-size:.76rem;line-height:1.25}
  .category-tile p{display:none}

  .country-card-grid{grid-template-columns:1fr 1fr;gap:10px}
  .country-card-grid .cc-body{padding:10px 10px;gap:6px}
  .country-card-grid .cc-flag{font-size:1.2rem}
  .country-card-grid h3{font-size:.86rem}
  /* F3 VISUAL POLISH §4 - referans mobil ekranda (04_pasaport_mobile_reference)
     ülke kartlarında bayrak/isim altında 2 KISA konu chip'i (Vize, Eğitim) hala
     görünür - önceki turda tamamen gizlenmişti, bu bir referans-sadakat
     eksikliğiydi. Uzun açıklama paragrafı gizli kalır, chip'ler geri getirilir. */
  .country-card-grid p{display:none}
  .country-card-grid .cc-topics{display:flex;flex-wrap:wrap;gap:5px}
  .country-card-grid .cc-topics a{font-size:.68rem;padding:3px 9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}
  .country-card-grid .cc-cta{font-size:.76rem}
}

/* ==========================================================================
   HOMEPAGE DISCOVERY — FINAL VISUAL OVERRIDE
   Bu blok önceki discovery kurallarının üstüne bilinçli olarak yazılır.
   Backend/SEO/URL davranışı değiştirmez.
   ========================================================================== */

.discovery-section{
  position:relative;
  padding:48px 0;
}

/* Life: 5 kart gerçekten 5 kolon. Eksik veriyle kart şişirme yok. */
@media (min-width:1024px){
  .discovery-section--life_abroad_paths .disc-grid--5{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:16px;
  }
  .discovery-section--study_work_paths .disc-grid--4{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
  }
  .discovery-section--investment_residency .disc-grid--3{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
  }
}

/* Kartların referans görseldeki daha rafine oranları */
.discovery-section--life_abroad_paths .disc-card-media{aspect-ratio:16/10}
.discovery-section--study_work_paths .disc-card-media{aspect-ratio:16/9}
.discovery-section--investment_residency .disc-card-media{aspect-ratio:16/8.6}

.discovery-section .disc-card{
  border-color:#e3e8f0;
  border-radius:14px;
  box-shadow:0 5px 18px rgba(15,23,42,.055);
}
.discovery-section .disc-card:hover{
  box-shadow:0 12px 30px rgba(15,23,42,.11);
  transform:translateY(-3px);
}
.discovery-section .disc-card-body{padding:14px 15px 15px;gap:7px}
.discovery-section .disc-card-head{gap:8px}
.discovery-section .disc-card-flag{font-size:1.25rem}
.discovery-section .disc-card-body h3{font-size:1rem;line-height:1.25}
.discovery-section .disc-card-body p{font-size:.81rem;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.discovery-section .disc-cta{font-size:.8rem;padding-top:5px}

/* Okurken Çalış ve Yola Çıkmadan Önce: gerçek full-bleed bant.
   Section container içinde olsa da standart full-bleed pattern ile viewport'a açılır. */
.discovery-section--study_work_paths,
.discovery-section--pretravel_services{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:#eef5ff;
  padding:52px 0;
}
.discovery-section--study_work_paths .section-tint{
  max-width:1180px;
  margin:0 auto;
  padding:0 20px;
  background:transparent;
  border-radius:0;
}
.discovery-section--pretravel_services > div{
  max-width:1180px;
  margin:0 auto;
  padding:0 20px;
}

/* Investment kartı: premium ama abartısız */
.discovery-section--investment_residency .disc-card--lg .disc-card-body{
  padding:18px 19px 19px;
}
.discovery-section--investment_residency .disc-card--lg h3{
  font-size:1.08rem;
}
.discovery-section--investment_residency .disc-card--lg p{
  font-size:.84rem;
}

/* Pretravel global .category-grid'in desktop 7 kolon kuralına takılmasın */
.discovery-section--pretravel_services .category-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(245px,1fr));
  gap:16px;
}
.discovery-section--pretravel_services .category-tile{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  grid-template-areas:
    "icon title"
    "icon desc"
    "icon cta";
  column-gap:14px;
  row-gap:3px;
  align-items:start;
  padding:17px 18px;
  min-height:112px;
  text-align:left;
  border-radius:14px;
  box-shadow:0 4px 14px rgba(15,23,42,.045);
}
.discovery-section--pretravel_services .category-tile .cat-icon{
  grid-area:icon;
  width:48px;height:48px;border-radius:14px;
  align-self:center;
}
.discovery-section--pretravel_services .category-tile h3{
  grid-area:title;
  font-size:.92rem;
  margin:2px 0 0;
}
.discovery-section--pretravel_services .category-tile p{
  grid-area:desc;
  display:block;
  font-size:.76rem;
  line-height:1.35;
}
.discovery-section--pretravel_services .category-tile .tile-cta{
  grid-area:cta;
  font-size:.76rem;
  margin-top:2px;
}

/* Başlık ritmi */
.discovery-section .section-head{margin-bottom:20px}
.discovery-section .section-head h2{font-size:1.55rem;line-height:1.15}
.discovery-section .section-head p{font-size:.9rem}

/* Mobil */
@media (max-width:760px){
  .discovery-section{padding:30px 0}

  .discovery-section--life_abroad_paths .disc-grid--scroll-mobile{
    gap:12px;
    margin:16px -20px 0;
    padding:0 20px 8px;
  }
  .discovery-section--life_abroad_paths .disc-grid--scroll-mobile .disc-card{
    flex:0 0 82%;
  }

  .discovery-section--study_work_paths,
  .discovery-section--pretravel_services{
    padding:30px 0;
  }

  .discovery-section--study_work_paths .disc-grid--4{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:16px;
  }
  .discovery-section--study_work_paths .disc-card-body{
    padding:10px 10px 11px;
  }
  .discovery-section--study_work_paths .disc-card-body h3{font-size:.84rem}
  .discovery-section--study_work_paths .disc-card-body p{font-size:.7rem}
  .discovery-section--study_work_paths .disc-card-flag{font-size:1rem}

  .discovery-section--investment_residency .disc-grid--3{
    grid-template-columns:1fr;
    gap:14px;
  }
  .discovery-section--investment_residency .disc-card-media{
    aspect-ratio:16/8.8;
  }

  .discovery-section--pretravel_services .category-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .discovery-section--pretravel_services .category-tile{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    min-height:138px;
    padding:13px;
    gap:6px;
    text-align:left;
  }
  .discovery-section--pretravel_services .category-tile .cat-icon{
    width:38px;height:38px;border-radius:11px;
  }
  .discovery-section--pretravel_services .category-tile h3{
    font-size:.78rem;line-height:1.25;margin:0;
  }
  .discovery-section--pretravel_services .category-tile p{
    display:block;font-size:.68rem;line-height:1.3;
  }
  .discovery-section--pretravel_services .category-tile .tile-cta{
    margin-top:auto;font-size:.7rem;
  }

  .discovery-section .section-head{
    align-items:flex-start;
    margin-bottom:14px;
  }
  .discovery-section .section-head h2{font-size:1.16rem}
  .discovery-section .section-head p{font-size:.78rem}
  .discovery-section .section-head .section-link{font-size:.72rem}
}

/* ==========================================================================
   HEADER + HERO V2 — REFERANS GÖRSELE UYARLANMIŞ ÜST BÖLÜM
   Discovery bölümlerine dokunmaz.
   ========================================================================== */

/* ---------- HEADER: beyaz zemin, koyu mavi marka ve menü ---------- */
header.site-header{
  background:#ffffff;
  color:#0b315e;
  box-shadow:0 1px 0 rgba(15,49,94,.10);
  border-bottom:1px solid #e8eef6;
}

.site-header-inner{
  min-height:72px;
  padding:10px 0;
  gap:18px;
}

/* Mevcut wordmark'ı gerçek logo hissine yaklaştır:
   markup değiştirmeden globe + slogan eklenir. */
a.brand{
  position:relative;
  display:block;
  min-width:210px;
  min-height:48px;
  padding:4px 0 0 48px;
  color:#0b315e;
  line-height:1;
  text-decoration:none;
  font-weight:800;
  white-space:nowrap;
}

a.brand::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:38px;
  height:38px;
  transform:translateY(-50%);
  border-radius:50%;
  background-repeat:no-repeat;
  background-position:center;
  background-size:38px 38px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='20' fill='none' stroke='%230b315e' stroke-width='3'/%3E%3Cellipse cx='24' cy='24' rx='9' ry='20' fill='none' stroke='%230b315e' stroke-width='2.4'/%3E%3Cpath d='M5 24h38M9 14c9 5 21 5 30 0M9 34c9-5 21-5 30 0' fill='none' stroke='%230b315e' stroke-width='2.4'/%3E%3C/svg%3E");
}

a.brand::after{
  content:"Daha büyük bir dünya seninle";
  position:absolute;
  left:48px;
  top:29px;
  color:#60728a;
  font-size:.62rem;
  font-weight:600;
  letter-spacing:0;
  line-height:1;
}

a.brand .brand-word{
  display:block;
  font-size:1.22rem;
  line-height:1.05;
  letter-spacing:-.025em;
}
a.brand .brand-word-main{color:#0b315e;font-weight:850}
a.brand .brand-word-tld{color:#1669b2;font-weight:800;opacity:1}

/* Menü */
nav.main-nav{
  justify-content:center;
  gap:2px;
}
nav.main-nav a{
  color:#183b66;
  font-size:.88rem;
  font-weight:650;
  padding:9px 10px;
  border-radius:8px;
}
nav.main-nav a:hover{
  background:#eef5fb;
  color:#0b315e;
}

/* Header araması referanstaki büyüteç davranışına yaklaşır:
   normalde kompakt; focus olduğunda yazılabilir alan açılır. */
.header-search{
  width:42px;
  min-width:42px;
  transition:width .18s ease;
}
.header-search:focus-within{
  width:210px;
}
.header-search input{
  height:40px;
  width:100%;
  padding:9px 10px 9px 38px;
  color:#183b66;
  background:#ffffff;
  border:1px solid transparent;
  border-radius:12px;
  cursor:text;
  transition:border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.header-search:not(:focus-within) input{
  color:transparent;
  caret-color:transparent;
  cursor:pointer;
}
.header-search:not(:focus-within) input::placeholder{
  color:transparent;
}
.header-search:focus-within input{
  border-color:#d6e2ef;
  box-shadow:0 4px 18px rgba(11,49,94,.08);
}
.header-search input::placeholder{color:#8190a3}
.header-search .hs-icon{
  left:12px;
  color:#0b315e;
  opacity:1;
}
.header-search .hs-icon svg{
  width:18px;
  height:18px;
  stroke:#0b315e;
}

.header-burger{
  background:#f4f7fb;
  border:1px solid #dfe8f1;
  color:#0b315e;
}

/* ---------- HERO: gerçek full-bleed ---------- */
.hero.hero-home-v2{
  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  min-height:390px;
  padding:0;
  display:flex;
  align-items:stretch;
  background-size:cover;
  background-position:center 52%;
  background-repeat:no-repeat;
  color:#fff;
  position:relative;
  overflow:hidden;
}

/* Sol mavi alan güçlü, sağ fotoğraf daha açık kalır. */
.hero.hero-home-v2::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,
      rgba(4,48,87,.96) 0%,
      rgba(7,67,111,.90) 28%,
      rgba(10,83,132,.68) 49%,
      rgba(10,67,105,.24) 70%,
      rgba(4,32,59,.12) 100%),
    linear-gradient(180deg,rgba(8,45,75,.08),rgba(3,30,52,.18));
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  pointer-events:none;
}

/* Eski noktalı overlay'i kaldır. */
.hero.hero-home-v2::after{
  display:none;
}

.hero.hero-home-v2 .hero-inner{
  position:relative;
  z-index:1;
  width:100%;
  max-width:1180px;
  margin:0 auto;
  padding:48px 20px 44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:44px;
}

.hero.hero-home-v2 .hero-copy{
  width:min(560px,58%);
}

.hero.hero-home-v2 .hero-kicker{
  margin:0 0 10px;
  color:#d6ebff;
  font-size:.72rem;
  font-weight:750;
  letter-spacing:.14em;
  text-transform:uppercase;
  text-shadow:none;
}

.hero.hero-home-v2 h1{
  margin:0 0 12px;
  font-size:clamp(2.5rem,4.25vw,4.05rem);
  line-height:.98;
  letter-spacing:-.045em;
  font-weight:850;
  color:#fff;
  text-shadow:0 2px 16px rgba(4,30,52,.20);
}

.hero.hero-home-v2 p.hero-sub{
  max-width:510px;
  margin:0 0 20px;
  color:#eff7ff;
  font-size:1.02rem;
  line-height:1.45;
  text-shadow:none;
}

.hero.hero-home-v2 .hero-search{
  width:min(520px,100%);
  max-width:none;
  height:52px;
  padding:4px;
  display:flex;
  align-items:center;
  gap:4px;
  background:#fff;
  border:1px solid rgba(255,255,255,.75);
  border-radius:10px;
  box-shadow:0 10px 28px rgba(0,29,55,.18);
}

.hero.hero-home-v2 .hero-search input{
  min-width:0;
  height:100%;
  padding:0 13px;
  border:0;
  border-radius:7px;
  color:#1c2f45;
  background:#fff;
  font-size:.95rem;
}

.hero.hero-home-v2 .hero-search input::placeholder{
  color:#8b96a5;
}

.hero.hero-home-v2 .hero-search input:focus{
  outline:none;
  background:#fff;
}

.hero.hero-home-v2 .hero-search button{
  flex:0 0 44px;
  width:44px;
  height:44px;
  padding:0;
  display:grid;
  place-items:center;
  border:0;
  border-radius:8px;
  background:#0876d1;
  color:#fff;
  cursor:pointer;
  box-shadow:none;
}

.hero.hero-home-v2 .hero-search button:hover{
  background:#0567ba;
  filter:none;
}

.hero.hero-home-v2 .hero-search button svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
}

.hero.hero-home-v2 .hero-chips{
  margin-top:12px;
  gap:6px;
}

.hero.hero-home-v2 .hero-chips-label{
  color:#d6e7f7;
  font-size:.7rem;
}

.hero.hero-home-v2 .hero-chips a{
  padding:4px 10px;
  color:#f8fbff;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  font-size:.72rem;
  font-weight:650;
  backdrop-filter:blur(2px);
}

.hero.hero-home-v2 .hero-note{
  align-self:center;
  margin:0 8px 0 auto;
  color:#fff;
  font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;
  font-size:clamp(1.35rem,2vw,2rem);
  line-height:1.25;
  text-align:center;
  transform:rotate(-4deg);
  text-shadow:0 2px 10px rgba(0,35,64,.25);
  opacity:.96;
}

/* Desktop orta genişlikte nav sıkışmasın. */
@media (max-width:1180px) and (min-width:961px){
  a.brand{min-width:185px;padding-left:42px}
  a.brand::before{width:34px;height:34px;background-size:34px 34px}
  a.brand::after{left:42px;font-size:.56rem}
  a.brand .brand-word{font-size:1.05rem}
  nav.main-nav a{padding:8px 7px;font-size:.8rem}
}

/* ---------- MOBILE ---------- */
@media (max-width:960px){
  header.site-header{background:#fff}
  .site-header-inner{min-height:58px;padding:7px 0}

  a.brand{
    min-width:0;
    min-height:42px;
    padding-left:40px;
    padding-top:4px;
  }
  a.brand::before{
    width:32px;height:32px;background-size:32px 32px;
  }
  a.brand::after{
    left:40px;
    top:26px;
    font-size:.52rem;
  }
  a.brand .brand-word{font-size:1rem}

  .mobile-menu{
    background:#fff;
    border-top:1px solid #e5ecf4;
    box-shadow:0 14px 30px rgba(15,49,94,.10);
  }
  .mobile-menu a{
    color:#173b66;
    border-bottom:1px solid #edf2f7;
  }
  .mobile-menu input[type=text]{
    background:#f7f9fc;
    color:#173b66;
    border:1px solid #dbe4ee;
  }
  .mobile-menu input::placeholder{color:#8190a3}
}

@media (max-width:640px){
  .hero.hero-home-v2{
    min-height:365px;
    background-position:61% center;
  }

  .hero.hero-home-v2 .hero-inner{
    padding:34px 20px 28px;
    align-items:flex-end;
  }

  .hero.hero-home-v2 .hero-copy{
    width:100%;
  }

  .hero.hero-home-v2::before{
    background:
      linear-gradient(90deg,rgba(4,48,87,.94) 0%,rgba(7,67,111,.82) 58%,rgba(8,55,91,.48) 100%),
      linear-gradient(180deg,rgba(4,31,54,.05),rgba(3,29,50,.40));
  }

  .hero.hero-home-v2 h1{
    font-size:2.05rem;
    line-height:1.02;
    margin-bottom:10px;
  }

  .hero.hero-home-v2 p.hero-sub{
    max-width:330px;
    font-size:.88rem;
    margin-bottom:16px;
  }

  .hero.hero-home-v2 .hero-search{
    height:48px;
    flex-direction:row;
    padding:4px;
    border-radius:9px;
  }

/* ARAMA ÇUBUĞU AUTOCOMPLETE (anasayfa hero) - yalnızca konumlandırma kabı.
   .site-search-results mevcut panel zaten position:absolute;top:calc(100% + 8px);
   left:0;right:0 - yani position:relative bir ata arıyor (header'da bu rolü
   .header-search üstleniyor). Bu sarmalayıcı o rolü hero formu için üstlenir ve
   genişliği mevcut kurallarla birebir aynı tutar: 1326 satırındaki
   .hero-search width:min(520px,100%) ve 1589 satırındaki min(565px,100%)
   override'i bu yüzden 565px'e sabitlendi. Kutu görseli DEĞİŞMEZ - sarmalayıcının
   kendisinde zemin/kenarlık/gölge yoktur. */
.hero.hero-home-v2 .hero-search-wrap{position:relative;width:min(565px,100%)}

.hero.hero-home-v2 .hero-search input{
    padding:0 10px;
    font-size:.84rem;
  }

  .hero.hero-home-v2 .hero-search button{
    flex-basis:40px;
    width:40px;
    height:40px;
  }

  .hero.hero-home-v2 .hero-chips{
    display:none;
  }

  .hero.hero-home-v2 .hero-note{
    display:none;
  }
}

/* ==========================================================================
   FINAL V3 REFINEMENTS
   ========================================================================== */

@media (min-width:961px){
  .site-header-inner{min-height:78px;padding:12px 0}
  a.brand{min-width:236px;min-height:52px;padding-left:52px}
  a.brand::before{width:42px;height:42px;background-size:42px 42px}
  a.brand::after{left:52px;top:32px;font-size:.66rem}
  a.brand .brand-word{font-size:1.34rem}
  nav.main-nav a{font-size:.9rem;padding:9px 9px}

  .country-select-cta{
    flex:none;
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:42px;
    padding:0 15px;
    margin-left:2px;
    border-radius:12px;
    background:#0b315e;
    color:#fff;
    text-decoration:none;
    font-size:.84rem;
    font-weight:750;
    box-shadow:0 5px 16px rgba(11,49,94,.14);
  }
  .country-select-cta:hover{background:#0e417e;color:#fff}
  .country-select-cta svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
  .country-select-cta .chev{font-size:.72rem;opacity:.8}
}

.hero.hero-home-v2{
  min-height:430px;
  background-position:center 50%;
}

.hero.hero-home-v2::before{
  background:
    linear-gradient(90deg,
      rgba(4,48,87,.92) 0%,
      rgba(7,67,111,.82) 27%,
      rgba(10,83,132,.53) 48%,
      rgba(10,67,105,.14) 70%,
      rgba(4,32,59,.05) 100%);
}

.hero.hero-home-v2 .hero-inner{
  padding-top:56px;
  padding-bottom:54px;
}

.hero.hero-home-v2 .hero-copy{width:min(590px,59%)}

.hero.hero-home-v2 h1{
  font-size:clamp(2.8rem,4.45vw,4.35rem);
}

.hero.hero-home-v2 .hero-search{
  width:min(565px,100%);
}

.discovery-section .disc-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

@media (max-width:960px){
  .country-select-cta{display:none}
}

@media (max-width:640px){
  a.brand .brand-word{font-size:1.08rem}
  a.brand::after{font-size:.54rem}
  .hero.hero-home-v2{min-height:385px}
  .hero.hero-home-v2 .hero-inner{padding-top:38px;padding-bottom:30px}
  .hero.hero-home-v2 h1{font-size:2.15rem}
}

/* ==========================================================================
   FINAL VISUAL V4 — HERO BAŞLIK + LOGO POLISH (yalnız CSS/layout)
   Fotoğraf varlıkları bu aşamada YOK: discovery kartları hâlâ mevcut SVG
   illüstrasyonlarını kullanıyor, markup/path/veri yapısı değişmedi.
   ========================================================================== */

.hero.hero-home-v2 h1 span{
  display:block;
}

/* Header brand: V3'e göre yaklaşık %10 daha güçlü (yalnız ≥961px) */
@media (min-width:961px){
  a.brand{
    min-width:250px;
    min-height:56px;
    padding-left:57px;
  }
  a.brand::before{
    width:46px;
    height:46px;
    background-size:46px 46px;
  }
  a.brand::after{
    left:57px;
    top:35px;
    font-size:.68rem;
  }
  a.brand .brand-word{
    font-size:1.42rem;
  }
}

@media (max-width:640px){
  a.brand{
    min-height:45px;
    padding-left:43px;
  }
  a.brand::before{
    width:35px;
    height:35px;
    background-size:35px 35px;
  }
  a.brand::after{
    left:43px;
    top:28px;
    font-size:.55rem;
  }
  a.brand .brand-word{
    font-size:1.13rem;
  }

  /* Hedef: 5 satır yerine iki temiz satır */
  .hero.hero-home-v2 h1{
    font-size:1.78rem;
    line-height:1.03;
    letter-spacing:-.035em;
  }
  .hero.hero-home-v2 h1 span{
    display:block;
    white-space:nowrap;
  }
  .hero.hero-home-v2 h1 span + span{
    font-size:1.62rem;
    margin-top:2px;
  }
}

/* ==========================================================================
   V4B — DISCOVERY FOTOĞRAF KARTLARI (yalnız gerçek JPG için gerekli kurallar)
   Kart yapısı/grid/sıra/metin DEĞİŞMEDİ; sadece disc-card-media img üstünde
   crop odağı ve hafif hover. object-fit/border-radius zaten mevcut kurallarda.
   ========================================================================== */

.discovery-section .disc-card-media img{
  object-position:center;
  transition:transform .28s ease, filter .28s ease;
  filter:saturate(.96) contrast(1.02);
}
.discovery-section .disc-card:hover .disc-card-media img{
  transform:scale(1.035);
  filter:saturate(1.03) contrast(1.03);
}

/* Crop odağı - sıra DB'de doğrulandı (life_abroad_paths: kotor, dubai,
   belgrade, tbilisi, skopje / study_work_paths: dublin, valletta, sydney,
   toronto), ana obje (kale/skyline/liman) kadrajda kalsın diye. */
.discovery-section--life_abroad_paths .disc-card:nth-child(1) .disc-card-media img{object-position:center 55%}
.discovery-section--life_abroad_paths .disc-card:nth-child(2) .disc-card-media img{object-position:center 48%}
.discovery-section--life_abroad_paths .disc-card:nth-child(3) .disc-card-media img{object-position:center 48%}
.discovery-section--life_abroad_paths .disc-card:nth-child(4) .disc-card-media img{object-position:center 52%}
.discovery-section--life_abroad_paths .disc-card:nth-child(5) .disc-card-media img{object-position:center 45%}
.discovery-section--study_work_paths .disc-card:nth-child(1) .disc-card-media img{object-position:center 52%}
.discovery-section--study_work_paths .disc-card:nth-child(2) .disc-card-media img{object-position:center 52%}
.discovery-section--study_work_paths .disc-card:nth-child(3) .disc-card-media img{object-position:center 48%}
.discovery-section--study_work_paths .disc-card:nth-child(4) .disc-card-media img{object-position:center 48%}
