/* =================================================================
   ÖZBUDENT — Belgeler ve Sertifikalar sayfası (bs- önek)
   Ortak temel: assets/css/style.css (.wrap, .btn, .section-no, .reveal)
   ================================================================= */

/* ---- HERO (koyu lacivert — hk-hero ile aynı dil) ---- */
.bs-hero{
  position:relative; overflow:hidden; color:#fff;
  padding:clamp(36px,5.5vw,72px) 0 clamp(48px,6vw,84px);
  background:
    radial-gradient(900px 430px at 88% -12%, rgba(43,134,255,.34), transparent 62%),
    radial-gradient(720px 380px at -8% 112%, rgba(70,198,255,.16), transparent 60%),
    linear-gradient(135deg, var(--navy-deep), var(--navy) 58%, #0d2a66);
}
.bs-hero::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(rgba(255,255,255,.05) 1px, transparent 1.4px) 0 0/26px 26px;
}
.bs-hero .wrap{ position:relative; z-index:2; }
.bs-bread{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:.86rem; color:rgba(255,255,255,.6); margin-bottom:26px; }
.bs-bread a{ color:rgba(255,255,255,.6); transition:color .2s; }
.bs-bread a:hover{ color:#fff; }
.bs-bread .sep{ opacity:.5; }
.bs-bread b{ color:#fff; font-weight:600; }
.bs-eyebrow{
  font-size:.74rem; font-weight:700; letter-spacing:.22em; text-transform:uppercase;
  color:var(--cyan); display:inline-flex; align-items:center; gap:.6em;
}
.bs-eyebrow svg{ width:16px; height:16px; }
.bs-hero h1{ color:#fff; margin-top:14px; font-size:clamp(2rem,4.6vw,3.3rem); max-width:760px; }
.bs-lead{ margin-top:18px; max-width:680px; color:rgba(255,255,255,.78); font-size:clamp(1rem,1.6vw,1.16rem); }
.bs-ipucu{
  display:inline-flex; align-items:center; gap:.55em; margin-top:26px;
  font-size:.86rem; font-weight:600; color:var(--cyan);
  background:rgba(70,198,255,.1); border:1px solid rgba(70,198,255,.28);
  border-radius:999px; padding:8px 16px;
}
.bs-ipucu svg{ width:15px; height:15px; }

/* ---- Bölüm düzeni ---- */
.bs-sec{ padding-block:clamp(46px,6vw,76px); scroll-margin-top:96px; }
.bs-sec.alt{ background:linear-gradient(180deg,#fff,var(--paper)); }
.bs-head{ max-width:720px; margin-bottom:34px; }
.bs-head .section-no{ display:inline-block; margin-bottom:12px; }
.bs-head h2{ font-size:clamp(1.6rem,3vw,2.3rem); }
.bs-head p{ margin-top:14px; color:var(--muted); font-size:1.02rem; }

/* ---- Belge kartları ---- */
.bs-grid{ display:grid; gap:22px; }
.bs-grid-resmi{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.bs-grid-iso{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.bs-belge{
  background:#fff; border:1px solid var(--line-strong); border-radius:var(--r-md);
  overflow:hidden; cursor:zoom-in; box-shadow:var(--shadow-sm);
  transition:transform .25s, box-shadow .25s, border-color .25s;
  display:flex; flex-direction:column;
}
.bs-belge:hover, .bs-belge:focus-visible{
  transform:translateY(-4px); box-shadow:var(--shadow-md); border-color:rgba(12,92,224,.35);
  outline:none;
}
.bs-foto{
  position:relative; background:linear-gradient(180deg,#eef3fb,#e3ebf8);
  padding:clamp(14px,2vw,22px); display:flex; justify-content:center;
}
.bs-foto img{
  width:100%; max-width:300px; aspect-ratio:1/1.414; object-fit:cover; object-position:top;
  border-radius:6px; box-shadow:0 10px 26px rgba(6,20,58,.18);
  transition:transform .3s;
}
.bs-belge:hover .bs-foto img{ transform:scale(1.025); }
.bs-zoom{
  position:absolute; right:14px; bottom:14px; width:38px; height:38px; border-radius:50%;
  background:#fff; color:var(--brand); display:inline-flex; align-items:center; justify-content:center;
  box-shadow:0 8px 20px rgba(6,20,58,.2); opacity:0; transform:translateY(6px);
  transition:opacity .25s, transform .25s;
}
.bs-zoom svg{ width:17px; height:17px; }
.bs-belge:hover .bs-zoom, .bs-belge:focus-visible .bs-zoom{ opacity:1; transform:translateY(0); }
.bs-bilgi{ padding:clamp(18px,2.4vw,24px); display:flex; flex-direction:column; gap:8px; flex:1; }
.bs-kurum{
  font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  color:var(--brand);
}
.bs-bilgi h3{ font-size:1.12rem; line-height:1.3; }
.bs-altbaslik{ font-size:.9rem; font-weight:600; color:var(--ink); }
.bs-no{ font-size:.85rem; color:var(--muted); }
.bs-no b{ color:var(--ink); font-weight:600; }
.bs-bilgi p{ font-size:.92rem; color:var(--muted); line-height:1.55; }
.bs-pdf{
  margin-top:auto; padding-top:10px;
  display:inline-flex; align-items:center; gap:.5em;
  font-size:.88rem; font-weight:600; color:var(--brand);
}
.bs-pdf svg{ width:15px; height:15px; }
.bs-pdf:hover{ text-decoration:underline; }

/* ---- Kapanış CTA (koyu) ---- */
.bs-final{
  position:relative; overflow:hidden; color:#fff;
  /* Footer'a bitişik + DİKİŞSİZ geçiş: hk-final/cat-final ile AYNI kalıp —
     negatif margin footer'ın üst boşluğunu içeri alır; arka plan alta doğru
     navy-deep'e kararıp footer'ın üst mavi parıltısını seam'de devam ettirir. */
  margin-bottom:calc(-1 * clamp(40px,6vw,90px));
  padding:clamp(56px,8vw,90px) 0;
  background:
    radial-gradient(circle 520px at 50% 100%, rgba(43,134,255,.16), transparent 65%),
    linear-gradient(180deg, transparent 48%, var(--navy-deep) 100%),
    radial-gradient(120% 140% at 100% 0%, var(--brand) 0%, var(--navy) 45%, var(--navy-deep) 100%);
}
.bs-final .wrap{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:26px; }
.bs-final h2{ color:#fff; font-size:clamp(1.5rem,2.8vw,2.1rem); max-width:560px; }
.bs-final p{ margin-top:10px; color:rgba(255,255,255,.74); max-width:560px; }
.bs-final-actions{ display:flex; flex-wrap:wrap; gap:12px; }
.bs-btn-light{ background:#fff; color:var(--brand); }
.bs-btn-light:hover{ transform:translateY(-2px); box-shadow:0 18px 40px rgba(6,20,58,.30); }
.bs-btn-outline{ background:transparent; color:#fff; border:1.5px solid rgba(255,255,255,.4); }
.bs-btn-outline:hover{ border-color:#fff; background:rgba(255,255,255,.08); transform:translateY(-2px); }

/* ---- Lightbox ---- */
.bs-lb{
  position:fixed; inset:0; z-index:1300; display:flex; align-items:center; justify-content:center;
  padding:clamp(16px,4vw,48px);
  background:rgba(6,20,58,.82); backdrop-filter:blur(6px);
  opacity:0; pointer-events:none; transition:opacity .25s;
}
.bs-lb.open{ opacity:1; pointer-events:auto; }
body.bs-lb-open{ overflow:hidden; }
.bs-lb-icerik{ max-width:min(720px,100%); max-height:100%; display:flex; flex-direction:column; gap:14px; }
.bs-lb-icerik img{
  max-width:100%; min-height:0; flex:1; object-fit:contain;
  border-radius:10px; box-shadow:0 30px 80px rgba(0,0,0,.45); background:#fff;
}
.bs-lb-cap{ text-align:center; color:rgba(255,255,255,.85); font-size:.95rem; font-weight:500; }
.bs-lb-kapat{
  position:absolute; top:18px; right:18px; width:46px; height:46px; border-radius:50%;
  border:0; cursor:pointer; background:rgba(255,255,255,.12); color:#fff;
  display:inline-flex; align-items:center; justify-content:center;
  transition:background .2s, transform .2s;
}
.bs-lb-kapat:hover{ background:rgba(255,255,255,.24); transform:rotate(90deg); }
.bs-lb-kapat svg{ width:20px; height:20px; }

/* ---- Mobil ---- */
@media (max-width: 960px){
  .bs-grid-iso{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px){
  .bs-grid-resmi{ grid-template-columns:1fr; }
  .bs-final .wrap{ flex-direction:column; align-items:flex-start; }
}
@media (max-width: 620px){
  .bs-grid-iso{ grid-template-columns:1fr; }
  .bs-foto img{ max-width:260px; }
}
