/**
 * KAPSAM hareket katmani.
 *
 * Kural: hareket icerigi tasimaz, sadece dikkati yonlendirir. Tibbi cihaz
 * sitesinde okunabilirlik animasyondan onceliklidir; bu yuzden sureler kisa,
 * mesafeler kucuk ve tum efektler prefers-reduced-motion ile kapanir.
 *
 * Ogeler JS tarafindan isaretlenir (kapsam-motion.js); .k-motion sinifi
 * yalnizca JS calisiyorsa <html> uzerine eklenir. Boylece JS kapaliyken
 * hicbir icerik gizli kalmaz.
 */

:root {
	--k-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
	--k-green: #349E49;
	--k-green-light: #62B66A;
	--k-blue: #004F7E;
	--k-blue-deep: #003A5E;
}

/* ------------------------------------------------------------------ *
 * 1) Kaydirmayla ortaya cikis
 * ------------------------------------------------------------------ */

.k-motion .k-reveal {
	opacity: 0;
	transform: translate3d(0, 26px, 0);
	transition:
		opacity 0.7s var(--k-ease) var(--k-delay, 0ms),
		transform 0.7s var(--k-ease) var(--k-delay, 0ms);
	will-change: opacity, transform;
}

.k-motion .k-reveal.k-in {
	opacity: 1;
	transform: none;
}

/* Gorseller perde acilir gibi girer. */
.k-motion .k-reveal-img {
	clip-path: inset(0 0 0 0);
	opacity: 0;
	transform: scale(1.04);
	transition:
		opacity 0.9s var(--k-ease) var(--k-delay, 0ms),
		transform 1.1s var(--k-ease) var(--k-delay, 0ms),
		clip-path 0.9s var(--k-ease) var(--k-delay, 0ms);
}

.k-motion .k-reveal-img:not(.k-in) {
	clip-path: inset(0 0 24% 0);
}

.k-motion .k-reveal-img.k-in {
	opacity: 1;
	transform: none;
	clip-path: inset(0 0 0 0);
}

/* ------------------------------------------------------------------ *
 * 2) Ust bilgi cizgisi ve okuma ilerlemesi
 * ------------------------------------------------------------------ */

.k-progress {
	position: fixed;
	top: 0;
	left: 0;
	height: 3px;
	width: 100%;
	z-index: 2000;
	transform: scaleX(var(--k-progress, 0));
	transform-origin: 0 50%;
	background: linear-gradient(90deg, var(--k-green) 0%, var(--k-blue) 100%);
	pointer-events: none;
	transition: opacity 0.3s ease;
	opacity: 0;
}

.k-motion.k-scrolled .k-progress {
	opacity: 1;
}

/* Sayfa kaydirilinca kutulu header biraz sikisir ve golgesi artar. */
.k-motion .site .pix-header-box-part {
	transition: box-shadow 0.35s var(--k-ease), transform 0.35s var(--k-ease);
}

.k-motion.k-scrolled .site .pix-header-box-part {
	box-shadow: 0 18px 44px -24px rgba(0, 43, 71, 0.55) !important;
	transform: translateY(-4px);
}

/* ------------------------------------------------------------------ *
 * 3) Hero: yavas suzulen isik lekeleri
 * ------------------------------------------------------------------ */

.k-motion .k-hero {
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

.k-motion .k-hero::before,
.k-motion .k-hero::after {
	content: "";
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	filter: blur(70px);
	opacity: 0.5;
	pointer-events: none;
}

.k-motion .k-hero::before {
	width: 46vw;
	height: 46vw;
	max-width: 620px;
	max-height: 620px;
	top: -18%;
	right: -10%;
	background: radial-gradient(circle, rgba(52, 158, 73, 0.55) 0%, rgba(52, 158, 73, 0) 70%);
	animation: k-drift-a 18s ease-in-out infinite alternate;
}

.k-motion .k-hero::after {
	width: 38vw;
	height: 38vw;
	max-width: 520px;
	max-height: 520px;
	bottom: -22%;
	left: -8%;
	background: radial-gradient(circle, rgba(98, 182, 106, 0.4) 0%, rgba(0, 79, 126, 0) 70%);
	animation: k-drift-b 22s ease-in-out infinite alternate;
}

@keyframes k-drift-a {
	from { transform: translate3d(0, 0, 0) scale(1); }
	to   { transform: translate3d(-6%, 8%, 0) scale(1.12); }
}

@keyframes k-drift-b {
	from { transform: translate3d(0, 0, 0) scale(1.05); }
	to   { transform: translate3d(7%, -6%, 0) scale(0.95); }
}

/* Hero icerigi isik lekelerinin ve akis cizgisinin ustunde kalir. */
.k-motion .k-hero > .e-con-inner {
	position: relative;
	z-index: 2;
}

/* Akis cizgisi: infuzyon hattini animsatan kesikli egri ve uzerinde ilerleyen damla. */
.k-flow {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	opacity: 0.4;
	pointer-events: none;
}

.k-flow path {
	fill: none;
	stroke: rgba(255, 255, 255, 0.5);
	stroke-width: 1.5;
	stroke-dasharray: 9 15;
	animation: k-dash 12s linear infinite;
}

.k-flow .k-flow-glow {
	stroke: rgba(98, 182, 106, 0.55);
	stroke-width: 3;
	stroke-dasharray: none;
	animation: none;
	filter: blur(3px);
}

@keyframes k-dash {
	to { stroke-dashoffset: -288; }
}

/* Hero gorseli kaydirmayla cok hafif kayar (parallax JS tarafindan verilir). */
.k-motion .k-parallax {
	transform: translate3d(0, var(--k-shift, 0px), 0);
	will-change: transform;
}

/* ------------------------------------------------------------------ *
 * 4) Kartlar
 * ------------------------------------------------------------------ */

.k-motion .k-card {
	transition:
		transform 0.35s var(--k-ease),
		box-shadow 0.35s var(--k-ease),
		border-color 0.35s var(--k-ease);
}

.k-motion .k-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 26px 50px -30px rgba(0, 43, 71, 0.55);
	border-color: rgba(52, 158, 73, 0.55) !important;
}

/* Kart gorseli kirpma cercevesi icinde hafifce buyur. */
.k-motion .k-card .elementor-widget-image img {
	transition: transform 0.7s var(--k-ease);
}

.k-motion .k-card:hover .elementor-widget-image img {
	transform: scale(1.06);
}

/* Kart basligi ve baglantisi hover'da markaya doner. */
.k-motion .k-card:hover .elementor-heading-title,
.k-motion .k-card:hover .elementor-heading-title a {
	color: var(--k-green) !important;
}

.k-motion .k-card .elementor-button {
	transition: gap 0.3s var(--k-ease), transform 0.3s var(--k-ease);
}

.k-motion .k-card:hover .elementor-button {
	transform: translateX(3px);
}

/* ------------------------------------------------------------------ *
 * 5) Butonlar: uzerinden gecen isik
 * ------------------------------------------------------------------ */

.k-motion .elementor-button,
.k-motion .pix-header .btn:not(.pix-search-sm-btn):not(.pix-toggle-overlay) {
	position: relative;
	overflow: hidden;
	transition: transform 0.25s var(--k-ease), box-shadow 0.25s var(--k-ease), background-color 0.25s var(--k-ease);
}

.k-motion .elementor-button::after,
.k-motion .pix-header .btn:not(.pix-search-sm-btn):not(.pix-toggle-overlay)::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(115deg, transparent 35%, rgba(255, 255, 255, 0.38) 50%, transparent 65%);
	transform: translateX(-120%);
	pointer-events: none;
}

.k-motion .elementor-button:hover,
.k-motion .pix-header .btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 26px -16px rgba(0, 43, 71, 0.75);
}

.k-motion .elementor-button:hover::after,
.k-motion .pix-header .btn:not(.pix-search-sm-btn):hover::after {
	animation: k-sheen 0.75s var(--k-ease) forwards;
}

@keyframes k-sheen {
	to { transform: translateX(120%); }
}

/* ------------------------------------------------------------------ *
 * 6) Ust etiket (eyebrow) onunde buyuyen cizgi
 * ------------------------------------------------------------------ */

.k-motion .k-eyebrow .elementor-heading-title {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

.k-motion .k-eyebrow .elementor-heading-title::before {
	content: "";
	width: 0;
	height: 2px;
	background: currentColor;
	opacity: 0.85;
	transition: width 0.6s var(--k-ease) 0.15s;
}

.k-motion .k-eyebrow.k-in .elementor-heading-title::before {
	width: 28px;
}

/* ------------------------------------------------------------------ *
 * 7) Is akisi daireleri ve onay listeleri
 * ------------------------------------------------------------------ */

.k-motion .k-step {
	opacity: 0;
	transform: translate3d(0, 14px, 0) scale(0.92);
	transition:
		opacity 0.5s var(--k-ease) var(--k-delay, 0ms),
		transform 0.55s cubic-bezier(0.34, 1.56, 0.64, 1) var(--k-delay, 0ms);
}

.k-motion .k-step.k-in {
	opacity: 1;
	transform: none;
}

/* Daireler arasi baglanti cizgisi soldan saga cizilir. */
.k-motion .k-steps-line {
	position: relative;
}

.k-motion .k-steps-line::before {
	content: "";
	position: absolute;
	top: 29px;
	left: 8%;
	right: 8%;
	height: 2px;
	background: linear-gradient(90deg, var(--k-blue), var(--k-green));
	opacity: 0.25;
	transform: scaleX(0);
	transform-origin: 0 50%;
	transition: transform 1.1s var(--k-ease);
}

.k-motion .k-steps-line.k-in::before {
	transform: scaleX(1);
}

@media (max-width: 767px) {
	.k-motion .k-steps-line::before { display: none; }
}

.k-motion ul.kapsam-checks li {
	opacity: 0;
	transform: translate3d(-10px, 0, 0);
	transition: opacity 0.45s var(--k-ease), transform 0.45s var(--k-ease);
}

.k-motion .k-in ul.kapsam-checks li,
.k-motion ul.kapsam-checks.k-in li {
	opacity: 1;
	transform: none;
}

.k-motion ul.kapsam-checks li:nth-child(1) { transition-delay: 0.05s; }
.k-motion ul.kapsam-checks li:nth-child(2) { transition-delay: 0.13s; }
.k-motion ul.kapsam-checks li:nth-child(3) { transition-delay: 0.21s; }
.k-motion ul.kapsam-checks li:nth-child(4) { transition-delay: 0.29s; }
.k-motion ul.kapsam-checks li:nth-child(5) { transition-delay: 0.37s; }
.k-motion ul.kapsam-checks li:nth-child(n+6) { transition-delay: 0.45s; }

/* ------------------------------------------------------------------ *
 * 8) Standart etiketleri
 * ------------------------------------------------------------------ */

.kapsam-chip-cloud span {
	transition: transform 0.25s var(--k-ease), box-shadow 0.25s var(--k-ease), border-color 0.25s var(--k-ease);
}

.kapsam-chip-cloud span:hover {
	transform: translateY(-3px);
	border-color: var(--k-green);
	box-shadow: 0 12px 22px -16px rgba(0, 43, 71, 0.6);
}

.k-motion .k-chips:not(.k-in) .kapsam-chip-cloud span {
	opacity: 0;
	transform: translateY(8px);
}

/* ------------------------------------------------------------------ *
 * 8b) Menu ve altbilgi baglantilari
 * ------------------------------------------------------------------ */

.k-motion .pix-header .menu-item > a {
	position: relative;
}

.k-motion .pix-header .menu-item > a::after {
	content: "";
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 6px;
	height: 2px;
	background: linear-gradient(90deg, var(--k-green), var(--k-blue));
	transform: scaleX(0);
	transform-origin: 0 50%;
	transition: transform 0.32s var(--k-ease);
}

.k-motion .pix-header .menu-item:hover > a::after,
.k-motion .pix-header .menu-item.current-menu-item > a::after {
	transform: scaleX(1);
}

/* Kart butonlarinda kayan ok */
.k-motion .k-card .elementor-button-content-wrapper::after {
	content: "\2192";
	display: inline-block;
	margin-left: 8px;
	transition: transform 0.3s var(--k-ease);
}

.k-motion .k-card:hover .elementor-button-content-wrapper::after {
	transform: translateX(4px);
}

/* Hero kaydirma isareti: ince cizgide asagi inen nokta */
.k-scroll-cue {
	position: absolute;
	left: 50%;
	bottom: 26px;
	width: 1px;
	height: 54px;
	background: rgba(255, 255, 255, 0.28);
	overflow: hidden;
	z-index: 3;
	pointer-events: none;
}

.k-scroll-cue::after {
	content: "";
	position: absolute;
	left: -2px;
	width: 5px;
	height: 18px;
	border-radius: 3px;
	background: var(--k-green-light);
	animation: k-cue 2.1s var(--k-ease) infinite;
}

@keyframes k-cue {
	0%   { top: -20px; opacity: 0; }
	25%  { opacity: 1; }
	75%  { opacity: 1; }
	100% { top: 56px; opacity: 0; }
}

.k-scrolled .k-scroll-cue { opacity: 0; transition: opacity 0.4s ease; }

/* ------------------------------------------------------------------ *
 * 9) Rakam bandi
 * ------------------------------------------------------------------ */

.k-motion .k-count {
	font-variant-numeric: tabular-nums;
}

/* ------------------------------------------------------------------ *
 * 9b) Sayfa gecisi
 * ------------------------------------------------------------------ */

.k-motion.k-leaving body {
	opacity: 0;
	transition: opacity 0.26s ease;
}

/* Split gorselleri hover'da cok hafif yakinlasir. */
.k-motion .k-reveal-img img {
	transition: transform 0.8s var(--k-ease);
}

.k-motion .k-reveal-img:hover img {
	transform: scale(1.03);
}

/* Altbilgi baglantilari hover'da saga kayar. */
.k-motion .site-footer2 a,
.k-motion .pixfooter a {
	transition: transform 0.25s var(--k-ease), color 0.25s var(--k-ease), opacity 0.25s var(--k-ease);
	display: inline-block;
}

.k-motion .site-footer2 a:hover,
.k-motion .pixfooter a:hover {
	transform: translateX(4px);
}

/* ================================================================== *
 * GOSTERIM BILESENLERI
 * content-showcase.php tarafindan uretilen isaretlemenin stilleri.
 * ================================================================== */

/* HTML widget flex kapsayicida kendi icerigi kadar daraliyor; tam genislik sart. */
.elementor-widget-html { width: 100%; }

/* ---- Entegrasyon semasi ------------------------------------------ */

.k-fc {
	width: 100%;
}

.k-fc-svg {
	width: 100%;
	height: auto;
	display: block;
	overflow: visible;
}

.k-fc-node rect {
	fill: rgba(255, 255, 255, 0.06);
	stroke: rgba(255, 255, 255, 0.22);
	stroke-width: 1;
	transition: fill 0.35s var(--k-ease), stroke 0.35s var(--k-ease);
}

.k-fc-node:hover rect {
	fill: rgba(255, 255, 255, 0.12);
	stroke: rgba(98, 182, 106, 0.85);
}

.k-fc-node-ico { color: #8FD79A; }

.k-fc-title {
	fill: #FFFFFF;
	font-size: 19px;
	font-weight: 600;
}

.k-fc-sub {
	fill: rgba(255, 255, 255, 0.62);
	font-size: 14px;
}

/* Merkez: KAPSAM yazilim katmani */
.k-fc-core-box {
	fill: rgba(255, 255, 255, 0.07);
	stroke: rgba(98, 182, 106, 0.6);
	stroke-width: 1.5;
}

.k-fc-core-glow {
	fill: none;
	stroke: rgba(98, 182, 106, 0.45);
	stroke-width: 2;
	transform-origin: 600px 210px;
	animation: k-core-pulse 3.6s var(--k-ease) infinite;
}

@keyframes k-core-pulse {
	0%   { transform: scale(1); opacity: 0.55; }
	70%  { transform: scale(1.06); opacity: 0; }
	100% { transform: scale(1.06); opacity: 0; }
}

.k-fc-core-eyebrow {
	fill: #8FD79A;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 2px;
}

.k-fc-pill rect {
	fill: rgba(255, 255, 255, 0.1);
	stroke: rgba(255, 255, 255, 0.16);
}

.k-fc-pill text {
	fill: #FFFFFF;
	font-size: 15px;
	font-weight: 600;
}

/* Baglantilar: sabit tel + uzerinde akan kesikli cizgi + paket */
.k-fc-wire {
	fill: none;
	stroke: rgba(255, 255, 255, 0.16);
	stroke-width: 1.5;
}

.k-fc-flow {
	fill: none;
	stroke: rgba(143, 215, 154, 0.75);
	stroke-width: 1.8;
	stroke-dasharray: 5 13;
	animation: k-fc-dash 2.4s linear infinite;
}

@keyframes k-fc-dash {
	to { stroke-dashoffset: -144; }
}

.k-fc-packet { filter: drop-shadow( 0 0 6px rgba(143, 215, 154, 0.9) ); }

/* Kucuk ekran karsiligi */
.k-fc-mobile { display: none; }

@media ( max-width: 860px ) {
	.k-fc-svg { display: none; }

	.k-fc-mobile {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.k-fc-mobile li {
		display: grid;
		grid-template-columns: 42px 1fr;
		grid-template-rows: auto auto;
		align-items: center;
		gap: 2px 12px;
		padding: 14px 16px;
		border: 1px solid rgba(255, 255, 255, 0.2);
		border-radius: 10px;
		background: rgba(255, 255, 255, 0.06);
	}

	.k-fc-m-ico {
		grid-row: span 2;
		color: #8FD79A;
		display: flex;
	}

	.k-fc-mobile strong { color: #FFFFFF; font-size: 16px; }
	.k-fc-mobile em { color: rgba(255, 255, 255, 0.66); font-style: normal; font-size: 13px; }
}

/* ---- Bolum ayraci (dalga) ---------------------------------------- */

.k-wave {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -1px;
	width: 100vw;
	max-width: 100vw;
	line-height: 0;
	pointer-events: none;
	z-index: 2;
}

.k-wave svg {
	display: block;
	width: 100%;
	height: 64px;
}

@media ( max-width: 767px ) {
	.k-wave svg { height: 38px; }
}

/* ---- Sertifika yorungesi ----------------------------------------- */

.k-orbit-wrap {
	width: 100%;
	max-width: 520px;
	margin: 0 auto;
}

.k-orbit {
	width: 100%;
	height: auto;
	display: block;
	overflow: visible;
}

.k-orbit-core {
	fill: rgba(0, 79, 126, 0.05);
	stroke: rgba(0, 79, 126, 0.18);
}

.k-orbit-dots circle { fill: #004F7E; }

.k-orbit-rings ellipse {
	fill: none;
	stroke: #349E49;
	stroke-opacity: 0.35;
	stroke-width: 1.2;
	stroke-dasharray: 4 10;
	transform-origin: 240px 240px;
}

.k-orbit-rings ellipse:nth-child(1) { animation: k-orbit-spin 46s linear infinite; }
.k-orbit-rings ellipse:nth-child(2) { animation: k-orbit-spin 34s linear infinite reverse; }
.k-orbit-rings ellipse:nth-child(3) { animation: k-orbit-spin 58s linear infinite; }

@keyframes k-orbit-spin {
	to { transform: rotate(360deg); }
}

.k-orbit-pin-dot { fill: #349E49; }

.k-orbit-pulse {
	fill: none;
	stroke: #349E49;
	stroke-width: 2;
	transform-origin: 266px 196px;
	animation: k-orbit-pulse 2.8s var(--k-ease) infinite;
}

@keyframes k-orbit-pulse {
	0%   { transform: scale(0.6); opacity: 0.9; }
	75%  { transform: scale(2.2); opacity: 0; }
	100% { transform: scale(2.2); opacity: 0; }
}

.k-orbit-label {
	fill: #004F7E;
	font-size: 22px;
	font-weight: 700;
}

.k-orbit-sub {
	fill: #637381;
	font-size: 14px;
}

.k-orbit-badge rect {
	fill: #FFFFFF;
	stroke: #D8E3EA;
	filter: drop-shadow( 0 10px 20px rgba(0, 43, 71, 0.12) );
}

.k-orbit-badge-t { fill: #004F7E; font-size: 15px; font-weight: 700; }
.k-orbit-badge-s { fill: #637381; font-size: 11.5px; }

.k-orbit-badge {
	animation: k-badge-float 6s ease-in-out infinite;
	animation-delay: calc( var(--i) * 0.8s );
}

@keyframes k-badge-float {
	0%, 100% { transform: translateY(0); }
	50%      { transform: translateY(-7px); }
}

/* ---- Sayac serisi ------------------------------------------------ */

.k-counters {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	width: 100%;
	border-top: 1px solid var(--k-line, #D8E3EA);
	padding-top: 36px;
}

.k-counter {
	flex: 1 1 0;
	min-width: 180px;
}

.k-counter .k-num,
.k-counter .k-num-suffix {
	font-size: 44px;
	font-weight: 700;
	line-height: 1.05;
	color: #004F7E;
	font-variant-numeric: tabular-nums;
}

.k-counter em {
	display: block;
	margin-top: 8px;
	font-style: normal;
	font-size: 14px;
	color: #637381;
	line-height: 1.5;
}

.k-counter:last-child .k-num,
.k-counter:last-child .k-num-suffix { color: #349E49; }

/* ---- Kart ikonu -------------------------------------------------- */

.k-card-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 14px;
	background: rgba(52, 158, 73, 0.1);
	color: #349E49;
	margin-bottom: 6px;
	transition: transform 0.35s var(--k-ease), background-color 0.35s var(--k-ease), color 0.35s var(--k-ease);
}

.k-card-ico-dark {
	background: rgba(255, 255, 255, 0.12);
	color: #8FD79A;
}

.k-motion .k-card:hover .k-card-ico {
	transform: translateY(-3px) rotate(-6deg);
	background: #349E49;
	color: #FFFFFF;
}

/* ---- Is akisi hatti ---------------------------------------------- */

.k-pipe {
	position: relative;
	width: 100%;
	padding-top: 6px;
}

.k-pipe-track {
	position: absolute;
	top: 34px;
	left: 8%;
	right: 8%;
	height: 2px;
	background: rgba(0, 43, 71, 0.16);
	overflow: hidden;
}

.k-pipe-dark .k-pipe-track { background: rgba(255, 255, 255, 0.18); }

.k-pipe-fill {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, #62B66A, #8FD79A);
	transform: scaleX(0);
	transform-origin: 0 50%;
	transition: transform 1.6s var(--k-ease) 0.2s;
}

.k-motion .k-pipe.k-in .k-pipe-fill,
html:not(.k-motion) .k-pipe-fill { transform: scaleX(1); }

.k-pipe-steps {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 16px;
}

.k-pipe-steps li {
	position: relative;
	flex: 1 1 0;
	min-width: 160px;
	text-align: center;
	padding: 0 8px;
}

.k-pipe-ico {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 68px;
	border-radius: 50%;
	background: #004F7E;
	border: 1px solid rgba(255, 255, 255, 0.25);
	color: #FFFFFF;
	margin-bottom: 14px;
	box-shadow: 0 10px 24px -16px rgba(0, 43, 71, 0.8);
}

.k-pipe-dark .k-pipe-steps strong { color: #FFFFFF; }
.k-pipe-dark .k-pipe-steps em { color: rgba(255, 255, 255, 0.66); }

.k-pipe-steps li:last-child .k-pipe-ico {
	background: #349E49;
	border-color: rgba(255, 255, 255, 0.4);
}

/* Ikon halkasi sirayla bir kez dalga yapar. */
.k-pipe-ring {
	position: absolute;
	inset: -6px;
	border-radius: 50%;
	border: 1px solid rgba(143, 215, 154, 0.85);
	opacity: 0;
}

.k-motion .k-pipe.k-in .k-pipe-ring {
	animation: k-ring 2.2s var(--k-ease) calc( 0.25s + var(--i) * 0.22s ) 2;
}

@keyframes k-ring {
	0%   { transform: scale(0.85); opacity: 0.9; }
	70%  { transform: scale(1.3); opacity: 0; }
	100% { transform: scale(1.3); opacity: 0; }
}

.k-pipe-num {
	display: block;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 2px;
	color: #8FD79A;
	margin-bottom: 4px;
}

.k-pipe-steps strong {
	display: block;
	color: #183042;
	font-size: 17px;
	font-weight: 600;
	margin-bottom: 4px;
}

.k-pipe-steps em {
	display: block;
	color: #637381;
	font-style: normal;
	font-size: 14px;
	line-height: 1.5;
}

/* Adimlar sirayla girer. */
.k-motion .k-pipe .k-pipe-steps li {
	opacity: 0;
	transform: translateY(16px);
	transition:
		opacity 0.55s var(--k-ease) calc( var(--i) * 0.13s ),
		transform 0.55s var(--k-ease) calc( var(--i) * 0.13s );
}

.k-motion .k-pipe.k-in .k-pipe-steps li {
	opacity: 1;
	transform: none;
}

.k-pipe-ico { transition: transform 0.35s var(--k-ease), background-color 0.35s var(--k-ease); }
.k-pipe-steps li:hover .k-pipe-ico { transform: translateY(-4px); background: #349E49; }

@media ( max-width: 767px ) {
	.k-pipe-track { display: none; }
	.k-pipe-steps li { flex: 1 1 44%; }
}

/* ------------------------------------------------------------------ *
 * 10) Hareketi azalt tercihi: her sey aninda ve sabit
 * ------------------------------------------------------------------ */

@media (prefers-reduced-motion: reduce) {
	.k-motion .k-reveal,
	.k-motion .k-reveal-img,
	.k-motion .k-step,
	.k-motion ul.kapsam-checks li,
	.k-motion .k-chips:not(.k-in) .kapsam-chip-cloud span {
		opacity: 1 !important;
		transform: none !important;
		clip-path: none !important;
		transition: none !important;
	}

	.k-motion .k-hero::before,
	.k-motion .k-hero::after {
		animation: none !important;
	}

	.k-motion .k-parallax { transform: none !important; }

	.k-motion .elementor-button::after,
	.k-motion .pix-header .btn::after { display: none; }

	.k-flow,
	.k-scroll-cue { display: none; }

	.k-fc-flow,
	.k-fc-core-glow,
	.k-fc-packet { animation: none !important; display: none; }

	.k-motion .k-pipe .k-pipe-steps li { opacity: 1 !important; transform: none !important; }
	.k-pipe-fill { transform: scaleX(1) !important; transition: none !important; }
	.k-pipe-ring { animation: none !important; }
	.k-orbit-rings ellipse,
	.k-orbit-pulse,
	.k-orbit-badge { animation: none !important; }

}

/* ================================================================== *
 * ANA SAYFA BILESENLERI
 * Marka paleti: mavi (#004F7E) - yesil (#349E49) tonlari ve gradyanlari.
 * ================================================================== */

/* Sirali giris: .k-stagger kapsayicisi gorunume girince ogeler sirayla gelir. */
.k-motion .k-stagger .k-item {
	opacity: 0;
	transform: translateY(18px);
	transition:
		opacity 0.55s var(--k-ease) calc( var(--i) * 0.08s ),
		transform 0.55s var(--k-ease) calc( var(--i) * 0.08s ),
		box-shadow 0.35s var(--k-ease),
		border-color 0.35s var(--k-ease),
		background-color 0.35s var(--k-ease);
}

.k-motion .k-stagger.k-in .k-item {
	opacity: 1;
	transform: none;
}

/* ---- 1) Is akisi secici kartlari --------------------------------- */

.k-wcards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	width: 100%;
}

.k-wcard {
	position: relative;
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 22px 22px;
	border-radius: 14px;
	text-decoration: none;
	overflow: hidden;
	background: linear-gradient(135deg, #FFFFFF 0%, #EAF4F5 100%);
	border: 1px solid #D8E3EA;
	box-shadow: 0 10px 30px -24px rgba(0, 43, 71, 0.5);
}

/* Hover'da kart tamamen marka gradyanina doner. */
.k-wcard::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, #004F7E 0%, #349E49 100%);
	opacity: 0;
	transition: opacity 0.4s var(--k-ease);
}

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

.k-wcard:hover::before,
.k-wcard:focus-visible::before { opacity: 1; }

.k-wcard:hover,
.k-wcard:focus-visible {
	transform: translateY(-4px);
	border-color: transparent;
	box-shadow: 0 24px 44px -26px rgba(0, 43, 71, 0.65);
}

.k-wcard-ico {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	border-radius: 12px;
	background: linear-gradient(135deg, #004F7E 0%, #349E49 100%);
	color: #FFFFFF;
	transition: background 0.4s var(--k-ease), transform 0.4s var(--k-ease);
}

.k-wcard:hover .k-wcard-ico {
	background: rgba(255, 255, 255, 0.2);
	transform: rotate(-6deg);
}

.k-wcard-body { display: block; flex: 1 1 auto; }

.k-wcard strong {
	display: block;
	color: #004F7E;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
	transition: color 0.35s var(--k-ease);
}

.k-wcard em {
	display: block;
	margin-top: 3px;
	font-style: normal;
	font-size: 13.5px;
	color: #637381;
	transition: color 0.35s var(--k-ease);
}

.k-wcard-go {
	color: #349E49;
	font-size: 18px;
	transition: transform 0.35s var(--k-ease), color 0.35s var(--k-ease);
}

.k-wcard:hover strong,
.k-wcard:hover em,
.k-wcard:hover .k-wcard-go { color: #FFFFFF; }
.k-wcard:hover em { opacity: 0.85; }
.k-wcard:hover .k-wcard-go { transform: translateX(5px); }

@media ( max-width: 1024px ) { .k-wcards { grid-template-columns: repeat(2, 1fr); } }
@media ( max-width: 640px ) { .k-wcards { grid-template-columns: 1fr; } }

/* ---- 2) Buzlu cam yetenek kartlari ------------------------------- */

.k-glass-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 20px;
	width: 100%;
}

.k-glass {
	display: flex;
	flex-direction: column;
	border-radius: 16px;
	overflow: hidden;
	text-decoration: none;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.22);
	-webkit-backdrop-filter: blur(14px) saturate(140%);
	backdrop-filter: blur(14px) saturate(140%);
	box-shadow: 0 18px 40px -28px rgba(0, 20, 34, 0.9);
}

.k-glass:hover,
.k-glass:focus-visible {
	transform: translateY(-6px);
	background: rgba(255, 255, 255, 0.16);
	border-color: rgba(143, 215, 154, 0.7);
	box-shadow: 0 30px 56px -30px rgba(0, 20, 34, 0.95);
}

.k-glass-media {
	display: block;
	height: 150px;
	overflow: hidden;
	position: relative;
}

.k-glass-media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0, 43, 71, 0) 45%, rgba(0, 43, 71, 0.55) 100%);
}

.k-glass-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.8s var(--k-ease);
}

.k-glass:hover .k-glass-media img { transform: scale(1.07); }

.k-glass-body {
	display: block;
	padding: 20px 20px 24px;
}

.k-glass-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 11px;
	background: rgba(255, 255, 255, 0.16);
	border: 1px solid rgba(255, 255, 255, 0.25);
	color: #8FD79A;
	margin-bottom: 12px;
	transition: background-color 0.35s var(--k-ease), color 0.35s var(--k-ease), transform 0.35s var(--k-ease);
}

.k-glass:hover .k-glass-ico {
	background: #349E49;
	color: #FFFFFF;
	transform: translateY(-2px) rotate(-6deg);
}

.k-glass strong {
	display: block;
	color: #FFFFFF;
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 6px;
}

.k-glass em {
	display: block;
	font-style: normal;
	font-size: 14px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.76);
}

.k-glass-go {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 16px;
	font-size: 13.5px;
	font-weight: 600;
	letter-spacing: 0.4px;
	color: #8FD79A;
	transition: gap 0.3s var(--k-ease);
}

.k-glass:hover .k-glass-go { gap: 14px; }

@media ( max-width: 1200px ) { .k-glass-grid { grid-template-columns: repeat(3, 1fr); } }
@media ( max-width: 767px ) { .k-glass-grid { grid-template-columns: 1fr; } }

/* ---- 3) Kaynaklar ------------------------------------------------ */

.k-resgrid {
	display: grid;
	grid-template-columns: 1fr 1.15fr;
	gap: 28px;
	width: 100%;
}

.k-resfeature {
	position: relative;
	display: block;
	padding: 36px 34px 34px;
	border-radius: 18px;
	text-decoration: none;
	overflow: hidden;
	background: linear-gradient(140deg, #004F7E 0%, #00694F 70%, #349E49 100%);
	box-shadow: 0 26px 50px -30px rgba(0, 43, 71, 0.75);
	transition: transform 0.35s var(--k-ease), box-shadow 0.35s var(--k-ease);
}

.k-resfeature:hover { transform: translateY(-5px); box-shadow: 0 34px 60px -30px rgba(0, 43, 71, 0.85); }

.k-resfeature-tag {
	display: inline-block;
	padding: 5px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.16);
	border: 1px solid rgba(255, 255, 255, 0.28);
	color: #FFFFFF;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 2px;
}

/* Dosya yigini: hover'da acilir. */
.k-resfeature-stack {
	position: absolute;
	right: 30px;
	top: 34px;
	width: 74px;
	height: 92px;
}

.k-resfeature-stack i {
	position: absolute;
	inset: 0;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.14);
	border: 1px solid rgba(255, 255, 255, 0.3);
	transition: transform 0.45s var(--k-ease);
}

.k-resfeature-stack i:nth-child(1) { transform: rotate(-9deg) translateY(4px); }
.k-resfeature-stack i:nth-child(2) { transform: rotate(-3deg); }
.k-resfeature-stack i:nth-child(3) { background: rgba(255, 255, 255, 0.24); }

.k-resfeature:hover .k-resfeature-stack i:nth-child(1) { transform: rotate(-16deg) translate(-8px, 2px); }
.k-resfeature:hover .k-resfeature-stack i:nth-child(2) { transform: rotate(-7deg) translateX(-3px); }
.k-resfeature:hover .k-resfeature-stack i:nth-child(3) { transform: translateY(-4px); }

.k-resfeature strong {
	display: block;
	margin-top: 74px;
	color: #FFFFFF;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.2;
}

.k-resfeature em {
	display: block;
	margin-top: 10px;
	max-width: 330px;
	font-style: normal;
	font-size: 15px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.8);
}

.k-resfeature-go {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 22px;
	padding: 12px 22px;
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.16);
	border: 1px solid rgba(255, 255, 255, 0.35);
	color: #FFFFFF;
	font-size: 13.5px;
	font-weight: 600;
	transition: background-color 0.3s var(--k-ease), gap 0.3s var(--k-ease);
}

.k-resfeature:hover .k-resfeature-go { background: rgba(255, 255, 255, 0.28); gap: 14px; }

.k-reslist { display: flex; flex-direction: column; gap: 12px; }

.k-resrow {
	position: relative;
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 20px 22px;
	border-radius: 12px;
	text-decoration: none;
	background: #FFFFFF;
	border: 1px solid #D8E3EA;
	overflow: hidden;
}

.k-resrow::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: linear-gradient(180deg, #004F7E, #349E49);
	transform: scaleY(0);
	transform-origin: 50% 0;
	transition: transform 0.35s var(--k-ease);
}

.k-resrow:hover::after { transform: scaleY(1); }

.k-resrow:hover {
	transform: translateX(4px);
	border-color: rgba(52, 158, 73, 0.5);
	box-shadow: 0 18px 34px -28px rgba(0, 43, 71, 0.6);
}

.k-resrow-ico {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	flex: 0 0 46px;
	border-radius: 12px;
	background: rgba(0, 79, 126, 0.08);
	color: #004F7E;
	transition: background-color 0.35s var(--k-ease), color 0.35s var(--k-ease);
}

.k-resrow:hover .k-resrow-ico { background: linear-gradient(135deg, #004F7E, #349E49); color: #FFFFFF; }

.k-resrow-body { flex: 1 1 auto; }
.k-resrow strong { display: block; color: #183042; font-size: 16px; font-weight: 700; }
.k-resrow em { display: block; margin-top: 2px; font-style: normal; font-size: 13.5px; color: #637381; }

.k-resrow-go { color: #349E49; font-size: 18px; transition: transform 0.35s var(--k-ease); }
.k-resrow:hover .k-resrow-go { transform: translateX(5px); }

@media ( max-width: 900px ) {
	.k-resgrid { grid-template-columns: 1fr; }
	.k-resfeature strong { margin-top: 20px; font-size: 22px; }
	.k-resfeature-stack { display: none; }
}

/* ---- 4) Donusum rotalari ----------------------------------------- */

.k-routes {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	width: 100%;
	text-align: left;
}

.k-route {
	position: relative;
	display: block;
	padding: 28px 26px 30px;
	border-radius: 16px;
	text-decoration: none;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.22);
	-webkit-backdrop-filter: blur(14px) saturate(140%);
	backdrop-filter: blur(14px) saturate(140%);
	overflow: hidden;
}

.k-route::before {
	content: "";
	position: absolute;
	inset: -40% -40% auto auto;
	width: 180px;
	height: 180px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(143, 215, 154, 0.45) 0%, rgba(143, 215, 154, 0) 70%);
	opacity: 0;
	transition: opacity 0.45s var(--k-ease);
}

.k-route:hover::before { opacity: 1; }

.k-route:hover,
.k-route:focus-visible {
	transform: translateY(-6px);
	background: rgba(255, 255, 255, 0.16);
	border-color: rgba(143, 215, 154, 0.7);
}

.k-route-ico {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.16);
	border: 1px solid rgba(255, 255, 255, 0.28);
	color: #FFFFFF;
	margin-bottom: 16px;
	transition: background-color 0.35s var(--k-ease), transform 0.35s var(--k-ease);
}

.k-route:hover .k-route-ico { background: #349E49; transform: translateY(-2px) rotate(-6deg); }

.k-route strong { position: relative; display: block; color: #FFFFFF; font-size: 18px; font-weight: 700; }
.k-route em { position: relative; display: block; margin-top: 6px; font-style: normal; font-size: 14px; line-height: 1.6; color: rgba(255, 255, 255, 0.76); }

.k-route-go {
	position: relative;
	display: inline-block;
	margin-top: 16px;
	color: #8FD79A;
	font-size: 20px;
	transition: transform 0.35s var(--k-ease);
}

.k-route:hover .k-route-go { transform: translateX(6px); }

/* Iletisim seridi */
.k-contactstrip {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 14px 34px;
	margin-top: 38px;
	padding-top: 28px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	width: 100%;
}

.k-contactstrip a {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: rgba(255, 255, 255, 0.86);
	text-decoration: none;
	font-size: 14.5px;
	transition: color 0.3s var(--k-ease), transform 0.3s var(--k-ease);
}

.k-contactstrip a:hover { color: #8FD79A; transform: translateY(-2px); }

@media ( max-width: 1024px ) { .k-routes { grid-template-columns: repeat(2, 1fr); } }
@media ( max-width: 560px ) { .k-routes { grid-template-columns: 1fr; } }

/* Hareketi azalt: girisler ve donusumler kapali, icerik yerinde. */
@media (prefers-reduced-motion: reduce) {
	.k-motion .k-stagger .k-item { opacity: 1 !important; transform: none !important; transition: none !important; }
	.k-wcard:hover, .k-glass:hover, .k-route:hover, .k-resrow:hover, .k-resfeature:hover { transform: none !important; }
}

/* ================================================================== *
 * DUZELTMELER VE HERO SAHNESI
 * (Geri bildirim: az gradyan, mat buzlu cam, tam ekran hero)
 * ================================================================== */

/* ---- Sema: uzun basliklar kutuyu tasmasin ------------------------ */

.k-fc-title-sm { font-size: 16.5px; }

/* ---- Buzlu cam: daha mat, gorsel tam gorunur --------------------- */

.k-glass {
	background: rgba(255, 255, 255, 0.14);
	border-color: rgba(255, 255, 255, 0.3);
	-webkit-backdrop-filter: blur(22px) saturate(160%) brightness(108%);
	backdrop-filter: blur(22px) saturate(160%) brightness(108%);
}

.k-glass:hover,
.k-glass:focus-visible {
	background: rgba(255, 255, 255, 0.22);
}

/* Gorsel kirpilmiyor: acik zeminli panel icinde tamami gorunur. */
.k-glass-media {
	height: 172px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 12px;
	background: rgba(255, 255, 255, 0.92);
}

.k-glass-media::after { display: none; }

.k-glass-media img {
	width: auto;
	max-width: 100%;
	height: 100%;
	object-fit: contain;
}

/* ---- Donusum bandi: acik zemin varyanti -------------------------- */

.k-routes-light .k-route {
	background: #FFFFFF;
	border: 1px solid #D8E3EA;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	box-shadow: 0 14px 34px -28px rgba(0, 43, 71, 0.55);
}

.k-routes-light .k-route::before {
	background: radial-gradient(circle, rgba(52, 158, 73, 0.16) 0%, rgba(52, 158, 73, 0) 70%);
}

.k-routes-light .k-route:hover,
.k-routes-light .k-route:focus-visible {
	background: #FFFFFF;
	border-color: rgba(52, 158, 73, 0.55);
	box-shadow: 0 26px 48px -30px rgba(0, 43, 71, 0.6);
}

.k-routes-light .k-route-ico {
	background: rgba(0, 79, 126, 0.08);
	border-color: transparent;
	color: #004F7E;
}

.k-routes-light .k-route:hover .k-route-ico {
	background: linear-gradient(135deg, #004F7E, #349E49);
	color: #FFFFFF;
}

.k-routes-light .k-route strong { color: #004F7E; }
.k-routes-light .k-route em { color: #637381; }
.k-routes-light .k-route-go { color: #349E49; }

.k-contactstrip-light {
	border-top-color: #D8E3EA;
}

.k-contactstrip-light a { color: #183042; }
.k-contactstrip-light a:hover { color: #349E49; }

/* ---- Hero: ilk acilista tam ekran sahne -------------------------- */

.k-motion body.home .k-hero {
	min-height: 100vh;
	min-height: 100svh;
	justify-content: center;
	padding-top: 168px;
	padding-bottom: 96px;
}

/* Ince izgara dokusu: sahneye derinlik verir. */
.k-motion body.home .k-hero > .e-con-inner::before {
	content: "";
	position: absolute;
	inset: -200px -50vw;
	z-index: -1;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
	background-size: 64px 64px;
	mask-image: radial-gradient(ellipse at 50% 40%, #000 0%, transparent 72%);
	-webkit-mask-image: radial-gradient(ellipse at 50% 40%, #000 0%, transparent 72%);
	pointer-events: none;
}

/* Baslik kelime kelime yukselir. */
.k-motion .k-word {
	display: inline-block;
	opacity: 0;
	transform: translateY(26px);
	animation: k-word-in 0.85s var(--k-ease) forwards;
	animation-delay: calc( var(--i) * 70ms + 180ms );
}

@keyframes k-word-in {
	to { opacity: 1; transform: none; }
}

/* Hero gorseli: cam cerceve ve halo. */
.k-motion body.home .kapsam-hero-media {
	position: relative;
}

.k-motion body.home .kapsam-hero-media img {
	border-radius: 18px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	box-shadow: 0 50px 90px -50px rgba(0, 0, 0, 0.85);
	height: 420px !important;
}

/* Gorselin cevresinde suzulen yetenek etiketleri. */
.k-hero-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 11px 16px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
	border: 1px solid rgba(255, 255, 255, 0.34);
	-webkit-backdrop-filter: blur(18px) saturate(150%);
	backdrop-filter: blur(18px) saturate(150%);
	color: #FFFFFF;
	font-size: 13.5px;
	font-weight: 600;
	white-space: nowrap;
	box-shadow: 0 18px 34px -24px rgba(0, 0, 0, 0.9);
	opacity: 0;
	animation:
		k-pill-in 0.7s var(--k-ease) forwards calc( 0.9s + var(--i) * 0.18s ),
		k-pill-float 7s ease-in-out infinite calc( 1.6s + var(--i) * 0.6s );
}

.k-hero-pill svg { color: #8FD79A; }

.k-hero-pill:nth-child(1) { top: -22px; left: -26px; }
.k-hero-pill:nth-child(2) { bottom: 40px; left: -46px; }
.k-hero-pill:nth-child(3) { top: 46%; right: -34px; }

@keyframes k-pill-in {
	from { opacity: 0; transform: translateY(14px) scale(0.94); }
	to   { opacity: 1; transform: none; }
}

@keyframes k-pill-float {
	0%, 100% { transform: translateY(0); }
	50%      { transform: translateY(-9px); }
}

/* Kaydirma isareti hero'nun altinda ortalanir. */
body.home .k-scroll-cue { bottom: 34px; }

@media ( max-width: 1024px ) {
	.k-hero-pill:nth-child(2) { left: -12px; }
	.k-hero-pill:nth-child(3) { right: -10px; }
}

@media ( max-width: 767px ) {
	.k-motion body.home .k-hero {
		padding-top: 132px;
		padding-bottom: 72px;
	}

	.k-motion body.home .k-hero .elementor-heading-title { font-size: 34px !important; }
	.k-motion body.home .k-hero .elementor-widget-text-editor { font-size: 15px; }
	.k-motion body.home .kapsam-hero-media img { height: 230px !important; }
	.k-hero-pill { display: none; }
}

/* Cok kisa ekranlarda tam ekran zorlamasi icerigi tasirmasin. */
@media ( max-height: 640px ) {
	.k-motion body.home .k-hero { min-height: auto; }
}

@media (prefers-reduced-motion: reduce) {
	.k-motion .k-word { opacity: 1 !important; transform: none !important; animation: none !important; }
	.k-hero-pill { opacity: 1 !important; animation: none !important; }
}

/* ---- Hero olculeri: child temadaki 340px kuralini asan ozgulluk ---- *
 * functions.php icindeki kural .elementor > .e-con.e-parent:first-of-type
 * ile yaziliyor; buradaki kurallar ayni kaliba ek sinif ekleyerek kazanir. */

.k-motion body.home .k-hero .elementor-widget-image img:not([src$=".svg"]),
.k-motion body.home .k-hero .kapsam-hero-media img:not([src$=".svg"]) {
	height: 420px !important;
	border-radius: 18px;
}

@media ( max-width: 767px ) {
	.k-motion body.home .k-hero .elementor-widget-image img:not([src$=".svg"]),
	.k-motion body.home .k-hero .kapsam-hero-media img:not([src$=".svg"]) {
		height: 180px !important;
	}

	/* Tam ekran hero: metin, butonlar ve gorsel tek ekrana sigar. */
	.k-motion body.home .k-hero { padding-top: 118px; padding-bottom: 56px; }
	.k-motion body.home .k-hero .elementor-heading-title { font-size: 30px !important; line-height: 1.12 !important; }
	.k-motion body.home .k-hero .elementor-widget-text-editor { font-size: 14.5px; line-height: 1.55; }
	.k-motion body.home .k-hero .elementor-button { padding: 13px 18px !important; font-size: 12.5px !important; }
	.k-motion body.home .k-hero .e-con { row-gap: 14px; }
}

@media ( max-width: 767px ) {
	/* Hero tek ekrana sigsin: butonlar tek satir, olculer biraz daha sikilir. */
	.k-motion body.home .k-hero { padding-top: 110px; padding-bottom: 44px; }
	.k-motion body.home .k-hero .elementor-heading-title { font-size: 28px !important; }
	.k-motion body.home .k-hero .elementor-button { padding: 12px 14px !important; font-size: 12px !important; }
	.k-motion body.home .k-hero .elementor-widget-image img:not([src$=".svg"]),
	.k-motion body.home .k-hero .kapsam-hero-media img:not([src$=".svg"]) { height: 168px !important; }
}

/* ================================================================== *
 * MOBIL HEADER VE MENU
 * Sorun: header ve acilan menu panelinin zemini yoktu; yazilar sayfa
 * icerigiyle ust uste biniyordu. Mobilde header her zaman beyaz.
 * ================================================================== */

@media ( max-width: 1024px ) {
	.k-motion .site .pix-header.pix-header-mobile {
		position: fixed !important;
		top: 0;
		left: 0;
		right: 0;
		background: #FFFFFF !important;
		box-shadow: 0 6px 24px -18px rgba(0, 43, 71, 0.45);
		transition: box-shadow 0.3s var(--k-ease);
	}

	.k-motion.k-scrolled .site .pix-header.pix-header-mobile {
		box-shadow: 0 12px 34px -20px rgba(0, 43, 71, 0.6);
	}

	/* Acilan menu paneli: beyaz zemin, koyu yazi, kendi kaydirmasi. */
	.pix-header-mobile .navbar-collapse,
	.pix-header-mobile .pix-menu-element {
		background: #FFFFFF;
		border-top: 1px solid #E9EEF2;
		box-shadow: 0 24px 44px -28px rgba(0, 43, 71, 0.55);
		max-height: calc( 100vh - 61px );
		overflow-y: auto;
	}

	.pix-header-mobile .navbar-nav {
		background: #FFFFFF;
		padding: 6px 18px 22px;
		width: 100%;
	}

	.pix-header-mobile .menu-item > a,
	.pix-header-mobile .menu-item > a span,
	.pix-header-mobile .pix-nav-link,
	.pix-header-mobile .pix-nav-link span {
		color: #183042 !important;
	}

	.pix-header-mobile .menu-item > a {
		padding-top: 12px !important;
		padding-bottom: 12px !important;
		border-bottom: 1px solid #F0F4F7;
	}

	.pix-header-mobile .dropdown-menu,
	.pix-header-mobile .submenu-box {
		background: #F7FAFB !important;
		box-shadow: none !important;
		border: 0 !important;
	}

	/* Hamburger cizgileri ve logo koyu zeminde degil, beyaz header uzerinde. */
	.pix-header-mobile .hamburger-inner,
	.pix-header-mobile .hamburger-inner::before,
	.pix-header-mobile .hamburger-inner::after {
		background-color: #183042 !important;
	}

	.pix-header-mobile img.pix-logo { display: none !important; }
	.pix-header-mobile img.pix-logo-scroll { display: inline-block !important; }

	/* Sabit header icerigi ezmesin. */
	.k-motion body.home .k-hero { padding-top: 96px; }
	.k-motion .site-content .elementor > .e-con.e-parent:first-child { padding-top: 96px; }
}

/* ================================================================== *
 * HERO TIPOGRAFISI VE OLGU SERIDI
 * ================================================================== */

.k-motion body.home .k-hero .elementor-widget-heading .elementor-heading-title {
	letter-spacing: -1.6px;
}

.k-hero-facts {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 32px;
	margin-top: 30px;
	padding-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.k-hero-facts span {
	display: flex;
	flex-direction: column;
	gap: 2px;
	color: rgba(255, 255, 255, 0.68);
	font-size: 12.5px;
	line-height: 1.4;
}

.k-hero-facts b {
	color: #FFFFFF;
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -0.3px;
}

@media ( max-width: 1200px ) {
	.k-motion body.home .k-hero .elementor-heading-title { font-size: 56px !important; }
}

@media ( max-width: 767px ) {
	.k-motion body.home .k-hero .elementor-heading-title { font-size: 38px !important; letter-spacing: -1px; }
	.k-motion body.home .k-hero .elementor-widget-text-editor { font-size: 16px; }
	.k-hero-facts { gap: 10px 20px; margin-top: 20px; padding-top: 16px; }
	.k-hero-facts b { font-size: 16px; }
	.k-hero-facts span { font-size: 11.5px; }
	.k-motion body.home .k-hero .elementor-widget-image img:not([src$=".svg"]),
	.k-motion body.home .k-hero .kapsam-hero-media img:not([src$=".svg"]) { height: 150px !important; }
}

/* Mobil hero: child temadaki 150px ust dolgu kuralini ayni kalipla asar. */
@media ( max-width: 767px ) {
	.k-motion body.home .site-content .elementor > .e-con.e-parent:first-child,
	.k-motion body.home .k-hero {
		padding-top: 92px !important;
		padding-bottom: 36px !important;
	}

	.k-motion body.home .k-hero .elementor-widget-image img:not([src$=".svg"]),
	.k-motion body.home .k-hero .kapsam-hero-media img:not([src$=".svg"]) { height: 132px !important; }
}

/* ---- Urun/yazilim sablonu: ortak deger seridi -------------------- */

.k-featstrip {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	width: 100%;
}

.k-feat {
	display: block;
	padding-left: 18px;
	border-left: 2px solid rgba(52, 158, 73, 0.35);
}

.k-feat-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: rgba(0, 79, 126, 0.08);
	color: #004F7E;
	margin-bottom: 12px;
	transition: background-color 0.35s var(--k-ease), color 0.35s var(--k-ease), transform 0.35s var(--k-ease);
}

.k-feat:hover .k-feat-ico {
	background: linear-gradient(135deg, #004F7E, #349E49);
	color: #FFFFFF;
	transform: translateY(-3px);
}

.k-feat strong { display: block; color: #004F7E; font-size: 16.5px; font-weight: 700; margin-bottom: 5px; }
.k-feat em { display: block; font-style: normal; font-size: 14px; line-height: 1.6; color: #637381; }

@media ( max-width: 900px ) { .k-featstrip { grid-template-columns: repeat(2, 1fr); } }
@media ( max-width: 520px ) { .k-featstrip { grid-template-columns: 1fr; } }

/* Footer logosu olcusu */
.pixfooter .elementor-widget-image img,
.site-footer2 .elementor-widget-image img { max-width: 190px; height: auto; }

/* ================================================================== *
 * DUZELTMELER: footer logosu, sabit footer sizintisi, menu hover
 * ================================================================== */

/* Footer logosu: SVG'nin ic olculeri yok, genislik acikca sinirlanir. */
.pixfooter img[src*="kapsamYesilBeyaz"],
.site-footer2 img[src*="kapsamYesilBeyaz"],
img.k-footer-logo,
.elementor-widget-image img[src*="kapsamYesilBeyaz"] {
	width: 190px !important;
	max-width: 190px !important;
	height: auto !important;
}

/* Header logosu olcusu */
.pix-header img.pix-logo,
.pix-header img.pix-logo-scroll {
	width: auto !important;
	max-height: 34px;
}

/*
 * Sabit (sticky) footer, zemini olmayan bolumlerin arkasindan gorunuyordu:
 * urun sayfalarinin alt kismi footer ile ust uste biniyordu.
 * Icerik alanina opak zemin verilerek sizinti kapatilir.
 */
.site-content,
.site-content > .elementor,
.site-content .elementor-location-single {
	background-color: #FFFFFF;
	position: relative;
	z-index: 2;
}

/* Menu hover: gri degil, marka yesil-mavi gradyani. */
.k-motion .pix-header .menu-item:hover > a,
.k-motion .pix-header .menu-item:hover > a span,
.k-motion .pix-header .menu-item:focus-within > a span,
.k-motion .pix-header .dropdown-menu .menu-item:hover > a,
.k-motion .pix-header .dropdown-menu .menu-item:hover > a span {
	background-image: linear-gradient(90deg, #349E49 0%, #004F7E 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	-webkit-text-fill-color: transparent;
}

/* Acik olan ust menu ogesi de ayni gradyanda kalir. */
.k-motion .pix-header .menu-item.current-menu-item > a span,
.k-motion .pix-header .menu-item.current-menu-ancestor > a span {
	background-image: linear-gradient(90deg, #349E49 0%, #004F7E 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	-webkit-text-fill-color: transparent;
}

/* Alt menu satirinda ok/ikon rengi de yesile doner. */
.k-motion .pix-header .menu-item:hover > a svg,
.k-motion .pix-header .menu-item:hover > a i {
	color: #349E49 !important;
	fill: #349E49 !important;
}

/*
 * Theme Builder tekil sablonlarinda (urun/yazilim) icerik dogrudan .site
 * altinda duruyor, .site-content sarmalayicisi yok. Sabit footer bu yuzden
 * zemini olmayan bolumlerin arkasindan gorunuyordu.
 */
.site > .elementor,
.elementor-location-single,
.elementor-location-archive {
	background-color: #FFFFFF;
	position: relative;
	z-index: 2;
}

/* Menu hover gradyani: pixfort isaretlemesinin tum bicimleri icin. */
.k-motion .pix-header a.pix-nav-link:hover,
.k-motion .pix-header a.pix-nav-link:hover span,
.k-motion .pix-header .navbar-nav > li > a:hover,
.k-motion .pix-header .navbar-nav > li > a:hover span,
.k-motion .pix-header .menu-item > a:hover,
.k-motion .pix-header .menu-item > a:hover span,
.k-motion .pix-header .dropdown-item:hover,
.k-motion .pix-header .dropdown-item:hover span,
.k-motion .pix-header .submenu-box a:hover,
.k-motion .pix-header .submenu-box a:hover span {
	background-image: linear-gradient(90deg, #349E49 0%, #004F7E 100%) !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
}

/* Alt menu satirlarinda zemin de hafif yesile doner (okunurluk icin). */
.k-motion .pix-header .submenu-box .menu-item > a:hover,
.k-motion .pix-header .dropdown-menu .menu-item > a:hover {
	background-color: rgba(52, 158, 73, 0.06) !important;
	border-radius: 6px;
}

/* ================================================================== *
 * SEO BILESENLERI: ekmek kirintisi ve SSS
 * ================================================================== */

.k-crumbs ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	list-style: none;
	margin: 0 0 4px;
	padding: 0;
	font-size: 13px;
}

.k-crumbs li { color: rgba(255, 255, 255, 0.6); }
.k-crumbs li + li::before { content: "/"; margin-right: 8px; opacity: 0.5; }
.k-crumbs a { color: rgba(255, 255, 255, 0.82); text-decoration: none; }
.k-crumbs a:hover { color: #8FD79A; text-decoration: underline; text-underline-offset: 3px; }

/* Acik zeminli hero (cozum sayfasi) icin koyu metin. */
.elementor-widget-shortcode .k-crumbs { color: inherit; }
.k-hero-light .k-crumbs li { color: #637381; }
.k-hero-light .k-crumbs a { color: #004F7E; }

.k-faq { width: 100%; }

.k-faq details {
	border: 1px solid #D8E3EA;
	border-radius: 10px;
	background: #FFFFFF;
	margin-bottom: 12px;
	transition: border-color 0.3s var(--k-ease), box-shadow 0.3s var(--k-ease);
}

.k-faq details[open] {
	border-color: rgba(52, 158, 73, 0.5);
	box-shadow: 0 18px 34px -30px rgba(0, 43, 71, 0.6);
}

.k-faq summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 18px 22px;
	cursor: pointer;
	list-style: none;
	color: #004F7E;
	font-size: 16.5px;
	font-weight: 600;
}

.k-faq summary::-webkit-details-marker { display: none; }

.k-faq summary::after {
	content: "+";
	flex: 0 0 auto;
	width: 26px;
	height: 26px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(52, 158, 73, 0.12);
	color: #349E49;
	font-size: 18px;
	font-weight: 700;
	transition: transform 0.3s var(--k-ease), background-color 0.3s var(--k-ease);
}

.k-faq details[open] summary::after {
	content: "−";
	background: #349E49;
	color: #FFFFFF;
	transform: rotate(180deg);
}

.k-faq p {
	margin: 0;
	padding: 0 22px 20px;
	color: #637381;
	font-size: 15px;
	line-height: 1.7;
}

/* ================================================================== *
 * DUZELTME PAKETI 2
 * header radius, menu paneli, hero rozetleri ve sahne animasyonlari,
 * sayac kartlari, kaynak karti belge sahnesi
 * ================================================================== */

/* ---- 1) Kutulu header: yuvarlak kose --------------------------- */

.site .pix-header-box-part,
.k-motion .site .pix-header-box-part {
	border-radius: 50px !important;
}

/* ---- 2) Acilir menu: bosluk kapatildi, hayalet kutu kaldirildi -- */

/* .dropdown-menu seffaf ama golgeliydi: panelin ustunde bos bir
   dikdortgen gibi gorunuyordu. Golge panele tasindi. */
.pix-header .dropdown-menu {
	box-shadow: none !important;
	padding-top: 0 !important;
	background: transparent !important;
}

.pix-header .submenu-box {
	margin-top: 0 !important;
	border-top: 1px solid rgba(52, 158, 73, 0.55);
	box-shadow: 0 18px 40px -24px rgba(0, 45, 75, 0.35) !important;
	overflow: hidden;
}

/* ---- 3) Hero rozetleri: okunakli ve hizali --------------------- */

/* Eskiden gorselin uc kosesine dagilmis, yari saydam ve arkasi
   okunmuyordu. Simdi gorselin altinda tek satir, koyu cam. */
.k-motion body.home .kapsam-hero-media {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.k-hero-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	width: 100%;
}

.k-hero-pill {
	position: static;
	flex: 1 1 auto;
	justify-content: center;
	padding: 12px 14px;
	border-radius: 14px;
	background: rgba(0, 30, 50, 0.62);
	border: 1px solid rgba(143, 215, 154, 0.45);
	-webkit-backdrop-filter: blur(16px) saturate(150%);
	backdrop-filter: blur(16px) saturate(150%);
	font-size: 13px;
	letter-spacing: 0.2px;
	box-shadow: 0 16px 30px -22px rgba(0, 0, 0, 0.9);
	animation:
		k-pill-in 0.6s var(--k-ease) forwards calc( 0.7s + var(--i) * 0.14s ),
		k-pill-glow 5.5s ease-in-out infinite calc( 1.4s + var(--i) * 0.5s );
}

@keyframes k-pill-glow {
	0%, 100% { border-color: rgba(143, 215, 154, 0.45); box-shadow: 0 16px 30px -22px rgba(0, 0, 0, 0.9); }
	50%      { border-color: rgba(143, 215, 154, 0.9); box-shadow: 0 16px 34px -18px rgba(52, 158, 73, 0.55); }
}

/* ---- 4) Hero sahnesi: cihaz temali ek animasyonlar -------------- */

/* Gorselin cevresinde donen isik halkasi. */
.k-motion body.home .kapsam-hero-media .elementor-widget-image {
	position: relative;
	border-radius: 20px;
}

.k-motion body.home .kapsam-hero-media .elementor-widget-image::before {
	content: "";
	position: absolute;
	inset: -2px;
	border-radius: 20px;
	background: conic-gradient(from 0deg, rgba(143, 215, 154, 0) 0deg, rgba(143, 215, 154, 0.85) 60deg, rgba(0, 149, 255, 0.5) 140deg, rgba(143, 215, 154, 0) 260deg);
	animation: k-ring-spin 9s linear infinite;
	z-index: 0;
	opacity: 0.85;
}

.k-motion body.home .kapsam-hero-media .elementor-widget-image::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 18px;
	overflow: hidden;
	background: linear-gradient(105deg, transparent 38%, rgba(255, 255, 255, 0.28) 48%, transparent 58%);
	transform: translateX(-120%);
	animation: k-scan 6.5s ease-in-out infinite 2s;
	pointer-events: none;
	z-index: 2;
}

.k-motion body.home .kapsam-hero-media .elementor-widget-image img {
	position: relative;
	z-index: 1;
}

@keyframes k-ring-spin {
	to { transform: rotate(360deg); }
}

@keyframes k-scan {
	0%   { transform: translateX(-120%); }
	55%  { transform: translateX(120%); }
	100% { transform: translateX(120%); }
}

/* Arka planda yavasca yukselen "veri" noktalari. */
.k-hero-dots {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}

.k-hero-dots i {
	position: absolute;
	bottom: -12px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: rgba(143, 215, 154, 0.75);
	box-shadow: 0 0 10px rgba(143, 215, 154, 0.9);
	animation: k-dot-rise var(--dur, 12s) linear infinite var(--delay, 0s);
	opacity: 0;
}

@keyframes k-dot-rise {
	0%   { transform: translateY(0) scale(0.6); opacity: 0; }
	12%  { opacity: 0.9; }
	80%  { opacity: 0.55; }
	100% { transform: translateY(-78vh) scale(1.1); opacity: 0; }
}

/* ---- 5) Sayaclar: dort esit, ortali kart ----------------------- */

.k-counters {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	width: 100%;
	border-top: 0;
	padding-top: 8px;
}

.k-counter {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 6px;
	min-width: 0;
	padding: 30px 20px 28px;
	border-radius: 16px;
	background: #FFFFFF;
	border: 1px solid #E3EBF0;
	box-shadow: 0 16px 34px -30px rgba(0, 43, 71, 0.55);
	transition: transform 0.35s var(--k-ease), box-shadow 0.35s var(--k-ease), border-color 0.35s var(--k-ease);
}

.k-counter:hover {
	transform: translateY(-5px);
	border-color: rgba(52, 158, 73, 0.5);
	box-shadow: 0 26px 46px -30px rgba(0, 43, 71, 0.6);
}

.k-counter-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 14px;
	background: rgba(0, 79, 126, 0.07);
	color: #004F7E;
	margin-bottom: 6px;
	transition: background-color 0.35s var(--k-ease), color 0.35s var(--k-ease), transform 0.35s var(--k-ease);
}

.k-counter:hover .k-counter-ico {
	background: linear-gradient(135deg, #004F7E, #349E49);
	color: #FFFFFF;
	transform: translateY(-2px) rotate(-6deg);
}

.k-counter .k-num {
	display: block;
	font-size: 42px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -1px;
	color: #004F7E;
	font-variant-numeric: tabular-nums;
}

.k-counter em {
	display: block;
	margin-top: 4px;
	font-style: normal;
	font-size: 13.5px;
	line-height: 1.5;
	color: #637381;
}

.k-counter:nth-child(4) .k-num { color: #349E49; }

@media ( max-width: 900px ) { .k-counters { grid-template-columns: repeat(2, 1fr); } }
@media ( max-width: 480px ) { .k-counters { grid-template-columns: 1fr; } }

/* ---- 6) Kaynak karti: animasyonlu belge sahnesi ---------------- */

.k-resfeature { display: flex; flex-direction: column; min-height: 320px; }

.k-resart {
	position: absolute;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	width: 46%;
	max-width: 320px;
	pointer-events: none;
}

.k-resart svg { width: 100%; height: auto; overflow: visible; }

.k-doc rect { fill: rgba(255, 255, 255, 0.13); stroke: rgba(255, 255, 255, 0.34); }

.k-doc-back2 { transform: translate(120px, 36px) rotate(-10deg); transition: transform 0.5s var(--k-ease); }
.k-doc-back1 { transform: translate(134px, 30px) rotate(-5deg); transition: transform 0.5s var(--k-ease); }
.k-doc-front { transform: translate(148px, 26px); transition: transform 0.5s var(--k-ease); }
.k-doc-front rect:first-child { fill: rgba(255, 255, 255, 0.2); }

.k-resfeature:hover .k-doc-back2 { transform: translate(96px, 44px) rotate(-16deg); }
.k-resfeature:hover .k-doc-back1 { transform: translate(122px, 34px) rotate(-9deg); }
.k-resfeature:hover .k-doc-front { transform: translate(152px, 20px); }

.k-doc-line {
	fill: rgba(255, 255, 255, 0.5);
	transform-origin: 18px center;
	animation: k-line-pulse 4.5s ease-in-out infinite;
	animation-delay: calc( var(--i) * 0.35s );
}

@keyframes k-line-pulse {
	0%, 100% { opacity: 0.35; }
	50%      { opacity: 0.85; }
}

.k-doc-chip { fill: rgba(255, 255, 255, 0.9); }
.k-doc-chip-t { fill: #00694F; font-size: 12px; font-weight: 700; letter-spacing: 1px; }

/* Tarama isigi belgelerin uzerinden gecer. */
.k-doc-scan {
	fill: rgba(143, 215, 154, 0.5);
	transform: translate(148px, 26px);
	animation: k-doc-scan 4.5s ease-in-out infinite;
	filter: blur(2px);
}

@keyframes k-doc-scan {
	0%   { transform: translate(148px, 26px); opacity: 0; }
	15%  { opacity: 0.9; }
	85%  { opacity: 0.9; }
	100% { transform: translate(148px, 200px); opacity: 0; }
}

/* Indirme oku nabiz atar. */
.k-doc-dl { transform: translate(300px, 210px); }
.k-doc-dl circle { fill: #8FD79A; }
.k-doc-dl path { stroke: #00694F; }

.k-doc-dl circle {
	animation: k-dl-pulse 2.6s var(--k-ease) infinite;
	transform-origin: 300px 210px;
}

@keyframes k-dl-pulse {
	0%, 100% { r: 26; }
	50%      { r: 28; }
}

@media ( max-width: 900px ) {
	.k-resart { display: none; }
	.k-resfeature { min-height: 0; }
}

@media (prefers-reduced-motion: reduce) {
	.k-hero-dots,
	.k-doc-scan { display: none; }

	.k-motion body.home .kapsam-hero-media .elementor-widget-image::before,
	.k-motion body.home .kapsam-hero-media .elementor-widget-image::after,
	.k-doc-line,
	.k-doc-dl circle,
	.k-hero-pill { animation: none !important; }
}


/* Arama paneli kirpilmasin: buton parlama efekti icin overflow:hidden
   aliyordu ve acilan 350px panel 48px butonun icinde kaliyordu. */
.pix-header .pix-search-sm-btn,
.k-motion .pix-header .pix-search-sm-btn {
	overflow: visible !important;
}

.pix-header .pix-header-floating-search .pix-small-search {
	border-radius: 50px !important;
}

/* ================================================================== *
 * HERO CIHAZ SAHNESI
 * IV torbasi dolar -> hattan damla akar -> flakon dolar ->
 * gravimetrik dogrulama halkasi tamamlanir -> onay isareti cizilir.
 * Dekoratiftir; gercek bir olcum degeri gostermez.
 * ================================================================== */

.k-scene {
	position: absolute;
	left: 50%;
	top: 50%;
	width: min(560px, 46vw);
	height: auto;
	transform: translate(-118%, -46%);
	z-index: 0;
	opacity: 0.5;
	pointer-events: none;
	overflow: visible;
}

/* Metin sutununun arkasinda kalmasin diye genis ekranda sola,
   dar ekranda tamamen gizlenir. */
@media ( max-width: 1500px ) { .k-scene { opacity: 0.32; transform: translate(-126%, -46%); } }
@media ( max-width: 1200px ) { .k-scene { display: none; } }

/* Govde cizgileri */
.k-scene-shell {
	fill: rgba(255, 255, 255, 0.05);
	stroke: rgba(143, 215, 154, 0.75);
	stroke-width: 2;
}

.k-scene-port,
.k-scene-cap {
	fill: rgba(143, 215, 154, 0.55);
}

.k-scene-hook {
	fill: none;
	stroke: rgba(255, 255, 255, 0.45);
	stroke-width: 2;
	stroke-linecap: round;
}

/* Torbadaki sivi seviyesi dolup bosalir. */
.k-scene-fluid {
	fill: rgba(98, 182, 106, 0.55);
	transform-origin: 150px 168px;
	animation: k-fill 9s linear infinite;
}

@keyframes k-fill {
	0%   { transform: scaleY(1); }
	8%   { transform: scaleY(1); }
	62%  { transform: scaleY(0.06); }
	92%  { transform: scaleY(0.06); }
	100% { transform: scaleY(1); }
}

/* Sivi icinde yukselen kabarciklar */
.k-scene-bubble {
	fill: rgba(255, 255, 255, 0.5);
	animation: k-bubble 4.5s linear infinite;
}

.k-scene-bubble.k-b2 { animation-duration: 5.6s; animation-delay: 1.1s; }
.k-scene-bubble.k-b3 { animation-duration: 6.4s; animation-delay: 2.3s; }

@keyframes k-bubble {
	0%   { transform: translateY(0); opacity: 0; }
	15%  { opacity: 0.8; }
	100% { transform: translateY(-44px); opacity: 0; }
}

/* Hat ve icinden akan sivi */
.k-scene-tube {
	fill: none;
	stroke: rgba(255, 255, 255, 0.28);
	stroke-width: 7;
	stroke-linecap: round;
}

.k-scene-flow {
	fill: none;
	stroke: rgba(143, 215, 154, 0.9);
	stroke-width: 3;
	stroke-linecap: round;
	stroke-dasharray: 6 16;
	animation: k-scene-flow 1.6s linear infinite;
}

@keyframes k-scene-flow {
	to { stroke-dashoffset: -44; }
}

.k-scene-drop {
	fill: #8FD79A;
	filter: drop-shadow( 0 0 8px rgba(143, 215, 154, 0.95) );
}

/* Flakon dolar */
.k-scene-vial-fluid {
	fill: rgba(143, 215, 154, 0.75);
	transform-origin: 300px 488px;
	animation: k-vial-fill 9s linear infinite;
}

@keyframes k-vial-fill {
	0%   { transform: scaleY(0.06); }
	8%   { transform: scaleY(0.06); }
	62%  { transform: scaleY(1); }
	92%  { transform: scaleY(1); }
	100% { transform: scaleY(0.06); }
}

/* Gravimetrik dogrulama halkasi: dolar, sonra onay isareti cizilir */
.k-scene-ring-bg {
	fill: none;
	stroke: rgba(255, 255, 255, 0.18);
	stroke-width: 6;
}

.k-scene-ring {
	fill: none;
	stroke: #8FD79A;
	stroke-width: 6;
	stroke-linecap: round;
	stroke-dasharray: 289;
	stroke-dashoffset: 289;
	transform: rotate(-90deg);
	animation: k-ring-fill 9s var(--k-ease) infinite;
}

@keyframes k-ring-fill {
	0%   { stroke-dashoffset: 289; }
	62%  { stroke-dashoffset: 289; }
	73%  { stroke-dashoffset: 0; }
	92%  { stroke-dashoffset: 0; }
	100% { stroke-dashoffset: 289; }
}

.k-scene-tick {
	fill: none;
	stroke: #FFFFFF;
	stroke-width: 6;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 56;
	stroke-dashoffset: 56;
	animation: k-tick-draw 9s var(--k-ease) infinite;
}

@keyframes k-tick-draw {
	0%   { stroke-dashoffset: 56; }
	73%  { stroke-dashoffset: 56; }
	81%  { stroke-dashoffset: 0; }
	92%  { stroke-dashoffset: 0; }
	100% { stroke-dashoffset: 56; }
}

/* Terazi platformu */
.k-scene-scale rect { fill: rgba(255, 255, 255, 0.22); }
.k-scene-scale path { stroke: rgba(255, 255, 255, 0.22); stroke-width: 4; stroke-linecap: round; }

/* ---- SSS: genislik sabit, iki sutun --------------------------- */

/* Kisa kod widget'i de icerik kadar daraliyordu: bir soru acilinca
   kart birden genisliyordu. Artik her zaman tam genislik. */
.elementor-widget-shortcode { width: 100%; }

.k-faq details { background: #FFFFFF; }

.k-faq summary { line-height: 1.4; }

/* ---- Kaynak karti: metin dikey ortali, buton asagida ----------- */

.k-resfeature {
	justify-content: center;
	padding: 44px 34px 38px;
}

.k-resfeature-tag,
.k-resfeature-go {
	align-self: flex-start;
}

.k-resfeature strong { margin-top: 26px; }
.k-resfeature-go { margin-top: 30px; }

@media ( max-width: 900px ) {
	.k-resfeature strong { margin-top: 18px; }
	.k-resfeature-go { margin-top: 22px; }
}

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

/* Sahne metnin arkasina denk geliyordu: hero'nun sol alt bos alanina alindi. */
.k-scene {
	left: 2.5%;
	right: auto;
	top: auto;
	bottom: 18px;
	width: min(330px, 23vw);
	transform: none;
	opacity: 0.42;
}

@media ( max-width: 1500px ) { .k-scene { opacity: 0.32; transform: none; width: min(280px, 21vw); } }
@media ( max-height: 780px ) { .k-scene { display: none; } }

/* Sol altta olgu seridiyle cakisiyordu: gorselin altindaki bos alana alindi. */
.k-scene {
	left: auto;
	right: 4%;
	bottom: 22px;
	width: min(290px, 20vw);
	opacity: 0.4;
}

@media ( max-width: 1500px ) { .k-scene { right: 2%; width: min(240px, 18vw); opacity: 0.32; } }

/* ================================================================== *
 * DUNYA HARITASI (Evidence bolumu)
 * Gercek cografi veri; Kocaeli isaretli. Pazar/ulke iddiasi tasiyan
 * hicbir isaret yoktur.
 * ================================================================== */

.k-map {
	position: relative;
	width: 100%;
	max-width: 620px;
	margin: 0 auto;
	padding: 34px 0 42px;
}

.k-map-svg {
	width: 100%;
	height: auto;
	display: block;
	overflow: visible;
}

.k-map-land {
	fill: #CBDDEA;
	stroke: #FFFFFF;
	stroke-width: 0.6;
	stroke-linejoin: round;
}

/* Kocaeli isareti */
.k-map-dot {
	fill: #349E49;
	stroke: #FFFFFF;
	stroke-width: 2.5;
}

.k-map-pulse {
	fill: none;
	stroke: #349E49;
	stroke-width: 2;
	transform-origin: center;
	animation: k-map-pulse 3s var(--k-ease) infinite;
}

.k-map-pulse-2 { animation-delay: 1.5s; }

@keyframes k-map-pulse {
	0%   { transform: scale(0.5); opacity: 0.9; }
	70%  { transform: scale(3.4); opacity: 0; }
	100% { transform: scale(3.4); opacity: 0; }
}

/* Etiket */
.k-map-callout path {
	fill: none;
	stroke: #349E49;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-dasharray: 160;
	stroke-dashoffset: 160;
	animation: k-map-line 1.1s var(--k-ease) forwards 0.5s;
}

@keyframes k-map-line {
	to { stroke-dashoffset: 0; }
}

.k-map-city {
	fill: #004F7E;
	font-size: 26px;
	font-weight: 700;
	opacity: 0;
	animation: k-map-fade 0.6s var(--k-ease) forwards 1.3s;
}

.k-map-role {
	fill: #349E49;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1.6px;
	opacity: 0;
	animation: k-map-fade 0.6s var(--k-ease) forwards 1.5s;
}

@keyframes k-map-fade {
	to { opacity: 1; }
}

/* Sertifika rozetleri: haritanin dort kosesi */
.k-map-badge {
	position: absolute;
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 12px 16px;
	border-radius: 12px;
	background: #FFFFFF;
	border: 1px solid #E3EBF0;
	box-shadow: 0 16px 34px -24px rgba(0, 43, 71, 0.5);
	opacity: 0;
	animation:
		k-map-fade 0.6s var(--k-ease) forwards calc( 0.6s + var(--i) * 0.18s ),
		k-badge-float 6s ease-in-out infinite calc( 1.4s + var(--i) * 0.7s );
}

.k-map-badge strong { color: #004F7E; font-size: 15px; font-weight: 700; line-height: 1.1; }
.k-map-badge em { color: #637381; font-style: normal; font-size: 11.5px; }

.k-map-badge:nth-of-type(1) { top: 0; left: 0; }
.k-map-badge:nth-of-type(2) { top: 8px; right: 0; }
.k-map-badge:nth-of-type(3) { bottom: 6px; left: 4%; }
.k-map-badge:nth-of-type(4) { bottom: 0; right: 2%; }

@media ( max-width: 767px ) {
	.k-map { padding: 26px 0 34px; }
	.k-map-badge { padding: 9px 12px; }
	.k-map-badge strong { font-size: 13px; }
	.k-map-badge em { font-size: 10.5px; }
	.k-map-city { font-size: 32px; }
	.k-map-role { font-size: 16px; }
}

@media (prefers-reduced-motion: reduce) {
	.k-map-pulse { animation: none !important; opacity: 0.25; }
	.k-map-callout path { stroke-dashoffset: 0 !important; animation: none !important; }
	.k-map-city,
	.k-map-role,
	.k-map-badge { opacity: 1 !important; animation: none !important; }
}

/* Harita 1000 birimlik kutuyu ~600px'e sigdiriyor (0.6 olcek);
   metinler bu yuzden buyutuldu. */
.k-map-city { font-size: 34px; }
.k-map-role { font-size: 16px; letter-spacing: 2px; }

/* ================================================================== *
 * 3B DUNYA KURESI
 * Ortografik projeksiyon; cizim kapsam-globe.js icinde yapilir.
 * ================================================================== */

.k-globe {
	width: 100%;
	max-width: 460px;
	margin: 0 auto;
	cursor: grab;
	touch-action: pan-y;
}

.k-globe.is-dragging { cursor: grabbing; }

.k-globe-svg {
	width: 100%;
	height: auto;
	display: block;
	overflow: visible;
}

.k-globe-ocean { filter: drop-shadow( 0 26px 46px rgba(0, 43, 71, 0.22) ); }

.k-globe-land {
	fill: none;
	stroke: #5B96BE;
	stroke-width: 1.1;
	stroke-linejoin: round;
	stroke-linecap: round;
	opacity: 0.95;
}

.k-globe-grat {
	fill: none;
	stroke: rgba(0, 79, 126, 0.16);
	stroke-width: 0.6;
}

.k-globe-shade { pointer-events: none; }

/* Kocaeli isareti */
.k-globe-dot { fill: #349E49; stroke: #FFFFFF; stroke-width: 2; }

.k-globe-pulse {
	fill: none;
	stroke: #349E49;
	stroke-width: 1.8;
	transform-origin: center;
	animation: k-globe-pulse 3s var(--k-ease) infinite;
}

.k-globe-pulse-2 { animation-delay: 1.5s; }

@keyframes k-globe-pulse {
	0%   { transform: scale(0.5); opacity: 0.9; }
	70%  { transform: scale(3); opacity: 0; }
	100% { transform: scale(3); opacity: 0; }
}

.k-globe-pin,
.k-globe-callout { transition: opacity 0.35s var(--k-ease); }

.k-globe-callout path {
	fill: none;
	stroke: #349E49;
	stroke-width: 1.4;
	stroke-linecap: round;
}

.k-globe-city { fill: #004F7E; font-size: 17px; font-weight: 700; }
.k-globe-role { fill: #349E49; font-size: 9px; font-weight: 700; letter-spacing: 1.4px; }

/* Kure bolumunun sarmalayicisi: rozetler kurenin cevresinde */
.k-map-globe { padding: 16px 0 24px; }

@media ( max-width: 767px ) {
	.k-globe { max-width: 320px; }
	.k-globe-city { font-size: 20px; }
	.k-globe-role { font-size: 11px; }
}

@media (prefers-reduced-motion: reduce) {
	.k-globe-pulse { animation: none !important; opacity: 0.2; }
	.k-globe { cursor: default; }
}

/* Kure v2: kitalar dolgulu (once yalnizca cizgiydi, harita gibi durmuyordu),
   Turkiye ayrica vurgulanir. */
.k-globe-land {
	fill: #8FB8D6;
	stroke: #5B96BE;
	stroke-width: 0.5;
	stroke-linejoin: round;
	opacity: 1;
}

.k-globe-turkey {
	fill: #349E49;
	stroke: #FFFFFF;
	stroke-width: 0.8;
	stroke-linejoin: round;
}

.k-globe-grat {
	fill: none;
	stroke: rgba(255, 255, 255, 0.35);
	stroke-width: 0.5;
}

/* ================================================================== *
 * HERO SAHNESI - SON KONUM
 * Sahne gorselin altindaki rozet satiriyla cakisiyordu; artik hero'nun
 * alt ortasinda, metin sutunu ile gorsel sutunu arasindaki bos seritte
 * duruyor. Akis cizgisi de tam bu bantta maskelenir (kapsam-motion.js:
 * k-flow-mask), boylece cizgi sahnenin uzerinden gecmez.
 * ================================================================== */

.k-scene {
	left: 50%;
	right: auto;
	top: auto;
	bottom: 14px;
	width: min(200px, 13.5vw);
	transform: translateX(-53%); /* cizim alani viewBox'in tam ortasinda degil */
	opacity: 0.55;
}

@media ( max-width: 1500px ) {
	.k-scene { right: auto; width: min(176px, 12vw); opacity: 0.4; transform: translateX(-53%); }
}


/* ================================================================== *
 * HERO SAHNESI - ORANTILI DOLUM
 * Torba yukaridan asagi bosalirken flakon ayni oranda yukari dolar
 * (ikisi de 9 sn'lik dongude, %8 - %62 arasi, dogrusal). Dolum bitince
 * once dogrulama halkasi, sonra tik isareti cizilir.
 * ================================================================== */

/* Hat akisi ve damlalar yalnizca dolum surerken gorunur. */
.k-scene-flow {
	animation: k-scene-flow 1.6s linear infinite, k-scene-dose 9s linear infinite;
}

.k-scene-drop {
	animation: k-scene-dose 9s linear infinite;
}

@keyframes k-scene-dose {
	0%   { opacity: 0; }
	8%   { opacity: 1; }
	58%  { opacity: 1; }
	64%  { opacity: 0; }
	100% { opacity: 0; }
}

/* Sahne artik hero'nun alt ortasinda durdugu icin kaydirma cizgisi
   (1 px dikey cizgi) tam sahnenin altina denk geliyordu: kaldirildi. */
.k-scroll-cue { display: none !important; }


/* ================================================================== *
 * KURE NABZI
 * SVG'de CSS transform-origin varsayilan olarak VIEWBOX kutusuna gore
 * cozulur; "center" cemberin kendi merkezi degil, 210,210 demektir.
 * Isaret nabzi bu yuzden sol uste dogru aciliyordu. transform-box:
 * fill-box her ogeyi kendi kutusuna baglar.
 * ================================================================== */

.k-globe-pulse {
	transform-box: fill-box;
	transform-origin: center;
}

/* Kureyi ortalayan, disa acilan nabiz halkasi. */
.k-globe-ping {
	fill: none;
	stroke: rgba(52, 158, 73, 0.5);
	stroke-width: 2;
	transform-box: fill-box;
	transform-origin: center;
	animation: k-globe-ping 4.6s var(--k-ease) infinite;
}

.k-globe-ping-2 { animation-delay: 2.3s; }

@keyframes k-globe-ping {
	0%   { transform: scale(0.99); opacity: 0; }
	14%  { opacity: 0.55; }
	72%  { transform: scale(1.21); opacity: 0; }
	100% { transform: scale(1.21); opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
	.k-globe-ping { animation: none !important; opacity: 0; }
}

/* Kure etiketinin alt satiri yesildi ve kalindi; acik zeminli kure uzerinde
   okunmuyordu. Ustteki sehir adiyla ayni maviye alindi, ince agirlikta. */
.k-globe-role {
	fill: #004F7E;
	font-weight: 400;
	letter-spacing: 1.2px;
}
