/* =============================================================
 * pd.css — SAYFA 2: PROGRAM DETAILS (697:96)
 * Sayfa-1 disiplini: sabit-tasarım sahneler JS --pd-scale ile ölçeklenir (hero, CTA);
 * akış bölümleri .in-container (228 inset); tek kırılım 1000px; 900px altı ortalı.
 * ============================================================= */

/* Ortak bölüm başlığı (H4 24/32 + Manrope 16/28) */
.pd-sec-head { max-width: 828px; }
.pd-sec-title { font-family: var(--in-head); font-weight: 500; font-size: 24px; line-height: 32px;
  letter-spacing: -0.12px; color: var(--in-heading); margin: 0; }
.pd-sec-lead { font-family: var(--in-text); font-weight: 400; font-size: 16px; line-height: 28px;
  color: var(--in-body); margin: 12px 0 0; }

/* Ortak neobrutalist buton (Start Application) — 200×50, 6px sert gölge */
/* BUTON (623:13134): Default beyaz+6px gölge → Hover LIME (#d4f547) + 8px gölge (tasarımla birebir). */
.in-cta-btn { display: inline-flex; align-items: center; justify-content: center;
  width: 200px; height: 50px; background: var(--in-card); color: var(--in-heading);
  border: 2px solid var(--in-border); box-shadow: var(--in-shadow-lg);
  font-family: var(--in-text); font-weight: 400; font-size: 16px; line-height: 28px;
  transition: background 0.12s, box-shadow 0.1s, transform 0.08s; }
.in-cta-btn:hover { background: var(--in-lime); box-shadow: 8px 8px 0 0 var(--in-black); }
.in-cta-btn:active { transform: translate(3px,3px); box-shadow: var(--in-shadow); }

/* =============================================================
 * HERO (1276:748) — sabit 828×435 sahne; JS --pd-scale ile ölçeklenir
 * ============================================================= */
.pd-hero { padding-top: 78px; }
/* Sabit 828×435 sahne; JS --pd-scale ile ölçeklenir (hero'daki gibi). Yükseklik JS'te set edilir. */
.pd-hero__scene { position: relative; width: 828px; height: 435px;
  transform-origin: top left; transform: scale(var(--pd-scale, 1)); }
/* Sol içerik */
.pd-hero__badge { position: absolute; left: 1px; top: 71px; display: inline-flex; align-items: center;
  padding: 10px; background: var(--in-lime); border-bottom: 2px solid var(--in-border);
  font-family: var(--in-head); font-weight: 500; font-size: 32px; line-height: 40px; letter-spacing: -0.32px; color: var(--in-heading); white-space: nowrap; }
.pd-hero__title { position: absolute; left: 1px; top: 137px; margin: 0;
  font-family: var(--in-head); font-weight: 700; font-size: 40px; line-height: 48px; letter-spacing: -0.6px; color: var(--in-heading); white-space: nowrap; }
.pd-hero__desc { position: absolute; left: 0; top: 193px; width: 439px; margin: 0;
  font-family: var(--in-text); font-weight: 400; font-size: 18px; line-height: 30px; color: var(--in-body); }
.pd-hero__btn { position: absolute; left: 1px; top: 289px; }
/* Sağ görsel — motion (get_motion_context 697:96, 4s loop) */
.pd-hero__computer { position: absolute; left: 511.83px; top: 22px; width: 316.14px; height: auto;
  transform-origin: center; animation: pd-comp-scale 4s linear infinite; }
.pd-hero__star { position: absolute; display: block; transform-origin: center; }
/* Turuncu yıldız: rotate 0→180→0 */
.pd-hero__star--o { left: 469px; top: 0; width: 43px; height: 43px; animation: pd-star-rot 4s linear infinite; }
/* Siyah yıldız: sabit 1.272 ölçek (animasyon yok) */
.pd-hero__star--b { left: 794px; top: 341px; width: 27px; height: 27px; transform: scale(1.272); }
/* 8 Weeks penceresi (735:2858): 93×48, sarı bar — scale 1→0.838 */
.pd-hero__win { position: absolute; left: 525px; top: 355px; width: 93px; height: 48px;
  background: #fff; border: 1.5px solid var(--in-border); box-shadow: var(--in-shadow-sm); overflow: hidden;
  transform-origin: center; animation: pd-win-scale 4s linear infinite; }
.pd-hero__win-bar { height: 19px; background: var(--in-yellow); border-bottom: 1px solid var(--in-border);
  display: flex; align-items: center; justify-content: flex-end; gap: 4px; padding-right: 6px; }
.pd-hero__win-bar i { width: 6px; height: 6px; border: 1px solid var(--in-border); display: block; }
.pd-hero__win-label { display: block; padding: 6px 0 0 11px;
  font-family: var(--in-head); font-weight: 500; font-size: 16px; line-height: 28px; letter-spacing: -0.08px; color: var(--in-heading); }
/* 8 Projects rozeti (735:2875): turuncu, 1.5px border, 4px gölge */
.pd-hero__badge2 { position: absolute; left: 606.67px; top: 392.63px; display: inline-flex; align-items: center;
  padding: 10px; background: var(--in-orange); border: 1.5px solid var(--in-border); box-shadow: var(--in-shadow);
  font-family: var(--in-text); font-weight: 400; font-size: 14px; line-height: 22px; color: #fff; white-space: nowrap;
  transform-origin: center; animation: pd-badge-scale 4s linear infinite; }

/* ---- HERO keyframes (get_motion_context, 4s loop, cubic-bezier(.5,0,.5,1)) ---- */
@keyframes pd-comp-scale {
  0% { transform: scale(1); animation-timing-function: cubic-bezier(.5,0,.5,1); }
  50.075% { transform: scale(1.185); animation-timing-function: cubic-bezier(.5,0,.5,1); }
  100% { transform: scale(1.07); }
}
@keyframes pd-star-rot {
  0% { transform: rotate(0deg); animation-timing-function: cubic-bezier(.5,0,.5,1); }
  50.075% { transform: rotate(180deg); animation-timing-function: cubic-bezier(.5,0,.5,1); }
  100% { transform: rotate(0deg); }
}
@keyframes pd-badge-scale {
  0% { transform: scale(1); animation-timing-function: cubic-bezier(.5,0,.5,1); }
  49.4% { transform: scale(1.181); }
  100% { transform: scale(1.181); }
}
@keyframes pd-win-scale {
  0% { transform: scale(1); animation-timing-function: cubic-bezier(.5,0,.5,1); }
  50.15% { transform: scale(0.838); }
  100% { transform: scale(0.838); }
}
@media (prefers-reduced-motion: reduce){
  .pd-hero__computer, .pd-hero__star--o, .pd-hero__win, .pd-hero__badge2 { animation: none !important; }
}

/* =============================================================
 * MEET YOUR MENTORS (1280:751)
 * ============================================================= */
.pd-mentors { padding-top: 110px; }
.pd-mentors__stage { position: relative; width: 100%; max-width: 828px; }
.pd-mentors__dot { position: absolute; width: 42px; height: 54px; display: block; z-index: 2; }
/* Stage 827×606: dot-tl sol-üst (başlık üstü), dot-br sağ-alt köşe (kart bloğunun altı). */
.pd-mentors__dot--tl { left: 1px; top: -64px; }
/* Kartların TAMAMEN altında, sağ kenarda (kart-altı +32, stage sağ köşe) */
.pd-mentors__dot--br { right: 0; bottom: -86px; }
.pd-mentors__grid { display: grid; grid-template-columns: repeat(3, 265px); gap: 16px; margin-top: 48px; justify-content: start; }
/* Mentor kartı (889:615): 265×306, 1px border, #f8f3e6. Hover (740:3165): lime + 5px gölge. */
.mcard { width: 265px; height: 306px; background: var(--in-card-accent); border: 1px solid var(--in-border);
  overflow: hidden; position: relative; transition: background .12s, box-shadow .1s, transform .08s, border-color .1s; }
.mcard__photo { position: absolute; left: 50%; transform: translateX(-50%); top: 10px; width: 247px; height: 176px; overflow: hidden; }
.mcard__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mcard__info { position: absolute; left: -1px; bottom: -1px; width: 264px; height: 108px;
  background: #fff; border-top: 3px solid var(--in-black); }
.mcard__name { position: absolute; left: 9px; top: 8px; margin: 0;
  font-family: var(--in-head); font-weight: 500; font-size: 16px; line-height: 28px; letter-spacing: -0.08px; color: var(--in-heading); white-space: nowrap; }
.mcard__role { position: absolute; left: 9px; top: 34px; margin: 0;
  font-family: var(--in-text); font-weight: 500; font-size: 12px; line-height: 18px; color: var(--in-muted); }
.mcard__li { position: absolute; left: 9px; top: 61px; width: 28px; height: 28px;
  background: var(--in-card-accent); border: 1px solid var(--in-border); display: grid; place-items: center; transition: background .12s, box-shadow .1s; }
.mcard__li img { width: 16px; height: 16px; display: block; grid-area: 1 / 1; }
.mcard__li-b { opacity: 0; }              /* beyaz ikon: normalde gizli, hover'da görünür */
/* HOVER: kart lime, 2px border, 5px gölge; LinkedIn kutusu turuncu + gölge, beyaz ikon */
.mcard:hover { background: var(--in-lime); border-width: 2px; box-shadow: 5px 5px 0 0 var(--in-black); transform: translate(-1px,-1px); }
.mcard:hover .mcard__li { background: var(--in-orange); box-shadow: var(--in-shadow-sm); }
.mcard:hover .mcard__li-a { opacity: 0; }
.mcard:hover .mcard__li-b { opacity: 1; }

/* =============================================================
 * MARQUEE band (1181:1381) — siyah 64px, ❰ tek cümle ❱ (Geist Mono benzeri mono)
 * ============================================================= */
/* Band bölümü: içerik inset'inde (228), 827 genişlik — full-bleed DEĞİL (1181:1381).
   Responsive: dar ekranda metin sarar, yükseklik esner, font clamp ile küçülür. */
.pd-band-sec { padding-top: 120px; }
.pd-band { background: var(--in-black); min-height: 64px; width: 827px; max-width: 100%;
  display: flex; align-items: center; justify-content: space-between; gap: 14px; overflow: hidden; padding: 12px 18px; }
.pd-band__text { flex: 1 1 auto; font-family: 'Geist Mono', ui-monospace, 'SF Mono', Menlo, monospace;
  font-weight: 400; font-size: clamp(12px, 3.4vw, 16px); line-height: 1.35; color: #fff; text-align: center; }
.pd-band__brk { flex: 0 0 auto; width: 12px; height: 31px; display: block; align-self: center; }
@media (max-width: 560px){
  .pd-band { gap: 10px; padding: 12px 12px; }
  .pd-band__brk { width: 9px; height: 24px; }
}

/* =============================================================
 * WHAT YOU'LL WORK ON (1280:773) — 4 proje satırı (827×73, 2px border)
 * ============================================================= */
.pd-work { padding-top: 50px; }
.pd-work__list { margin-top: 40px; display: flex; flex-direction: column; gap: 13px; max-width: 827px; }
.wrow { display: flex; align-items: center; gap: 16px; height: 73px; padding: 0 21px;
  background: var(--in-card-fill); border: 2px solid var(--in-border); position: relative;
  transition: box-shadow .1s; }
/* HOVER (740:3030 Hover): satırda 4px gölge; 8 Weeks KALIR; sağ uçta TURUNCU arrow butonu belirir. */
.wrow:hover { box-shadow: var(--in-shadow); }
/* Waitlist satırlar: detaya tıklanamaz (href yok) — Open/Full tıklanabilir kalır, sadece Waitlist
   engellenir. Hover/ok kaldırıldı, imleç düz, hafif soluk. */
.wrow--disabled { cursor: default; opacity: 0.7; }
.wrow--disabled:hover { box-shadow: none; }
/* Arrow butonu (889:589): 36×36 turuncu, 2px border, 3px gölge — en sağda, hover'da görünür */
.wrow__arrow { position: absolute; right: 19px; top: 50%; transform: translateY(-50%) scale(.85);
  width: 36px; height: 36px; background: var(--in-orange); border: 2px solid var(--in-border);
  box-shadow: 3px 3px 0 0 var(--in-black); display: grid; place-items: center;
  opacity: 0; pointer-events: none; transition: opacity .12s, transform .12s; }
.wrow__arrow img { width: 16px; height: 16px; display: block; }
.wrow:hover .wrow__arrow { opacity: 1; transform: translateY(-50%) scale(1); }
.wrow__status { flex: 0 0 auto; height: 28px; min-width: 72px; display: inline-flex; align-items: center; justify-content: center; padding: 0 8px;
  font-family: var(--in-head); font-weight: 500; font-size: 16px; line-height: 28px; letter-spacing: -0.08px; }
.wrow__status--open     { background: var(--in-lime);          color: var(--in-heading); }
.wrow__status--waitlist { background: var(--in-orange);        color: #fff; }
.wrow__status--full     { background: var(--in-tag-full-bg);   color: #fff; }
.wrow__main { flex: 1 1 auto; min-width: 0; }
.wrow__title { margin: 0; font-family: var(--in-head); font-weight: 500; font-size: 16px; line-height: 28px; letter-spacing: -0.08px; color: var(--in-heading); }
.wrow__text { margin: 0; font-family: var(--in-text); font-weight: 400; font-size: 14px; line-height: 22px; color: var(--in-body);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
/* 8 Weeks sağ uçta ama arrow'a yer bırakır (weeks@554, arrow@747) */
.wrow__weeks { flex: 0 0 auto; margin-right: 62px; height: 28px; display: inline-flex; align-items: center; padding: 0 8px;
  background: var(--in-bg); font-family: var(--in-head); font-weight: 500; font-size: 16px; line-height: 28px; letter-spacing: -0.08px; color: var(--in-heading); white-space: nowrap;
  transition: none; }

/* =============================================================
 * LEARNING SESSIONS (1280:774) — 3 kart (270×218, 1px border)
 * ============================================================= */
.pd-sessions { padding-top: 90px; }
.pd-sessions__grid { display: grid; grid-template-columns: repeat(3, 270px); gap: 8.5px; margin-top: 40px; justify-content: start; }
/* Kart zemini #faf7f2 (Zemin); başlık bandı #f8f3e6 (Kart Vurgu) — ayrışsın diye farklı. */
.scard { width: 270px; height: 218px; background: var(--in-bg); border: 1px solid var(--in-border); overflow: hidden; position: relative;
  transition: box-shadow .1s, transform .08s, border-color .1s;
  /* <button> olarak da kullanılıyor (Sayfa 4): varsayılan button stillerini sıfırla */
  display: block; padding: 0; margin: 0; text-align: left; font: inherit; color: inherit; cursor: pointer;
  -webkit-appearance: none; appearance: none; }
.scard__head { position: absolute; left: 0; top: 0; right: 0; height: 101px; background: #F8F3E6; border-bottom: 1px solid var(--in-border);
  display: flex; align-items: center; justify-content: center; text-align: center; padding: 0 16px;
  font-family: var(--in-head); font-weight: 500; font-size: 16px; line-height: 28px; letter-spacing: -0.08px; color: var(--in-heading);
  transition: background .12s, border-color .1s; }
.scard__text { margin: 0; position: absolute; left: 18px; top: 112px; width: 234px;
  font-family: var(--in-text); font-weight: 500; font-size: 12px; line-height: 18px; color: var(--in-body); transition: color .12s; }
.scard__tags { position: absolute; left: 16px; top: 179px; display: flex; gap: 8px; }
.scard__tag { height: 24px; display: inline-flex; align-items: center; padding: 0 10px;
  background: #EFEBDD; font-family: var(--in-head); font-weight: 500; font-size: 14px; line-height: 28px; letter-spacing: -0.07px; color: var(--in-heading); white-space: nowrap;
  transition: background .12s, color .12s; }
/* HOVER (889:719): 2px border + 4px gölge; başlık lime-300, 1. etiket lime-500, 2. etiket siyah, açıklama koyu */
.scard:hover { border-width: 2px; box-shadow: var(--in-shadow); transform: translate(-2px,-2px); }
.scard:hover .scard__head { background: #E8FA8F; border-bottom-width: 2px; }
.scard:hover .scard__text { color: var(--in-heading); }
.scard:hover .scard__tag:first-child { background: var(--in-lime); }
.scard:hover .scard__tag:last-child { background: var(--in-black); color: var(--in-bg); }

/* =============================================================
 * WHAT OUR INTERNS SAY (1280:776)
 * ============================================================= */
.pd-say { padding-top: 96px; }
.pd-say__stage { position: relative; width: 100%; max-width: 827px; min-height: 399px; }
.pd-say__q { position: absolute; width: 50px; height: 38px; display: block; }
.pd-say__q--tl { left: 0; top: 0; }
.pd-say__q--br { right: 0; top: 361px; transform: rotate(180deg); }
.pd-say .pd-sec-head { position: absolute; left: 0; top: 70px; }
.pd-say__msg { position: absolute; left: 50%; transform: translateX(-50%); top: 158px; width: 827px; max-width: 100%; height: 56px; margin: 0;
  background: var(--in-card-accent); border-left: 7px solid var(--in-border); display: flex; align-items: center; padding: 0 18px;
  font-family: var(--in-head); font-weight: 500; font-size: 16px; line-height: 28px; letter-spacing: -0.08px; color: var(--in-heading); }
.pd-say__author { position: absolute; left: 327px; top: 237px; width: 179px; height: 50px;
  background: var(--in-orange); border: 1px solid var(--in-border); box-shadow: var(--in-shadow); overflow: hidden; }
.pd-say__name { position: absolute; left: 17px; top: 3px; font-family: var(--in-head); font-weight: 500; font-size: 16px; line-height: 28px; letter-spacing: -0.08px; color: #fff; }
.pd-say__meta { position: absolute; left: 17px; top: 25px; font-family: var(--in-text); font-size: 12px; line-height: 18px; color: var(--in-card-accent); }
.pd-say__meta strong { font-weight: 700; }
.pd-say__dots { position: absolute; left: 365px; top: 309px; display: flex; gap: 8px; }
.pd-say__dots i { width: 20px; height: 20px; display: block; background: #E3DDD2; opacity: 0.6; }
.pd-say__dots i.is-active { background: var(--in-lime); border: 1px solid var(--in-border); box-shadow: var(--in-shadow-sm); opacity: 1; }

/* =============================================================
 * CTA — READY TO APPLY (1280:778) — sabit 815×206 sahne, JS --pd-scale
 * ============================================================= */
.pd-cta { padding-top: 96px; padding-bottom: 96px; }
.pd-cta__stage { position: relative; width: 815px; height: 206px;
  transform-origin: top left; transform: scale(var(--pd-scale, 1)); }
.pd-cta__title { position: absolute; left: 0; top: 0; margin: 0;
  font-family: var(--in-head); font-weight: 500; font-size: 24px; line-height: 32px; letter-spacing: -0.12px; color: var(--in-heading); white-space: nowrap; }
.pd-cta__hl { position: absolute; left: 195px; top: 40px; width: 170px; height: 32px; display: inline-flex; align-items: center; justify-content: center;
  background: var(--in-lime); border-bottom: 2px solid var(--in-border);
  font-family: var(--in-text); font-weight: 400; font-size: 16px; line-height: 28px; color: var(--in-heading); white-space: nowrap; }
.pd-cta__text { position: absolute; left: 0; top: 40px; width: 469px; margin: 0;
  font-family: var(--in-text); font-weight: 400; font-size: 16px; line-height: 28px; color: var(--in-body); }
.pd-cta__btn { position: absolute; left: 0; top: 156px; }
/* Start Here penceresi (922:4686): 187×66, mor bar — translateX 0→10→-2 (4s) */
.pd-cta__win { position: absolute; left: 593.37px; top: 72px; width: 187.63px; height: 66.71px;
  background: #fff; border: 1.5px solid var(--in-border); box-shadow: var(--in-shadow-sm); overflow: hidden;
  animation: pd-starthere-x 4s linear infinite; }
.pd-cta__win-bar { height: 30px; background: #8A38F5; border-bottom: 1px solid var(--in-border);
  display: flex; align-items: center; justify-content: flex-end; gap: 5px; padding-right: 10px; }
.pd-cta__win-bar i { width: 8px; height: 8px; border: 1px solid var(--in-border); display: block; }
.pd-cta__win-label { display: block; text-align: center; padding-top: 5px;
  font-family: var(--in-head); font-weight: 500; font-size: 16px; line-height: 28px; letter-spacing: -0.08px; color: var(--in-heading); }
/* Ready? rozeti (922:4679): turuncu, 1.5px, 4px gölge — scale 1→1.102→0.978 (4s) */
.pd-cta__ready { position: absolute; left: 745px; top: 132px; display: inline-flex; align-items: center; padding: 10px;
  background: var(--in-orange); border: 1.5px solid var(--in-border); box-shadow: var(--in-shadow);
  font-family: var(--in-text); font-weight: 700; font-size: 14px; line-height: 22px; color: var(--in-bg); white-space: nowrap;
  transform-origin: center; animation: pd-ready-scale 4s linear infinite; }

/* ---- CTA keyframes (get_motion_context 1280:778, 4s loop) ---- */
@keyframes pd-starthere-x {
  0% { transform: translateX(0); }
  22.466% { transform: translateX(10px); }
  43.546%, 100% { transform: translateX(-2px); }
}
@keyframes pd-ready-scale {
  0% { transform: scale(1); animation-timing-function: cubic-bezier(.5,0,.5,1); }
  22.525% { transform: scale(1.102); animation-timing-function: cubic-bezier(.5,0,.5,1); }
  43.55%, 100% { transform: scale(0.978); }
}
@media (prefers-reduced-motion: reduce){
  .pd-cta__win, .pd-cta__ready { animation: none !important; }
}

/* =============================================================
 * RESPONSIVE — tek kırılım 1000px + 900px altı ortalama (Sayfa-1 disiplini)
 * ============================================================= */
@media (max-width: 1000px){
  .pd-hero { padding-top: 40px; }
  .pd-mentors { padding-top: 70px; }
  .pd-mentors__grid { grid-template-columns: 1fr; justify-content: center; justify-items: center; gap: 20px; }
  .pd-mentors__dot { display: none; }
  .pd-work { padding-top: 70px; }
  .pd-sessions { padding-top: 70px; }
  .pd-sessions__grid { grid-template-columns: 1fr; justify-content: center; justify-items: center; }
  .pd-say { padding-top: 70px; }
  /* Testimonial statik akış: mutlak konumları çöz */
  .pd-say__stage { min-height: 0; display: flex; flex-direction: column; gap: 20px; }
  .pd-say__q { display: none; }
  .pd-say .pd-sec-head { position: static; }
  .pd-say__msg { position: static; transform: none; width: 100%; height: auto; min-height: 56px; padding: 12px 18px; }
  /* author badge: absolute çocukları (isim/meta) için sabit boyut korunur, akışta ortalı */
  .pd-say__author { position: relative; left: auto; top: auto; width: 179px; height: 50px; align-self: center; }
  .pd-say__dots { position: static; align-self: center; }
  .pd-cta { padding-top: 60px; padding-bottom: 70px; }
}
/* 900px altı: bölümler ORTALI (Sayfa-1 gibi) */
@media (max-width: 900px){
  .pd-sec-head { max-width: 100%; text-align: center; margin-inline: auto; }
  .pd-work__list { margin-inline: auto; }
  .pd-say__stage { align-items: center; text-align: center; }
  .pd-say__author { margin-inline: 0; }
}
/* Dar: proje satırı dikey */
@media (max-width: 620px){
  .wrow { height: auto; flex-direction: column; align-items: flex-start; gap: 8px; padding: 14px 16px; }
  .wrow__text { white-space: normal; }
}
