/* Foton Motion — kaydırmaya bağlı tipografi
   Tüm başlangıç (gizli) durumları yalnızca JS çalıştığında eklenen sınıflara bağlıdır;
   JS yoksa veya hareket azaltma açıksa site olduğu gibi görünür. */

:root {
	--fm-ease: cubic-bezier(.16, 1, .3, 1);
	--fm-accent: var(--wp--preset--color--accent, #E8590C);
	--fm-ink: var(--wp--preset--color--ink, #151515);
	--fm-radius: var(--foton-radius, 22px);
}

.fm-sr {
	position: absolute !important;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}
.fm-w { display: inline-block; white-space: nowrap; }
.fm-c, .fm-wi { display: inline-block; }

/* İlk çizimde titreme olmasın */
.fm-js .foton-hero-title:not(.fm-split),
.fm-js .foton-hero h2:not(.fm-split),
.fm-js .foton-hero .foton-eyebrow:not(.fm-split),
.fm-js .foton-hero .wp-block-column > p:not(.foton-eyebrow):not(.fm-up),
.fm-js .foton-hero .wp-block-buttons:not(.fm-up) { visibility: hidden; }

.foton-hero { overflow-x: clip; }

/* ---------- Sayfa ilerleme çubuğu ---------- */
.fm-progress {
	position: fixed; left: 0; right: 0;
	top: var(--wp-admin--admin-bar--height, 0px);
	height: 3px;
	background: var(--fm-accent);
	transform-origin: 0 50%;
	transform: scaleX(var(--fm-sp, 0));
	z-index: 99999;
	pointer-events: none;
}

/* ---------- Hero: FOTON ---------- */
.fm-hero-title .fm-w {
	overflow: hidden;
	vertical-align: top;
	padding: .08em .04em .02em;
	margin: -.08em -.04em -.02em;
}
.fm-hero-title .fm-c {
	transform: translateY(108%) rotate(7deg);
	transform-origin: 0 100%;
	font-weight: 200;
	transition: transform 1.25s var(--fm-ease), font-weight 1.8s var(--fm-ease);
	transition-delay: calc(var(--i) * 85ms + 120ms);
	/* kaydırınca harfler açılır ve farklı hızlarda yükselir */
	translate: calc((var(--i) - 2) * var(--fm-p, 0) * .22em) calc(var(--fm-p, 0) * (var(--i) + 1) * -.06em);
}
.fm-hero-title.is-in .fm-c { transform: none; font-weight: 800; }
.fm-hero-title.is-hot .fm-w { overflow: visible; }
.fm-hero-title.is-hot .fm-c { transition: font-weight .45s var(--fm-ease); transition-delay: 0s; }

/* Hero video: kaydırdıkça büyür, içindeki görüntü parallax */
.fm-hero-video {
	transform: scale(calc(.94 + .14 * min(1, var(--fm-p, 0) * 2.4)));
	transform-origin: 50% 20%;
	will-change: transform;
}
.fm-hero-video video {
	transform: scale(calc(1.18 - .18 * min(1, var(--fm-p, 0) * 2.4)));
}

/* Genel "aşağıdan gel" */
.fm-up {
	opacity: 0;
	translate: 0 28px;
	transition: opacity 1s var(--fm-ease), translate 1.1s var(--fm-ease);
	transition-delay: calc(var(--d, 0) * 1ms);
}
.fm-up.is-in { opacity: 1; translate: 0 0; }

/* ---------- Başlıklar: kelime kelime maskeden çıkış ---------- */
.fm-words .fm-w {
	overflow: hidden;
	vertical-align: top;
	padding: .14em .03em .16em;
	margin: -.14em -.03em -.16em;
}
.fm-words .fm-wi {
	transform: translateY(118%) rotate(6deg);
	transform-origin: 0 100%;
	transition: transform 1.05s var(--fm-ease);
	transition-delay: calc(var(--i) * 60ms + var(--d, 0) * 1ms);
}
.fm-words.is-in .fm-wi { transform: none; }

/* ---------- Üst etiketler (eyebrow) ---------- */
.fm-eyebrow .fm-c {
	opacity: 0;
	transform: translateY(.8em);
	transition: opacity .6s ease, transform .8s var(--fm-ease);
	transition-delay: calc(var(--i) * 22ms + var(--d, 0) * 1ms);
}
.fm-eyebrow.is-in .fm-c { opacity: 1; transform: none; }

/* ---------- Vizyon metni: kaydırdıkça kelime kelime dolar ---------- */
.fm-fill .fm-wi {
	opacity: clamp(.14, calc(var(--fm-p, 0) * (var(--n, 20) + 5) - var(--i)), 1);
}

/* ---------- Kartlar ---------- */
.fm-card {
	opacity: 0;
	translate: 0 56px;
	transition: opacity .9s var(--fm-ease), translate 1.15s var(--fm-ease), transform .35s ease, box-shadow .35s ease, border-color .35s ease;
	transition-delay: calc(var(--i) * 95ms), calc(var(--i) * 95ms), 0s, 0s, 0s;
}
.fm-card.is-in { opacity: 1; translate: 0 0; }

/* ---------- Görsel / yer tutucu alanlar: perde açılır ---------- */
.fm-clip {
	clip-path: inset(100% 0 0 0 round var(--fm-radius));
	transition: clip-path 1.25s var(--fm-ease);
	transition-delay: calc(var(--i) * 90ms);
}
.fm-clip.is-in { clip-path: inset(0 0 0 0 round var(--fm-radius)); }

/* ---------- Kapanış başlığı: incelikten kalına ---------- */
.fm-cta {
	font-weight: calc(200 + 600 * var(--fm-p, 0)) !important;
	letter-spacing: calc((1 - var(--fm-p, 0)) * .14em - .02em) !important;
}
.fm-cta .fm-c {
	translate: 0 calc(sin(var(--i) * .8) * (1 - var(--fm-p, 0)) * .55em);
	opacity: calc(.25 + var(--fm-p, 0));
}

/* ---------- Kayan yazı bandı ---------- */
.fm-marquee {
	overflow: hidden;
	padding-block: clamp(2.5rem, 7vw, 6rem);
	margin-block: 0 !important;
	user-select: none;
	pointer-events: none;
}
.fm-row {
	display: flex;
	width: max-content;
	white-space: nowrap;
	font-weight: 800;
	font-size: clamp(3.2rem, 9.5vw, 9.5rem);
	line-height: 1.02;
	letter-spacing: -.035em;
	will-change: transform;
}
.fm-row span { padding-right: .32em; }
.fm-row i { font-style: normal; font-size: .55em; align-self: center; color: var(--fm-accent); -webkit-text-stroke: 0; padding-right: .55em; }
.fm-row--a {
	color: transparent;
	-webkit-text-stroke: 1.3px var(--fm-ink);
	transform: translate3d(calc(var(--fm-p, 0) * -32% - 4%), 0, 0) skewX(calc(var(--fm-v, 0) * -12deg));
}
.fm-row--b {
	color: var(--fm-ink);
	font-weight: 300;
	transform: translate3d(calc(-40% + var(--fm-p, 0) * 32%), 0, 0) skewX(calc(var(--fm-v, 0) * -12deg));
}

/* ---------- Mıknatıs butonlar ---------- */
.wp-block-button__link.fm-mag { transition: translate .6s var(--fm-ease), background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease; }

@media (prefers-reduced-motion: reduce) {
	.fm-progress, .fm-marquee { display: none; }
}
