/* The Seasons (satın alınmış, self-host). */
@font-face {
  font-family: "The Seasons";
  src: url("../../fonts/TheSeasons-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "The Seasons";
  src: url("../../fonts/TheSeasons-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "The Seasons";
  src: url("../../fonts/TheSeasons-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* Not: @view-transition cross-fade, geçişte topbar'ı oynattığı için kaldırıldı. */

:root {
  --bg: #e5e4e2;
  --text: #111111;
  --nav-1: #111111;
  --nav-2: #1e1e1e;
  --nav-3: #333333;
  --nav-4: #585858;
  --nav-5: #9ba8ab;
  --nav-6: #ccd0cf;
  --heading: #111111;
  --copy: #3e3e3e;
  --copy-soft: #3f3f3f;
  --muted: #585858;
  --surface: rgba(255, 255, 255, 0.68);
  --surface-strong: rgba(255, 255, 255, 0.8);
  --border-soft: rgba(51, 51, 51, 0.14);
  --border-strong: rgba(51, 51, 51, 0.26);
  --shadow-soft: 0 16px 32px rgba(30, 30, 30, 0.06);
  --shadow-raise: 0 20px 34px rgba(30, 30, 30, 0.1);
}

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  height: 100%;
}

body {
  background: var(--bg);
  color: var(--text);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  overflow-x: hidden;
}

.wordmark {
  display: block;
  width: min(68vw, 700px);
  height: auto;
}

.splash {
  position: fixed;
  inset: 0;
  display: grid;
  place-items: center;
  background: #e5e4e2;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.splash.hide {
  opacity: 0;
  visibility: hidden;
}

.main-content {
  min-height: 100%;
  display: block;
  position: relative;
  background: var(--bg);
  opacity: 0;
  transition: opacity 0.45s ease;
}

.main-content.show {
  opacity: 1;
}

/* Üstte kayan duyuru şeridi (slate marquee) */
.news-ticker {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 60;
  height: 38px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: #536878;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.news-ticker-track {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  animation: newsScroll 42s linear infinite;
  will-change: transform;
}
.news-ticker-item {
  display: inline-flex;
  align-items: center;
  gap: 1.6rem;
  padding-right: 1.6rem;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.86rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: #f2f3f5;
}
.news-ticker-sep {
  width: 9px;
  height: 9px;
  flex: none;
  color: rgba(242, 243, 245, 0.7);
}
@keyframes newsScroll {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .news-ticker-track { animation: none; }
}

.topbar {
  position: fixed;
  top: 38px;
  left: 0;
  right: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  gap: 1.15rem;
  padding: 1.2rem clamp(1.1rem, 2.6vw, 2.05rem);
  background: transparent;
  transition: background-color 0.25s ease, backdrop-filter 0.25s ease,
    border-color 0.25s ease, padding 0.25s ease;
  border-bottom: 1px solid transparent;
}
/* Scroll edilince (küre oluşurken de) okunur kalsın: koyu, bulanık zemin. */
.topbar.is-scrolled {
  background: rgba(8, 14, 20, 0.72);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom-color: rgba(255, 255, 255, 0.07);
  padding-top: 0.85rem;
  padding-bottom: 0.85rem;
}

.topbar::before,
.topbar::after { content: none; }

.topbar > * {
  position: relative;
  z-index: 1;
}

.logo-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  margin-right: 0.5rem;
  height: 1.9rem;
  transition: transform 0.24s ease, filter 0.24s ease;
}

.logo {
  width: 194px;
  height: 37px;
  display: block;
  object-fit: cover;
  object-position: center 44%;
  filter: brightness(0) invert(1);
  transform: translateY(-1px);
}

.logo-link:hover,
.logo-link:focus-visible {
  transform: translateY(-1px) scale(1.01);
  filter: drop-shadow(0 6px 14px rgba(204, 208, 207, 0.26));
  outline: none;
}

.menu {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0 auto; /* nav'ı logo ile butonlar arasında ortala */
}

.nav-dd {
  position: relative;
}

.nav-dd-trigger {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0.3rem 0.8rem;
  background: none;
  border: 0;
  cursor: pointer;
  font-family: inherit;
  font-size: 0.88rem;
  font-weight: 500;
  color: rgba(254, 252, 255, 0.78);
  transition: color 0.15s ease;
}

.nav-dd:hover .nav-dd-trigger,
.nav-dd:focus-within .nav-dd-trigger {
  color: #fefcff;
}

/* Menüdeki dropdown'sız düz linkler (Bize Ulaşın / SSS / Hakkımızda) —
   nav-dd-trigger ile aynı görünür. */
.nav-link {
  display: inline-flex;
  align-items: center;
  padding: 0.3rem 0.8rem;
  text-decoration: none;
  font-size: 0.88rem;
  font-weight: 500;
  color: rgba(254, 252, 255, 0.78);
  transition: color 0.15s ease;
}

.nav-link:hover,
.nav-link:focus-visible {
  color: #fefcff;
  outline: none;
}

/* Afterwork News — ayrı bir hedefe (yeni sekme) gittiğini belli eden ince
   ayrım: hafif çerçeve pill + dış-bağlantı oku. Abartısız. */
.nav-link--news {
  position: relative;
  margin-left: 1.6rem;
  padding: 0.3rem 0.7rem 0.3rem 0.85rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  color: rgba(254, 252, 255, 0.92);
  transition: color 0.15s ease, border-color 0.18s ease, background-color 0.18s ease;
}
/* Ana nav'dan ayıran ince dikey çizgi */
.nav-link--news::before {
  content: "";
  position: absolute;
  left: -0.85rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 18px;
  background: rgba(255, 255, 255, 0.18);
}
.nav-link--news::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-left: 0.4rem;
  background-color: currentColor;
  opacity: 0.85;
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M7 17L17 7M9 7h8v8"/></svg>') center / contain no-repeat;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M7 17L17 7M9 7h8v8"/></svg>') center / contain no-repeat;
}
.nav-link--news:hover,
.nav-link--news:focus-visible {
  border-color: rgba(255, 255, 255, 0.5);
  background: rgba(255, 255, 255, 0.07);
}

.nav-dd-caret {
  margin-top: 1px;
  transition: transform 0.2s ease;
}

.nav-dd:hover .nav-dd-caret,
.nav-dd:focus-within .nav-dd-caret {
  transform: rotate(180deg);
}

.nav-dd-panel {
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  transform: translateX(-50%) translateY(-6px);
  min-width: 248px;
  padding: 0.5rem;
  background: rgba(15, 23, 32, 0.96);
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  border: 1px solid rgba(204, 208, 207, 0.1);
  border-radius: 16px;
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.4);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 100;
}

.nav-dd:hover .nav-dd-panel,
.nav-dd:focus-within .nav-dd-panel {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

.nav-dd-arrow {
  position: absolute;
  top: -5px;
  left: 50%;
  width: 10px;
  height: 10px;
  transform: translateX(-50%) rotate(45deg);
  background: rgba(15, 23, 32, 0.96);
  border-top: 1px solid rgba(204, 208, 207, 0.1);
  border-left: 1px solid rgba(204, 208, 207, 0.1);
  border-radius: 2px 0 0 0;
}

.nav-dd-item {
  display: flex;
  flex-direction: column;
  gap: 1px;
  padding: 0.65rem 0.85rem;
  border-radius: 10px;
  text-decoration: none;
  transition: background 0.15s ease;
}

.nav-dd-item:hover,
.nav-dd-item:focus-visible {
  background: rgba(255, 255, 255, 0.07);
  outline: none;
}

.nav-dd-item-t {
  font-size: 0.83rem;
  font-weight: 600;
  color: #fefcff;
}

.nav-dd-item-d {
  font-size: 0.72rem;
  color: rgba(204, 208, 207, 0.45);
}

.actions {
  display: flex;
  align-items: center;
  gap: 0.65rem;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.9rem;
  padding: 0 0.92rem;
  border-radius: 999px;
  text-decoration: none;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.86rem;
  font-weight: 600;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  position: relative;
  overflow: hidden;
}

.btn-ghost {
  color: #cbcfd4;
  border: 1px solid rgba(124, 138, 150, 0.55);
  background: rgba(83, 104, 120, 0.16);
}

.btn-ghost:hover {
  color: #fff;
  border-color: rgba(144, 158, 170, 0.8);
  background: rgba(83, 104, 120, 0.32);
  transform: translateY(-1px);
}

.btn-solid {
  color: #fff;
  background: #536878;
  border: 1px solid #536878;
  font-weight: 700;
}

.btn-solid:hover {
  background: #63798a;
  border-color: #63798a;
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.25);
}

/* Dil seçici (TR / EN) — sade metin, çerçevesiz; tıklayınca kısa parlama,
   sonra zemine erir. */
.lang-switch {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}
.lang-opt {
  border: 0;
  cursor: pointer;
  padding: 0.14rem 0.32rem;
  border-radius: 8px;
  background: transparent;
  color: rgba(202, 207, 214, 0.5);
  font: inherit;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  transition: color 0.3s ease, background-color 0.5s ease;
}
.lang-opt:hover { color: #fff; }
.lang-opt.is-active { color: #f2f3f5; }
.lang-opt.flash {
  background: rgba(83, 104, 120, 0.65);
  color: #fff;
  transition: none;
}
.lang-sep {
  color: rgba(202, 207, 214, 0.32);
  font-size: 0.8rem;
  font-weight: 600;
  user-select: none;
}

.btn:active {
  transform: translateY(0) scale(0.98);
}

.btn:focus-visible {
  outline: none;
  border-color: #ccd0cf;
  box-shadow: 0 0 0 2px rgba(204, 208, 207, 0.3);
}

.hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  overflow: hidden;
  /* Soğuk antrasit gradient — koyu ve mat; merkezde hafif çelik parıltı, kenarlar çok koyu. */
  background: radial-gradient(ellipse at 46% 34%, #223342 0%, #141c24 46%, #0a0a0a 100%), #0a0a0a;
}

.hero-orbs {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.orb {
  position: absolute;
  border-radius: 50%;
}

.orb-1 {
  top: -15%;
  left: 5%;
  width: 55vw;
  height: 55vw;
  background: radial-gradient(circle, rgba(131, 154, 175, 0.30) 0%, rgba(83, 104, 120, 0.18) 40%, transparent 68%);
  filter: blur(50px);
  animation: orbFlashA 8s cubic-bezier(0.45, 0, 0.55, 1) infinite;
}

.orb-2 {
  top: 20%;
  left: -20%;
  width: 65vw;
  height: 65vw;
  background: radial-gradient(circle, rgba(10, 14, 18, 0.92) 0%, rgba(5, 8, 11, 0.5) 45%, transparent 70%);
  filter: blur(80px);
  animation: orbWaveB 38s ease-in-out infinite;
}

.orb-3 {
  top: 5%;
  right: -5%;
  width: 50vw;
  height: 50vw;
  background: radial-gradient(circle, rgba(138, 160, 179, 0.28) 0%, rgba(83, 104, 120, 0.17) 45%, transparent 70%);
  filter: blur(48px);
  animation: orbFlashC 10s cubic-bezier(0.45, 0, 0.55, 1) infinite;
}

.orb-4 {
  bottom: -20%;
  left: 25%;
  width: 60vw;
  height: 48vw;
  background: radial-gradient(circle, rgba(12, 16, 20, 0.82) 0%, rgba(7, 10, 13, 0.38) 45%, transparent 68%);
  filter: blur(90px);
  animation: orbWaveD 44s ease-in-out infinite;
}

.orb-arc {
  position: absolute;
  top: 5%;
  left: -10%;
  width: 80vw;
  height: 60vh;
  transform: rotate(-10deg);
  background: radial-gradient(ellipse at 40% 20%, rgba(206, 218, 228, 0.11) 0%, rgba(140, 158, 174, 0.04) 50%, transparent 72%);
  filter: blur(60px);
}

@keyframes orbFlashA {
  0%   { transform: translate(0vw, 0vh);    opacity: 0.9; }
  18%  { transform: translate(48vw, -18vh); opacity: 1; }
  36%  { transform: translate(30vw, 14vh);  opacity: 0.7; }
  54%  { transform: translate(55vw, -8vh);  opacity: 1; }
  72%  { transform: translate(18vw, 20vh);  opacity: 0.75; }
  100% { transform: translate(0vw, 0vh);    opacity: 0.9; }
}

@keyframes orbFlashC {
  0%   { transform: translate(0vw, 0vh);     opacity: 0.85; }
  20%  { transform: translate(-42vw, 16vh);  opacity: 1; }
  42%  { transform: translate(-22vw, -14vh); opacity: 0.65; }
  60%  { transform: translate(-50vw, 8vh);   opacity: 0.95; }
  80%  { transform: translate(-14vw, 18vh);  opacity: 0.7; }
  100% { transform: translate(0vw, 0vh);     opacity: 0.85; }
}

@keyframes orbWaveB {
  0%   { transform: translate(0vw, 0vh);    opacity: 0.8; }
  50%  { transform: translate(-12vw, 10vh); opacity: 1; }
  100% { transform: translate(0vw, 0vh);    opacity: 0.8; }
}

@keyframes orbWaveD {
  0%   { transform: translate(0vw, 0vh);   opacity: 0.7; }
  50%  { transform: translate(10vw, 12vh); opacity: 0.9; }
  100% { transform: translate(0vw, 0vh);   opacity: 0.7; }
}

.hero-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0;
  max-width: 1100px;
  margin: 0 auto;
  text-align: center;
  /* Auri arama çubuğu ve altındaki örnek sonuç kartları BU tek genişliği
     paylaşır → kenarları asla kaymaz. Tek yerden değiştirilir. */
  --hai-w: min(980px, 90vw);
}

.hero-description {
  margin-left: auto;
  margin-right: auto;
}

.hero-title {
  margin: 0 0 1.1rem;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: clamp(3rem, 7vw, 6rem);
  line-height: 1.05;
  letter-spacing: -0.04em;
  font-weight: 800;
  color: #f2f3f5;
}

/* Kısa tutuldu (2 satır) — arama çubuğu yukarıda kalsın diye. */
.hero-description {
  margin: 0 0 1.25rem;
  max-width: 42ch;
  font-size: clamp(0.96rem, 1.15vw, 1.1rem);
  line-height: 1.65;
  color: rgba(214, 216, 220, 0.82);
}

/* Hero arama çubuğu — kart tasarımıyla aynı cam görünüm */
.hero-search {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: min(460px, 100%);
  margin: 0;
  padding: 0.4rem 0.4rem 0.4rem 1.1rem;
  border-radius: 999px;
  background: linear-gradient(155deg, rgba(205, 213, 220, 0.12), rgba(26, 31, 37, 0.4));
  border: 1px solid rgba(210, 214, 220, 0.18);
  box-shadow: 0 16px 44px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.06);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.hero-search:focus-within {
  border-color: rgba(222, 224, 230, 0.42);
  box-shadow: 0 16px 44px rgba(0, 0, 0, 0.48), inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 0 0 3px rgba(205, 208, 214, 0.14);
}
.hero-search-ico { display: inline-flex; flex: none; color: rgba(210, 214, 220, 0.6); }
.hero-search-ico svg { width: 20px; height: 20px; }
.hero-search-input {
  flex: 1 1 auto; min-width: 0; border: 0; outline: none; background: transparent;
  color: #f2f3f5; font: inherit; font-size: 1rem; padding: 0.55rem 0;
}
.hero-search-input::placeholder { color: rgba(205, 208, 214, 0.55); }
.hero-search-input::-webkit-search-cancel-button { -webkit-appearance: none; }
.hero-search-btn {
  flex: none; border: 0; cursor: pointer; border-radius: 999px;
  padding: 0.7rem 1.5rem; font: inherit; font-weight: 700; font-size: 0.95rem;
  color: #fff; background: #536878;
  transition: transform 0.18s ease, opacity 0.18s ease;
}
.hero-search-btn:hover { transform: translateY(-1px); opacity: 0.92; }
.hero-search-btn:active { transform: translateY(0); }

/* Hero AI-search kutusu (örnekteki gibi: üstte giriş, altta araç pill'leri) */
.hero-ai-search {
  width: var(--hai-w);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  padding: 0.95rem 1.4rem 0.8rem;
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.045);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.05);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  text-align: left;
}
.hai-input {
  width: 100%;
  border: 0;
  outline: none;
  background: transparent;
  color: #f2f3f5;
  font: inherit;
  /* Arama çubuğu içindeki yazı (ve placeholder) — site fontu (sans) */
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: clamp(1.3rem, 2.2vw, 1.85rem);
  line-height: 1.25;
  padding: 0.15rem 0.4rem 0.05rem;
}
.hai-input::placeholder { color: rgba(214, 216, 220, 0.5); }
.hai-input::-webkit-search-cancel-button { -webkit-appearance: none; }
.hai-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.6rem;
}
.hai-pills { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; }
.hai-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 2.3rem;
  padding: 0 0.9rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.035);
  color: #d6d8dc;
  font: inherit;
  font-size: 0.86rem;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}
.hai-pill:hover {
  background: rgba(255, 255, 255, 0.09);
  border-color: rgba(255, 255, 255, 0.26);
  color: #f2f3f5;
}
.hai-pill svg { width: 16px; height: 16px; flex: none; }
.hai-pill--icon { padding: 0; width: 2.3rem; justify-content: center; }
.hai-pill--icon svg { width: 18px; height: 18px; }
.hai-send {
  flex: none;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  border: 0;
  cursor: pointer;
  background: #536878;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.18s ease, transform 0.18s ease;
}
.hai-send:hover { opacity: 0.9; transform: translateY(-1px); }
.hai-send:active { transform: translateY(0); }
.hai-send svg { width: 19px; height: 19px; }

/* ── Auri örnek sonuçları — arama çubuğuyla AYNI cam dili ─────────────
   Genişlik çubukla ORTAK (--hai-w) → kenarlar asla kaymaz. Bu genişliğe
   3 kart rahat sığar.

   İki ayrı durum var:
     .is-open → konteyner yüksekliği açılır. YALNIZCA BİR KEZ, ilk sonuçta
                eklenir ve bir daha kaldırılmaz → ilk açılıştan sonra
                "Auri ile tanışın" bir daha aşağı/yukarı kaymaz.
     .is-on   → kartların kendisi görünür. Her örnek arasında açılıp kapanır;
                yükseklik sabit kaldığı için bu sadece fade etkisidir. */
.hai-results {
  --hres-h: 9.6rem;
  width: var(--hai-w);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.75rem;
  height: 0;
  text-align: left;
  pointer-events: none;
  transition:
    height 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    margin-top 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}
.hai-results.is-open {
  height: var(--hres-h);
  margin-top: 1rem;
}
.hres {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  padding: 1rem 1.05rem 0.9rem;
  border-radius: 16px;
  /* Çubuğun camıyla birebir aynı reçete, bir tık daha hafif */
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.05);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  /* Giriş: aşağıdan yumuşak yükselme + fade; --i ile kademeli */
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.32s ease, transform 0.32s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(var(--i, 0) * 70ms);
}
.hai-results.is-on .hres { opacity: 1; transform: translateY(0); }
/* Sönerken kademeyi ters çevirme — hepsi birlikte ve hızlı kaybolsun */
.hai-results:not(.is-on) .hres { transition-duration: 0.3s; transition-delay: 0s; }

/* Üst satır — kare logo + şirket */
.hres-top { display: flex; align-items: center; gap: 0.55rem; }
.hres-avatar {
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #a9c1d6 0%, #7896ae 100%);
  color: #16202a;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}
.hres-co {
  min-width: 0; font-size: 0.82rem; font-weight: 700; color: #f2f3f5;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.hres-title {
  margin: 0;
  font-size: 0.98rem; font-weight: 700; line-height: 1.3; color: #f2f3f5;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.hres-chips { display: flex; flex-wrap: wrap; gap: 0.35rem; }
.hres-chip {
  padding: 3px 9px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: rgba(226, 228, 232, 0.8);
  font-size: 0.68rem;
  font-weight: 600;
}

/* Maaş + konum — sol altta yan yana (diğer ilan kartlarıyla aynı) */
.hres-foot {
  display: flex; align-items: baseline; gap: 0.45rem;
  margin-top: auto; padding-top: 0.15rem; min-width: 0;
}
.hres-salary { font-size: 0.82rem; font-weight: 700; color: #f2f3f5; }
.hres-place {
  font-size: 0.72rem; color: rgba(214, 216, 220, 0.62);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

@media (max-width: 860px) {
  /* Üç kart dar ekranda okunmaz → iki kart */
  .hai-results { grid-template-columns: repeat(2, 1fr); }
  .hres:nth-child(3) { display: none; }
}
@media (max-width: 620px) {
  .hai-results { grid-template-columns: 1fr; }
  .hres:nth-child(n + 2) { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .hres { opacity: 1; transform: none; transition: none; }
  .hai-results { transition: none; }
}

/* AI-search altındaki Auri tanıtımı */
.hero-moby {
  margin: 1.1rem 0 0;   /* üstünde artık örnek sonuçlar var → boşluk kısaldı */
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  text-align: center;
}
.hero-moby-name {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: clamp(1.15rem, 1.7vw, 1.5rem);
  font-weight: 700;
  color: #f2f3f5;
}
.hero-moby-sub {
  font-size: clamp(0.9rem, 1.15vw, 1.02rem);
  color: rgba(214, 216, 220, 0.62);
}

/* ── "Auri" markası: cümle içindeki Auri kelimesi özel font + amber renk ──
   Gerçek font dosyası gelince: aşağıya @font-face ekle ve --moby-font'u ona
   ata; tüm "Auri" kelimeleri otomatik o fonta döner. */
:root { --moby-font: "Helvetica Neue", Helvetica, Arial, sans-serif; }
.moby-word {
  font-family: var(--moby-font);
  font-weight: 700;
  letter-spacing: -0.01em;
  white-space: nowrap;       /* "Auri" tek parça kalsın */
  /* Premium golden amber — daha parlak/ışıltılı, hafif golden glow */
  color: #f7d98a;            /* fallback (clip desteklemeyen tarayıcı) */
  background: linear-gradient(180deg, #ffe7a4 0%, #f6d585 50%, #edc069 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 10px rgba(244, 210, 130, 0.4));
}

/* İkincil CTA (arama çubuğu ana eylem olduğu için hafif/ghost) */
.hero-cta--ghost {
  background: transparent;
  color: #e6e8ea;
  box-shadow: none;
  border: 1px solid rgba(210, 214, 220, 0.28);
}
.hero-cta--ghost:hover { background: rgba(210, 214, 220, 0.1); opacity: 1; }

.hero-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  padding: 0 2.2rem;
  border-radius: 999px;
  text-decoration: none;
  color: #fff;
  background: #536878;
  font-size: 0.95rem;
  font-weight: 700;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.4);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.hero-cta:hover {
  opacity: 0.9;
  transform: translateY(-2px);
}

.hero-cta:active {
  transform: translateY(0);
}

.hero-cta:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(230, 232, 235, 0.4), 0 8px 28px rgba(0, 0, 0, 0.4);
}

/* ─── Hero — scroll-driven parçacık küre animasyonu ─────────── */
/* Uzun bölüm scroll mesafesi verir; sticky sahne pinlenir; scroll ilerledikçe
   yazı parçacıklara çözülüp canlı küreye döner, sonra AI yazısı belirir. */
.hero-scroll {
  position: relative;
  height: 340vh;
  /* Teal çalan siyah zemin üzerine soluk petrol nebula */
  background-color: #0a0a0a;
  background-image:
    radial-gradient(90% 60% at 16% 92%, rgba(83, 104, 120, 0.18) 0%, transparent 60%),
    radial-gradient(82% 58% at 86% 8%, rgba(83, 104, 120, 0.14) 0%, transparent 58%),
    radial-gradient(60% 46% at 50% 44%, rgba(83, 104, 120, 0.08) 0%, transparent 66%),
    linear-gradient(180deg, #080808 0%, #0d1116 50%, #080808 100%);
}
.hero-stage {
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: hidden;
  /* Palet: Onyx #0A0A0A → Blue Slate #536878 → Alabaster Grey #E5E4E2.
     Blue Slate ORTA katmanın ana rengi: gri değil, doygun mavi-çelik.
     Siyah yukarıda erken kesilir ki mavi bant geniş ve net görünsün. */
  background-color: #0a0a0a;
  background-image:
    linear-gradient(180deg, rgba(229, 228, 226, 0) 90%, #e5e4e2 99%), /* alt kenar sayfa zeminine eşit → kesintisiz akış */
    /* ── Blue Slate yoğunluk bulutu: ışık hissi verir ── */
    radial-gradient(72% 34% at 46% 52%, rgba(99, 122, 141, 0.34) 0%, transparent 70%),
    radial-gradient(118% 56% at 50% 57%, rgba(83, 104, 120, 0.52) 0%, rgba(83, 104, 120, 0.20) 46%, transparent 73%),
    /* ── taban geçiş: Onyx → Blue Slate → Alabaster. Siyah %11'e kadar iner,
       Blue Slate bandı %57–%66'da oturur, beyaz %90+ başlar. ── */
    linear-gradient(180deg,
      #0a0a0a 0%,
      #0a0a0a 11%,
      #0d1219 17%,
      #16222d 23%,
      #223342 29%,
      #2f4557 36%,
      #3d5768 43%,
      #4a6273 50%,
      #536878 57%,
      #536878 66%,
      #5c7080 74%,
      #6b7d8c 82%,
      #7f8e9b 88%,
      #a2adb5 92%,
      #cbcecd 96%,
      #e5e4e2 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
/* Pürüzlü / efektli doku — geçişin üstüne ince film grain (referanstaki gibi). */
/* Sayfa geneli film-grain: hero + TÜM alt beyazlar aynı pürüzlü dokuda.
   Sabit (fixed) tek katman → desen kaymaz, hero'dan aşağıya kesintisiz doku;
   böylece hero beyazı ile alt beyazlar arasında ton/yapı farkı kalmaz. */
body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 50;
  pointer-events: none;
  opacity: 0.16;
  mix-blend-mode: multiply; /* açık zeminde de görünür ince tanecik (film-grain) */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: 150px 150px;
}
.hero-canvas {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}
/* Dönen/parıldayan yapay zeka orbu (canvas) ve orb ışımaları BEYAZ bölgeye
   hiç girmesin: alt kısım (açık/beyaz alan başlamadan) maske ile söner.
   Gri/mavi bant %88'e kadar sürdüğü için maske de aşağı çekildi: %79'a kadar
   tam görünür, beyazın başladığı %87'de tamamen kaybolur. */
.hero-canvas,
.hero-scroll .hero-orbs {
  -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 79%, transparent 87%);
  mask-image: linear-gradient(180deg, #000 0%, #000 79%, transparent 87%);
}
.hero-scroll .hero-orbs { z-index: 1; }
/* Obsidian-chrome dikey geçişi temiz kalsın: koyu (muddy) orb'ları kaldır,
   açık ışıltıları kısarak sadece üstte hafif can/parıltı bırak. */
.hero-scroll .orb-2,
.hero-scroll .orb-4 { display: none; }
.hero-scroll .orb-1 { opacity: 0.5; }
.hero-scroll .orb-3 { opacity: 0.45; }
.hero-scroll .orb-arc { opacity: 0.6; }

/* İçerik normal akışta, sahne tarafından flex ile ortalanır (prod ile birebir).
   Canvas ve AI yazısı üstüne mutlak biner. */
.hero-scroll:not(.is-static) .hero-content {
  position: relative;
  z-index: 3;
  flex: 0 1 auto;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0;
  text-align: center;
  align-items: center;
  will-change: opacity, transform;
}
/* Hero metni sayfaya ortalı (tek kolon). */
.hero-lead {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.5rem, 5vw, 4rem);
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 clamp(1.2rem, 4vw, 2.6rem);
}
.hero-lead .hero-title { font-size: clamp(2.4rem, 4.6vw, 4.2rem); }
.hero-lead .hero-description { margin-bottom: 2.2rem; }

/* ─── Hero sağ sütun — canlı iş ilanı kartları (yüzeysel glassmorphism, sayfaya dönük) ─── */
/* Kart alanı sol metin bloğuyla aynı büyüklükte tutulur (yatay + dikey daraltılmış). */
.hero-jobs {
  display: none;
}

/* Beyaz ilan kartları — akış kartı gibi, kullanıcıya dönük (düz) */
.hjc {
  display: flex; flex-direction: column; gap: 0.35rem;
  padding: 0.85rem 0.9rem; border-radius: 14px; text-decoration: none;
  background: #fdfcfa; border: 1px solid rgba(53, 72, 90, 0.12);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.34);
  color: #111111;
  transition: transform 0.2s ease, box-shadow 0.22s ease, border-color 0.2s ease;
  animation: hjIn 0.6s cubic-bezier(0.22, 1, 0.36, 1) backwards;
  animation-delay: var(--d, 0ms);
}
.hjc:hover {
  transform: translateY(-3px);
  border-color: rgba(51, 51, 51, 0.2);
  box-shadow: 0 24px 46px rgba(0, 0, 0, 0.4);
}
.hjc-top { display: flex; align-items: center; gap: 0.5rem; }
.hjc-avatar {
  flex: none; width: 30px; height: 30px; border-radius: 8px;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 0.68rem; font-weight: 800; letter-spacing: 0.01em; color: #16202a;
  background: linear-gradient(135deg, #a9c1d6 0%, #7896ae 100%);
}
.hjc-co-name {
  display: flex; align-items: center; gap: 0.35rem; min-width: 0; flex: 1 1 auto;
  font-size: 0.82rem; font-weight: 700; color: #111111;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.hjc-pro {
  flex: none; padding: 0.05rem 0.34rem; border-radius: 5px;
  font-size: 0.54rem; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase;
  color: #ffd84d; background: #172533;
}
.hjc-title {
  margin: 0.3rem 0 0; font-size: 0.9rem; font-weight: 700; line-height: 1.3; color: #111111;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.hjc-chips { display: flex; flex-wrap: wrap; gap: 0.3rem; margin-top: 0.35rem; }
.hjc-chip {
  padding: 0.18rem 0.5rem; border-radius: 999px;
  font-size: 0.66rem; font-weight: 600; color: #3e3e3e; background: rgba(53, 72, 90, 0.07);
}
/* Maaş + konum yan yana, sol altta */
.hjc-meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.4rem; margin-top: auto; padding-top: 0.45rem; }
.hjc-salary { font-size: 0.78rem; font-weight: 700; color: #111111; }
.hjc-place { font-size: 0.68rem; color: #585858; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* Yüzeysel cam kart — sayfaya dik bakar (yatık değil), sade "display" içeriği. */
.hj-card {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  padding: 0.8rem 0.85rem;
  border-radius: 15px;
  text-decoration: none;
  background: linear-gradient(155deg, rgba(205, 213, 220, 0.1), rgba(26, 31, 37, 0.36));
  border: 1px solid rgba(210, 214, 220, 0.14);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.06);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  transition: transform 0.22s ease, border-color 0.22s ease, background 0.22s ease;
  animation: hjIn 0.6s cubic-bezier(0.22, 1, 0.36, 1) backwards;
  animation-delay: var(--d, 0ms);
}
@keyframes hjIn {
  from { opacity: 0; transform: translateY(14px); }
  to   { opacity: 1; transform: translateY(0); }
}
.hj-card:hover {
  transform: translateY(-3px);
  border-color: rgba(210, 214, 220, 0.32);
  background: linear-gradient(155deg, rgba(208, 216, 223, 0.14), rgba(30, 36, 42, 0.44));
}

.hj-top { display: flex; align-items: center; gap: 0.5rem; }
.hj-avatar {
  flex: none; width: 30px; height: 30px; border-radius: 9px;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 0.68rem; font-weight: 800; letter-spacing: 0.02em; color: #e2e4e8;
  background: linear-gradient(150deg, rgba(118, 128, 138, 0.5), rgba(50, 57, 64, 0.5));
  border: 1px solid rgba(210, 214, 220, 0.18);
}
.hj-co { display: flex; flex-direction: column; min-width: 0; flex: 1 1 auto; }
.hj-co-name {
  font-size: 0.8rem; font-weight: 700; color: #eaeaea;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.hj-co-sub {
  font-size: 0.68rem; color: rgba(205, 208, 214, 0.55);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.hj-pro {
  flex: none; padding: 0.08rem 0.38rem; border-radius: 6px;
  font-size: 0.55rem; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase;
  color: #f2f2f2; background: rgba(22, 34, 46, 0.7); border: 1px solid rgba(255, 255, 255, 0.28);
}
.hj-title {
  margin: 0.3rem 0 0; font-size: 0.92rem; font-weight: 600; line-height: 1.3; color: #f4f4f4;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.hj-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 0.4rem; margin-top: auto; padding-top: 0.4rem; }
.hj-salary { font-size: 0.78rem; font-weight: 700; color: #cdd0d5; }
.hj-chip {
  padding: 0.18rem 0.5rem; border-radius: 999px;
  font-size: 0.66rem; font-weight: 600; color: rgba(214, 216, 220, 0.82);
  background: rgba(205, 208, 214, 0.12); border: 1px solid rgba(210, 214, 220, 0.12);
}

@media (max-width: 980px) {
  .hero-lead { flex-direction: column; gap: 2.4rem; }
  .hero-scroll:not(.is-static) .hero-content,
  .hero-content { align-items: center; text-align: center; max-width: 680px; }
  .hero-jobs { width: min(520px, 92vw); max-height: none; }
}
@media (max-width: 620px) {
  .hero-jobs { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .hj-card { animation: none; }
}
.hero-scroll:not(.is-static) .hero-ai {
  position: absolute;
  left: 50%;
  top: 60%;
  transform: translate(-50%, 34px);
  z-index: 3;
  width: min(720px, 88vw);
  text-align: center;
  opacity: 0;
  pointer-events: none;
  will-change: opacity, transform;
}
.hero-ai-kicker {
  margin: 0 0 0.9rem;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #a8abb2;
}
.hero-ai-title {
  margin: 0 0 1.1rem;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: clamp(1.7rem, 3.4vw, 2.9rem);
  line-height: 1.1;
  letter-spacing: -0.01em;
  font-weight: 700;
  color: #f2f3f5;
}
.hero-ai-text {
  margin: 0 auto;
  max-width: 560px;
  font-size: clamp(1rem, 1.3vw, 1.15rem);
  line-height: 1.65;
  color: #b4b7bd;
}
/* Sahnenin alt BEYAZ şeridinde durur → koyu metin. Opaklığını
   hero-particles.js, AI yazısıyla aynı ilerlemeye göre sürer. */
.hero-ai-scroll {
  position: absolute;
  left: 50%;
  bottom: 2.2rem;
  transform: translateX(-50%);
  z-index: 3;
  display: inline-block;
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: rgba(25, 29, 34, 0.55);
  opacity: 0;
  pointer-events: none;
  will-change: opacity;
}

/* Fallback: animasyon kapalıysa (mobil / reduced-motion) normal hero. */
.hero-scroll.is-static { height: auto; }
.hero-scroll.is-static .hero-stage {
  position: relative;
  min-height: 100vh;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 6rem 0;
}
.hero-scroll.is-static .hero-canvas,
.hero-scroll.is-static .hero-ai,
.hero-scroll.is-static .hero-ai-scroll { display: none; }

/* ─── Son İlanlar (canlı feed kartları) ─────────────────────── */
.roles {
  position: relative;
  background: #e5e4e2;
  padding: 3.4rem clamp(1.1rem, 4vw, 2.8rem) 4rem;
}

.roles-inner {
  max-width: 1180px;
  margin: 0 auto;
}

.roles-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.6rem;
}

.roles-head h2 {
  margin: 0;
  font-size: clamp(1.4rem, 2.4vw, 1.85rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--heading);
}

.roles-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid rgba(51, 51, 51, 0.15);
  color: var(--muted);
  text-decoration: none;
  font-size: 1.3rem;
  line-height: 1;
  transition: background 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}

.roles-more:hover {
  background: #fff;
  border-color: rgba(51, 51, 51, 0.28);
  transform: translateX(2px);
}

.roles-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}

.roles-card {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  background: #fff;
  border: 1px solid rgba(51, 51, 51, 0.1);
  border-radius: 16px;
  padding: 1.1rem 1.15rem;
  box-shadow: 0 10px 24px rgba(30, 30, 30, 0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.roles-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 34px rgba(30, 30, 30, 0.1);
  border-color: rgba(51, 51, 51, 0.18);
}

.roles-card-top {
  display: flex;
  align-items: center;
  gap: 0.55rem;
}

.roles-avatar {
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #a9c1d6 0%, #7896ae 100%);
  color: #16202a;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.roles-company-name {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  min-width: 0;
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--heading);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.roles-iso {
  flex: none;
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #585858;
  border: 1px solid rgba(51, 51, 51, 0.2);
  border-radius: 999px;
  padding: 1px 6px;
}

.roles-title {
  margin: 0;
  font-size: 0.98rem;
  line-height: 1.3;
  font-weight: 700;
}

.roles-title a {
  color: var(--heading);
  text-decoration: none;
}

.roles-title a:hover {
  text-decoration: underline;
}

/* Maaş + konum — sol altta yan yana (footer içinde) */
.roles-money {
  display: flex;
  align-items: baseline;
  gap: 0.45rem;
  min-width: 0;
}

.roles-salary {
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--heading);
}

.roles-place {
  font-size: 0.72rem;
  color: var(--muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.roles-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}

.roles-chip {
  font-size: 0.68rem;
  font-weight: 600;
  color: #3e3e3e;
  background: rgba(53, 72, 90, 0.06);
  border-radius: 999px;
  padding: 3px 9px;
}

.roles-chip--ghost {
  background: transparent;
  border: 1px solid rgba(51, 51, 51, 0.16);
  color: var(--muted);
}

.roles-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-top: auto;
  padding-top: 0.45rem;
}

/* "x gün önce" — üst satırın sağ ucunda (alt satır maaş/konuma ayrıldı) */
.roles-posted {
  margin-left: auto;
  flex: none;
  font-size: 0.68rem;
  color: #9ba8ab;
}

.roles-apply {
  flex: none;
  font-size: 0.72rem;
  font-weight: 700;
  text-decoration: none;
  color: #fefcff;
  background: #11212d;
  border-radius: 999px;
  padding: 5px 14px;
  transition: background 0.2s ease, transform 0.2s ease;
}

.roles-apply:hover {
  background: #35485a;
  transform: translateY(-1px);
}

/* Scroll-reveal (kademeli) — IntersectionObserver .is-visible ekler */
.reveal-up {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.65s cubic-bezier(0.4, 0, 0.2, 1), transform 0.65s cubic-bezier(0.4, 0, 0.2, 1);
  transition-delay: var(--d, 0ms);
}

.reveal-up.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 1080px) {
  .roles-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
  .roles-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .reveal-up { opacity: 1; transform: none; transition: none; }
}

/* ─── Neden Afterwork (laptop başvuru demosu) ─────────────── */
.cards {
  background: #e5e4e2;
  padding: 5.5rem clamp(1.1rem, 4vw, 2rem) 5rem;
}

.cards-head {
  text-align: center;
  margin-bottom: 3.5rem;
}

.cards-kicker {
  margin: 0 0 0.8rem;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #9ba8ab;
}

.cards-title {
  margin: 0;
  font-size: clamp(1.9rem, 3.4vw, 2.9rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.025em;
  color: #111111;
}

.cards-title strong { font-weight: 800; }

.cards-grid {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 2.5rem;
  align-items: center;
}

.cards-feats {
  display: flex;
  flex-direction: column;
  gap: 2.6rem;
}

.cards-feat {
  display: flex;
  align-items: flex-start;
  gap: 0.9rem;
}

.cards-feats--l .cards-feat {
  flex-direction: row-reverse;
  text-align: right;
}

.cards-feat-ico {
  flex: none;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(155deg, #536878, #1e2b36);
  color: #eef2f5;
  font-size: 1rem;
  box-shadow: 0 4px 14px rgba(28, 42, 56, 0.28);
}

.cards-feat h3 {
  margin: 0 0 0.3rem;
  font-size: 0.95rem;
  font-weight: 700;
  color: #111111;
}

.feat-soon {
  display: inline-block;
  margin-left: 5px;
  padding: 1px 7px;
  border-radius: 99px;
  background: rgba(70, 88, 104, 0.16);
  color: #4a5c6a;
  font-size: 0.58rem;
  font-weight: 700;
  vertical-align: middle;
}

.cards-feat p {
  margin: 0;
  max-width: 230px;
  font-size: 0.82rem;
  line-height: 1.55;
  color: #585858;
}

.cards-feats--l .cards-feat p { margin-left: auto; }

.cards-laptop { width: clamp(300px, 34vw, 430px); }

.laptop { position: relative; }

.laptop-screen {
  position: relative;
  border-radius: 14px 14px 4px 4px;
  overflow: hidden;
  background: #0f1720;
  padding: 12px 10px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.07), 0 36px 72px rgba(17, 17, 17, 0.3);
}

.laptop-cam {
  position: absolute;
  top: 5px;
  left: 50%;
  transform: translateX(-50%);
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #243543;
}

.lp-demo {
  position: relative;
  height: 300px;
  padding: 10px;
  border-radius: 8px;
  overflow: hidden;
  background: #f6f6f6;
}

.lp-bar {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 2px 2px 10px;
}

.lp-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(53, 72, 90, 0.18);
}

.lp-bar-t {
  margin-left: 8px;
  font-size: 0.6rem;
  font-weight: 600;
  color: #585858;
  transition: color 0.3s ease;
}

.lp-screen {
  position: absolute;
  top: 38px;
  left: 10px;
  right: 10px;
  bottom: 10px;
  opacity: 0;
  transform: translateY(6px);
  pointer-events: none;
  transition: opacity 0.35s ease, transform 0.35s ease;
}

.lp-screen.is-active {
  opacity: 1;
  transform: translateY(0);
}

.lp-av--c {
  background: linear-gradient(135deg, #3a4d5f, #5c7080);
}

/* Kayıt ekranı */
.lp-auth { display: flex; flex-direction: column; gap: 8px; padding-top: 8px; }
.lp-auth-t { margin: 0 0 2px; font-size: 0.74rem; font-weight: 800; color: #111111; }
.lp-field { display: flex; flex-direction: column; gap: 2px; }
.lp-field-l { font-size: 0.52rem; font-weight: 600; color: #9ba8ab; }
.lp-input {
  display: flex;
  align-items: center;
  min-height: 22px;
  padding: 4px 7px;
  border-radius: 6px;
  border: 1px solid rgba(51, 51, 51, 0.16);
  background: #fff;
  font-size: 0.6rem;
  color: #111111;
}
.lp-btn {
  margin-top: 3px;
  padding: 7px 0;
  border: none;
  border-radius: 7px;
  font: inherit;
  font-size: 0.62rem;
  font-weight: 700;
  cursor: default;
  transition: transform 0.15s ease, background 0.2s ease;
}
.lp-btn--primary { background: #11212d; color: #fff; }
.lp-btn.is-hover { transform: scale(1.03); background: #35485a; }

/* Feed */
.lp-badge {
  flex: none;
  padding: 2px 7px;
  border-radius: 99px;
  background: rgba(74, 92, 112, 0.12);
  color: #585858;
  font-size: 0.52rem;
  font-weight: 700;
}
.lp-card.is-hover {
  border-color: rgba(51, 51, 51, 0.28);
  box-shadow: 0 4px 14px rgba(17, 17, 17, 0.12);
  transform: scale(1.015);
}

/* Profil */
.lp-prof { display: flex; flex-direction: column; gap: 8px; padding-top: 8px; }
.lp-prof-head { display: flex; align-items: center; gap: 8px; }
.lp-prof-bar { height: 6px; border-radius: 99px; background: rgba(53, 72, 90, 0.1); overflow: hidden; }
.lp-prof-fill {
  display: block;
  width: 0;
  height: 100%;
  border-radius: 99px;
  background: linear-gradient(90deg, #5e7284, #5c7080);
  transition: width 1.1s cubic-bezier(0.4, 0, 0.2, 1);
}
.lp-screen.is-active .lp-prof-fill { width: 92%; }
.lp-prof-pct { font-size: 0.56rem; color: #585858; }
.lp-chips { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 2px; }
.lp-chips span {
  padding: 2px 8px;
  border-radius: 99px;
  background: rgba(53, 72, 90, 0.06);
  font-size: 0.52rem;
  font-weight: 600;
  color: #3e3e3e;
}

/* İlan detay */
.lp-detail { display: flex; flex-direction: column; gap: 8px; padding-top: 8px; }
.lp-detail-head { display: flex; align-items: center; gap: 8px; }
.lp-detail-txt { margin: 0; font-size: 0.58rem; line-height: 1.5; color: #585858; }

/* Tamamlandı */
.lp-done {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  height: 100%;
  text-align: center;
}
.lp-check {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(28, 138, 85, 0.12);
  border: 1.5px solid #1c8a55;
  color: #1c8a55;
  font-size: 1.1rem;
  font-weight: 700;
}
.lp-done b { font-size: 0.74rem; color: #111111; }
.lp-done i { font-style: normal; font-size: 0.56rem; color: #585858; max-width: 210px; }

/* Bölüm geçiş etiketi (İş Arayan / İş Veren / Staj) */
.lp-chapter {
  position: absolute;
  inset: 0;
  z-index: 6;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(246, 246, 246, 0.7);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
.lp-chapter.is-show { opacity: 1; }
.lp-chapter span {
  padding: 7px 18px;
  border-radius: 99px;
  background: #11212d;
  color: #fff;
  font-size: 0.72rem;
  font-weight: 800;
  box-shadow: 0 8px 22px rgba(17, 17, 17, 0.2);
}

/* AI eşleştirme ekranı */
.lp-ai {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  height: 100%;
  text-align: center;
}
.lp-ai-orb {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #b8c2cc, #5e7284 60%, #5c7080);
  animation: lpAiPulse 1.4s ease-in-out infinite;
}
@keyframes lpAiPulse {
  0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(104, 104, 104, 0.35); }
  50%      { transform: scale(1.08); box-shadow: 0 0 0 11px rgba(104, 104, 104, 0); }
}
.lp-ai-t { font-size: 0.7rem; font-weight: 700; color: #111111; }
.lp-ai-s { font-size: 0.54rem; color: #585858; max-width: 210px; }
.lp-ai-match {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 6px;
  padding: 8px 10px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid rgba(104, 104, 104, 0.35);
  box-shadow: 0 6px 16px rgba(104, 104, 104, 0.12);
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.4s ease 0.8s, transform 0.4s ease 0.8s;
}
.lp-screen.is-active .lp-ai-match {
  opacity: 1;
  transform: translateY(0);
}

/* Mercek (işveren analitiği) ekranı */
.lp-mercek {
  display: flex;
  flex-direction: column;
  gap: 9px;
  height: 100%;
  padding-top: 8px;
}
.lp-merc-title { font-size: 0.68rem; font-weight: 800; color: #111111; }
.lp-merc-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.lp-kpi {
  padding: 7px 6px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid rgba(51, 51, 51, 0.1);
  text-align: center;
}
.lp-kpi b { display: block; font-size: 0.74rem; font-weight: 800; color: #111111; }
.lp-kpi i { font-style: normal; font-size: 0.46rem; color: #585858; }
.lp-merc-chart {
  display: flex;
  align-items: flex-end;
  gap: 6px;
  height: 92px;
  padding: 8px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid rgba(51, 51, 51, 0.1);
}
.lp-merc-chart span {
  flex: 1;
  height: 0;
  border-radius: 3px 3px 0 0;
  background: linear-gradient(180deg, #5c7080, #5e7284);
  transition: height 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}
.lp-merc-chart span:nth-child(2) { transition-delay: 0.05s; }
.lp-merc-chart span:nth-child(3) { transition-delay: 0.1s; }
.lp-merc-chart span:nth-child(4) { transition-delay: 0.15s; }
.lp-merc-chart span:nth-child(5) { transition-delay: 0.2s; }
.lp-merc-chart span:nth-child(6) { transition-delay: 0.25s; }
.lp-merc-chart span:nth-child(7) { transition-delay: 0.3s; }
.lp-screen.is-active .lp-merc-chart span { height: var(--h); }

.lp-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.lp-card {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid rgba(51, 51, 51, 0.1);
  box-shadow: 0 2px 6px rgba(17, 17, 17, 0.05);
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.lp-card.is-applied {
  border-color: rgba(28, 138, 85, 0.5);
  box-shadow: 0 4px 14px rgba(28, 138, 85, 0.14);
}

.lp-av {
  flex: none;
  width: 26px;
  height: 26px;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #1b2836, #5c7080);
  color: #fff;
  font-size: 0.56rem;
  font-weight: 800;
}

.lp-info {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}

.lp-info b {
  font-size: 0.66rem;
  font-weight: 700;
  color: #111111;
}

.lp-info i {
  font-style: normal;
  font-size: 0.58rem;
  color: #585858;
}

.lp-apply {
  flex: none;
  padding: 5px 12px;
  border: none;
  border-radius: 99px;
  background: #11212d;
  color: #fff;
  font: inherit;
  font-size: 0.58rem;
  font-weight: 700;
  cursor: default;
  transition: transform 0.15s ease, background 0.2s ease;
}

.lp-apply.is-hover {
  transform: scale(1.07);
  background: #35485a;
}

.lp-apply.is-done { background: #1c8a55; }

.lp-toast {
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 10px;
  padding: 8px 10px;
  border-radius: 9px;
  background: #11212d;
  color: #eafff2;
  font-size: 0.62rem;
  font-weight: 600;
  text-align: center;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.3s ease, transform 0.3s ease;
  box-shadow: 0 8px 20px rgba(17, 17, 17, 0.25);
}

.lp-toast.is-show {
  opacity: 1;
  transform: translateY(0);
}

.lp-cursor {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  width: 16px;
  height: 20px;
  transform: translate(50%, 130%);
  transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='20' viewBox='0 0 16 20'%3E%3Cpath d='M1 1l13 8-6 1 4 7-3 1-4-7-4 4z' fill='%2306141b' stroke='white' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
}

.lp-cursor.is-click::after {
  content: "";
  position: absolute;
  top: 4px;
  left: 4px;
  width: 22px;
  height: 22px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: rgba(53, 72, 90, 0.18);
  animation: lpRipple 0.42s ease-out;
}

@keyframes lpRipple {
  from { opacity: 1; transform: translate(-50%, -50%) scale(0.3); }
  to   { opacity: 0; transform: translate(-50%, -50%) scale(1.4); }
}

.laptop-base {
  height: 9px;
  border-radius: 0 0 11px 11px;
  background: linear-gradient(180deg, #c8ccce, #9aa0a4);
  box-shadow: 0 12px 22px rgba(17, 17, 17, 0.18);
}

@media (max-width: 900px) {
  .cards-grid { grid-template-columns: 1fr; justify-items: center; gap: 2rem; }
  .cards-feats { gap: 2rem; }
  .cards-feats--l { order: 2; }
  .cards-feats--l .cards-feat { flex-direction: row; text-align: left; }
  .cards-feats--l .cards-feat p { margin-left: 0; }
  .cards-laptop { order: 1; }
  .cards-feats--r { order: 3; }
  .cards-feat p { max-width: 320px; }
}

@media (prefers-reduced-motion: reduce) {
  .lp-cursor { display: none; }
}

/* ─── İki taraflı (iş arayan / işveren) ───────────────────── */
.tw {
  background: #e5e4e2;
  padding: 1rem clamp(1.1rem, 4vw, 2rem) 5rem;
}

.tw-grid {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.4rem;
}

.tw-card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
}

.tw-card--seeker {
  background: #e5e4e2;
  border: 1px solid rgba(51, 51, 51, 0.1);
  box-shadow: 0 2px 16px rgba(17, 17, 17, 0.05);
}

.tw-card--emp {
  background: linear-gradient(160deg, #0c1015 0%, #1a2530 55%, #2c3b48 100%);
  border: 1px solid rgba(131, 154, 175, 0.14);
  box-shadow: 0 2px 32px rgba(8, 16, 26, 0.3);
}

.tw-body {
  display: flex;
  flex-direction: column;
  padding: 2.2rem 2.2rem 2rem;
}

.tw-kicker {
  margin: 0 0 0.9rem;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #9ba8ab;
}

.tw-card--emp .tw-kicker {
  color: rgba(204, 208, 207, 0.4);
}

.tw-title {
  margin: 0 0 0.8rem;
  font-size: clamp(1.3rem, 2.4vw, 1.7rem);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #111111;
}

.tw-card--emp .tw-title {
  color: #fefcff;
}

.tw-sub {
  margin: 0 0 1.5rem;
  font-size: 0.9rem;
  line-height: 1.7;
  color: #585858;
}

.tw-card--emp .tw-sub {
  color: rgba(204, 208, 207, 0.6);
}

.tw-feats {
  list-style: none;
  margin: 0 0 1.8rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.tw-feats li {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  font-size: 0.88rem;
  line-height: 1.5;
  color: #3e3e3e;
}

.tw-card--emp .tw-feats li {
  color: rgba(204, 208, 207, 0.85);
}

.tw-check {
  flex: none;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.68rem;
  background: rgba(70, 88, 104, 0.12);
  color: #4a5c6a;
}

.tw-card--emp .tw-check {
  background: rgba(118, 140, 160, 0.26);
  color: #dbe3e9;
}

.tw-cta {
  align-self: flex-start;
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.9rem;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  background: #45688a;
  border: 0;
  border-radius: 999px;
  padding: 0.7rem 1.4rem;
  transition: gap 0.2s ease, background-color 0.2s ease, transform 0.2s ease;
}

.tw-card--emp .tw-cta {
  color: #fff;
  background: #4e7599;
}

.tw-cta:hover {
  gap: 0.7rem;
  background: #5884a8;
  transform: translateY(-1px);
}

/* TwoSided kart animasyonları (HeroCard + HeroRadar portu) */
.tw-body {
  flex: none;
}

.tw-anim {
  position: relative;
  flex: 1;
  overflow: hidden;
}

.tw-anim--card {
  min-height: 300px;
  background: linear-gradient(180deg, rgba(232, 228, 220, 0.4) 0%, rgba(219, 214, 204, 0.6) 100%);
  display: flex;
  flex-direction: column;
}

.hc-head {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  padding: 1rem 1.3rem;
}

.hc-avatar {
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #1b2836 0%, #35485a 100%);
  box-shadow: 0 8px 18px rgba(17, 17, 17, 0.22);
  color: #ccd0cf;
  font-size: 0.75rem;
  font-weight: 800;
}

.hc-name {
  margin: 0;
  font-size: 0.82rem;
  font-weight: 700;
  color: #111111;
}

.hc-role {
  margin: 0;
  font-size: 0.68rem;
  color: #585858;
}

.hc-orbit {
  position: relative;
  height: 260px;
  flex: none;
  overflow: hidden;
}

.hc-ring {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 1px solid rgba(51, 51, 51, 0.06);
  pointer-events: none;
}

.hc-core {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 68px;
  height: 68px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #1b2836 0%, #35485a 100%);
  box-shadow: 0 0 0 8px rgba(51, 51, 51, 0.07), 0 16px 32px rgba(17, 17, 17, 0.22);
}

.hc-core-dot {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(204, 208, 207, 0.9) 0%, rgba(155, 168, 171, 0.4) 100%);
  animation: hcPulse 2.4s ease-in-out infinite;
}

@keyframes hcPulse {
  0%, 100% { transform: scale(1); }
  50%      { transform: scale(1.08); }
}

.hc-tag {
  position: absolute;
  left: 50%;
  top: 50%;
  padding: 3px 10px;
  border-radius: 999px;
  white-space: nowrap;
  pointer-events: none;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(51, 51, 51, 0.14);
  box-shadow: 0 4px 12px rgba(30, 30, 30, 0.07);
  font-size: 0.62rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: #333333;
}

.hc-foot {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 0.9rem 1.3rem 1.3rem;
}

.hc-wave {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  height: 40px;
}

.hc-bar {
  width: 3px;
  height: 12px;
  flex-shrink: 0;
  border-radius: 99px;
  transition: height 0.18s ease-in-out;
}

.hc-q {
  padding: 0.8rem 1rem;
  border-radius: 14px;
  border: 1px solid rgba(51, 51, 51, 0.09);
  background: rgba(255, 255, 255, 0.45);
  min-height: 54px;
}

.hc-q-text {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.55;
  color: #111111;
}

.hc-q-text.is-typing::after {
  content: "";
  display: inline-block;
  width: 1.5px;
  height: 0.8em;
  margin-left: 2px;
  vertical-align: text-bottom;
  background: #5c7080;
  animation: hcBlink 0.7s step-end infinite;
}

@keyframes hcBlink {
  50% { opacity: 0; }
}

.tw-anim--radar {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
  padding: 0.5rem 1.4rem 1.8rem;
}

.hr-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 5px 14px;
  border-radius: 99px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(204, 208, 207, 0.12);
  box-shadow: 0 2px 12px rgba(17, 17, 17, 0.07);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.hr-pill-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #5c7080;
}

.hr-pill-label {
  font-size: 0.75rem;
  font-weight: 600;
  color: #ccd0cf;
}

.hr-svg {
  max-width: 420px;
  overflow: visible;
}

.hr-legend {
  display: flex;
  gap: 1.4rem;
  align-items: center;
}

.hr-leg {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.72rem;
  font-weight: 600;
  color: rgba(204, 208, 207, 0.8);
}

.hr-leg-line {
  width: 22px;
  height: 0;
  border-top-width: 2.5px;
  border-top-style: solid;
}

.hr-leg-aw {
  border-top-color: #6a6a6a;
}

.hr-leg-base {
  border-top-width: 2px;
  border-top-style: dashed;
  border-top-color: #dc503c;
}

/* TwoSided interaksiyon: imleç ışığı + etiket hover + radar tooltip */
.hc-glow {
  position: absolute;
  left: 0;
  top: 0;
  width: 200px;
  height: 200px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(83, 104, 120, 0.22) 0%, rgba(83, 104, 120, 0.08) 40%, transparent 70%);
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.25s ease;
  z-index: 1;
}

.hc-glow.is-on {
  opacity: 1;
}

.hc-tag {
  cursor: pointer;
  z-index: 2;
  transition: background 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
}

.hc-tag.is-hot {
  background: #1b2836;
  color: #fff;
  box-shadow: 0 10px 22px rgba(30, 30, 30, 0.28);
}

.hr-dot {
  cursor: pointer;
  transition: r 0.15s ease;
}

.hr-dot.is-hot {
  r: 8;
}

.hr-dot--base.is-hot {
  r: 7;
}

.hr-tooltip {
  position: absolute;
  transform: translate(-50%, calc(-100% - 12px));
  padding: 4px 9px;
  border-radius: 8px;
  background: rgba(15, 23, 32, 0.96);
  border: 1px solid rgba(204, 208, 207, 0.14);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4);
  font-size: 0.66rem;
  color: #fefcff;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.15s ease;
  z-index: 5;
}

.hr-tooltip strong {
  margin-right: 5px;
  font-weight: 700;
  color: #bcbcbc;
}

.hr-tooltip.is-base strong {
  color: #f0a090;
}

.hr-tooltip.is-on {
  opacity: 1;
}

/* ─── AI tanıtım (şaşaalı koyu bölüm) ─────────────────────── */
/* AIHiring tam kadraja oturunca (sticky pin) içindeki gerçek "AI" kelimesi
   bir pencereye dönüşüp büyür; içinden alttaki açık sayfa (ai-next) akar. */
.ai-scroll {
  position: relative;
  height: 185vh;
}

.ai {
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: linear-gradient(180deg, #141c24 0%, #101a24 40%, #131f2a 100%);
  padding: 4rem clamp(1.1rem, 4vw, 2rem);
}

.ai-next {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: #e5e4e2;
}

/* Pencereden (AI harflerinin içinden) görünen sonraki bölümün girişi.
   Boş bir aydınlık yerine gerçek "Afterwork Plus" başlığı açılır → Apple tarzı,
   pürüzsüz devam. JS, pencere büyürken (0.80 → 0.96) bunu belirginleştirir. */
.ai-next-inner {
  position: absolute;
  left: 50%;
  top: 46%;
  transform: translate(-50%, -50%);
  width: min(620px, 90vw);
  padding: 0 clamp(1.1rem, 4vw, 2rem);
  opacity: 0;
}

/* Gerçek .plus başlığı: efekt açıkken görsel olarak gizli (a11y için okunur
   kalır) — çünkü aynı başlık pencereden açılıyor. Reduced-motion'da efekt yok,
   o yüzden gerçek başlık normal görünür. */
.plus-badge--dup { display: none; }
.plus-head--dup {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

@media (prefers-reduced-motion: reduce) {
  .plus-badge--dup { display: flex; }
  .plus-head--dup {
    position: static;
    width: auto;
    height: auto;
    margin: 0 auto 3.5rem;
    overflow: visible;
    clip: auto;
    clip-path: none;
    white-space: normal;
  }
}

.ai-cover {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.ai-cover-svg {
  display: block;
  width: 100%;
  height: 100%;
}

@media (prefers-reduced-motion: reduce) {
  .ai-scroll { height: auto; }
  .ai { position: static; height: auto; padding: 6rem clamp(1.1rem, 4vw, 2rem); }
  .ai-next,
  .ai-cover { display: none; }
}

.ai-glow {
  position: absolute;
  top: -10%;
  left: 50%;
  width: 70vw;
  height: 46vw;
  z-index: 2;
  transform: translateX(-50%);
  background: radial-gradient(circle, rgba(74, 92, 112, 0.32) 0%, rgba(48, 64, 80, 0.14) 40%, transparent 66%);
  filter: blur(80px);
  pointer-events: none;
  animation: aiGlow 9s ease-in-out infinite;
}

@keyframes aiGlow {
  0%, 100% { opacity: 0.7; transform: translateX(-50%) scale(1); }
  50%      { opacity: 1;   transform: translateX(-50%) scale(1.12); }
}

.ai-inner {
  position: relative;
  z-index: 2;
  max-width: 1060px;
  margin: 0 auto;
}


.ai-head {
  text-align: center;
  margin-bottom: 4rem;
}

.ai-kicker {
  margin: 0 0 1rem;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(204, 208, 207, 0.4);
}

.ai-title {
  margin: 0 auto 1.1rem;
  max-width: 16ch;
  font-size: clamp(1.9rem, 3.8vw, 3rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.028em;
  /* Harflerin içinden akan ışık/arka plan (Apple tarzı knockout hissi) */
  background: linear-gradient(100deg, #ffffff 0%, #e1e1e1 22%, #aaaaaa 48%, #e1e1e1 74%, #ffffff 100%);
  background-size: 220% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: aiSheen 7s linear infinite;
}

.ai-title-soft {
  font-weight: 400;
  background: linear-gradient(90deg, rgba(204, 208, 207, 0.7), rgba(162, 162, 162, 0.95), rgba(204, 208, 207, 0.7));
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: aiSheen 6s linear infinite;
}

@keyframes aiSheen {
  to { background-position: 200% center; }
}

.ai-sub {
  margin: 0 auto;
  max-width: 520px;
  font-size: 1rem;
  line-height: 1.7;
  color: rgba(204, 208, 207, 0.45);
}

.ai-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  margin-bottom: 1rem;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 20px;
  overflow: hidden;
}

.ai-step {
  position: relative;
  background: #141c24;
  padding: 2rem 1.6rem;
  transition: background 0.3s ease;
}

.ai-step:hover {
  background: #1b2836;
}

.ai-step-no {
  display: block;
  margin-bottom: 1rem;
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  color: rgba(164, 182, 198, 0.72);
}

.ai-step-t {
  margin: 0 0 0.5rem;
  font-size: 0.95rem;
  font-weight: 700;
  color: #fefcff;
}

.ai-step-d {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.65;
  color: rgba(204, 208, 207, 0.45);
}

.ai-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  margin-top: 1rem;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;
  overflow: hidden;
}

.ai-stat {
  background: #141c24;
  padding: 1.5rem 1rem;
  text-align: center;
}

.ai-stat-v {
  display: block;
  font-size: 1.9rem;
  font-weight: 800;
  letter-spacing: -0.04em;
  background: linear-gradient(135deg, #fefcff 0%, #bcbcbc 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #fefcff;
}

.ai-stat-l {
  display: block;
  margin-top: 0.2rem;
  font-size: 0.72rem;
  color: rgba(204, 208, 207, 0.35);
}


/* ─── Afterwork Plus ──────────────────────────────────────── */
.plus {
  background: #e5e4e2;
  padding: 3rem clamp(1.1rem, 4vw, 2rem) 5.5rem;
}

@media (prefers-reduced-motion: reduce) {
  .plus { padding-top: 5.5rem; }
}

.plus-inner {
  max-width: 1060px;
  margin: 0 auto;
}

.plus-badge {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: fit-content;
  margin: 0 auto 3.5rem;
  padding: 6px 18px;
  border-radius: 999px;
  background: linear-gradient(155deg, #3e5a72, #1c3040);
}

.plus-badge-name {
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #ccd0cf;
}

.plus-badge-new {
  padding: 2px 8px;
  border-radius: 99px;
  background: rgba(204, 208, 207, 0.15);
  font-size: 0.6rem;
  font-weight: 700;
  color: #ccd0cf;
}

.plus-head {
  max-width: 620px;
  margin: 0 auto 3.5rem;
  text-align: center;
}

.plus-title {
  margin: 0 0 1rem;
  font-size: clamp(2rem, 4vw, 3.1rem);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -0.028em;
  color: #111111;
}

.plus-title strong {
  font-weight: 800;
}

.plus-sub {
  margin: 0;
  font-size: 1rem;
  line-height: 1.7;
  color: #3e3e3e;
}

.plus-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  margin-bottom: 3rem;
}

.plus-card {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.3rem 1.4rem;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.6);
  border: 1px solid rgba(51, 51, 51, 0.09);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.plus-ico {
  flex: none;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(155deg, #3e5a72, #1c3040);
  font-size: 1rem;
}

.plus-card h3 {
  margin: 0 0 0.25rem;
  font-size: 0.9rem;
  font-weight: 700;
  color: #111111;
}

.plus-card p {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.6;
  color: #585858;
}

.plus-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.5rem;
  padding: 2.4rem clamp(1.4rem, 3vw, 2.8rem);
  border-radius: 22px;
  background: #11212d;
  box-shadow: 0 24px 56px rgba(17, 17, 17, 0.22);
}

.plus-price-label {
  margin: 0 0 0.3rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(204, 208, 207, 0.45);
}

.plus-price-val {
  margin: 0;
  font-size: 2.6rem;
  font-weight: 800;
  letter-spacing: -0.04em;
  color: #fefcff;
}

.plus-price-val span {
  margin-left: 0.35rem;
  font-size: 0.88rem;
  font-weight: 500;
  color: rgba(204, 208, 207, 0.5);
}

.plus-price-sub {
  margin: 0.4rem 0 0;
  font-size: 0.8rem;
  color: rgba(204, 208, 207, 0.45);
}

.plus-cta-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}

.plus-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  padding: 0 2rem;
  border-radius: 999px;
  font-size: 0.92rem;
  font-weight: 700;
  text-decoration: none;
  transition: transform 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.plus-btn--solid {
  background: linear-gradient(135deg, #fefcff 0%, #ccd0cf 100%);
  color: #111111;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.2);
}

.plus-btn--ghost {
  border: 1px solid rgba(204, 208, 207, 0.2);
  color: rgba(204, 208, 207, 0.7);
  font-weight: 600;
}

.plus-btn:hover {
  transform: translateY(-2px);
}

.plus-btn--ghost:hover {
  color: #fefcff;
  border-color: rgba(204, 208, 207, 0.4);
}

@media (max-width: 820px) {
  .plus-grid { grid-template-columns: 1fr; }
  .plus-cta { flex-direction: column; align-items: flex-start; }
}

/* ─── SSS / FAQ ───────────────────────────────────────────── */
.faq {
  background: #e5e4e2;
  padding: 5rem clamp(1.1rem, 4vw, 2rem) 6rem;
}

.faq-inner {
  max-width: 760px;
  margin: 0 auto;
}

.faq-head {
  margin-bottom: 3rem;
}

.faq-kicker {
  margin: 0 0 0.8rem;
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #9ba8ab;
}

.faq-title {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -0.025em;
  color: #111111;
}

.faq-title strong {
  font-weight: 800;
}

.faq-list {
  border-top: 1px solid rgba(51, 51, 51, 0.13);
}

.faq-item {
  border-bottom: 1px solid rgba(51, 51, 51, 0.13);
}

.faq-q {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  width: 100%;
  padding: 1.3rem 0;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  font: inherit;
  font-size: 0.97rem;
  font-weight: 500;
  line-height: 1.4;
  color: #111111;
}

.faq-item.is-open .faq-q {
  font-weight: 700;
}

.faq-mark {
  position: relative;
  flex: none;
  width: 20px;
  height: 20px;
}

.faq-mark::before,
.faq-mark::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #3e5a72;
}

.faq-mark::before {
  width: 13px;
  height: 1.5px;
}

.faq-mark::after {
  width: 1.5px;
  height: 13px;
  transition: transform 0.25s ease, opacity 0.25s ease;
}

.faq-item.is-open .faq-mark::after {
  transform: translate(-50%, -50%) rotate(90deg);
  opacity: 0;
}

.faq-ans-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.faq-item.is-open .faq-ans-wrap {
  grid-template-rows: 1fr;
}

.faq-ans {
  min-height: 0;
  overflow: hidden;
  padding-bottom: 1.6rem;
  opacity: 0;
  transform: translateY(10px) scale(0.985);
  transition: opacity 0.28s ease, transform 0.32s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.faq-item.is-open .faq-ans {
  opacity: 1;
  transform: translateY(0) scale(1);
  transition-delay: 0.12s;
}

.faq-ans p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.75;
  color: #3e3e3e;
}

.faq-viz {
  float: right;
  width: 82px;
  height: 72px;
  margin: 0 0 0.5rem 1.4rem;
  opacity: 0;
  transition: opacity 0.35s ease 0.12s;
}

.faq-item.is-open .faq-viz {
  opacity: 1;
}

@media (max-width: 560px) {
  .faq-viz { display: none; }
}

.faq-foot {
  margin-top: 2.5rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(51, 51, 51, 0.13);
  font-size: 0.92rem;
  color: #3e3e3e;
}

.faq-foot a {
  color: #111111;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ─── Staj Programları ────────────────────────────────────── */
.intern {
  position: relative;
  background: linear-gradient(180deg, #e5e4e2 0%, #e5e4e2 100%);
  padding: 5.5rem clamp(1.1rem, 4vw, 2rem);
}

/* Afterwork Plus ↔ Staj Programları ayırıcısı: içerik genişliğinde (1060px),
   uçlara doğru sönümlenen teal hairline. */
.intern::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(1060px, calc(100% - 2 * clamp(1.1rem, 4vw, 2rem)));
  height: 1px;
  background: linear-gradient(90deg,
    rgba(83, 104, 120, 0) 0%,
    rgba(83, 104, 120, 0.30) 16%,
    rgba(83, 104, 120, 0.30) 84%,
    rgba(83, 104, 120, 0) 100%);
}

.intern-grid {
  max-width: 1060px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
}

.intern-kicker {
  margin: 0 0 1rem;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #9ba8ab;
}

.intern-title {
  margin: 0 0 1.1rem;
  font-size: clamp(1.8rem, 3.2vw, 2.75rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.025em;
  color: #111111;
}

.intern-title strong {
  font-weight: 800;
}

.intern-sub {
  margin: 0 0 2rem;
  font-size: 0.96rem;
  line-height: 1.7;
  color: #3e3e3e;
}

.intern-perks {
  list-style: none;
  margin: 0 0 2.2rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.intern-perks li {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  font-size: 0.87rem;
  line-height: 1.6;
  color: #3e3e3e;
}

.intern-ico {
  flex: none;
  font-size: 1rem;
}

.intern-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 2.9rem;
  padding: 0 1.8rem;
  border-radius: 999px;
  text-decoration: none;
  color: #fefcff;
  background: linear-gradient(135deg, #11212d 0%, #35485a 100%);
  border: 1px solid rgba(51, 51, 51, 0.9);
  font-size: 0.9rem;
  font-weight: 700;
  box-shadow: 0 12px 28px rgba(17, 17, 17, 0.16);
  transition: transform 0.2s ease, gap 0.2s ease;
}

.intern-cta:hover {
  transform: translateY(-2px);
  gap: 0.7rem;
}

.intern-card {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 360px;
  border-radius: 20px;
  overflow: hidden;
  padding: 1.6rem;
  /* Krem kâğıt zemin + hafif grain (linol-baskı hissi) */
  background-color: #efe7d6;
  background-image:
    radial-gradient(120% 120% at 30% 20%, rgba(255, 255, 255, 0.6) 0%, transparent 55%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
  border: 1px solid rgba(17, 17, 17, 0.08);
  box-shadow: 0 20px 56px rgba(17, 17, 17, 0.16);
}
.intern-figure {
  width: 100%;
  max-width: 340px;
  height: auto;
  display: block;
}
/* Kullanıcının kendi görseli — kartı doldurur */
.intern-card--img { padding: 0; }
.intern-figure-img { width: 100%; height: 100%; object-fit: cover; display: block; }

.intern-brand {
  padding: 1.2rem 1.5rem 0;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #ccd0cf;
}

.intern-city {
  margin-top: auto;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 6px;
  height: 210px;
  padding: 0 1.4rem 1.4rem;
}

.bld {
  position: relative;
  width: 22px;
  height: var(--h);
  border-radius: 3px 3px 0 0;
  background: linear-gradient(180deg, #35485a, #1b2836);
}

.bld--lit::before {
  content: "";
  position: absolute;
  inset: 6px 4px 0 4px;
  background-image: radial-gradient(rgba(255, 226, 150, 0.55) 1px, transparent 1.6px);
  background-size: 6px 9px;
  opacity: 0.55;
  animation: bldFlicker 4.5s ease-in-out infinite;
}

@keyframes bldFlicker {
  0%, 100% { opacity: 0.4; }
  50%      { opacity: 0.72; }
}

.intern-moon {
  position: absolute;
  top: 1.5rem;
  right: 1.7rem;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, rgba(204, 208, 207, 0.24), rgba(204, 208, 207, 0.07));
  box-shadow: 0 0 26px rgba(204, 208, 207, 0.12);
}

.bld--ant::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 100%;
  width: 2px;
  height: 16px;
  transform: translateX(-50%);
  background: linear-gradient(180deg, transparent, rgba(155, 168, 171, 0.5));
  box-shadow: 0 -2px 0 0 #606060, 0 -2px 7px 1px rgba(96, 96, 96, 0.65);
}

@media (max-width: 820px) {
  .intern-grid { grid-template-columns: 1fr; gap: 2.5rem; }
}

/* ─── Üniversiteler şeridi ────────────────────────────────── */
.unis {
  position: relative;
  background: #e5e4e2;
  padding: 2rem clamp(1.1rem, 4vw, 2rem);
  text-align: center;
}

/* Staj bölümü ↔ üniversiteler ayırıcısı: içerik genişliğinde (1060px),
   uçlara doğru sönümlenen Blue Slate hairline. */
.unis::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(1060px, calc(100% - 2 * clamp(1.1rem, 4vw, 2rem)));
  height: 1px;
  background: linear-gradient(90deg,
    rgba(83, 104, 120, 0) 0%,
    rgba(83, 104, 120, 0.30) 16%,
    rgba(83, 104, 120, 0.30) 84%,
    rgba(83, 104, 120, 0) 100%);
}

.unis-title {
  margin: 0 0 1.4rem;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #9ba8ab;
}

.unis-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.2rem 0.9rem;
  max-width: 1320px;
  margin: 0 auto;
}

.uni {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  width: 88px;
}

.uni-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--c);
  border: 2px solid rgba(255, 255, 255, 0.15);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
  color: #fff;
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.02em;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.uni:hover .uni-badge {
  transform: translateY(-3px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.2);
}

.uni-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 46px;
}

.uni-logo img {
  max-width: 74px;
  max-height: 42px;
  object-fit: contain;
  transition: transform 0.2s ease;
}

.uni:hover .uni-logo img {
  transform: translateY(-3px) scale(1.04);
}

.uni-name {
  font-size: 0.65rem;
  font-weight: 600;
  color: #585858;
  white-space: nowrap;
}

/* ─── Akademik şerit (KCL / UCL) ──────────────────────────── */
.acad {
  background: #e5e4e2;
  padding: 2.2rem clamp(1.1rem, 4vw, 2rem);
}

.acad-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 2rem;
  max-width: 1100px;
  margin: 0 auto;
}

.acad-text {
  flex: 1 1 400px;
}

.acad-kicker {
  margin: 0 0 0.5rem;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #500778;
}

.acad-body {
  margin: 0;
  max-width: 58ch;
  font-size: 0.95rem;
  line-height: 1.65;
  color: #111111;
}

.acad-logos {
  display: flex;
  gap: 2.4rem;
  flex-shrink: 0;
}

.acad-logo {
  display: flex;
  align-items: center;
  gap: 0.55rem;
}

.acad-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  color: #fff;
  font-size: 0.8rem;
  font-weight: 900;
}

.acad-mark--img {
  background: transparent;
  padding: 1px;
}

.acad-mark--img img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.acad-mark--ucl {
  background: #500778;
}

.acad-logo-t {
  display: flex;
  flex-direction: column;
  line-height: 1.15;
}

.acad-logo-t strong {
  font-size: 0.78rem;
  font-weight: 800;
  color: #1c1c1c;
}

.acad-logo-t span {
  font-size: 0.65rem;
  color: #4e4e4e;
}

@media (max-width: 640px) {
  .acad-inner { flex-direction: column; align-items: flex-start; }
  .acad-logos { gap: 1.6rem; }
}

/* ─── Demo randevu (BookMeeting) — tam ekran, farklı arka plan ─── */
.book {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #11212d;
  padding: 5.5rem clamp(1.1rem, 4vw, 2rem);
}

.book-head {
  max-width: 480px;
  margin: 0 auto 2.4rem;
  text-align: center;
}

.book-title {
  margin: 0 0 0.8rem;
  font-size: clamp(1.9rem, 3.8vw, 2.9rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.028em;
  color: #fefcff;
}

.book-sub {
  margin: 0;
  font-size: 1rem;
  line-height: 1.65;
  color: rgba(204, 208, 207, 0.6);
}

.book-flash {
  max-width: 760px;
  margin: 0 auto 1.4rem;
  padding: 0.8rem 1.1rem;
  border-radius: 12px;
  font-size: 0.88rem;
  text-align: center;
}

.book-flash.is-ok {
  background: rgba(74, 92, 112, 0.15);
  border: 1px solid rgba(104, 104, 104, 0.4);
  color: #cdcdcd;
}

.book-flash.is-err {
  background: rgba(220, 80, 60, 0.12);
  border: 1px solid rgba(220, 80, 60, 0.4);
  color: #f0b0a0;
}

.book-card {
  display: flex;
  width: 100%;
  max-width: 960px;
  min-height: 500px;
  margin: 0 auto;
  overflow: hidden;
  background: #162230;
  border: 1px solid rgba(204, 208, 207, 0.08);
  border-radius: 22px;
  box-shadow: 0 40px 90px rgba(0, 0, 0, 0.5);
}

.book-aside {
  flex: none;
  width: 244px;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  padding: 2.2rem 1.7rem;
  border-right: 1px solid rgba(204, 208, 207, 0.08);
}

.book-brand {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.82rem;
  font-weight: 600;
  color: rgba(204, 208, 207, 0.7);
}

.book-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: linear-gradient(135deg, #35485a, #5c7080);
  color: #ccd0cf;
  font-size: 0.6rem;
  font-weight: 800;
}

.book-meeting-t {
  margin: 0.4rem 0 0;
  font-size: 1.1rem;
  font-weight: 800;
  color: #fefcff;
}

.book-meeting-s {
  margin: 0;
  font-size: 0.75rem;
  color: rgba(204, 208, 207, 0.5);
}

.book-durs {
  display: flex;
  gap: 0.4rem;
  margin: 0.3rem 0;
}

.book-dur {
  padding: 4px 12px;
  border-radius: 6px;
  border: 1px solid rgba(204, 208, 207, 0.15);
  background: rgba(255, 255, 255, 0.03);
  font-size: 0.72rem;
  font-weight: 600;
  color: rgba(204, 208, 207, 0.55);
}

.book-dur.is-active {
  background: rgba(190, 190, 190, 0.16);
  border-color: rgba(190, 190, 190, 0.5);
  color: #e7e7e7;
}

.book-meta {
  list-style: none;
  margin: 0.6rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.book-meta li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.74rem;
  color: rgba(204, 208, 207, 0.55);
}

.book-cal {
  flex: 1;
  padding: 2.4rem 2.2rem;
}

.book-cal-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.2rem;
}

.book-cal-month {
  font-size: 1.1rem;
  font-weight: 700;
  color: #fefcff;
}

.book-cal-nav {
  display: flex;
  gap: 6px;
}

.book-cal-nav button {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  border: 1px solid rgba(204, 208, 207, 0.12);
  background: transparent;
  color: rgba(204, 208, 207, 0.6);
  font-size: 0.9rem;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}

.book-cal-nav button:hover {
  background: rgba(255, 255, 255, 0.05);
  color: #fefcff;
}

.book-cal-dow {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 2px;
  margin-bottom: 0.5rem;
}

.book-cal-dow span {
  text-align: center;
  font-size: 0.6rem;
  font-weight: 600;
  color: rgba(204, 208, 207, 0.35);
}

.book-cal-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 3px;
}

.bc-day {
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 50%; /* dairesel — luron'un yuvarlak-kare hücrelerinden ayrışır */
  background: transparent;
  color: rgba(204, 208, 207, 0.8);
  font: inherit;
  font-size: 0.9rem;
  cursor: pointer;
  transition: background 0.15s ease, box-shadow 0.15s ease;
}

.bc-day.is-empty {
  visibility: hidden;
  cursor: default;
}

.bc-day.is-past {
  color: rgba(204, 208, 207, 0.2);
  cursor: default;
}

.bc-day:not(.is-past):not(.is-empty):hover {
  background: rgba(190, 190, 190, 0.12);
}

.bc-day.is-today {
  box-shadow: inset 0 0 0 1.5px rgba(190, 190, 190, 0.5);
  font-weight: 700;
}

/* Seçili gün: soğuk-krem dolu daire + hafif parıltı (mor kare değil). */
.bc-day.is-selected {
  background: #e7e7e7;
  color: #171717;
  font-weight: 800;
  box-shadow: 0 0 0 4px rgba(190, 190, 190, 0.14), 0 4px 14px rgba(158, 158, 158, 0.25);
}

.book-side {
  flex: none;
  width: 204px;
  padding: 2.2rem 1.2rem;
  border-left: 1px solid rgba(204, 208, 207, 0.08);
}

.book-side-day {
  margin: 0 0 0.8rem;
  font-size: 0.78rem;
  font-weight: 700;
  color: #fefcff;
}

.book-times {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-height: 260px;
  overflow-y: auto;
}

.bc-slot {
  padding: 0.55rem 0;
  border: 1px solid rgba(204, 208, 207, 0.12);
  border-radius: 8px;
  background: transparent;
  color: rgba(204, 208, 207, 0.75);
  font: inherit;
  font-size: 0.82rem;
  text-align: center;
  cursor: pointer;
  transition: background 0.13s ease, border-color 0.13s ease, color 0.13s ease;
}

.bc-slot:hover {
  border-color: rgba(190, 190, 190, 0.5);
  color: #f0f0f0;
}

.bc-slot.is-selected {
  background: #e7e7e7;
  border-color: #e7e7e7;
  color: #171717;
  font-weight: 700;
}

.book-confirm {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  margin-top: 0.8rem;
}

.book-field {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.book-field > span {
  font-size: 0.72rem;
  font-weight: 600;
  color: rgba(204, 208, 207, 0.6);
}

.book-field input,
.book-field textarea {
  font: inherit;
  font-size: 0.9rem;
  color: #fefcff;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(204, 208, 207, 0.14);
  border-radius: 10px;
  padding: 0.6rem 0.75rem;
  outline: none;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.book-field input:focus,
.book-field textarea:focus {
  border-color: rgba(190, 190, 190, 0.6);
  background: rgba(255, 255, 255, 0.06);
}

.book-submit {
  margin-top: 0.4rem;
  padding: 0.8rem;
  border: none;
  border-radius: 10px;
  background: #f1f1f1;
  color: #171717;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(158, 158, 158, 0.25);
  transition: transform 0.2s ease, background 0.2s ease;
}

.book-submit:hover {
  transform: translateY(-2px);
  background: #ffffff;
}

@media (max-width: 760px) {
  .book-card { flex-direction: column; }
  .book-aside { width: auto; border-right: none; border-bottom: 1px solid rgba(204, 208, 207, 0.08); }
  .book-side { width: auto; border-left: none; border-top: 1px solid rgba(204, 208, 207, 0.08); }
}

@media (max-width: 880px) {
  .tw-grid { grid-template-columns: 1fr; }
  .ai-steps,
  .ai-stats { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 520px) {
  .ai-steps,
  .ai-stats { grid-template-columns: 1fr; }
}

.hero-trusted {
  position: relative;
  padding: 0.8rem 2.8rem 3rem;
  display: grid;
  gap: 0.8rem;
  justify-items: center;
  overflow: hidden;
}

.hero-trusted::before {
  content: none; /* bölümler arası çizgi kaldırıldı — hero beyazıyla dikişsiz akış */
}

.hero-trusted::after {
  content: none; /* üstteki parıltı kaldırıldı → hero beyazıyla kesintisiz ton */
}

.hero-trusted-kicker {
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 0.55rem 1rem;
  border: 1px solid rgba(88, 88, 88, 0.16);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.46);
  box-shadow:
    0 8px 18px rgba(30, 30, 30, 0.05),
    inset 0 1px 0 rgba(255, 255, 255, 0.82);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--muted);
}

.hero-trusted-title {
  position: relative;
  z-index: 1;
  margin: 0;
  text-align: center;
  max-width: 34ch;
  font-size: clamp(1.02rem, 1.56vw, 1.34rem);
  line-height: 1.35;
  font-weight: 600;
  color: var(--copy-soft);
}

.hero-trusted-marquee {
  position: relative;
  width: min(100%, 1240px);
  overflow: hidden;
  padding: 0.9rem 0;
}

.hero-trusted-marquee::before,
.hero-trusted-marquee::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: min(10vw, 120px);
  z-index: 2;
  pointer-events: none;
}

.hero-trusted-marquee::before {
  left: 0;
  background: linear-gradient(90deg, var(--bg) 0%, rgba(229, 228, 226, 0) 100%);
}

.hero-trusted-marquee::after {
  right: 0;
  background: linear-gradient(270deg, var(--bg) 0%, rgba(229, 228, 226, 0) 100%);
}

.hero-trusted-track {
  display: flex;
  width: max-content;
  gap: 1.15rem;
  align-items: center;
  animation: hero-trusted-scroll 24s linear infinite;
}

.hero-trusted-logo {
  min-width: 152px;
  min-height: 86px;
  padding: 0.9rem 1.15rem;
  display: flex;
  align-items: center;
  justify-content: center;
  /* Kart zemini/gölgesi kaldırıldı → logolar doğrudan sürekli beyaza entegre
     (ayrı bir beyaz ton olarak durmasın). */
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.hero-trusted-logo img {
  width: 100%;
  max-width: 92px;
  height: auto;
  display: block;
  object-fit: contain;
  opacity: 0.55;
  filter: grayscale(1) contrast(0.94) brightness(0.58);
}

/* Temsilî marka logosu — tek-renk işaret + wordmark, sade & premium */
.hero-trusted-logo { gap: 0.55rem; }
.hero-trusted-mark {
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #55606c;
  opacity: 0.72;
}
.hero-trusted-mark svg { width: 26px; height: 26px; display: block; }
.hero-trusted-name {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.08rem;
  font-weight: 700;
  letter-spacing: -0.01em;
  white-space: nowrap;
  color: #55606c;
  opacity: 0.72;
}

@keyframes hero-trusted-scroll {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(calc(-50% - 0.575rem));
  }
}

.hero-meta {
  margin: 1.1rem 0 0;
  font-size: 0.86rem;
  color: var(--muted);
  letter-spacing: 0.01em;
}

.hero-flows {
  margin-top: 1.15rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.2rem;
}

.hero-flow {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.hero-flow:first-child {
  padding-right: 1.1rem;
  border-right: 1px solid rgba(51, 51, 51, 0.16);
}

.hero-flow:last-child {
  padding-left: 0.1rem;
}

.hero-flow h3 {
  margin: 0 0 0.4rem;
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--heading);
  letter-spacing: 0.01em;
}

.hero-flow ol {
  margin: 0;
  padding-left: 1rem;
  display: grid;
  gap: 0.24rem;
}

.hero-flow li {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.35;
  color: var(--copy);
}

.hero-right {
  display: flex;
  justify-content: center;
}

.hero-media-card {
  width: min(100%, 490px);
  aspect-ratio: 4 / 5;
  background: linear-gradient(155deg, #ffffff 0%, #f4f1ec 100%);
  border: 1px solid rgba(51, 51, 51, 0.18);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 26px 48px rgba(30, 30, 30, 0.1);
  transition: transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;
}

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

.hero-media-card:hover {
  transform: translateY(-8px) scale(1.01);
  box-shadow: 0 30px 52px rgba(30, 30, 30, 0.14);
  border-color: rgba(51, 51, 51, 0.26);
}


.section-kicker {
  margin: 0;
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-transform: none;
  color: var(--muted);
}

.section-description {
  margin: 0.95rem 0 0;
  max-width: 72ch;
  font-size: 1.03rem;
  line-height: 1.6;
  color: var(--copy);
}

.is-bul-page .main-content {
  opacity: 1;
}

.finder-hero {
  --finder-progress: 0;
  max-width: 1220px;
  margin: 0 auto;
  padding: 2.1rem 2.8rem 4.2rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(238, 235, 229, 0.32) 100%);
}

.finder-hero h1 {
  margin: 0.45rem 0 0;
  font-size: clamp(2.2rem, 5.2vw, 4.4rem);
  letter-spacing: -0.03em;
  line-height: 1.03;
  font-weight: 800;
  color: var(--heading);
  max-width: 21ch;
  text-wrap: balance;
  transform: scale(calc(0.985 + (var(--finder-progress) * 0.015)));
  transform-origin: left top;
  transition: transform 0.18s linear;
}

.finder-panel {
  margin-top: 1.55rem;
  display: grid;
  grid-template-columns: minmax(340px, 1.08fr) minmax(320px, 1fr);
  gap: 1.5rem;
  opacity: 1;
  transform:
    perspective(1300px)
    translateY(calc(20px - (var(--finder-progress) * 20px)))
    translateZ(calc(var(--finder-progress) * 20px))
    scale(calc(0.98 + (var(--finder-progress) * 0.02)));
  transform-origin: center top;
  transition: transform 0.16s linear, opacity 0.16s linear;
}

.finder-hero.is-active h1 {
  transform: scale(1.02);
}

.finder-media {
  border: 0;
  background: transparent;
  border-radius: 30px;
  overflow: hidden;
  transition: transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1), filter 0.3s ease;
}

.finder-media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 640px;
  object-fit: cover;
  border-radius: 30px;
}

.finder-media:hover {
  transform: translateY(-6px) scale(1.008);
  filter: drop-shadow(0 18px 30px rgba(30, 30, 30, 0.24));
}

.finder-content {
  border: 0;
  background: transparent;
  padding: 0.2rem 0.1rem 0.6rem;
}

.finder-content h2 {
  margin: 0;
  font-size: 1.32rem;
  color: var(--heading);
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.42);
}

.title-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.35rem;
  height: 1.35rem;
  margin-right: 0.28rem;
  border: 1px solid rgba(51, 51, 51, 0.3);
  border-radius: 999px;
  font-size: 0.72rem;
  color: var(--heading);
}

.finder-steps {
  margin: 0.9rem 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.6rem;
}

.finder-steps li {
  display: grid;
  grid-template-columns: 1.35rem 1fr;
  align-items: baseline;
  gap: 0.55rem;
}

.finder-steps li p {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.45;
  color: #2f2f2f;
}

.step-dot {
  display: inline-block;
  width: 1.35rem;
  text-align: right;
  color: var(--heading);
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.25;
  padding-top: 0.14rem;
}

.finder-content h3 {
  margin: 1.25rem 0 0;
  font-size: 1.02rem;
  color: var(--heading);
}

.job-slider {
  margin-top: 0.62rem;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 0.52rem;
}

.job-arrow {
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 999px;
  border: 1px solid rgba(51, 51, 51, 0.3);
  background: var(--surface);
  color: var(--heading);
  font-size: 1.28rem;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.job-arrow:hover {
  background: var(--surface-strong);
  border-color: rgba(51, 51, 51, 0.32);
  transform: translateY(-1px) scale(1.06);
  box-shadow: 0 8px 16px rgba(30, 30, 30, 0.18);
}

.job-arrow:active {
  transform: scale(0.95);
}

.job-arrow:focus-visible {
  outline: none;
  border-color: rgba(30, 30, 30, 0.62);
  box-shadow: 0 0 0 2px rgba(30, 30, 30, 0.16);
}

.job-card {
  min-height: 5.25rem;
  padding: 0.92rem 1rem;
  border-radius: 20px;
  border: 1px solid rgba(51, 51, 51, 0.18);
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.94) 0%, rgba(244, 241, 236, 0.84) 100%);
  text-decoration: none;
  display: grid;
  align-content: center;
  box-shadow:
    0 12px 22px rgba(30, 30, 30, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.76);
  transition: transform 0.34s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.34s ease;
  will-change: transform, opacity;
}

.job-card:hover,
.job-card:focus-visible {
  transform: translateY(-4px) scale(1.01);
  border-color: var(--border-strong);
  background: var(--surface-strong);
  box-shadow: var(--shadow-raise);
  outline: none;
}

.job-card.is-leaving-left {
  transform: translateX(-20px);
  opacity: 0;
}

.job-card.is-leaving-right {
  transform: translateX(20px);
  opacity: 0;
}

.job-card.is-enter-from-right {
  transform: translateX(20px);
  opacity: 0;
}

.job-card.is-enter-from-left {
  transform: translateX(-20px);
  opacity: 0;
}

.job-card-title {
  margin: 0;
  font-size: 0.98rem;
  font-weight: 700;
  color: var(--heading);
}

.job-card-meta {
  margin: 0.3rem 0 0;
  font-size: 0.88rem;
  color: #3e3e3e;
}

.finder-start {
  margin-top: 1.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.6rem;
  padding: 0 1.5rem;
  border-radius: 999px;
  text-decoration: none;
  color: #fefcff;
  background: linear-gradient(135deg, #11212d 0%, #1b2836 55%, #35485a 100%);
  border: 1px solid rgba(30, 30, 30, 0.92);
  font-weight: 700;
  box-shadow:
    0 10px 20px rgba(17, 17, 17, 0.24),
    inset 0 1px 0 rgba(204, 208, 207, 0.16);
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease, letter-spacing 0.2s ease;
}

.finder-start:hover {
  background: linear-gradient(135deg, #1b2836 0%, #35485a 55%, #5c7080 100%);
  transform: translateY(-3px) scale(1.02);
  letter-spacing: 0.02em;
  box-shadow:
    0 14px 26px rgba(17, 17, 17, 0.3),
    inset 0 1px 0 rgba(204, 208, 207, 0.2);
}

.finder-start:active {
  transform: translateY(0) scale(0.98);
}

.finder-start:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(30, 30, 30, 0.2), 0 12px 24px rgba(17, 17, 17, 0.3);
}

.employer-section {
  --employer-progress: 0;
  max-width: 1220px;
  margin: 0 auto;
  padding: 3rem 2.8rem 4.6rem;
}

.employer-head {
  max-width: 900px;
}

.employer-head h2 {
  margin: 0.45rem 0 0;
  font-size: clamp(2rem, 4.4vw, 3.7rem);
  line-height: 1.08;
  letter-spacing: -0.02em;
  transform: scale(calc(0.985 + (var(--employer-progress) * 0.015)));
  transform-origin: left top;
  transition: transform 0.18s linear;
  color: var(--heading);
}

.employer-head p {
  margin: 0.9rem 0 0;
  font-size: 1.02rem;
  line-height: 1.58;
  color: #2f2f2f;
}

.employer-grid {
  margin-top: 1.55rem;
  display: grid;
  grid-template-columns: minmax(340px, 1.08fr) minmax(320px, 1fr);
  gap: 1rem 1.5rem;
  align-items: start;
  opacity: 1;
  transform:
    perspective(1300px)
    translateY(calc(20px - (var(--employer-progress) * 20px)))
    translateZ(calc(var(--employer-progress) * 20px))
    scale(calc(0.98 + (var(--employer-progress) * 0.02)));
  transform-origin: center top;
  transition: transform 0.16s linear, opacity 0.16s linear;
}

.employer-section.is-active .employer-head h2 {
  transform: scale(1.02);
}

.employer-left-list {
  border: 1px solid rgba(51, 51, 51, 0.18);
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.94) 0%, rgba(244, 241, 236, 0.82) 100%);
  border-radius: 20px;
  padding: 1.1rem 1rem 1rem;
  display: flex;
  flex-direction: column;
  min-height: auto;
  align-self: start;
  grid-column: 2;
  grid-row: 1;
  box-shadow:
    0 14px 24px rgba(30, 30, 30, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.78);
  transition: transform 0.3s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.3s ease, border-color 0.3s ease;
}

.employer-left-list h3 {
  margin: 0;
  font-size: 1.06rem;
  color: var(--heading);
}

.employer-steps {
  margin: 0.8rem 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.62rem;
}

.employer-steps li {
  display: grid;
  grid-template-columns: 1.25rem 1fr;
  gap: 0.5rem;
  align-items: start;
}

.employer-steps span {
  display: inline-block;
  width: 1.25rem;
  text-align: right;
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--heading);
}

.employer-steps p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.45;
  color: #2f2f2f;
}

.employer-start {
  margin-top: 0.9rem;
  display: inline-flex;
  min-height: 2.15rem;
  padding: 0 0.95rem;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  text-decoration: none;
  font-size: 0.86rem;
  font-weight: 700;
  color: #fefcff;
  background: linear-gradient(135deg, #11212d 0%, #1b2836 55%, #35485a 100%);
  border: 1px solid rgba(30, 30, 30, 0.92);
  box-shadow:
    0 10px 20px rgba(17, 17, 17, 0.24),
    inset 0 1px 0 rgba(204, 208, 207, 0.16);
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease, letter-spacing 0.2s ease;
}

.employer-start:hover {
  background: linear-gradient(135deg, #1b2836 0%, #35485a 55%, #5c7080 100%);
  transform: translateY(-3px) scale(1.02);
  letter-spacing: 0.02em;
  box-shadow:
    0 14px 26px rgba(17, 17, 17, 0.3),
    inset 0 1px 0 rgba(204, 208, 207, 0.2);
}

.employer-start:active {
  transform: translateY(0) scale(0.98);
}

.employer-left-list:hover {
  transform: translateY(-4px);
  border-color: var(--border-strong);
  box-shadow: var(--shadow-raise);
}

.employer-center-visual {
  border-radius: 28px;
  overflow: hidden;
  min-height: 640px;
  grid-column: 1;
  grid-row: 1 / span 2;
  transition: transform 0.34s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.34s ease;
}

.employer-center-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.employer-center-visual:hover {
  transform: translateY(-6px) scale(1.008);
  box-shadow: 0 22px 36px rgba(30, 30, 30, 0.2);
}

.employer-right-cards {
  display: grid;
  gap: 1rem;
  grid-column: 2;
  grid-row: 2;
}

.employer-right-cards article {
  border: 1px solid rgba(51, 51, 51, 0.18);
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.94) 0%, rgba(244, 241, 236, 0.82) 100%);
  border-radius: 20px;
  overflow: hidden;
  padding-bottom: 0.95rem;
  box-shadow:
    0 14px 24px rgba(30, 30, 30, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.78);
  transition: transform 0.3s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.3s ease, border-color 0.3s ease;
}

.employer-right-cards img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  display: block;
}

.employer-right-cards h3 {
  margin: 0.85rem 0 0;
  padding: 0 0.92rem;
  font-size: 1.03rem;
  color: var(--heading);
}

.employer-right-cards p {
  margin: 0.42rem 0 0;
  padding: 0 0.92rem;
  font-size: 0.9rem;
  color: #2f2f2f;
}

.employer-right-cards a {
  margin: 0.72rem 0 0 0.92rem;
  display: inline-flex;
  min-height: 2.05rem;
  padding: 0 0.9rem;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  text-decoration: none;
  font-size: 0.84rem;
  font-weight: 700;
  color: #fefcff;
  background: linear-gradient(135deg, #11212d 0%, #1b2836 55%, #35485a 100%);
  border: 1px solid rgba(30, 30, 30, 0.92);
  transition: transform 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

.employer-right-cards article:hover {
  transform: translateY(-5px);
  border-color: var(--border-strong);
  box-shadow: var(--shadow-raise);
}

.employer-right-cards a:hover {
  background: linear-gradient(135deg, #1b2836 0%, #35485a 55%, #5c7080 100%);
  transform: translateY(-1px);
  box-shadow: 0 8px 16px rgba(30, 30, 30, 0.2);
}

.employer-right-cards a:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(30, 30, 30, 0.16), 0 8px 16px rgba(30, 30, 30, 0.2);
}

.plans-section {
  padding: 0.1rem 2.8rem 2.4rem;
}

.plans-shell {
  max-width: 1220px;
  margin: 0 auto;
  padding: 1rem;
  border: 1px solid rgba(51, 51, 51, 0.18);
  border-radius: 24px;
  background:
    radial-gradient(circle at 14% 16%, rgba(204, 208, 207, 0.18) 0%, transparent 26%),
    radial-gradient(circle at 86% 10%, rgba(155, 168, 171, 0.12) 0%, transparent 22%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, rgba(244, 241, 236, 0.96) 100%);
  box-shadow:
    0 18px 30px rgba(30, 30, 30, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.plans-head {
  max-width: 620px;
}

.plans-head h2 {
  margin: 0.35rem 0 0;
  font-size: clamp(1.35rem, 2.7vw, 2rem);
  line-height: 1.08;
  letter-spacing: -0.025em;
  color: var(--heading);
}

.plans-head p:last-child {
  margin: 0.45rem 0 0;
  max-width: 46ch;
  font-size: 0.86rem;
  line-height: 1.45;
  color: #2f2f2f;
}

.plans-grid {
  margin-top: 0.9rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
  align-items: stretch;
}

.plan-card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(51, 51, 51, 0.18);
  border-radius: 20px;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.97) 0%, rgba(244, 241, 236, 0.88) 100%);
  box-shadow:
    0 16px 28px rgba(30, 30, 30, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.86);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.plan-card:hover {
  transform: translateY(-4px);
  border-color: rgba(51, 51, 51, 0.22);
  box-shadow:
    0 20px 34px rgba(30, 30, 30, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.84);
}

.plan-card-featured {
  transform: translateY(-4px);
  border-color: rgba(30, 30, 30, 0.22);
  box-shadow:
    0 22px 38px rgba(30, 30, 30, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.84);
}

.plan-card-featured:hover {
  transform: translateY(-6px);
}

.plan-badge {
  position: absolute;
  top: 0.72rem;
  right: 0.72rem;
  z-index: 2;
  margin: 0;
  padding: 0.35rem 0.56rem;
  border-radius: 999px;
  background: linear-gradient(135deg, #1b2836 0%, #35485a 100%);
  color: #fefcff;
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  box-shadow: 0 10px 18px rgba(17, 17, 17, 0.18);
}

.plan-card-media {
  aspect-ratio: 16 / 6.3;
  overflow: hidden;
  border-bottom: 1px solid rgba(51, 51, 51, 0.1);
}

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

.plan-card-content {
  padding: 0.82rem 0.85rem 0.9rem;
}

.plan-tier {
  margin: 0;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--heading);
}

.plan-card-content h3 {
  margin: 0.3rem 0 0;
  font-size: 1.08rem;
  line-height: 1.14;
  color: var(--heading);
}

.plan-copy {
  margin: 0.42rem 0 0;
  min-height: 2.2rem;
  font-size: 0.82rem;
  line-height: 1.38;
  color: #2f2f2f;
}

.plan-price {
  margin: 0.6rem 0 0;
  font-size: 1.55rem;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: var(--heading);
}

.plan-price span {
  margin-left: 0.28rem;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0;
  color: #3e3e3e;
}

.plan-features {
  margin: 0.6rem 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.4rem;
}

.plan-features li {
  position: relative;
  padding-left: 1rem;
  font-size: 0.78rem;
  line-height: 1.34;
  color: #2f2f2f;
}

.plan-features li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.34rem;
  width: 0.42rem;
  height: 0.42rem;
  border-radius: 999px;
  background: linear-gradient(135deg, #1b2836 0%, #5c7080 100%);
  box-shadow: 0 0 0 3px rgba(30, 30, 30, 0.08);
}

.plan-cta {
  margin-top: 0.72rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.15rem;
  padding: 0 0.9rem;
  border-radius: 999px;
  text-decoration: none;
  color: #fefcff;
  background: linear-gradient(135deg, #11212d 0%, #1b2836 55%, #35485a 100%);
  border: 1px solid rgba(30, 30, 30, 0.92);
  font-size: 0.82rem;
  font-weight: 700;
  box-shadow:
    0 10px 20px rgba(17, 17, 17, 0.22),
    inset 0 1px 0 rgba(204, 208, 207, 0.16);
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.plan-cta:hover {
  transform: translateY(-3px);
  background: linear-gradient(135deg, #1b2836 0%, #35485a 55%, #5c7080 100%);
  box-shadow:
    0 14px 24px rgba(17, 17, 17, 0.24),
    inset 0 1px 0 rgba(204, 208, 207, 0.2);
}

.plan-cta:active {
  transform: translateY(0) scale(0.98);
}

.plan-cta:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(30, 30, 30, 0.14), 0 14px 24px rgba(17, 17, 17, 0.24);
}

.internships-section {
  margin: 0;
  padding: 3.6rem 2.8rem 4.8rem;
  background:
    radial-gradient(circle at 10% 14%, rgba(204, 208, 207, 0.36) 0%, transparent 34%),
    radial-gradient(circle at 88% 12%, rgba(155, 168, 171, 0.22) 0%, transparent 30%),
    #e5e4e2;
}

.internships-shell {
  max-width: 1220px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(340px, 0.9fr);
  gap: 2rem;
  align-items: start;
}

.internships-kicker {
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}

.internships-intro h2 {
  margin: 0.7rem 0 0;
  max-width: 15ch;
  font-size: clamp(2.1rem, 4.8vw, 3.9rem);
  line-height: 1.05;
  letter-spacing: -0.03em;
  font-weight: 800;
  color: var(--heading);
}

.internships-description {
  margin: 1rem 0 0;
  max-width: 58ch;
  font-size: 1.03rem;
  line-height: 1.68;
  color: var(--copy);
}

.internships-points {
  margin-top: 1.5rem;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.95rem;
}

.internships-points article {
  min-height: 100%;
  padding: 1.2rem 1.1rem;
  border-radius: 20px;
  border: 1px solid var(--border-soft);
  background: var(--surface);
  box-shadow: var(--shadow-soft);
  transition: transform 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease;
}

.internships-points article:hover {
  transform: translateY(-4px);
  border-color: var(--border-strong);
  box-shadow: var(--shadow-raise);
}

.internships-points h3 {
  margin: 0;
  font-size: 1rem;
  color: var(--heading);
}

.internships-points p {
  margin: 0.55rem 0 0;
  font-size: 0.92rem;
  line-height: 1.55;
  color: var(--copy-soft);
}

.internships-highlight {
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(51, 51, 51, 0.14);
  background: linear-gradient(155deg, #ffffff 0%, #f4f1ec 100%);
  box-shadow: 0 26px 48px rgba(30, 30, 30, 0.1);
}

.internships-highlight-media {
  aspect-ratio: 16 / 10;
  overflow: hidden;
}

.internships-highlight-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.internships-highlight-content {
  padding: 1.35rem 1.35rem 1.45rem;
}

.internships-highlight-kicker {
  margin: 0;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}

.internships-highlight-content h3 {
  margin: 0.55rem 0 0;
  font-size: 1.45rem;
  line-height: 1.15;
  color: var(--heading);
}

.internships-list {
  margin: 1rem 0 0;
  padding-left: 1.1rem;
  display: grid;
  gap: 0.48rem;
  color: var(--copy);
  line-height: 1.55;
}

.internships-cta {
  margin-top: 1.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.9rem;
  padding: 0 1.4rem;
  border-radius: 999px;
  text-decoration: none;
  color: #fefcff;
  background: #11212d;
  font-weight: 700;
  box-shadow: 0 10px 20px rgba(17, 17, 17, 0.18);
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.internships-cta:hover {
  transform: translateY(-3px);
  background: #1b2836;
  box-shadow: 0 14px 24px rgba(17, 17, 17, 0.24);
}

.internships-cta:active {
  transform: translateY(0) scale(0.98);
}

.internships-cta:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(30, 30, 30, 0.14), 0 14px 24px rgba(17, 17, 17, 0.24);
}

.site-footer {
  padding: 0.4rem 2.8rem 2rem;
  background:
    radial-gradient(circle at 14% 8%, rgba(204, 208, 207, 0.1) 0%, transparent 20%),
    linear-gradient(
      118deg,
      rgba(15, 23, 32, 0.97) 0%,
      rgba(23, 35, 48, 0.95) 48%,
      rgba(45, 62, 80, 0.92) 100%
    );
}

.site-footer-shell {
  max-width: 1220px;
  margin: 0 auto;
  padding: 1.7rem 0 1rem;
}

.site-footer-top {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 1.2rem;
  padding-bottom: 1.4rem;
  border-bottom: 1px solid rgba(204, 208, 207, 0.12);
}

.site-footer-brand {
  max-width: 520px;
}

.site-footer-brand img {
  width: 188px;
  height: auto;
  display: block;
  filter: brightness(0) invert(1);
}

.site-footer-brand p {
  margin: 0.85rem 0 0;
  font-size: 0.94rem;
  line-height: 1.58;
  color: rgba(240, 242, 243, 0.78);
}

.site-footer-grid {
  padding-top: 1.35rem;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.5rem;
}

.site-footer-column h2 {
  margin: 0;
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: #e5e4e2;
}

.site-footer-column {
  display: grid;
  align-content: start;
  gap: 0.62rem;
}

.site-footer-column a {
  text-decoration: none;
  color: rgba(240, 242, 243, 0.76);
  font-size: 0.9rem;
  line-height: 1.45;
  transition: color 0.2s ease, transform 0.2s ease;
}

.site-footer-column a:hover,
.site-footer-column a:focus-visible {
  color: #fefcff;
  transform: translateX(2px);
  outline: none;
}

.site-footer-bottom {
  margin-top: 1.35rem;
  padding-top: 0.9rem;
  border-top: 1px solid rgba(204, 208, 207, 0.12);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.site-footer-bottom p {
  margin: 0;
  font-size: 0.84rem;
  color: rgba(240, 242, 243, 0.62);
}

.site-footer-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.site-footer-meta span,
.site-footer-meta a {
  font-size: 0.84rem;
  color: rgba(240, 242, 243, 0.62);
}

.site-footer-meta a {
  text-decoration: none;
  transition: color 0.15s ease;
}

.site-footer-meta a:hover,
.site-footer-meta a:focus-visible {
  color: #fdfcfa;
}

@media (prefers-reduced-motion: reduce) {
  .finder-hero h1,
  .finder-panel,
  .hero-media-card,
  .hero-cta,
  .hero-trusted-track,
  .finder-media,
  .job-arrow,
  .job-card,
  .finder-start,
  .employer-head h2,
  .employer-grid,
  .employer-left-list,
  .employer-center-visual,
  .employer-right-cards article,
  .employer-right-cards a,
  .employer-start,
  .plan-card,
  .plan-card-featured,
  .plan-cta,
  .internships-points article,
  .internships-highlight,
  .internships-cta,
  .site-footer-column a,
  .logo-link,
  .menu a,
  .btn {
    transition: none;
    transform: none;
    filter: none;
    opacity: 1;
  }

  .hero-trusted-track {
    animation: none;
  }

}

/* Mobil navigasyon (hamburger) — yalnızca ≤1080px'de görünür. */
.nav-toggle { display: none; }
.nav-mobile { display: none; }

@media (max-width: 1080px) {
  .menu {
    display: none;
  }

  /* Masaüstü Giriş/Kayıt yerine hamburger; ikisi de panel içinde. */
  .topbar .actions { display: none; }

  .nav-toggle {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    margin-left: auto;
    width: 44px;
    height: 44px;
    padding: 11px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 12px;
    cursor: pointer;
  }

  .nav-toggle span {
    display: block;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background: #fefcff;
    transition: transform 0.25s ease, opacity 0.2s ease;
  }

  .nav-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .nav-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .nav-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

  .nav-mobile {
    position: absolute;
    top: calc(100% + 6px);
    left: clamp(0.8rem, 2.6vw, 2.05rem);
    right: clamp(0.8rem, 2.6vw, 2.05rem);
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 0.6rem;
    background: rgba(15, 23, 32, 0.97);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 16px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.5);
  }

  .nav-mobile[hidden] { display: none; }

  .nav-mobile > a {
    padding: 0.85rem 0.9rem;
    border-radius: 10px;
    color: rgba(254, 252, 255, 0.82);
    text-decoration: none;
    font-size: 1rem;
    font-weight: 500;
  }

  .nav-mobile > a:hover,
  .nav-mobile > a:focus-visible {
    background: rgba(255, 255, 255, 0.06);
    color: #fff;
    outline: none;
  }

  .nav-mobile-actions {
    display: flex;
    gap: 0.6rem;
    margin-top: 0.5rem;
    padding-top: 0.7rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }

  .nav-mobile-actions .btn {
    flex: 1;
    justify-content: center;
    text-align: center;
  }

  /* Mobil hero: absolute topbar'ın (logo + hamburger) ALTINDA başlasın —
     dikey ortalama yerine üstten hizala + topbar'ı temizleyen üst boşluk.
     100svh: mobil tarayıcı çubuğu yüksekliği doğru hesaplansın. */
  .hero {
    min-height: 100svh;
    justify-content: flex-start;
    padding: 6rem 1.3rem 3rem;
  }

  .hero-content {
    padding: 0;
    max-width: 100%;
  }

  .hero-title {
    font-size: clamp(2.3rem, 8.5vw, 3.4rem);
    margin-bottom: 1.1rem;
  }

  .hero-description {
    margin-bottom: 2rem;
  }

  /* Mobilde logoyu biraz küçült — topbar sıkışmasın. */
  .logo {
    width: 156px;
    height: 30px;
  }

  .hero-trusted {
    padding: 0.55rem 1.2rem 2.4rem;
  }

  .hero-trusted::before {
    left: 1.2rem;
    right: 1.2rem;
  }

  .hero-trusted-track {
    gap: 0.9rem;
  }

  .hero-trusted-logo {
    min-width: 136px;
    min-height: 78px;
  }

  .finder-hero {
    padding: 1.4rem 1.2rem 3rem;
  }

  .finder-panel {
    grid-template-columns: 1fr;
  }

  .finder-media img {
    min-height: 320px;
  }

  .job-slider {
    grid-template-columns: 1fr auto;
    gap: 0.55rem;
  }

  .job-arrow#job-prev {
    order: 2;
  }

  .job-card {
    grid-column: 1 / -1;
  }

  .employer-section {
    padding: 2rem 1.2rem 3.2rem;
  }

  .employer-grid {
    grid-template-columns: 1fr;
  }

  .employer-left-list,
  .employer-center-visual,
  .employer-right-cards {
    grid-column: auto;
    grid-row: auto;
  }

  .employer-center-visual {
    min-height: 380px;
  }

  .plans-section {
    padding: 0.1rem 1.2rem 2.2rem;
  }

  .plans-shell {
    padding: 0.92rem;
    border-radius: 26px;
  }

  .plans-grid {
    grid-template-columns: 1fr;
  }

  .plan-card-featured,
  .plan-card-featured:hover {
    transform: none;
  }

  .internships-section {
    padding: 2.6rem 1.2rem 3.2rem;
  }

  .internships-shell {
    grid-template-columns: 1fr;
  }

  .internships-intro h2 {
    max-width: 18ch;
  }

  .internships-points {
    grid-template-columns: 1fr;
  }

  .internships-highlight {
    max-width: 560px;
  }

  .site-footer {
    padding: 0 1.2rem 1.6rem;
  }

  .site-footer-shell {
    padding: 1.4rem 0 1rem;
  }

  .site-footer-top {
    flex-direction: column;
    align-items: flex-start;
  }

  .site-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .topbar {
    padding: 0.42rem 1.05rem;
    gap: 0.6rem;
  }

  .logo {
    width: 162px;
    height: 31px;
    object-position: center 44%;
    transform: translateY(-1px);
  }

  .actions {
    gap: 0.45rem;
  }

  .btn {
    min-height: 1.74rem;
    padding: 0 0.74rem;
    font-size: 0.8rem;
  }

  .hero {
    min-height: auto;
    justify-content: flex-start;
    padding: 5rem 1.1rem 2.5rem;
  }

  .hero-title {
    font-size: clamp(1.6rem, 9vw, 2.35rem);
  }

  .hero-description {
    font-size: 0.96rem;
  }

  .hero-cta {
    min-height: 3.45rem;
    padding: 0 2.2rem;
    font-size: 1.03rem;
  }

  .hero-trusted {
    padding: 0.45rem 0.95rem 2rem;
    gap: 0.7rem;
  }

  .hero-trusted::before {
    left: 0.95rem;
    right: 0.95rem;
  }

  .hero-trusted-kicker {
    padding: 0.48rem 0.78rem;
    font-size: 0.68rem;
    letter-spacing: 0.14em;
  }

  .hero-trusted-title {
    font-size: 0.94rem;
  }

  .hero-trusted-marquee {
    padding: 0.55rem 0;
  }

  .hero-trusted-logo {
    min-width: 112px;
    min-height: 64px;
    padding: 0.6rem 0.75rem;
    border-radius: 16px;
  }

  .hero-trusted-logo img {
    max-width: 64px;
  }

  .hero-flows {
    grid-template-columns: 1fr;
    gap: 0.9rem;
  }

  .hero-flow:first-child {
    padding-right: 0;
    border-right: 0;
  }

  .hero-flow:last-child {
    padding-left: 0;
  }

  .employer-head h2 {
    font-size: clamp(1.7rem, 8vw, 2.45rem);
  }

  .plans-section {
    padding: 0.05rem 0.95rem 2rem;
  }

  .plans-shell {
    padding: 0.78rem;
    border-radius: 22px;
  }

  .plans-head h2 {
    font-size: clamp(1.22rem, 7vw, 1.72rem);
  }

  .plans-head p:last-child {
    font-size: 0.82rem;
  }

  .plan-card {
    border-radius: 18px;
  }

  .plan-badge {
    top: 0.8rem;
    right: 0.8rem;
    font-size: 0.68rem;
  }

  .plan-card-content {
    padding: 1.05rem 1rem 1.15rem;
  }

  .plan-card-content h3 {
    font-size: 1rem;
  }

  .plan-copy {
    min-height: auto;
    font-size: 0.8rem;
  }

  .plan-price {
    font-size: 1.4rem;
  }

  .plan-features li {
    font-size: 0.76rem;
  }

  .internships-section {
    padding: 2.2rem 0.95rem 2.8rem;
  }

  .internships-intro h2 {
    font-size: clamp(1.7rem, 8.2vw, 2.4rem);
  }

  .internships-highlight-content {
    padding: 1.15rem 1rem 1.2rem;
  }

  .site-footer {
    padding: 0 0.95rem 1.25rem;
  }

  .site-footer-shell {
    padding: 1.1rem 0 0.9rem;
  }

  .site-footer-brand img {
    width: 164px;
  }

  .site-footer-brand p {
    font-size: 0.88rem;
  }

  .site-footer-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .site-footer-column {
    gap: 0.6rem;
  }

  .site-footer-column a {
    font-size: 0.88rem;
  }

  .site-footer-bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ════════ Afterwork AI sahnesi (nöral ağ) + Tanıtım videosu ════════ */
/* Hero'daki AI küresine dokunulmadan; "İşe Alıma Entegre Yapay Zeka"
   bölümünden hemen ÖNCE oynayan, yapay zekâyı simgeleyen ağ animasyonu. */
.aiviz {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(120% 90% at 50% 12%, #2a3f52 0%, #182734 46%, #0f1720 100%);
}
.aiviz-canvas { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; }
.aiviz-overlay {
  position: absolute; inset: 0; z-index: 2; pointer-events: none;
  background: radial-gradient(58% 50% at 50% 50%, rgba(15, 23, 32, 0) 42%, rgba(15, 23, 32, 0.6) 100%);
}
.aiviz-caption {
  position: relative; z-index: 3; text-align: center; padding: 0 1.5rem; max-width: 820px;
}
.aiviz-kicker {
  margin: 0 0 1.1rem; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.28em;
  text-transform: uppercase; color: #999999;
}
.aiviz-line {
  margin: 0; font-size: clamp(1.7rem, 3.8vw, 3.1rem); font-weight: 700; line-height: 1.18;
  letter-spacing: -0.02em; color: #f3f3f3;
}
.aiviz-line span { color: #aaaaaa; }
.aiviz-hint {
  display: inline-block; margin-top: 2.2rem; font-size: 0.8rem; letter-spacing: 0.05em;
  color: rgba(176, 176, 176, 0.5); animation: aivizHint 2.4s ease-in-out infinite;
}
@keyframes aivizHint {
  0%, 100% { transform: translateY(0); opacity: 0.5; }
  50%      { transform: translateY(6px); opacity: 1; }
}

/* reveal-zoom: reveal.js'in .is-visible'ı ile "zoom-out pop" geçişi */
.reveal-zoom {
  transform: scale(1.06);
  opacity: 0;
  transition: transform 0.75s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.7s ease;
}
.reveal-zoom.is-visible { transform: scale(1); opacity: 1; }

/* ── Tanıtım videosu (placeholder) ── */
.aivideo {
  background: #0f1720;
  padding: clamp(4rem, 10vw, 8rem) 1.5rem;
  display: flex;
  justify-content: center;
}
.aivideo-inner { width: min(960px, 100%); text-align: center; }
.aivideo-kicker {
  margin: 0 0 0.9rem; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.24em;
  text-transform: uppercase; color: #999999;
}
.aivideo-title {
  margin: 0 0 0.8rem; font-size: clamp(1.8rem, 4vw, 3rem); line-height: 1.1;
  letter-spacing: -0.02em; font-weight: 700; color: #f3f3f3;
}
.aivideo-title strong { color: #aaaaaa; font-weight: 700; }
.aivideo-sub {
  margin: 0 auto 2.4rem; max-width: 520px; font-size: clamp(1rem, 1.3vw, 1.12rem);
  line-height: 1.6; color: #afafaf;
}
.aivideo-frame {
  position: relative; display: block; width: 100%; aspect-ratio: 16 / 9;
  border: 1px solid rgba(180, 180, 180, 0.14); cursor: pointer;
  border-radius: 22px; overflow: hidden;
  background: linear-gradient(150deg, #2a3a49 0%, #182430 60%, #0f1720 100%);
  box-shadow: 0 40px 90px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.06);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.aivideo-frame::before {
  content: ""; position: absolute; inset: 0;
  background: radial-gradient(60% 60% at 50% 45%, rgba(134, 134, 134, 0.22), transparent 70%);
}
.aivideo-frame:hover { transform: translateY(-4px); box-shadow: 0 50px 110px rgba(0, 0, 0, 0.6); }
.aivideo-play {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
  width: 78px; height: 78px; border-radius: 999px;
  display: inline-flex; align-items: center; justify-content: center;
  background: rgba(255, 255, 255, 0.95); box-shadow: 0 14px 40px rgba(0, 0, 0, 0.45);
  transition: transform 0.2s ease;
}
.aivideo-frame:hover .aivideo-play { transform: translate(-50%, -50%) scale(1.08); }
.aivideo-play svg { width: 30px; height: 30px; margin-left: 4px; color: #171717; }
.aivideo-badge {
  position: absolute; top: 16px; right: 16px; padding: 0.3rem 0.7rem; border-radius: 8px;
  background: rgba(255, 255, 255, 0.12); color: #dddddd;
  font-size: 0.68rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase;
}

@media (prefers-reduced-motion: reduce) {
  .aiviz-hint { animation: none; }
  .reveal-zoom { transition: opacity 0.4s ease; transform: none; }
}

/* ════════ Demo bölümü — sol "Hakkımızda" + sağ takvim ════════ */
.book-layout {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(520px, 600px);
  gap: clamp(2rem, 5vw, 4.5rem);
  align-items: center;
  width: 100%;
  max-width: 1160px;
  margin: 0 auto;
}

.book-about { max-width: 520px; }
.book-about-kicker {
  margin: 0 0 1rem; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.24em;
  text-transform: uppercase; color: #8f8f8f;
}
.book-about-title {
  margin: 0 0 1.3rem; font-size: clamp(1.9rem, 3.4vw, 2.8rem); line-height: 1.12;
  letter-spacing: -0.028em; font-weight: 700; color: #fefcff;
}
.book-about-text {
  margin: 0 0 1.1rem; font-size: 1rem; line-height: 1.7; color: rgba(204, 208, 207, 0.6);
}
.book-about-points {
  list-style: none; margin: 1.6rem 0 0; padding: 0;
  display: flex; flex-direction: column; gap: 0.75rem;
}
.book-about-points li {
  display: flex; align-items: center; gap: 0.65rem;
  font-size: 0.92rem; color: rgba(204, 208, 207, 0.82);
}
.book-about-points li span { font-size: 1.05rem; }
.book-about-note {
  margin: 1.8rem 0 0; font-size: 0.85rem; line-height: 1.6; color: rgba(204, 208, 207, 0.42);
}

/* Kart: dikey düzen (üst meta şeridi + gövde) — dar sağ kolona sığar */
.book-layout .book-card {
  flex-direction: column;
  width: 100%;
  max-width: none;
  min-height: 460px;
  margin: 0;
}
.book-cardhead {
  display: flex; align-items: center; gap: 0.7rem;
  padding: 1.1rem 1.4rem;
  border-bottom: 1px solid rgba(204, 208, 207, 0.08);
}
.book-cardhead-meta { display: flex; flex-direction: column; gap: 0.15rem; min-width: 0; }
.book-cardhead-meta strong { font-size: 0.9rem; font-weight: 700; color: #fefcff; }
.book-cardhead-meta span { font-size: 0.72rem; color: rgba(204, 208, 207, 0.5); }
.book-body { display: flex; flex: 1; min-height: 0; }
.book-body .book-cal { padding: 1.6rem 1.5rem; }

@media (max-width: 900px) {
  .book-layout { grid-template-columns: 1fr; gap: 2.4rem; max-width: 620px; }
  .book-about { max-width: none; text-align: center; margin: 0 auto; }
  .book-about-points { align-items: center; }
}
@media (max-width: 560px) {
  .book-body { flex-direction: column; }
  .book-side { width: auto; border-left: 0; border-top: 1px solid rgba(204, 208, 207, 0.08); }
}

/* ── "İşe alımı AI ile yeniden tanımlayın" başlığı ekrana doğru gelir (scale-in) ── */
.ai-head.reveal-up {
  opacity: 0;
  transform: scale(0.84);
  transition: opacity 0.85s ease, transform 1s cubic-bezier(0.22, 1, 0.36, 1);
}
.ai-head.reveal-up.is-visible {
  opacity: 1;
  transform: scale(1);
}
@media (prefers-reduced-motion: reduce) {
  .ai-head.reveal-up { transform: none; }
}

/* ════════ Apple tarzı knockout GİRİŞ sahnesi (görsel yalnızca harflerin içinden) ════════ */
.airise-scroll { position: relative; height: 300vh; background: #0f1720; }
.airise {
  position: sticky; top: 0; height: 100vh; overflow: hidden;
  /* gri knockout sahnesi → marka navy-slate */
  background: radial-gradient(115% 95% at 50% 30%, #536878 0%, #35485a 40%, #1d2a36 72%, #131d27 100%);
}
.airise-canvas { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; }
.airise-cover { position: absolute; inset: 0; z-index: 2; opacity: 0; will-change: opacity; }
.airise-svg { display: block; width: 100%; height: 100%; }
.airise-text { position: absolute; inset: 0; z-index: 3; opacity: 0; pointer-events: none; will-change: opacity; }
.airise-kicker {
  position: absolute; left: 50%; top: 23%; transform: translateX(-50%);
  margin: 0; width: max-content; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.28em;
  text-transform: uppercase; color: #999999;
}
.airise-sub {
  position: absolute; left: 50%; top: 60%; transform: translateX(-50%);
  margin: 0; width: min(600px, 84vw); text-align: center;
  font-size: clamp(1rem, 1.4vw, 1.15rem); line-height: 1.6; color: #afafaf;
}
.airise-a11y { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); }

@media (prefers-reduced-motion: reduce) {
  .airise-scroll { height: auto; }
  .airise { position: relative; height: auto; min-height: 60vh; padding: 5rem 0; }
}

/* ════════ Kutular + video — knockout sahnesiyle AYNI arka plan (#0a0a0a) ════════ */
.aiboxes {
  background: #0f1720;
  padding: 0.5rem clamp(1.1rem, 4vw, 2rem) 0;
}
.aiboxes-inner { max-width: 1060px; margin: 0 auto; }

/* Kutular ayrı bir dikdörtgen/renk DEĞİL — sayfa zeminine oturur, ince ayraçlarla */
.aiboxes .ai-steps,
.aiboxes .ai-stats {
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 0;
  overflow: visible;
  gap: 0;
}
.aiboxes .ai-stats { border-bottom: 1px solid rgba(255, 255, 255, 0.09); margin-top: 2.4rem; }
.aiboxes .ai-step,
.aiboxes .ai-stat {
  background: transparent;
  border-left: 1px solid rgba(255, 255, 255, 0.08);
}
.aiboxes .ai-step:first-child,
.aiboxes .ai-stat:first-child { border-left: 0; }
.aiboxes .ai-step:hover { background: rgba(255, 255, 255, 0.025); }

/* Video de aynı sayfa/zemin — kutulara yakın (üstteki büyük boşluk kaldırıldı) */
.aivideo { background: #0f1720; padding: clamp(0.8rem, 2vw, 1.6rem) 1.5rem clamp(4rem, 10vw, 7rem); margin-top: 0; }
.aivideo-inner { margin-top: 0; }

/* ── Hakkımızda → akademik iş birliği: üniversite logoları ── */
.book-schools {
  display: flex; flex-wrap: wrap; align-items: center; gap: 1.3rem 1.9rem;
  margin: 1.9rem 0 0;
}
.book-school { display: inline-flex; align-items: center; gap: 0.6rem; }
.book-school-logo {
  width: 42px; height: 42px; border-radius: 10px; flex: none; padding: 5px;
  display: inline-flex; align-items: center; justify-content: center;
  background: #fff; overflow: hidden;
}
.book-school-logo img { width: 100%; height: 100%; object-fit: contain; }
.book-school-badge {
  width: 42px; height: 42px; border-radius: 10px; flex: none;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--c, #500778); color: #fff; font-size: 0.82rem; font-weight: 800; letter-spacing: 0.01em;
}
.book-school-name {
  display: flex; flex-direction: column; font-size: 0.72rem; line-height: 1.3;
  color: rgba(204, 208, 207, 0.6); font-weight: 500;
}
.book-school-name strong { color: #fefcff; font-weight: 700; font-size: 0.78rem; }

@media (max-width: 900px) {
  .book-schools { justify-content: center; }
}

/* ── Emoji → SVG şekil ikonları (siteyle uyumlu, çizgi stili) ── */
.cards-feat-ico svg { width: 21px; height: 21px; }
.plus-ico { color: #eef4fd; }
.plus-ico svg { width: 19px; height: 19px; }
.intern-ico { color: #303030; display: inline-flex; margin-top: 1px; }
.intern-ico svg { width: 20px; height: 20px; display: block; }

/* ============================================================
   İnteraktif hikâye bölümü — premium, sinematik, siyah tema
   Sol: 3 başlık · Orta: crossfade video · Sağ: numara + başlık + açıklama
   ============================================================ */
.story {
  /* Marka paleti: navy-slate → deep navy (hero ile aynı aile, düz siyah değil) */
  background: radial-gradient(125% 105% at 50% 0%, #223342 0%, #172533 44%, #0f1720 100%);
  color: #fff;
  padding: clamp(6rem, 18vh, 14rem) clamp(1.2rem, 5vw, 4.5rem);
}
.story-inner {
  max-width: 1360px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(160px, 0.7fr) minmax(0, 2.15fr) minmax(250px, 1.2fr);
  align-items: center;
  gap: clamp(1.4rem, 3.2vw, 3.4rem);
}

/* Sol: başlıklar — sola yaslı, açıklamaya yer kalsın */
.story-nav {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  padding-right: 0.5rem;
}
.story-tab {
  display: flex;
  align-items: baseline;
  gap: 0.7rem;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  text-align: left;
  color: rgba(255, 255, 255, 0.34);
  transition: color 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.story-tab-num {
  flex: none;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.28);
  transition: color 0.5s ease;
}
.story-tab-label {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: clamp(1.15rem, 1.7vw, 1.7rem);
  line-height: 1.14;
  font-weight: 500;
}
.story-tab:hover { color: rgba(255, 255, 255, 0.62); }
.story-tab.is-active { color: #fff; }
.story-tab.is-active .story-tab-num { color: rgba(255, 255, 255, 0.72); }

/* Orta: video sahnesi (grid-stacking crossfade) */
.story-video-stage {
  position: relative;
  display: grid;
  aspect-ratio: 16 / 9;
  border-radius: 6px;
  overflow: hidden;
  background: #0d141c;
}
.story-video {
  grid-area: 1 / 1;
  position: relative;
  margin: 0;
  overflow: hidden;
  opacity: 0;
  transform: scale(1.02);
  transition: opacity 0.75s cubic-bezier(0.4, 0, 0.2, 1),
    transform 1s cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
}
.story-video.is-active {
  opacity: 1;
  transform: scale(1);
  pointer-events: auto;
}
.story-vid,
.story-poster {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.story-poster {
  background:
    radial-gradient(70% 95% at 28% 18%, rgba(255, 255, 255, 0.09) 0%, transparent 55%),
    radial-gradient(80% 90% at 84% 92%, rgba(255, 255, 255, 0.05) 0%, transparent 55%),
    linear-gradient(158deg, #1b2836 0%, #0c131b 100%);
}
/* Köşe çerçeveleri (referanstaki premium detay) */
.story-corner {
  position: absolute;
  z-index: 3;
  width: 22px;
  height: 22px;
  border: 0 solid rgba(255, 255, 255, 0.5);
  pointer-events: none;
}
.story-corner--tl { top: 14px; left: 14px; border-top-width: 1.5px; border-left-width: 1.5px; }
.story-corner--tr { top: 14px; right: 14px; border-top-width: 1.5px; border-right-width: 1.5px; }
.story-corner--bl { bottom: 14px; left: 14px; border-bottom-width: 1.5px; border-left-width: 1.5px; }
.story-corner--br { bottom: 14px; right: 14px; border-bottom-width: 1.5px; border-right-width: 1.5px; }

/* Sağ: meta (grid-stacking crossfade) */
.story-meta-stage {
  display: grid;
  align-items: center;
}
.story-meta {
  grid-area: 1 / 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
}
.story-meta.is-active {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.story-meta-num {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #fff;
}
.story-meta-num span { color: rgba(255, 255, 255, 0.4); }
.story-meta-title {
  margin: 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: clamp(1.7rem, 2.6vw, 2.55rem);
  line-height: 1.1;
  font-weight: 700;
  color: #fff;
}
.story-meta-desc {
  margin: 0;
  max-width: 42ch;
  font-size: clamp(0.98rem, 1.15vw, 1.12rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.6);
}

@media (max-width: 900px) {
  .story-inner {
    grid-template-columns: 1fr;
    gap: 1.8rem;
  }
  .story-nav {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.9rem 1.6rem;
  }
  .story-meta-stage { min-height: 7rem; }
  .story-meta { text-align: center; align-items: center; }
  .story-meta-desc { margin: 0 auto; }
}

@media (prefers-reduced-motion: reduce) {
  .story-video,
  .story-meta {
    transition: opacity 0.25s ease;
    transform: none;
  }
}

/* ── Hero "Başla" butonu (slate) ─────────────────────────────────────── */
.hero-start {
  display: block;
  width: max-content;
  margin: 1.8rem auto 0;
  padding: 1.05rem 3.4rem;
  border-radius: 999px;
  background: #536878;
  color: #fff;
  text-decoration: none;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  font-size: 1.14rem;
  letter-spacing: 0.01em;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.28);
  transition: background 0.18s ease, transform 0.18s ease;
}
.hero-start:hover { background: #64707e; transform: translateY(-1px); }
.hero-start:active { transform: translateY(0); }

/* ── Platform entegrasyonları (işe alım sistemleri) ─────────────────── */
.integr {
  background: #e5e4e2;
  padding: clamp(2.6rem, 6vh, 4.6rem) clamp(1.2rem, 5vw, 4rem);
  text-align: center;
}
.integr-kicker {
  margin: 0 0 2rem;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #9ba1a8;
}
.integr-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 1.4rem 2.6rem;
  max-width: 1120px;
  margin: 0 auto;
}
.integr-item { display: inline-flex; align-items: center; gap: 0.7rem; }
.integr-badge {
  flex: none;
  width: 3rem;
  height: 3rem;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 16px rgba(17, 17, 17, 0.13), inset 0 1px 0 rgba(255, 255, 255, 0.18);
}
.integr-badge svg { width: 22px; height: 22px; }
/* Gerçek logo yüklendiğinde: beyaz tile, logo contain */
.integr-badge--img { background: #fff; padding: 6px; }
.integr-badge--img img { width: 100%; height: 100%; object-fit: contain; display: block; }
.integr-mark {
  color: #fff;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 800;
  font-size: 1.2rem;
  line-height: 1;
}
.integr-name {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.06rem;
  font-weight: 600;
  color: #2b2b2b;
}
@media (max-width: 640px) {
  .integr-row { gap: 1.1rem 1.6rem; }
  .integr-name { font-size: 0.95rem; }
}

/* Üst menü "İlan ver" — siyah buton, içinde yumuşak sage/yeşil ışık hüzmesi */
.nav-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 1.2rem;
  border-radius: 999px;
  background: #536878;
  color: #fff;
  text-decoration: none;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  font-size: 0.92rem;
  transition: background 0.16s ease, transform 0.16s ease;
}
.nav-cta:hover { background: #64707e; transform: translateY(-1px); }
.nav-cta:active { transform: translateY(0); }


/* ══════════════════════════════════════════════════════════════════════
 *  SPONSORLU İLANLAR — hero'nun bittiği beyazdan kesintisiz devam eder,
 *  "Güvenen şirketler"in hemen üstünde. Kartlar tek gridde (eskiden hero'da
 *  sağ/sol dağınık duruyorlardı).
 * ════════════════════════════════════════════════════════════════════ */
.spon {
  background: var(--bg);
  padding: clamp(3rem, 6vw, 4.5rem) clamp(1.1rem, 4vw, 2rem) clamp(2rem, 4vw, 3rem);
}

.spon-inner { max-width: 1060px; margin: 0 auto; }

.spon-head {
  display: flex;
  align-items: baseline;
  gap: 0.7rem;
  margin-bottom: 1.4rem;
}

.spon-title {
  margin: 0;
  font-size: clamp(1.35rem, 2.4vw, 1.9rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--heading);
}

.spon-sub { margin: 0; font-size: 0.85rem; color: var(--muted); }

.spon-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.spon-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  padding: 1.1rem 1.15rem 1rem;
  border-radius: 16px;
  background: #fff;
  border: 1px solid rgba(51, 51, 51, 0.1);
  box-shadow: 0 10px 24px rgba(30, 30, 30, 0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.spon-card:hover {
  transform: translateY(-3px);
  border-color: rgba(51, 51, 51, 0.18);
  box-shadow: 0 18px 34px rgba(30, 30, 30, 0.1);
}

/* "Sponsorlu" rozeti — sağ üst köşe */
.spon-badge {
  position: absolute;
  top: 0.85rem;
  right: 0.9rem;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(83, 104, 120, 0.12);
  color: #536878;
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

/* Üst satır — kare logo + şirket adı + "x önce" */
.spon-top { display: flex; align-items: center; gap: 0.55rem; padding-right: 5rem; }

.spon-avatar {
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #a9c1d6 0%, #7896ae 100%);
  color: #16202a;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.spon-co {
  min-width: 0;
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--heading);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.spon-posted { margin-left: auto; flex: none; font-size: 0.68rem; color: #9ba8ab; }

.spon-name { margin: 0; font-size: 0.98rem; font-weight: 700; line-height: 1.3; color: var(--heading); }

.spon-chips { display: flex; flex-wrap: wrap; gap: 0.35rem; }

.spon-chip {
  padding: 3px 9px;
  border-radius: 999px;
  background: rgba(53, 72, 90, 0.06);
  color: #3e3e3e;
  font-size: 0.68rem;
  font-weight: 600;
}

/* Maaş + konum (sol) · Başvur (sağ) */
.spon-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-top: auto;
  padding-top: 0.5rem;
}

.spon-money { display: flex; align-items: baseline; gap: 0.45rem; min-width: 0; }
.spon-salary { font-size: 0.82rem; font-weight: 700; color: var(--heading); }
.spon-place {
  font-size: 0.72rem;
  color: var(--muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.spon-apply {
  flex: none;
  padding: 5px 14px;
  border-radius: 999px;
  background: #11212d;
  color: #fefcff;
  font-size: 0.72rem;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.2s ease;
}

.spon-apply:hover { background: #35485a; transform: translateY(-1px); }

@media (max-width: 900px) {
  .spon-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .spon-grid { grid-template-columns: 1fr; }
  .spon-head { flex-direction: column; align-items: flex-start; gap: 0.25rem; }
}
