/* Ritma Fly · Güven + Büyüme (önek: fyg) — "Netlik" dili.
   Ortak ölçü ve sınıflar ritmafly-ortak.css'te (.fy-bolum, .fy-h2, .fy-vurgu…).
   Güven: dev "2006" + çizgiyle ayrılmış üç sütun.
   Büyüme: dev "Fly" / "Flex" karşıtlığı; Fly'ın altındaki kalem Flex'e uzanır.
   Başlangıç (gizli) durumları yalnız .fyg-hazir varken geçerli: betiği olmayan ya
   da hareketi azaltan ziyaretçi her şeyi son hâlinde görür. */

.ritmafly-page .fyg-gizli {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0
}

/* ================= GÜVEN ================= */

/* başlıklarda ikinci düşünce kendi satırında */
.ritmafly-page .fyg-guven .fy-h2 .fy-soluk,
.ritmafly-page .fyg-buyume .fy-h2 .fy-soluk { display: block }

/* ---- dev yıl ---- */
.ritmafly-page .fyg-yil {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 18px 44px;
  margin-top: 112px;
  padding-bottom: 80px
}

.ritmafly-page .fyg-yil > p { margin: 0 }

.ritmafly-page .fyg-yil-sayi {
  font-size: clamp(74.2px, 13.5vw, 190.9px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.025em;
  font-variant-numeric: tabular-nums;
  font-variation-settings: "opsz" 32;
  color: #fff
}

.ritmafly-page .fyg-yil .fy-vurgu { display: inline-flex; margin-left: -.04em }

/* kalem şeridi: dev rakamın taban çizgisini keser */
.ritmafly-page .fyg-yil .fy-vurgu::before { left: .1em; right: -.04em; bottom: .02em; height: .22em }

/* her hane kendi penceresinde yükselir */
.ritmafly-page .fyg-hane { display: block; overflow: hidden; line-height: .84; padding-right: .015em }
.ritmafly-page .fyg-hane i {
  display: block;
  font-style: normal;
  transition: transform 1.1s var(--fy-ease);
  transition-delay: calc(var(--i) * 90ms)
}

.ritmafly-page .fyg-yil-ek {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-bottom: .4em;
  transition: opacity .9s ease .45s, transform .9s var(--fy-ease) .45s
}

.ritmafly-page .fyg-yil-ust {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--fy-acik)
}

.ritmafly-page .fyg-yil-cumle {
  font-size: clamp(25.2px, 2.8vw, 41.4px);
  font-weight: 760;
  line-height: 1.04;
  letter-spacing: -.02em
}

/* ---- üç sütun ---- */
.ritmafly-page .fyg-uc {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none
}

.ritmafly-page .fyg-uc-madde {
  padding: 48px 48px 0 0;
  transition: opacity .8s ease, transform .9s var(--fy-ease);
  transition-delay: calc(var(--i) * 120ms)
}

.ritmafly-page .fyg-uc-madde + .fyg-uc-madde { padding-left: 48px; box-shadow: inset 1px 0 var(--fy-cizgi-k) }

.ritmafly-page .fyg-uc-ik {
  display: block;
  width: 34px;
  height: 34px;
  fill: none;
  stroke: var(--fy-acik);
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round
}

/* çift renk: ana çizgi beyaz, vurgu parçası mavi ve biraz kalın
   (kilit; en üst katman; logodaki üst şerit) */
.ritmafly-page .fyg-uc-ik { stroke: rgba(255, 255, 255, .92) }
.ritmafly-page .fyg-uc-madde:nth-child(1) .fyg-uc-ik rect,
.ritmafly-page .fyg-uc-madde:nth-child(1) .fyg-uc-ik path:last-of-type,
.ritmafly-page .fyg-uc-madde:nth-child(2) .fyg-uc-ik path:first-of-type,
.ritmafly-page .fyg-uc-madde:nth-child(3) .fyg-uc-ik path:first-of-type { stroke: var(--fy-mavi2); stroke-width: 2 }

.ritmafly-page .fyg-uc-baslik {
  margin: 30px 0 0;
  font-size: 23px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.02em;
  color: #fff
}

.ritmafly-page .fyg-uc-metin {
  margin: 12px 0 0;
  max-width: 22em;
  font-size: 16.5px;
  line-height: 1.6;
  color: var(--fy-yazi-k)
}

/* ================= BÜYÜME ================= */

/* Büyüme güvenden çizgiyle değil zeminle ayrılır: bir ton açık lacivert,
   üstten yayılan mavi ışık (Flex'e uzanan yolun "yükselen" havası) */
.ritmafly-page .fyg-buyume {
  background:
    radial-gradient(1100px 520px at 50% 0%, rgba(1, 104, 250, .22), rgba(1, 104, 250, 0) 70%),
    linear-gradient(180deg, #0C1A3E 0%, #091431 100%)
}

.ritmafly-page .fyg-b-ust { text-align: center }
/* masaüstünde iki dengeli satır */
.ritmafly-page .fyg-b-ust .fy-giris { margin-inline: auto; max-width: 41em; text-wrap: balance }

/* ---- iki dev kelime ---- */
.ritmafly-page .fyg-yol {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  margin-top: 128px
}

.ritmafly-page .fyg-zaman {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--fy-acik)
}

.ritmafly-page .fyg-ad-satir { display: flex; align-items: flex-end; margin-top: 20px }

.ritmafly-page .fyg-ad {
  margin: 0;
  font-size: clamp(58.4px, 8.6vw, 128px);
  font-weight: 800;
  line-height: .86;
  letter-spacing: -.02em;
  font-variation-settings: "opsz" 32;
  color: #fff
}

/* Fly'ın altını çizen kalem (logonun eğik şeridi) */
.ritmafly-page .fyg-kalem { position: relative; z-index: 0; display: inline-block; padding-right: .04em }
.ritmafly-page .fyg-kalem::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: .08em;
  right: -.02em;
  bottom: .02em;
  height: .2em;
  border-radius: .03em;
  background: var(--fy-mavi);
  transform: skewX(-42deg) scaleX(var(--fyg-k, 1));
  transform-origin: 0 50%;
  transition: transform .9s var(--fy-ease) .15s
}

/* kalemin Flex'e uzanan ince devamı */
.ritmafly-page .fyg-uzanti {
  position: relative;
  flex: 1;
  height: 2px;
  margin: 0 44px calc(clamp(104px, 15.4vw, 228px) * .1) 20px
}

.ritmafly-page .fyg-uzanti i {
  display: block;
  height: 100%;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--fy-mavi), var(--fy-acik));
  transform: scaleX(var(--fyg-u, 1));
  transform-origin: 0 50%;
  transition: transform 1s var(--fy-ease) .85s
}

/* uç: eğik kısa şerit, Flex'i işaret eder */
.ritmafly-page .fyg-uzanti::after {
  content: "";
  position: absolute;
  right: -2px;
  top: 50%;
  width: 12px;
  height: 12px;
  border-top: 2px solid var(--fy-acik);
  border-right: 2px solid var(--fy-acik);
  transform: translateY(-50%) rotate(45deg);
  opacity: var(--fyg-uc, 1);
  transition: opacity .4s ease 1.65s
}

.ritmafly-page .fyg-taraf--flex .fyg-ad { color: var(--fy-acik); transition: color .8s ease 1.6s }

.ritmafly-page .fyg-tanim {
  margin: 22px 0 0;
  font-size: 18px;
  line-height: 1.5;
  color: var(--fy-yazi-k)
}

/* ---- modüller: defter satırları ---- */
.ritmafly-page .fyg-liste {
  margin: 44px 0 0;
  padding: 0;
  list-style: none;
  box-shadow: inset 0 1px var(--fy-cizgi-k)
}

.ritmafly-page .fyg-taraf--fly .fyg-liste { margin-right: 64px }

.ritmafly-page .fyg-mod {
  display: flex;
  align-items: center;
  gap: 22px;
  padding: 19px 0;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: -.01em;
  color: #fff;
  box-shadow: inset 0 -1px var(--fy-cizgi-k);
  transition: opacity .7s ease, transform .8s var(--fy-ease);
  transition-delay: calc(var(--i) * 70ms)
}

/* modül ikonu (eski 01–11 numaralarının yerinde) */
.ritmafly-page .fyg-ik { width: 22px; height: 22px }

.ritmafly-page .fyg-taraf--flex .fyg-mod { transition-delay: calc(1.85s + var(--i) * 90ms) }

/* ---- ortak mimari satırı ---- */
.ritmafly-page .fyg-motor {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: end;
  gap: 20px 0;
  margin-top: 96px;
  padding-top: 34px;
  box-shadow: inset 0 2px var(--fy-mavi)
}

.ritmafly-page .fyg-motor > p { margin: 0 }

.ritmafly-page .fyg-motor-ad {
  font-size: clamp(23.4px, 2.3vw, 32.4px);
  font-weight: 760;
  line-height: 1.1;
  letter-spacing: -.02em
}

.ritmafly-page .fyg-motor-ust {
  display: block;
  margin-bottom: 12px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--fy-acik)
}

.ritmafly-page .fyg-motor-metin { max-width: 30em; font-size: 18px; line-height: 1.6; color: var(--fy-yazi-k) }

/* ---- düğmeler ve dipnot ---- */
.ritmafly-page .fyg-son {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 28px 40px;
  margin-top: 72px
}

.ritmafly-page .fyg-dugmeler { display: flex; flex-wrap: wrap; align-items: center; gap: 20px 36px }
.ritmafly-page .fyg-not { margin: 0 }

/* ================= HAREKET: başlangıç durumları ================= */
/* Betik (defer) ilk boyamadan sonra .fyg-hazir ekleyebilir: gizlenme anında
   olur (transition: none), yalnız görünme geçişlidir. */
@media (prefers-reduced-motion: no-preference) {
  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-hane i { transform: translateY(104%); transition: none }
  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-yil-ek { opacity: 0; transform: translateY(14px); transition: none }
  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-uc-madde { opacity: 0; transform: translateY(18px); transition: none }

  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-taraf--fly .fyg-mod { opacity: 0; transform: translateY(10px); transition: none }
  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-kalem { --fyg-k: 0 }
  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-kalem::before { transition: none }
  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-uzanti { --fyg-u: 0; --fyg-uc: 0 }
  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-uzanti i,
  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-uzanti::after { transition: none }
  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-taraf--flex .fyg-ad { color: rgba(255, 255, 255, .12); transition: none }
  .ritmafly-page .fyg-hazir:not(.fyg-gor) .fyg-taraf--flex .fyg-mod { opacity: 0; transform: translateX(-22px); transition: none }
}

/* ================= DUYARLI ================= */
@media (max-width: 1099px) {
  .ritmafly-page .fyg-yil { margin-top: 88px; padding-bottom: 64px }
  .ritmafly-page .fyg-uc-madde { padding-right: 32px }
  .ritmafly-page .fyg-uc-madde + .fyg-uc-madde { padding-left: 32px }
  .ritmafly-page .fyg-yol { margin-top: 96px }
  .ritmafly-page .fyg-taraf--fly .fyg-liste { margin-right: 40px }
  .ritmafly-page .fyg-uzanti { margin-right: 28px }
  .ritmafly-page .fyg-mod { font-size: 18px }
}

@media (max-width: 899px) {
  .ritmafly-page .fyg-uc { grid-template-columns: minmax(0, 1fr); box-shadow: none }
  .ritmafly-page .fyg-uc-madde,
  .ritmafly-page .fyg-uc-madde + .fyg-uc-madde {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    column-gap: 24px;
    padding: 32px 0;
    box-shadow: inset 0 1px var(--fy-cizgi-k)
  }
  .ritmafly-page .fyg-uc-ik { grid-row: span 2 }
  .ritmafly-page .fyg-uc-madde:first-child { box-shadow: none; padding-top: 0 }
  .ritmafly-page .fyg-uc-baslik { margin-top: 2px; font-size: 21px }
  .ritmafly-page .fyg-uc-metin { margin-top: 8px }

  .ritmafly-page .fyg-yol { grid-template-columns: minmax(0, 1fr); row-gap: 72px }
  .ritmafly-page .fyg-taraf--fly .fyg-liste { margin-right: 0 }
  .ritmafly-page .fyg-uzanti { margin-right: 6px }
  .ritmafly-page .fyg-motor { grid-template-columns: minmax(0, 1fr); margin-top: 72px }
}

@media (max-width: 699px) {
  .ritmafly-page .fyg-yil { margin-top: 64px; padding-bottom: 48px; gap: 14px }
  .ritmafly-page .fyg-yil-sayi { font-size: clamp(62.9px, 18.5vw, 89.9px) }
  /* dar ekranda etiket rakamın üstüne, cümle hemen altına */
  .ritmafly-page .fyg-yil-ek { display: contents }
  .ritmafly-page .fyg-yil-ust { order: -1; width: 100% }
  .ritmafly-page .fyg-yil-cumle { width: 100% }
  .ritmafly-page .fyg-yol { margin-top: 72px; row-gap: 64px }
  .ritmafly-page .fyg-ad { font-size: clamp(51.7px, 16.8vw, 71.9px) }
  .ritmafly-page .fyg-uzanti { margin-bottom: calc(clamp(92px, 30vw, 128px) * .1) }
  .ritmafly-page .fyg-liste { margin-top: 32px }
  .ritmafly-page .fyg-mod { padding: 16px 0; font-size: 17px }
  .ritmafly-page .fyg-motor-metin { font-size: 16.5px }
  .ritmafly-page .fyg-son { margin-top: 56px }
}
