/* =========================================================
   Akın Ertürk Koleji — Modern Tanıtım Sitesi
   Tasarım: animasyonlu, mobil-öncelikli, satışa hazır
   ========================================================= */

/* ---------- Tokens ---------- */
:root{
  --ink:        #0b1437;
  --ink-2:      #1b2a52;
  --muted:      #5b678a;
  --line:       #e6eaf3;

  --primary:    #2563eb;
  --primary-d:  #1d4ed8;
  --indigo:     #4f46e5;
  --cyan:       #06b6d4;
  --gold:       #f59e0b;
  --gold-d:     #d97706;

  --bg:         #ffffff;
  --bg-soft:    #f5f7fd;
  --bg-dark:    #0b1437;

  --grad:       linear-gradient(120deg,#4f46e5 0%,#2563eb 45%,#06b6d4 100%);
  --grad-gold:  linear-gradient(120deg,#f59e0b,#f97316);

  --radius:     22px;
  --radius-sm:  14px;
  --shadow-sm:  0 4px 18px rgba(13,30,80,.06);
  --shadow:     0 18px 50px rgba(13,30,80,.10);
  --shadow-lg:  0 40px 90px rgba(13,30,80,.18);

  --container:  1200px;
  --ease:       cubic-bezier(.22,.61,.36,1);
  --font:       'Inter', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --display:    'Sora', var(--font);
}

/* ---------- Reset ---------- */
*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0 }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100% }
body{
  font-family:var(--font);
  color:var(--ink);
  background:var(--bg);
  line-height:1.65;
  font-size:16px;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block }
a{ color:inherit; text-decoration:none }
button{ font-family:inherit; cursor:pointer; border:none; background:none }
ul{ list-style:none }
input,select,textarea{ font-family:inherit; font-size:1rem }
section{ position:relative }

.container{ width:min(100% - 40px, var(--container)); margin-inline:auto }

/* ---------- Typography ---------- */
.h2{
  font-family:var(--display);
  font-weight:800;
  font-size:clamp(1.8rem, 1.1rem + 2.6vw, 3rem);
  line-height:1.12;
  letter-spacing:-.02em;
}
.grad{
  background:var(--grad);
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; color:transparent;
}
.eyebrow{
  display:inline-block;
  font-weight:700; font-size:.8rem; letter-spacing:.16em; text-transform:uppercase;
  color:var(--primary);
  margin-bottom:14px;
}
.section{ padding:clamp(64px, 5vw, 110px) 0 }
.section--soft{ background:var(--bg-soft) }
.section__head{ max-width:680px; margin:0 auto clamp(36px,4vw,60px); text-align:center }
.section__sub{ color:var(--muted); margin-top:14px; font-size:1.05rem }

/* ---------- Buttons ---------- */
.btn{
  --bg:var(--primary);
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  font-weight:600; font-size:.98rem;
  padding:13px 24px; border-radius:100px;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease), background .3s, color .3s;
  white-space:nowrap; will-change:transform;
}
.btn svg{ transition:transform .35s var(--ease) }
.btn:hover{ transform:translateY(-3px) }
.btn:active{ transform:translateY(-1px) }
.btn--lg{ padding:16px 30px; font-size:1.04rem }
.btn--block{ width:100%; display:flex }

.btn--primary{ background:var(--grad); color:#fff; box-shadow:0 14px 30px rgba(37,99,235,.32) }
.btn--primary:hover{ box-shadow:0 20px 44px rgba(37,99,235,.45) }
.btn--primary:hover svg{ transform:translateX(4px) }

.btn--ghost{ background:rgba(255,255,255,.7); color:var(--ink); border:1.5px solid var(--line); backdrop-filter:blur(8px) }
.btn--ghost:hover{ border-color:var(--primary); color:var(--primary) }

.btn--dark{ background:var(--ink); color:#fff }
.btn--dark:hover{ background:var(--ink-2) }

.btn--light{ background:#fff; color:var(--primary-d) }
.btn--outline-light{ background:transparent; color:#fff; border:1.6px solid rgba(255,255,255,.5) }
.btn--outline-light:hover{ background:rgba(255,255,255,.12) }

/* ---------- Pills / chips ---------- */
.pill{
  display:inline-flex; align-items:center; gap:9px;
  padding:8px 16px; border-radius:100px;
  background:rgba(37,99,235,.08); color:var(--primary-d);
  font-weight:600; font-size:.86rem;
  border:1px solid rgba(37,99,235,.16);
}
.pill__dot{ width:8px; height:8px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 4px rgba(245,158,11,.2); animation:pulse 1.8s infinite }

/* ---------- Preloader ---------- */
.preloader{
  position:fixed; inset:0; z-index:9999;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px;
  background:var(--bg-dark); color:#fff;
  transition:opacity .6s ease, visibility .6s;
}
.preloader.is-done{ opacity:0; visibility:hidden }
.preloader__mark{ color:#fff; animation:popIn .7s var(--ease) both }
.preloader__text{ font-family:var(--display); font-weight:800; letter-spacing:.22em; font-size:1.1rem }
.preloader__bar{ width:160px; height:4px; border-radius:10px; background:rgba(255,255,255,.16); overflow:hidden }
.preloader__bar span{ display:block; height:100%; width:0; background:var(--grad-gold); border-radius:10px; animation:load 1.1s var(--ease) forwards }
@keyframes load{ to{ width:100% } }

/* ---------- Scroll progress ---------- */
.scroll-progress{
  position:fixed; top:0; left:0; height:3px; width:0%;
  background:var(--grad); z-index:1000; transition:width .1s linear;
}

/* ---------- Topbar ---------- */
.topbar{ background:var(--ink); color:#fff; font-size:.83rem }
.topbar__row{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:9px 0 }
.topbar__info{ display:flex; align-items:center; gap:24px; min-width:0 }
.topbar__info a, .topbar__info span{ display:inline-flex; align-items:center; gap:7px; color:rgba(255,255,255,.84); white-space:nowrap; transition:color .25s }
.topbar__info a:hover{ color:#fff }
.topbar__info svg{ opacity:.65; flex-shrink:0 }
.topbar__meta{ display:flex; align-items:center; gap:18px }
.topbar__cta{ display:inline-flex; align-items:center; gap:8px; color:var(--gold); font-weight:700; white-space:nowrap; transition:color .25s }
.topbar__cta:hover{ color:#fff }
.topbar__pulse{ width:7px; height:7px; border-radius:50%; background:var(--gold); animation:pulse 1.8s infinite }
.topbar__social{ display:inline-flex; gap:12px; padding-left:18px; border-left:1px solid rgba(255,255,255,.2) }
.topbar__social a{ color:rgba(255,255,255,.7); display:inline-flex; transition:color .25s, transform .25s }
.topbar__social a:hover{ color:#fff; transform:translateY(-2px) }

/* ---------- Navbar ---------- */
.nav{
  position:sticky; top:0; z-index:900;
  background:#fff; border-bottom:1px solid var(--line);
  transition:box-shadow .35s var(--ease), padding .3s;
}
.nav.is-stuck{ box-shadow:0 10px 34px rgba(13,30,80,.10) }
.nav__inner{ display:flex; align-items:center; justify-content:space-between; gap:22px; padding:14px 0; transition:padding .3s }
.nav.is-stuck .nav__inner{ padding:9px 0 }

.brand{ display:inline-flex; align-items:center; gap:11px; flex-shrink:0 }
.brand__mark{
  display:grid; place-items:center; width:46px; height:46px; border-radius:14px;
  color:#fff; background:var(--grad); box-shadow:0 8px 20px rgba(37,99,235,.32);
}
.brand__text{ display:flex; flex-direction:column; line-height:1; white-space:nowrap }
.brand__text strong{ font-family:var(--display); font-weight:800; font-size:1.15rem; letter-spacing:-.01em; color:var(--ink); white-space:nowrap }
.brand__text small{ font-size:.56rem; letter-spacing:.24em; color:var(--muted); margin-top:4px; font-weight:700; white-space:nowrap }

.nav__links{ display:flex; align-items:center; gap:2px }
.nav__links > a:not(.btn), .nav__droptop{
  position:relative; display:inline-flex; align-items:center; gap:5px;
  padding:9px 13px; font-weight:600; font-size:.94rem; color:var(--ink-2);
  border-radius:11px; cursor:pointer; transition:color .2s, background .2s;
}
.nav__links > a:not(.btn):hover, .nav__droptop:hover,
.nav__drop.is-open .nav__droptop{ color:var(--primary); background:var(--bg-soft) }
.nav__links > a.is-active, .nav__droptop.is-active{ color:var(--primary); background:rgba(37,99,235,.09) }
.nav__cta{ margin-left:10px; padding:10px 21px; flex-shrink:0 }

/* Dropdown */
.nav__drop{ position:relative; display:flex; align-items:center }
.nav__droptop .caret{ transition:transform .3s var(--ease) }
.nav__drop.is-open .caret{ transform:rotate(180deg) }
.nav__menu{
  position:absolute; top:100%; left:50%; min-width:232px;
  transform:translateX(-50%) translateY(12px);
  background:#fff; border:1px solid var(--line); border-radius:16px;
  box-shadow:0 24px 60px rgba(13,30,80,.16); padding:16px 8px 8px;
  display:flex; flex-direction:column; gap:1px;
  opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .22s var(--ease), transform .22s var(--ease); z-index:60;
}
.nav__drop.is-open .nav__menu{ opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0) }
.nav__menu a{ padding:11px 16px; border-radius:10px; font-size:.92rem; font-weight:500; color:var(--ink-2); white-space:nowrap; transition:background .2s, color .2s }
.nav__menu a:hover{ background:var(--bg-soft); color:var(--primary) }

.nav__toggle{ display:none; flex-direction:column; gap:5px; padding:9px; border-radius:10px; transition:background .2s }
.nav__toggle:hover{ background:var(--bg-soft) }
.nav__toggle span{ width:24px; height:2.4px; background:var(--ink); border-radius:3px; transition:transform .35s var(--ease), opacity .25s }

/* Topbar responsive */
@media (max-width:900px){ .topbar__email, .topbar__hours{ display:none } }
@media (max-width:680px){
  .topbar__social{ display:none }
  .topbar__meta{ gap:0 }
}
@media (max-width:480px){
  .topbar__info{ display:none }
  .topbar__row{ justify-content:center }
}

/* ---------- Mobile drawer ---------- */
.drawer{ position:fixed; inset:0; z-index:950; visibility:hidden; }
.drawer.is-open{ visibility:visible }
.drawer__overlay{ position:absolute; inset:0; background:rgba(11,20,55,.5); opacity:0; backdrop-filter:blur(2px); transition:opacity .4s }
.drawer.is-open .drawer__overlay{ opacity:1 }
.drawer__panel{
  position:absolute; top:0; right:0; height:100%; width:min(86vw, 360px);
  background:#fff; padding:22px; display:flex; flex-direction:column; gap:18px;
  transform:translateX(100%); transition:transform .45s var(--ease);
  box-shadow:-30px 0 70px rgba(13,30,80,.2); overflow-y:auto;
}
.drawer.is-open .drawer__panel{ transform:translateX(0) }
.drawer__head{ display:flex; align-items:center; justify-content:space-between }
.drawer__close{ font-size:2rem; line-height:1; color:var(--muted); width:40px; height:40px; border-radius:12px }
.drawer__close:hover{ background:var(--bg-soft); color:var(--ink) }
.drawer__links{ display:flex; flex-direction:column; gap:2px; margin-top:6px }
.drawer__links a{
  display:flex; align-items:center; gap:14px; padding:15px 12px; border-radius:14px;
  font-family:var(--display); font-weight:700; font-size:1.15rem; color:var(--ink);
  transition:background .25s, transform .25s, color .25s;
}
.drawer__links a span{ font-family:var(--font); font-size:.8rem; color:var(--primary); font-weight:700; opacity:.6 }
.drawer__links a:hover{ background:var(--bg-soft); transform:translateX(6px); color:var(--primary) }
.drawer__contact{ display:flex; flex-direction:column; gap:8px; padding-top:8px; border-top:1px solid var(--line) }
.drawer__contact a{ color:var(--ink-2); font-weight:600; font-size:.95rem }
.drawer__contact a:hover{ color:var(--primary) }
.drawer__social{ display:flex; gap:10px; margin-top:auto }
.drawer__social a{ flex:1; text-align:center; padding:11px; border-radius:12px; background:var(--bg-soft); font-weight:600; font-size:.9rem; transition:background .25s }
.drawer__social a:hover{ background:var(--primary); color:#fff }

/* =========================================================
   HERO
   ========================================================= */
.hero{ position:relative; padding:clamp(48px,6vw,90px) 0 clamp(70px,7vw,110px); overflow:hidden }
.hero__bg{ position:absolute; inset:0; z-index:-1; overflow:hidden }
.blob{ position:absolute; border-radius:50%; filter:blur(60px); opacity:.5; }
.blob--1{ width:520px; height:520px; background:radial-gradient(circle,#6366f1,transparent 70%); top:-160px; right:-120px; animation:drift 16s var(--ease) infinite alternate }
.blob--2{ width:440px; height:440px; background:radial-gradient(circle,#06b6d4,transparent 70%); bottom:-180px; left:-120px; animation:drift 20s var(--ease) infinite alternate-reverse }
.blob--3{ width:360px; height:360px; background:radial-gradient(circle,#f59e0b,transparent 70%); top:30%; left:42%; opacity:.28; animation:drift 24s var(--ease) infinite alternate }
.grid-fade{
  position:absolute; inset:0;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:46px 46px;
  -webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 35%,#000 30%,transparent 75%);
  mask-image:radial-gradient(ellipse 80% 60% at 50% 35%,#000 30%,transparent 75%);
  opacity:.5;
}

.hero__grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:center }
.hero__title{
  font-family:var(--display); font-weight:800;
  font-size:clamp(2.6rem, 1.6rem + 4.6vw, 5rem); line-height:1.02; letter-spacing:-.03em;
  margin:18px 0 20px;
}
.hero__title .line{ display:block; overflow:hidden }
.hero__lead{ color:var(--muted); font-size:1.16rem; max-width:520px }
.hero__actions{ display:flex; gap:14px; margin:30px 0 26px; flex-wrap:wrap }
.hero__trust{ display:flex; align-items:center; gap:14px }
.hero__trust p{ font-size:.95rem; color:var(--muted) }
.hero__trust strong{ color:var(--ink) }
.avatars{ display:flex }
.avatars span{
  width:38px; height:38px; border-radius:50%; border:2.5px solid #fff; margin-left:-12px;
  background:var(--grad); box-shadow:var(--shadow-sm);
}
.avatars span:nth-child(1){ margin-left:0; background:linear-gradient(135deg,#f59e0b,#f97316) }
.avatars span:nth-child(2){ background:linear-gradient(135deg,#10b981,#06b6d4) }
.avatars span:nth-child(3){ background:linear-gradient(135deg,#6366f1,#8b5cf6) }
.avatars span:nth-child(4){ background:linear-gradient(135deg,#2563eb,#06b6d4) }

.hero__visual{ position:relative }
.hero__photo{
  position:relative; border-radius:30px; overflow:visible;
  aspect-ratio:4/4.4; transform-style:preserve-3d;
}
.hero__photo img{
  width:100%; height:100%; object-fit:cover; border-radius:30px;
  box-shadow:var(--shadow-lg); border:6px solid #fff;
}
.hero__photo--fallback{ background:var(--grad); border-radius:30px; box-shadow:var(--shadow-lg) }
.hero__photo--fallback::after{ content:"🎓"; position:absolute; inset:0; display:grid; place-items:center; font-size:5rem }

.hero__badge{
  position:absolute; display:flex; align-items:center; gap:11px;
  background:rgba(255,255,255,.85); backdrop-filter:blur(10px);
  padding:13px 16px; border-radius:16px; box-shadow:var(--shadow);
  border:1px solid rgba(255,255,255,.6);
}
.hero__badge strong{ font-family:var(--display); font-size:1.25rem; display:block; line-height:1 }
.hero__badge small{ color:var(--muted); font-size:.76rem }
.hero__badge-ic{ display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:rgba(37,99,235,.12); font-size:1.2rem }
.hero__badge-ic--gold{ background:rgba(245,158,11,.16) }
.hero__badge--top{ top:24px; left:-26px }
.hero__badge--bot{ bottom:30px; right:-22px }

.hero__scroll{
  position:absolute; left:50%; bottom:18px; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:8px;
  font-size:.78rem; letter-spacing:.18em; text-transform:uppercase; color:var(--muted); font-weight:600;
}
.mouse{ width:24px; height:38px; border:2px solid var(--muted); border-radius:14px; display:flex; justify-content:center; padding-top:6px }
.mouse span{ width:4px; height:7px; border-radius:4px; background:var(--primary); animation:scrollDot 1.6s infinite }

/* ---------- Marquee ---------- */
.marquee{ background:var(--ink); color:#fff; overflow:hidden; padding:16px 0 }
.marquee__track{ display:flex; align-items:center; gap:26px; white-space:nowrap; width:max-content; animation:marquee 26s linear infinite }
.marquee span{ font-family:var(--display); font-weight:700; font-size:1.4rem; opacity:.92 }
.marquee .dot{ color:var(--gold); font-size:1.4rem }

/* ---------- Stats ---------- */
.stats{ padding:clamp(46px,5vw,68px) 0 clamp(8px,1vw,16px); position:relative; z-index:5 }
.stats__grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:18px;
  background:#fff; border-radius:var(--radius); padding:36px 24px;
  box-shadow:var(--shadow); border:1px solid var(--line);
}
.stat{ text-align:center; position:relative }
.stat:not(:last-child)::after{ content:""; position:absolute; right:-9px; top:15%; height:70%; width:1px; background:var(--line) }
.stat__num{ font-family:var(--display); font-weight:800; font-size:clamp(2rem,1.4rem+1.6vw,2.9rem); background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; line-height:1 }
.stat p{ color:var(--muted); font-weight:600; margin-top:8px; font-size:.95rem }

/* ---------- About ---------- */
.about__grid{ display:grid; grid-template-columns:1fr 1.1fr; gap:clamp(32px,4vw,70px); align-items:center }
.about__media{ position:relative; }
.about__img{ border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow) }
.about__img img{ width:100%; height:100%; object-fit:cover }
.about__img--lg{ aspect-ratio:4/3.4 }
.about__img--sm{ position:absolute; bottom:-34px; right:-22px; width:48%; aspect-ratio:4/3.2; border:6px solid #fff }
.img-fallback{ background:var(--grad); position:relative }
.img-fallback::after{ content:"📚"; position:absolute; inset:0; display:grid; place-items:center; font-size:3rem }
.about__ring{
  position:absolute; top:-26px; left:-26px; width:96px; height:96px; border-radius:50%;
  background:var(--grad-gold); color:#fff; display:grid; place-content:center; text-align:center;
  box-shadow:0 16px 34px rgba(245,158,11,.4); line-height:1.1;
}
.about__ring strong{ font-size:.8rem; opacity:.9 }
.about__ring span{ font-family:var(--display); font-weight:800; font-size:1.5rem }
.about__copy p{ color:var(--muted); margin:16px 0 22px; font-size:1.05rem }
.about__list{ display:grid; gap:12px; margin-bottom:28px }
.about__list li{ display:flex; align-items:flex-start; gap:12px; font-weight:500; color:var(--ink-2) }
.tick{ flex-shrink:0; width:24px; height:24px; border-radius:50%; background:rgba(16,185,129,.14); color:#10b981; display:grid; place-items:center; font-size:.8rem; font-weight:800; margin-top:2px }

/* ---------- Levels ---------- */
.levels__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px }
.level-card{
  position:relative; background:#fff; border-radius:var(--radius); padding:30px 26px;
  border:1px solid var(--line); box-shadow:var(--shadow-sm); overflow:hidden;
  transition:transform .4s var(--ease), box-shadow .4s var(--ease);
}
.level-card::before{
  content:""; position:absolute; inset:0 0 auto 0; height:5px;
  background:linear-gradient(90deg,var(--c1),var(--c2));
  transform:scaleX(0); transform-origin:left; transition:transform .45s var(--ease);
}
.level-card::after{
  content:""; position:absolute; bottom:-50px; right:-50px; width:140px; height:140px; border-radius:50%;
  background:linear-gradient(135deg,var(--c1),var(--c2)); opacity:0; transition:opacity .4s; filter:blur(8px);
}
.level-card:hover{ transform:translateY(-10px); box-shadow:var(--shadow-lg) }
.level-card:hover::before{ transform:scaleX(1) }
.level-card:hover::after{ opacity:.12 }
.level-card__top{ display:flex; align-items:center; justify-content:space-between; margin-bottom:18px }
.level-card__ic{
  display:grid; place-items:center; width:58px; height:58px; border-radius:16px; font-size:1.7rem;
  background:linear-gradient(135deg,var(--c1),var(--c2)); box-shadow:0 10px 22px color-mix(in srgb, var(--c1) 35%, transparent);
}
.level-card__age{ font-size:.78rem; font-weight:700; color:var(--muted); background:var(--bg-soft); padding:6px 12px; border-radius:100px }
.level-card h3{ font-family:var(--display); font-size:1.4rem; margin-bottom:10px }
.level-card p{ color:var(--muted); font-size:.96rem; margin-bottom:18px }
.level-card__link{ font-weight:700; color:var(--primary); font-size:.92rem; transition:gap .3s; display:inline-flex; gap:4px }
.level-card__link:hover{ gap:9px }

/* ---------- Why / features ---------- */
.why__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px }
.feature{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:30px 28px;
  transition:transform .4s var(--ease), box-shadow .4s var(--ease), border-color .4s;
}
.feature:hover{ transform:translateY(-8px); box-shadow:var(--shadow); border-color:transparent }
.feature__ic{ display:inline-grid; place-items:center; width:60px; height:60px; border-radius:18px; font-size:1.6rem; background:rgba(37,99,235,.1); margin-bottom:18px; transition:transform .4s var(--ease) }
.feature:hover .feature__ic{ transform:rotate(-8deg) scale(1.08) }
.feature--accent .feature__ic{ background:rgba(245,158,11,.16) }
.feature h3{ font-family:var(--display); font-size:1.28rem; margin-bottom:8px }
.feature p{ color:var(--muted); font-size:.97rem }

/* ---------- Gallery ---------- */
.gallery{ display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:200px; gap:18px }
.gallery__item{ position:relative; border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-sm) }
.gallery__item img{ width:100%; height:100%; object-fit:cover; transition:transform .8s var(--ease) }
.gallery__item--tall{ grid-row:span 2 }
.gallery__item--wide{ grid-column:span 2 }
.gallery__item::after{ content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(11,20,55,.7),transparent 55%); opacity:.85; transition:opacity .4s }
.gallery__item figcaption{
  position:absolute; left:18px; bottom:16px; z-index:2; color:#fff;
  font-family:var(--display); font-weight:700; font-size:1.1rem;
  transform:translateY(6px); transition:transform .4s var(--ease);
}
.gallery__item:hover img{ transform:scale(1.08) }
.gallery__item:hover figcaption{ transform:translateY(0) }

/* ---------- Quotes ---------- */
.quotes__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px }
.quote{
  background:var(--bg-soft); border-radius:var(--radius); padding:30px 28px; position:relative;
  border:1px solid var(--line); transition:transform .4s var(--ease), box-shadow .4s var(--ease);
}
.quote::before{ content:"\201C"; position:absolute; top:6px; right:22px; font-family:Georgia,serif; font-size:5rem; color:var(--primary); opacity:.14; line-height:1 }
.quote:hover{ transform:translateY(-6px); box-shadow:var(--shadow); background:#fff }
.quote p{ font-size:1.04rem; color:var(--ink-2); margin-bottom:20px; position:relative; z-index:1 }
.quote footer{ display:flex; align-items:center; gap:12px }
.quote__av{ width:46px; height:46px; border-radius:50%; display:grid; place-items:center; color:#fff; font-family:var(--display); font-weight:800; background:var(--grad) }
.quote footer strong{ display:block; font-size:.98rem }
.quote footer small{ color:var(--muted) }

/* ---------- CTA banner ---------- */
.cta-banner{ padding:0 0 clamp(40px,5vw,90px) }
.cta-banner__inner{
  position:relative; overflow:hidden; border-radius:32px; color:#fff;
  background:var(--ink); padding:clamp(38px,5vw,64px);
  display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap;
  box-shadow:var(--shadow-lg);
}
.cta-banner__bg{ position:absolute; inset:0; z-index:0 }
.cta-banner__bg span{ position:absolute; border-radius:50%; filter:blur(70px); opacity:.55 }
.cta-banner__bg span:nth-child(1){ width:360px; height:360px; background:#4f46e5; top:-120px; left:-60px }
.cta-banner__bg span:nth-child(2){ width:340px; height:340px; background:#06b6d4; bottom:-140px; right:-40px }
.cta-banner__copy{ position:relative; z-index:1; max-width:560px }
.cta-banner__copy h2{ font-family:var(--display); font-weight:800; font-size:clamp(1.6rem,1.1rem+1.8vw,2.4rem); line-height:1.15 }
.cta-banner__copy p{ opacity:.85; margin-top:12px; font-size:1.05rem }
.cta-banner__actions{ position:relative; z-index:1; display:flex; gap:14px; flex-wrap:wrap }

/* ---------- Contact ---------- */
.contact__grid{ display:grid; grid-template-columns:1fr 1.1fr; gap:clamp(32px,4vw,64px); align-items:start; margin-bottom:46px }
.contact__intro{ color:var(--muted); margin:14px 0 28px; font-size:1.05rem }
.contact__list{ display:grid; gap:18px; margin-bottom:28px }
.contact__list li{ display:flex; gap:15px; align-items:flex-start }
.contact__ic{ flex-shrink:0; display:grid; place-items:center; width:48px; height:48px; border-radius:14px; background:var(--bg-soft); font-size:1.2rem }
.contact__list strong{ display:block; font-size:.86rem; color:var(--muted); font-weight:600; margin-bottom:2px }
.contact__list a, .contact__list span{ color:var(--ink-2); font-weight:600 }
.contact__list a:hover{ color:var(--primary) }
.contact__social{ display:flex; gap:12px }
.contact__social a{ display:grid; place-items:center; width:46px; height:46px; border-radius:14px; background:var(--ink); color:#fff; transition:transform .3s var(--ease), background .3s }
.contact__social a:hover{ transform:translateY(-4px); background:var(--primary) }

.contact__form-wrap{ position:relative }
.form{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius);
  padding:clamp(24px,3vw,38px); box-shadow:var(--shadow);
}
.form__title{ font-family:var(--display); font-size:1.4rem; margin-bottom:22px }
.form__row{ display:grid; grid-template-columns:1fr 1fr; gap:16px }
.field{ display:flex; flex-direction:column; gap:7px; margin-bottom:16px }
.field span{ font-size:.86rem; font-weight:600; color:var(--ink-2) }
.field input, .field select, .field textarea{
  padding:13px 15px; border:1.5px solid var(--line); border-radius:12px; background:var(--bg-soft);
  color:var(--ink); transition:border-color .25s, background .25s, box-shadow .25s; resize:vertical;
}
.field input:focus, .field select:focus, .field textarea:focus{
  outline:none; border-color:var(--primary); background:#fff; box-shadow:0 0 0 4px rgba(37,99,235,.12);
}
.form__note{ text-align:center; color:var(--muted); font-size:.82rem; margin-top:12px }
.form__success{
  display:flex; align-items:center; gap:14px; margin-top:18px; padding:16px 18px;
  background:rgba(16,185,129,.1); border:1px solid rgba(16,185,129,.3); border-radius:14px;
  animation:popIn .5s var(--ease);
}
.form__check{ flex-shrink:0; width:36px; height:36px; border-radius:50%; background:#10b981; color:#fff; display:grid; place-items:center; font-weight:800 }
.form__success p{ font-size:.95rem; color:var(--ink-2) }

.map{ border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); border:1px solid var(--line); height:380px }
.map iframe{ width:100%; height:100%; border:0; filter:grayscale(.2) }

/* ---------- Footer ---------- */
.footer{ background:var(--ink); color:#cdd6ee; padding-top:clamp(54px,6vw,84px) }
.footer__grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1.4fr; gap:40px; padding-bottom:48px }
.brand--light .brand__text strong, .brand--light .brand__text small{ color:#fff }
.brand--light .brand__text small{ opacity:.7 }
.footer__brand p{ margin:18px 0; max-width:320px; line-height:1.7; opacity:.7; font-size:.95rem }
.footer__social{ display:flex; gap:12px }
.footer__social a{ padding:9px 16px; border-radius:100px; background:rgba(255,255,255,.08); font-size:.85rem; font-weight:600; transition:background .3s }
.footer__social a:hover{ background:var(--primary); color:#fff }
.footer__col h4{ font-family:var(--display); color:#fff; font-size:1.05rem; margin-bottom:18px }
.footer__col a, .footer__col span{ display:block; color:#aab6d8; margin-bottom:11px; font-size:.95rem; transition:color .25s, transform .25s }
.footer__col a:hover{ color:#fff; transform:translateX(4px) }
.footer__col--contact span{ line-height:1.6; opacity:.8 }
.footer__bottom{ border-top:1px solid rgba(255,255,255,.1) }
.footer__bottom-row{ display:flex; align-items:center; justify-content:space-between; padding:22px 0; flex-wrap:wrap; gap:8px; font-size:.86rem; opacity:.7 }

/* ---------- Mobile action bar ---------- */
.mobile-bar{
  position:fixed; left:0; right:0; bottom:0; z-index:880; display:none;
  grid-template-columns:1fr 1fr 1.2fr; gap:1px;
  background:var(--line);
  box-shadow:0 -10px 30px rgba(13,30,80,.12);
  padding-bottom:env(safe-area-inset-bottom);
}
.mobile-bar__item{
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px;
  padding:11px 6px; background:#fff; font-size:.74rem; font-weight:700; color:var(--ink-2);
}
.mobile-bar__item span{ font-size:1.25rem }
.mobile-bar__item--wa{ color:#16a34a }
.mobile-bar__item--cta{ background:var(--grad); color:#fff }
.mobile-bar__item--cta span{ filter:grayscale(0) }

/* ---------- Back to top ---------- */
.to-top{
  position:fixed; right:22px; bottom:26px; z-index:870;
  width:48px; height:48px; border-radius:50%; background:var(--ink); color:#fff;
  display:grid; place-items:center; box-shadow:var(--shadow);
  opacity:0; visibility:hidden; transform:translateY(16px) scale(.85);
  transition:opacity .35s, visibility .35s, transform .35s var(--ease), background .3s;
}
.to-top.is-show{ opacity:1; visibility:visible; transform:translateY(0) scale(1) }
.to-top:hover{ background:var(--primary); transform:translateY(-4px) }

/* =========================================================
   Reveal-on-scroll
   ========================================================= */
.reveal{ opacity:0; transform:translateY(34px); transition:opacity .8s var(--ease), transform .8s var(--ease) }
.reveal.is-in{ opacity:1; transform:none }

/* =========================================================
   Animations
   ========================================================= */
@keyframes pulse{ 0%,100%{ box-shadow:0 0 0 0 rgba(245,158,11,.5) } 70%{ box-shadow:0 0 0 7px rgba(245,158,11,0) } }
@keyframes drift{ from{ transform:translate(0,0) scale(1) } to{ transform:translate(40px,-30px) scale(1.12) } }
@keyframes marquee{ from{ transform:translateX(0) } to{ transform:translateX(-50%) } }
@keyframes scrollDot{ 0%{ opacity:0; transform:translateY(-4px) } 50%{ opacity:1 } 100%{ opacity:0; transform:translateY(8px) } }
@keyframes popIn{ from{ opacity:0; transform:scale(.8) } to{ opacity:1; transform:scale(1) } }
@keyframes floatA{ 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(-14px) } }
@keyframes floatB{ 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(12px) } }
.float-a{ animation:floatA 5s ease-in-out infinite }
.float-b{ animation:floatB 6s ease-in-out infinite }

/* =========================================================
   RESPONSIVE — Tablet
   ========================================================= */
@media (max-width:992px){
  .hero__grid{ grid-template-columns:1fr; gap:40px; text-align:center }
  .hero__copy{ display:flex; flex-direction:column; align-items:center }
  .hero__actions, .hero__trust{ justify-content:center }
  .hero__visual{ max-width:460px; margin:0 auto; width:100% }
  .hero__scroll{ display:none }

  .stats__grid{ grid-template-columns:repeat(2,1fr); gap:30px 14px; padding:34px 18px }
  .stat:nth-child(2)::after{ display:none }

  .about__grid{ grid-template-columns:1fr; gap:60px }
  .about__media{ max-width:520px; margin:0 auto; width:100% }

  .levels__grid{ grid-template-columns:repeat(2,1fr) }
  .why__grid{ grid-template-columns:repeat(2,1fr) }
  .quotes__grid{ grid-template-columns:1fr }
  .contact__grid{ grid-template-columns:1fr }
  .footer__grid{ grid-template-columns:1fr 1fr; gap:34px }
}

/* =========================================================
   RESPONSIVE — Mobile (özel mobil deneyim)
   ========================================================= */
@media (max-width:680px){
  body{ font-size:15.5px }

  /* Mobilde linkleri gizle, drawer kullanılır */
  .nav__links{ display:none !important }
  .nav__toggle{ display:flex }
  .nav.is-open .nav__toggle span:nth-child(1){ transform:translateY(7.4px) rotate(45deg) }
  .nav.is-open .nav__toggle span:nth-child(2){ opacity:0 }
  .nav.is-open .nav__toggle span:nth-child(3){ transform:translateY(-7.4px) rotate(-45deg) }

  .topbar{ font-size:.78rem }

  .brand__mark{ width:42px; height:42px }
  .brand__text strong{ font-size:1.05rem }

  /* Mobilde alt aksiyon barına yer aç */
  body{ padding-bottom:64px }
  .mobile-bar{ display:grid }
  .to-top{ bottom:78px; right:16px; width:44px; height:44px }

  .hero{ padding-top:34px }
  .hero__title{ font-size:clamp(2.4rem,2rem+6vw,3.4rem) }
  .hero__lead{ font-size:1.04rem }
  .hero__actions{ flex-direction:column; width:100%; max-width:340px }
  .hero__actions .btn{ width:100% }
  .hero__badge--top{ left:8px; top:14px; padding:10px 12px }
  .hero__badge--bot{ right:6px; bottom:18px; padding:10px 12px }
  .hero__badge strong{ font-size:1.05rem }
  .hero__photo{ aspect-ratio:4/4 }

  .marquee span{ font-size:1.15rem }

  .stats{ padding:clamp(34px,7vw,48px) 0 4px }
  .stats__grid{ grid-template-columns:1fr 1fr; gap:26px 10px; padding:28px 14px; border-radius:18px }
  .stat::after{ display:none !important }

  .section__sub{ font-size:.98rem }

  .about__img--sm{ width:52%; bottom:-22px; right:-6px }
  .about__ring{ width:78px; height:78px; top:-16px; left:-10px }
  .about__ring span{ font-size:1.2rem }

  .levels__grid{ grid-template-columns:1fr; gap:16px }
  .why__grid{ grid-template-columns:1fr; gap:16px }

  /* Galeri: mobilde sade tek sütun akış */
  .gallery{ grid-template-columns:1fr 1fr; grid-auto-rows:150px; gap:12px }
  .gallery__item--tall{ grid-row:span 2 }
  .gallery__item--wide{ grid-column:span 2 }
  .gallery__item figcaption{ font-size:.92rem; left:12px; bottom:12px }

  .cta-banner__inner{ padding:32px 24px; border-radius:24px; text-align:center; flex-direction:column }
  .cta-banner__copy{ margin:0 auto }
  .cta-banner__actions{ width:100%; flex-direction:column }
  .cta-banner__actions .btn{ width:100% }

  .form__row{ grid-template-columns:1fr; gap:0 }
  .map{ height:300px }

  .footer{ padding-bottom:10px }
  .footer__grid{ grid-template-columns:1fr; gap:30px; text-align:left }
  .footer__bottom-row{ flex-direction:column; text-align:center }

  /* Mobilde animasyonları biraz daha hafif */
  .blob{ filter:blur(46px) }
}

@media (max-width:380px){
  .stats__grid{ grid-template-columns:1fr }
  .gallery{ grid-template-columns:1fr; grid-auto-rows:180px }
  .gallery__item--wide,.gallery__item--tall{ grid-column:auto; grid-row:auto }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  *{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important }
  .reveal{ opacity:1; transform:none }
}

/* =========================================================
   ÇOK SAYFA BİLEŞENLERİ
   ========================================================= */

/* Smooth-scroll için sticky nav payı */
section[id]{ scroll-margin-top:96px }

/* Nav dropdown stilleri ana header bloğunda tanımlıdır (çakışmayı önlemek için buradan kaldırıldı). */

/* ---------- Page hero (alt sayfa başlığı) ---------- */
.page-hero{ position:relative; padding:clamp(54px,6vw,96px) 0 clamp(40px,4vw,64px); overflow:hidden; background:var(--bg-soft) }
.page-hero__bg{ position:absolute; inset:0; z-index:0; overflow:hidden }
.page-hero__bg .blob{ opacity:.4 }
.page-hero__inner{ position:relative; z-index:2; max-width:780px }
.page-hero__title{ font-family:var(--display); font-weight:800; font-size:clamp(2.1rem,1.4rem+3vw,3.4rem); line-height:1.08; letter-spacing:-.02em; margin:14px 0 14px }
.page-hero__lead{ color:var(--muted); font-size:1.12rem; max-width:640px }
.breadcrumb{ font-size:.86rem; color:var(--muted); font-weight:600 }
.breadcrumb a{ color:var(--primary) }
.breadcrumb a:hover{ text-decoration:underline }
.breadcrumb span{ margin:0 7px; opacity:.55 }

/* Görselli page hero */
.page-hero--img{ background:var(--ink); padding:clamp(86px,11vw,160px) 0 clamp(40px,5vw,64px) }
.page-hero--img::before{ content:""; position:absolute; inset:0; z-index:0; background-image:var(--bg); background-size:cover; background-position:center; transform:scale(1.05) }
.page-hero__scrim{ position:absolute; inset:0; z-index:1; background:linear-gradient(115deg, rgba(11,20,55,.9) 0%, rgba(11,20,55,.62) 55%, rgba(11,20,55,.45) 100%) }
.page-hero__inner--img{ z-index:2 }
.page-hero__title--light{ color:#fff }
.page-hero__lead--light{ color:rgba(255,255,255,.92) }
.breadcrumb--light{ color:rgba(255,255,255,.78) }
.breadcrumb--light a{ color:#fff }
.page-hero__tag{ display:inline-block; padding:6px 15px; border-radius:100px; background:rgba(255,255,255,.16); color:#fff; font-weight:600; font-size:.8rem; backdrop-filter:blur(6px); border:1px solid rgba(255,255,255,.28) }

/* ---------- Split (görsel + metin) ---------- */
.split{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(34px,4vw,68px); align-items:center }
.split--rev .split__media{ order:2 }
.split__media{ position:relative }
.split__media img{ width:100%; border-radius:var(--radius); box-shadow:var(--shadow); aspect-ratio:4/3.1; object-fit:cover }
.split__copy p{ color:var(--muted); margin:14px 0; font-size:1.05rem }
.split__badge{ position:absolute; bottom:-22px; left:-22px; background:var(--grad-gold); color:#fff; padding:16px 22px; border-radius:18px; box-shadow:0 16px 34px rgba(245,158,11,.4); text-align:center; line-height:1.1 }
.split__badge strong{ display:block; font-family:var(--display); font-size:1.7rem }
.split__badge span{ font-size:.76rem; opacity:.95 }
.split__stats{ display:flex; gap:28px; margin-top:24px; flex-wrap:wrap }
.split__stats div strong{ display:block; font-family:var(--display); font-size:1.6rem; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent }
.split__stats div span{ font-size:.85rem; color:var(--muted) }

/* ---------- Yönetim mesajı ---------- */
.message{ max-width:840px; margin:0 auto; text-align:center; position:relative }
.message__quote{ font-family:Georgia,serif; font-size:5rem; color:var(--primary); opacity:.18; line-height:.4; display:block }
.message__text{ font-family:var(--display); font-weight:600; font-size:clamp(1.2rem,1rem+1vw,1.65rem); line-height:1.5; color:var(--ink); margin:10px 0 26px }
.message__by{ display:inline-flex; align-items:center; gap:13px; text-align:left }
.message__av{ width:52px; height:52px; border-radius:50%; background:var(--grad); color:#fff; display:grid; place-items:center; font-family:var(--display); font-weight:800 }
.message__by strong{ display:block }
.message__by small{ color:var(--muted) }

/* ---------- Misyon & Vizyon ---------- */
.mv__grid{ display:grid; grid-template-columns:1fr 1fr; gap:24px }
.mv-card{ padding:clamp(28px,3vw,40px); border-radius:var(--radius); border:1px solid var(--line); position:relative; overflow:hidden; box-shadow:var(--shadow-sm); transition:transform .4s var(--ease), box-shadow .4s }
.mv-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow) }
.mv-card__ic{ font-size:2.2rem; display:block; margin-bottom:14px }
.mv-card h3{ font-family:var(--display); font-size:1.5rem; margin-bottom:10px }
.mv-card p{ color:var(--muted) }
.mv-card--a{ background:linear-gradient(135deg, rgba(37,99,235,.07), rgba(6,182,212,.06)) }
.mv-card--b{ background:linear-gradient(135deg, rgba(245,158,11,.08), rgba(249,115,22,.05)) }

/* ---------- Değerler ---------- */
.values__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px }
.value{ background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:28px; transition:transform .4s var(--ease), box-shadow .4s }
.value:hover{ transform:translateY(-6px); box-shadow:var(--shadow) }
.value__ic{ font-size:1.9rem; display:block; margin-bottom:10px }
.value h3{ font-family:var(--display); font-size:1.2rem; margin-bottom:6px }
.value p{ color:var(--muted); font-size:.95rem }

/* ---------- Okullar (genel bakış) ---------- */
.schools{ display:grid; grid-template-columns:repeat(2,1fr); gap:24px }
.school{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-sm); transition:transform .4s var(--ease), box-shadow .4s }
.school:hover{ transform:translateY(-8px); box-shadow:var(--shadow-lg) }
.school__img{ position:relative; aspect-ratio:16/9; overflow:hidden }
.school__img img{ width:100%; height:100%; object-fit:cover; transition:transform .7s var(--ease) }
.school:hover .school__img img{ transform:scale(1.07) }
.school__age{ position:absolute; top:14px; left:14px; background:rgba(255,255,255,.92); backdrop-filter:blur(6px); padding:6px 14px; border-radius:100px; font-size:.8rem; font-weight:700; color:var(--primary-d) }
.school__body{ padding:26px 28px; display:flex; flex-direction:column; flex:1 }
.school__body h2{ font-family:var(--display); font-size:1.55rem; margin-bottom:8px }
.school__body p{ color:var(--muted); margin-bottom:16px; flex:1 }
.school__link{ font-weight:700; color:var(--primary); transition:letter-spacing .3s }
.school:hover .school__link{ letter-spacing:.3px }

/* ---------- Kadro ---------- */
.kadro{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px }
.kadro-card{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-sm); padding:26px 18px; text-align:center; display:flex; flex-direction:column; align-items:center; transition:transform .4s var(--ease), box-shadow .4s }
.kadro-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow) }
.kadro-card__av{ width:74px; height:74px; border-radius:50%; display:grid; place-items:center; color:#fff; font-family:var(--display); font-weight:800; font-size:1.35rem; margin-bottom:12px; box-shadow:var(--shadow-sm); background:var(--grad) }
.kadro-card__name{ font-size:1rem; line-height:1.25 }
.kadro-card__role{ color:var(--muted); font-size:.85rem; margin-top:3px }
.kadro-card--lead{ background:linear-gradient(140deg,#0b1437,#23306a); color:#fff; border-color:transparent }
.kadro-card--lead .kadro-card__role{ color:rgba(255,255,255,.72) }
.kadro-card--lead .kadro-card__av{ background:var(--grad-gold) }

/* ---------- Branş çipleri + not ---------- */
.branch-chips{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; max-width:800px; margin:0 auto }
.branch-chips span{ padding:12px 22px; border-radius:100px; background:#fff; border:1px solid var(--line); font-weight:600; color:var(--ink-2); box-shadow:var(--shadow-sm); transition:transform .3s var(--ease), color .3s, border-color .3s }
.branch-chips span:hover{ transform:translateY(-3px); color:var(--primary); border-color:var(--primary) }
.kadro-note{ text-align:center; color:var(--muted); max-width:720px; margin:28px auto 0; background:var(--bg-soft); padding:16px 22px; border-radius:14px; font-size:.95rem; border:1px solid var(--line) }

/* ---------- Kayıt adımları ---------- */
.steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px }
.step{ background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:30px 26px; transition:transform .4s var(--ease), box-shadow .4s }
.step:hover{ transform:translateY(-6px); box-shadow:var(--shadow) }
.step__no{ display:grid; place-items:center; width:48px; height:48px; border-radius:14px; background:var(--grad); color:#fff; font-family:var(--display); font-weight:800; font-size:1.2rem; margin-bottom:16px }
.step h3{ font-family:var(--display); font-size:1.15rem; margin-bottom:6px }
.step p{ color:var(--muted); font-size:.94rem }

/* ---------- LGS Bursu kutusu ---------- */
.bursu{ position:relative; overflow:hidden; border-radius:28px; background:var(--ink); color:#fff; padding:clamp(32px,4vw,56px); display:grid; grid-template-columns:1.25fr 1fr; gap:38px; align-items:center; box-shadow:var(--shadow-lg) }
.bursu__bg{ position:absolute; inset:0; z-index:0 }
.bursu__bg span{ position:absolute; border-radius:50%; filter:blur(70px); opacity:.5 }
.bursu__bg span:nth-child(1){ width:320px; height:320px; background:#f59e0b; top:-130px; right:18% }
.bursu__bg span:nth-child(2){ width:300px; height:300px; background:#4f46e5; bottom:-140px; left:-40px }
.bursu__copy{ position:relative; z-index:1 }
.bursu__badge{ display:inline-block; background:var(--grad-gold); color:#fff; padding:7px 16px; border-radius:100px; font-weight:700; font-size:.82rem; margin-bottom:14px }
.bursu__copy h2{ font-family:var(--display); font-size:clamp(1.6rem,1.2rem+1.6vw,2.4rem); margin-bottom:12px }
.bursu__copy p{ opacity:.85 }
.bursu__tiers{ position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:14px }
.bursu__tier{ background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); border-radius:16px; padding:18px; text-align:center }
.bursu__tier strong{ display:block; font-family:var(--display); font-size:1.9rem; color:var(--gold) }
.bursu__tier span{ font-size:.8rem; opacity:.82 }

/* ---------- Haberler ---------- */
.news{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px }
.news-card{ background:#fff; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-sm); transition:transform .4s var(--ease), box-shadow .4s; display:flex; flex-direction:column }
.news-card:hover{ transform:translateY(-8px); box-shadow:var(--shadow-lg) }
.news-card--feat{ grid-column:span 2 }
.news-card__img{ position:relative; aspect-ratio:16/10; overflow:hidden }
.news-card--feat .news-card__img{ aspect-ratio:16/7 }
.news-card__img img{ width:100%; height:100%; object-fit:cover; transition:transform .7s var(--ease) }
.news-card:hover .news-card__img img{ transform:scale(1.06) }
.news-card__cat{ position:absolute; top:12px; left:12px; background:var(--grad); color:#fff; padding:5px 13px; border-radius:100px; font-size:.72rem; font-weight:700 }
.news-card__body{ padding:22px 24px; display:flex; flex-direction:column; gap:8px; flex:1 }
.news-card__body time{ font-size:.8rem; color:var(--primary); font-weight:700 }
.news-card__body h3{ font-family:var(--display); font-size:1.22rem; line-height:1.25 }
.news-card__body p{ color:var(--muted); font-size:.94rem; flex:1 }
.news-card__link{ font-weight:700; color:var(--primary); font-size:.9rem }

/* ---------- Yardımcılar ---------- */
.section__cta{ text-align:center; margin-top:42px }
.gallery--lg{ grid-auto-rows:220px }

/* ---------- Drawer alt menüler ---------- */
.drawer__group{ border-radius:14px }
.drawer__grouptop{ width:100%; display:flex; align-items:center; justify-content:space-between; padding:15px 12px; font-family:var(--display); font-weight:700; font-size:1.15rem; color:var(--ink); border-radius:14px }
.drawer__grouptop span{ font-size:1.5rem; color:var(--primary); transition:transform .3s var(--ease); line-height:1 }
.drawer__grouptop[aria-expanded="true"] span{ transform:rotate(45deg) }
.drawer__grouptop:hover{ background:var(--bg-soft) }
.drawer__sub{ max-height:0; overflow:hidden; transition:max-height .38s var(--ease); padding-left:14px }
.drawer__sub.is-open{ max-height:340px }
.drawer__sub a{ display:block; padding:11px 14px; color:var(--ink-2); font-weight:600; font-size:1rem; border-left:2px solid var(--line); transition:color .25s, border-color .25s }
.drawer__sub a:hover{ color:var(--primary); border-color:var(--primary); transform:none; background:none }

/* =========================================================
   ÇOK SAYFA — RESPONSIVE
   ========================================================= */
@media (max-width:992px){
  .split{ grid-template-columns:1fr; gap:42px }
  .split--rev .split__media{ order:0 }
  .split__media{ max-width:560px }
  .mv__grid{ grid-template-columns:1fr }
  .values__grid{ grid-template-columns:repeat(2,1fr) }
  .schools{ grid-template-columns:1fr 1fr }
  .kadro{ grid-template-columns:repeat(3,1fr) }
  .steps{ grid-template-columns:repeat(2,1fr) }
  .bursu{ grid-template-columns:1fr; gap:28px }
  .news{ grid-template-columns:repeat(2,1fr) }
  .news-card--feat{ grid-column:span 2 }
}

@media (max-width:680px){
  .page-hero__lead{ font-size:1.02rem }
  .split__badge{ left:14px; bottom:-18px; padding:13px 18px }
  .split__badge strong{ font-size:1.4rem }
  .split__stats{ gap:20px }
  .values__grid{ grid-template-columns:1fr 1fr }
  .schools{ grid-template-columns:1fr }
  .kadro{ grid-template-columns:1fr 1fr; gap:12px }
  .kadro-card{ padding:20px 12px }
  .kadro-card__av{ width:62px; height:62px; font-size:1.15rem }
  .steps{ grid-template-columns:1fr }
  .bursu__tiers{ grid-template-columns:1fr 1fr }
  .news{ grid-template-columns:1fr }
  .news-card--feat{ grid-column:auto }
  .news-card--feat .news-card__img{ aspect-ratio:16/10 }
  .branch-chips span{ padding:10px 16px; font-size:.92rem }
  .gallery--lg{ grid-auto-rows:160px }
}

@media (max-width:400px){
  .values__grid{ grid-template-columns:1fr }
  .kadro{ grid-template-columns:1fr }
}

/* ---------- Nav: tablet ve altında hamburger/drawer ---------- */
@media (max-width:1040px){
  .nav__links{ display:none !important }
  .nav__toggle{ display:flex }
  .nav.is-open .nav__toggle span:nth-child(1){ transform:translateY(7.4px) rotate(45deg) }
  .nav.is-open .nav__toggle span:nth-child(2){ opacity:0 }
  .nav.is-open .nav__toggle span:nth-child(3){ transform:translateY(-7.4px) rotate(-45deg) }
}

/* =========================================================
   SON CİLA — premium dokunuşlar
   ========================================================= */

/* Metin seçimi */
::selection{ background:rgba(37,99,235,.20); color:var(--ink) }

/* Özel kaydırma çubuğu */
html{ scrollbar-width:thin; scrollbar-color:#c3cce0 transparent }
::-webkit-scrollbar{ width:12px; height:12px }
::-webkit-scrollbar-track{ background:transparent }
::-webkit-scrollbar-thumb{ background:#c7d0e6; border-radius:20px; border:3px solid #fff }
::-webkit-scrollbar-thumb:hover{ background:#9fadd2 }

/* Klavye erişilebilirlik çerçevesi */
a:focus-visible, button:focus-visible, .btn:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible,
.nav__droptop:focus-visible{
  outline:3px solid rgba(37,99,235,.45); outline-offset:3px; border-radius:10px;
}
input, select, textarea{ accent-color:var(--primary) }

/* Daha güzel satır kırma */
h1, h2, h3, .h2, .hero__title, .page-hero__title{ text-wrap:balance }
.hero__lead, .page-hero__lead, .section__sub, .split__copy p{ text-wrap:pretty }

/* Gradyan yazıya yumuşak akan renk */
.grad{ background-size:220% auto; animation:gradShift 9s ease-in-out infinite }
@keyframes gradShift{ 0%,100%{ background-position:0% center } 50%{ background-position:100% center } }

/* Birincil/açık butonlarda parıltı */
.btn--primary, .btn--light{ position:relative; overflow:hidden; isolation:isolate }
.btn--primary::after, .btn--light::after{
  content:""; position:absolute; top:0; left:-130%; width:55%; height:100%; z-index:-1;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,.4), transparent);
  transform:skewX(-20deg); transition:left .65s var(--ease); pointer-events:none;
}
.btn--primary:hover::after, .btn--light:hover::after{ left:150% }

/* Marquee kenar geçişi (yazı karanlıktan doğar) */
.marquee{ position:relative }
.marquee::before, .marquee::after{ content:""; position:absolute; top:0; bottom:0; width:90px; z-index:2; pointer-events:none }
.marquee::before{ left:0; background:linear-gradient(90deg, var(--ink), transparent) }
.marquee::after{ right:0; background:linear-gradient(270deg, var(--ink), transparent) }

/* Kademe kartlarında kendi rengine göre gölge parıltısı */
.level-card:hover{ box-shadow:0 26px 54px color-mix(in srgb, var(--c1) 22%, transparent), var(--shadow) }

/* İstatistik kartına nefes payı + hafif derinlik */
.stat__num{ transition:transform .4s var(--ease) }
.stat:hover .stat__num{ transform:translateY(-3px) scale(1.04) }

/* Bölüm başlıklarındaki eyebrow'a ince çizgi vurgusu */
.section__head .eyebrow::before{ content:""; display:inline-block; width:22px; height:2px; background:var(--grad); vertical-align:middle; margin-right:8px; border-radius:2px }

/* Görsellerde yumuşak yüklenme */
.about__img img, .split__media img, .school__img img, .gallery__item img, .news-card__img img{ transition:transform .7s var(--ease), filter .7s var(--ease) }

/* Linklerde daha akıcı geçiş (genel) */
a{ transition:color .2s ease }
