/* ===== ÖĞRENCİ YAŞAMI v2 ===== ön ek: oy2-
   Kurallar (sahip): sayılarda serif YOK (Inter + tabular), dekoratif ikon YOK, altın YOK
   (altın yalnız PTE sayfasının imzası), sıkı yerleşim, boş alan bırakma. */
:root{
  --oy2-navy:#00284a; --oy2-blue:#005A9E; --oy2-blue-500:#0078D7; --oy2-blue-050:#eef4fb;
  --oy2-line:#dde7f2; --oy2-ink:#0a2a4a; --oy2-body:#4d5f74; --oy2-mute:#5f7186;
}
.oy2-num{ font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif; font-variant-numeric:tabular-nums; font-feature-settings:"tnum" 1,"lnum" 1; letter-spacing:-.02em; font-weight:800; }

/* hero */
.oy2-hero{ position:relative; display:flex; align-items:flex-end; color:#fff; overflow:hidden; background:var(--oy2-navy); padding:136px 0 0; }
.oy2-hero-media{ position:absolute; inset:0; }
.oy2-hero-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.oy2-hero::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,18,42,.58) 0%, rgba(0,18,42,.72) 52%, rgba(0,18,42,.96) 100%); }
.oy2-hero .container{ position:relative; z-index:1; }
.oy2-eyebrow{ display:inline-flex; align-items:center; gap:9px; font-size:.72rem; letter-spacing:.16em; font-weight:800; color:#cfe3f6; background:rgba(0,18,42,.55); border:1px solid rgba(255,255,255,.22); padding:6px 14px 6px 7px; border-radius:4px; margin-bottom:14px; }
.oy2-eyebrow img{ width:24px; height:16px; border-radius:2px; object-fit:cover; }
.oy2-hero h1{ font-family:'Playfair Display',Georgia,serif; font-size:clamp(2rem,4.4vw,3.1rem); font-weight:700; margin:0 0 10px; color:#fff; max-width:820px; line-height:1.1; }
.oy2-hero-sub{ font-size:1.02rem; line-height:1.6; color:#dae8f6; max-width:640px; margin:0 0 22px; }
.oy2-hero-cta{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:30px; }
.oy2-btn{ display:inline-flex; align-items:center; gap:9px; text-decoration:none; font-weight:700; font-size:.94rem; padding:12px 20px; border-radius:6px; transition:background .18s ease, border-color .18s ease, color .18s ease; }
.oy2-btn-primary{ background:#fff; color:#00345f !important; }
.oy2-btn-primary:hover{ background:#e6f0fa; color:#00345f !important; }
.oy2-btn-ghost{ border:1px solid rgba(255,255,255,.45); color:#fff !important; }
.oy2-btn-ghost:hover{ background:rgba(255,255,255,.12); border-color:#fff; }
.oy2-btn-navy{ background:var(--oy2-blue); color:#fff !important; }
.oy2-btn-navy:hover{ background:#00457a; color:#fff !important; }
.oy2-btn-line{ border:1px solid var(--oy2-line); color:var(--oy2-blue) !important; background:#fff; }
.oy2-btn-line:hover{ background:var(--oy2-blue-050); }
.oy2-btn .arw{ font-size:1.05em; line-height:1; }
/* istatistik şeridi: hero'nun dibine oturur, boşluk bırakmaz */
.oy2-stats{ display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.16); }
.oy2-stat{ padding:16px 18px 18px; border-left:1px solid rgba(255,255,255,.16); }
.oy2-stat:first-child{ border-left:0; padding-left:0; }
.oy2-stat-n{ display:block; font-size:1.42rem; color:#fff; line-height:1.15; }
.oy2-stat-n em{ font-style:normal; font-size:.78rem; color:#9fd2ff; font-weight:700; margin-left:5px; letter-spacing:0; }
.oy2-stat-d{ display:block; font-size:.79rem; color:#bcd3e8; margin-top:4px; line-height:1.4; }

/* bölüm iskeleti */
.oy2-section{ padding:52px 0; background:#fff; }
.oy2-section-alt{ background:var(--oy2-blue-050); border-top:1px solid var(--oy2-line); border-bottom:1px solid var(--oy2-line); }
.oy2-head{ max-width:860px; margin:0 0 30px; }
.oy2-kicker{ display:block; font-size:.72rem; letter-spacing:.16em; font-weight:800; color:var(--oy2-blue-500); margin-bottom:8px; }
.oy2-head h2{ font-family:'Playfair Display',Georgia,serif; color:#003d6b; font-size:clamp(1.5rem,2.9vw,2rem); font-weight:700; margin:0 0 8px; line-height:1.2; }
.oy2-head p{ color:var(--oy2-body); font-size:1rem; line-height:1.75; margin:0; max-width:760px; }
.oy2-grid-2{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:28px; align-items:start; }
/* Masaüstünde iki sütunun dibi hizalanır: ana fotoğraf kalan boşluğu doldurur (object-fit:cover
   olduğu için kırpma bozulmaz), böylece sol sütun kartlardan kısa kalıp ragged bir boşluk bırakmaz. */
@media(min-width:992px){
  .oy2-grid-2{ align-items:stretch; }
  .oy2-grid-2 > .oy2-media{ height:100%; }
  .oy2-media > .oy2-photo{ flex:1 1 auto; aspect-ratio:auto; min-height:260px; }
  .oy2-media > .oy2-photo:only-child{ flex:0 0 auto; aspect-ratio:3/2; }
}
/* Fotoğrafı olmayan ülke: kartlar iki sütuna yayılır, boş yer kalmaz. */
.oy2-grid-2.tek{ grid-template-columns:1fr 1fr; }
.oy2-grid-2.tek > .oy2-cards{ grid-column:1 / -1; display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:stretch; }
.oy2-media{ display:flex; flex-direction:column; gap:16px; }
.oy2-photo{ margin:0; border-radius:10px; overflow:hidden; position:relative; background:#e8eef5; aspect-ratio:3/2; }
.oy2-photo img{ display:block; width:100%; height:100%; object-fit:cover; }
.oy2-photo figcaption{ position:absolute; left:0; bottom:0; font-size:.72rem; color:#fff; background:rgba(0,18,42,.66); padding:5px 10px; border-radius:0 6px 0 0; }
.oy2-cards{ display:flex; flex-direction:column; gap:16px; }
.oy2-card{ background:#fff; border:1px solid var(--oy2-line); border-radius:10px; padding:20px 22px; }
.oy2-card h3{ font-size:1rem; font-weight:800; color:var(--oy2-ink); margin:0 0 16px; letter-spacing:-.01em; }
.oy2-card p{ font-size:.91rem; line-height:1.72; color:var(--oy2-body); }
/* Dikey ritim: bloklar arası 22px, başlıktan sonra tek boşluk, etiket kendi metnine 6px ile bağlanır. */
.oy2-card > *{ margin:0; }
.oy2-card > * + *{ margin-top:22px; }
.oy2-card > h3 + *{ margin-top:0; }
.oy2-val{ font-size:1.15rem; color:#003d6b; margin:0; font-weight:800; line-height:1.3; }
.oy2-val.uzun{ font-size:.95rem; font-weight:700; line-height:1.55; }
.oy2-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.oy2-chip{ font-size:.8rem; font-weight:600; color:var(--oy2-blue); background:var(--oy2-blue-050); border:1px solid var(--oy2-line); padding:7px 12px; border-radius:4px; }
.oy2-facts{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.oy2-fact{ background:var(--oy2-blue-050); border:1px solid var(--oy2-line); border-radius:8px; padding:13px 15px; display:flex; flex-direction:column; justify-content:center; min-height:68px; }
.oy2-fact span{ display:block; font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; font-weight:800; color:var(--oy2-blue); margin-bottom:2px; }
.oy2-fact b{ display:block; font-size:.94rem; color:var(--oy2-ink); margin-top:5px; font-weight:700; line-height:1.35; }
.oy2-lang{ font-size:.89rem; line-height:1.72; color:var(--oy2-body); }
.oy2-lang span{ display:block; font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; font-weight:800; color:var(--oy2-blue); margin-bottom:7px; }

/* masraf tablosu */
.oy2-cost{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:28px; align-items:start; }
@media(min-width:992px){ .oy2-cost > .oy2-cards{ position:sticky; top:88px; } }
.oy2-table{ border:1px solid var(--oy2-line); border-radius:10px; overflow:hidden; background:#fff; }
.oy2-tr{ display:flex; justify-content:space-between; gap:16px; padding:12px 18px; font-size:.9rem; border-top:1px solid #eaf1f8; }
.oy2-tr:first-child{ border-top:0; }
.oy2-tr.h{ background:#f2f7fc; font-weight:800; color:var(--oy2-ink); font-size:.74rem; letter-spacing:.1em; text-transform:uppercase; padding-top:13px; padding-bottom:13px; }
.oy2-tr.h span:last-child{ font-size:1rem; text-transform:none; letter-spacing:-.02em; }
.oy2-tr span:first-child{ color:#3b4658; }
.oy2-tr span:last-child{ color:var(--oy2-ink); white-space:nowrap; text-align:right; font-weight:700; }
.oy2-tr.tot{ background:var(--oy2-navy); }
.oy2-tr.tot span{ color:#fff !important; }
.oy2-tr small{ display:block; font-weight:400; color:var(--oy2-mute); font-size:.78rem; white-space:normal; line-height:1.55; margin-top:4px; }
.oy2-tr.tot small{ color:#a9c8e4; }
.oy2-tr.sub span:first-child{ padding-left:12px; }
.oy2-tr.wrap{ flex-direction:column; gap:5px; }
.oy2-tr.wrap span:last-child{ white-space:normal; text-align:left; font-weight:500; color:#3b4658; font-size:.88rem; line-height:1.68; }
.oy2-note{ color:var(--oy2-mute); font-size:.82rem; margin:14px 0 0; line-height:1.6; }
.oy2-tips{ margin-top:28px; border-top:1px solid var(--oy2-line); padding-top:22px; }
.oy2-tips h3{ font-size:1rem; font-weight:800; color:var(--oy2-ink); margin:0 0 16px; }
.oy2-tips-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px 28px; }
.oy2-tips-grid.dort{ grid-template-columns:repeat(4,1fr); gap:18px 24px; }
.oy2-tips-grid.dort p{ padding-left:0; border-top:2px solid var(--oy2-blue-500); padding-top:12px; }
.oy2-tips-grid.dort p b{ display:block; color:var(--oy2-ink); font-weight:800; margin-bottom:4px; font-size:.95rem; }
/* başvuru şartları ve üniversite listesi */
.oy2-basvuru{ display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:32px; align-items:start; }
@media(min-width:992px){ .oy2-basvuru > div{ display:flex; flex-direction:column; } .oy2-basvuru > div > .oy2-list{ flex:1 1 auto; } }
.oy2-basvuru .oy2-head{ margin-bottom:16px; }
.oy2-unis{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.oy2-uni{ display:flex; align-items:center; gap:12px; border:1px solid var(--oy2-line); border-radius:10px; padding:11px 14px; text-decoration:none; background:#fff; transition:border-color .2s ease, background .2s ease; }
.oy2-uni:hover{ border-color:#bcd6ef; background:var(--oy2-blue-050); }
.oy2-uni img{ width:38px; height:38px; object-fit:contain; flex:0 0 auto; }
.oy2-uni span{ display:block; font-size:.82rem; color:var(--oy2-mute); line-height:1.4; min-width:0; }
.oy2-uni span b{ display:block; font-size:.88rem; color:var(--oy2-ink); font-weight:700; line-height:1.35; }
.oy2-tips-grid p{ margin:0; font-size:.89rem; line-height:1.7; color:var(--oy2-body); padding-left:30px; position:relative; }
.oy2-tips-grid p span{ position:absolute; left:0; top:1px; width:21px; height:21px; border-radius:4px; background:var(--oy2-blue-050); border:1px solid var(--oy2-line); color:var(--oy2-blue); font-size:.72rem; font-weight:800; display:inline-flex; align-items:center; justify-content:center; }
/* konaklama satırları: ikon yerine ince mavi çizgi */
.oy2-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; }
.oy2-list li{ padding:13px 0 13px 15px; border-left:2px solid var(--oy2-blue-500); border-bottom:1px solid #eaf1f8; font-size:.9rem; line-height:1.7; color:var(--oy2-body); }
.oy2-list li:last-child{ border-bottom:0; padding-bottom:0; }
.oy2-list li:first-child{ padding-top:0; }
.oy2-list li b{ color:var(--oy2-ink); display:block; margin-bottom:3px; font-weight:700; }


/* vize adımları */
.oy2-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:0; border:1px solid var(--oy2-line); border-radius:10px; overflow:hidden; background:#fff; }
.oy2-step{ padding:22px 24px; border-right:1px solid var(--oy2-line); border-bottom:1px solid var(--oy2-line); }
.oy2-step:nth-child(3n){ border-right:0; }
.oy2-step:nth-last-child(-n+3){ border-bottom:0; }
.oy2-step-no{ display:block; font-size:.78rem; color:var(--oy2-blue-500); margin-bottom:9px; font-weight:700; }
.oy2-step h3{ font-size:.97rem; font-weight:800; color:var(--oy2-ink); margin:0 0 8px; line-height:1.35; }
.oy2-step p{ font-size:.88rem; line-height:1.7; color:var(--oy2-body); margin:0; }
.oy2-minis{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:16px; }
.oy2-mini{ background:var(--oy2-navy); color:#fff; border-radius:10px; padding:18px 20px; }
.oy2-mini span{ display:block; font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; font-weight:800; color:#9fd2ff; margin-bottom:9px; }
.oy2-mini p{ margin:0; font-size:.86rem; line-height:1.65; color:#dbe9f7; }

/* çalışma, burslar, uyarı */
.oy2-work{ display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:stretch; }
.oy2-work > .oy2-cards{ height:100%; }
.oy2-work > .oy2-cards > :last-child{ flex:1 1 auto; }
.oy2-work .oy2-warn{ height:100%; }
.oy2-warn{ background:#fff; border:1px solid var(--oy2-line); border-left:3px solid var(--oy2-blue-500); border-radius:8px; padding:20px 22px; }
.oy2-warn h3{ font-size:.96rem; font-weight:800; color:var(--oy2-ink); margin:0 0 14px; }
.oy2-warn p{ font-size:.89rem; line-height:1.72; color:var(--oy2-body); margin:0 0 14px; }
.oy2-warn p:last-child{ margin-bottom:0; }
.oy2-warn ul{ margin:10px 0 16px; padding-left:18px; font-size:.87rem; color:var(--oy2-body); line-height:1.75; }
.oy2-warn ul + p{ margin-top:0; }
.oy2-warn a{ color:var(--oy2-blue); font-weight:700; }

/* galeri */
.oy2-gallery{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.oy2-gallery.one{ grid-template-columns:1fr; }
.oy2-gallery figure{ margin:0; border-radius:10px; overflow:hidden; aspect-ratio:3/2; position:relative; background:#e8eef5; }
.oy2-gallery img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .45s ease; }
.oy2-gallery figure:hover img{ transform:scale(1.03); }
.oy2-gallery figcaption{ position:absolute; left:0; bottom:0; font-size:.71rem; color:#fff; background:rgba(0,18,42,.66); padding:4px 9px; border-radius:0 6px 0 0; }

/* sss */
.oy2-faq{ border:1px solid var(--oy2-line); border-radius:10px; overflow:hidden; background:#fff; }
.oy2-faq details{ border-top:1px solid var(--oy2-line); }
.oy2-faq details:first-child{ border-top:0; }
.oy2-faq summary{ cursor:pointer; padding:17px 20px; font-weight:700; color:var(--oy2-ink); font-size:.95rem; list-style:none; display:flex; justify-content:space-between; gap:14px; align-items:center; line-height:1.5; }
.oy2-faq summary::-webkit-details-marker{ display:none; }
.oy2-faq summary::after{ content:""; width:9px; height:9px; border-right:2px solid var(--oy2-blue-500); border-bottom:2px solid var(--oy2-blue-500); transform:rotate(45deg); transition:transform .2s ease; flex:0 0 auto; margin-right:4px; }
.oy2-faq details[open] summary::after{ transform:rotate(-135deg); }
.oy2-faq details p{ margin:0; padding:0 20px 18px; font-size:.91rem; line-height:1.75; color:var(--oy2-body); }

/* kapanış */
.oy2-cta{ padding:0 0 56px; background:#fff; }
.oy2-cta-card{ background:linear-gradient(135deg,var(--oy2-navy) 0%,#004f8c 100%); border-radius:12px; padding:30px 34px; display:grid; grid-template-columns:1fr auto; gap:24px; align-items:center; color:#fff; }
.oy2-cta-card h2{ font-family:'Playfair Display',Georgia,serif; font-size:clamp(1.35rem,2.6vw,1.8rem); font-weight:700; color:#fff; margin:0 0 6px; }
.oy2-cta-card p{ color:#c9ddf1; margin:0; line-height:1.55; font-size:.94rem; max-width:560px; }
.oy2-cta-right{ display:flex; gap:10px; flex-wrap:wrap; }
.oy2-hazirlaniyor{ border:1px dashed #cfe2f7; border-radius:8px; padding:12px 14px; color:var(--oy2-mute); font-size:.88rem; background:#fff; }

/* görünüşe giriş */
.oy2-rv{ opacity:0; transform:translateY(16px); transition:opacity .5s ease, transform .5s ease; transition-delay:var(--d,0ms); }
.oy2-rv.is-in{ opacity:1; transform:none; transition-delay:0ms; }
.oy2-card.oy2-rv.is-in, .oy2-gallery figure.oy2-rv.is-in{ transition:none; }
@media (prefers-reduced-motion: reduce){ .oy2-rv{ transition:none; opacity:1; transform:none; } .oy2-btn, .oy2-gallery img{ transition:none; } }

@media(max-width:991px){
  .oy2-hero{ padding:112px 0 0; }
  .oy2-stats{ grid-template-columns:1fr 1fr; }
  .oy2-stat{ border-top:1px solid rgba(255,255,255,.16); }
  .oy2-stat:nth-child(-n+2){ border-top:0; }
  .oy2-stat:nth-child(odd){ border-left:0; padding-left:0; }
  .oy2-grid-2, .oy2-cost, .oy2-work, .oy2-basvuru{ grid-template-columns:1fr; }
  .oy2-tips-grid.dort{ grid-template-columns:1fr 1fr; }
  .oy2-steps{ grid-template-columns:1fr 1fr; }
  .oy2-step:nth-child(3n){ border-right:1px solid var(--oy2-line); }
  .oy2-step:nth-child(2n){ border-right:0; }
  .oy2-step:nth-last-child(-n+3){ border-bottom:1px solid var(--oy2-line); }
  .oy2-step:nth-last-child(-n+2){ border-bottom:0; }
  .oy2-minis{ grid-template-columns:1fr 1fr; }
  .oy2-tips-grid{ grid-template-columns:1fr 1fr; gap:14px 22px; }
  .oy2-cta-card{ grid-template-columns:1fr; }
}
@media(max-width:560px){
  .oy2-section{ padding:38px 0; }
  .oy2-hero-cta .oy2-btn{ flex:1 1 auto; justify-content:center; }
  .oy2-steps, .oy2-minis, .oy2-facts, .oy2-tips-grid, .oy2-tips-grid.dort, .oy2-unis{ grid-template-columns:1fr; }
  .oy2-step{ border-right:0 !important; border-bottom:1px solid var(--oy2-line) !important; }
  .oy2-step:last-child{ border-bottom:0 !important; }
  .oy2-tr{ padding:10px 12px; font-size:.86rem; }
  .oy2-cta-card{ padding:24px 20px; }
  .oy2-cta-right .oy2-btn{ flex:1 1 auto; justify-content:center; }
}
