/* ============================================================
   ÜST ÇUBUK (template-parts/ust.php) — ana sayfa, makale ve liste
   sayfalarında ortak. main/premium/blog CSS'lerinden SONRA yüklenir;
   seçiciler #ust ile başlar ki eski .ph kurallarını (tablette menüyü
   ikinci satıra atan yatay kaydırma şeridi dahil) her genişlikte ezsin.
   1280px altında menü hamburger panelidir (assets/js/ust.js). 21 Eki 2026.
   ============================================================ */
#ust {
	--u-navy: #0a2540;
	--u-blue: #1d4e89;
	--u-ink: #33425a;
	--u-line: #e3e9f1;
	--u-grad: linear-gradient(135deg, #0f2f52 0%, #1d4e89 100%);
	--u-side: var(--adr-side, var(--bg-side, 50px));
	--u-h: 84px;
	position: sticky;
	top: 0;
	z-index: 90;
	background: #ffffff;
	border-bottom: 1px solid var(--u-line);
	transition: box-shadow 0.3s ease, background-color 0.3s ease;
}
#ust.is-scrolled {
	--u-h: 68px;
	background: rgba(255, 255, 255, 0.94);
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
	box-shadow: 0 10px 30px rgba(10, 37, 64, 0.08);
}
#ust .ph__in {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	grid-template-areas: none;
	align-items: center;
	gap: 28px;
	position: static;
	height: var(--u-h);
	max-width: none;
	margin: 0;
	padding: 0 var(--u-side);
	transition: height 0.3s ease;
}

/* ── Marka ── */
#ust .ph__brand {
	grid-area: auto;
	display: flex;
	align-items: stretch;
	gap: 14px;
	min-width: 0;
	text-decoration: none;
}
#ust .ph__rule {
	flex-shrink: 0;
	width: 3px;
	border-radius: 999px;
	background: var(--u-grad);
}
#ust .ph__id {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
}
#ust .ph__name {
	display: block;
	color: var(--u-navy);
	font-family: 'ASG Ekster', 'ASG Yedek', 'Poppins', -apple-system, sans-serif;
	font-size: 18px;
	font-weight: 800;
	letter-spacing: -0.01em;
	line-height: 1.2;
	white-space: nowrap;
}
#ust .ph__role {
	display: block;
	max-height: none;
	margin-top: 4px;
	opacity: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: var(--u-blue);
	font-family: 'ASG Garnet', 'ASG Yedek', 'Poppins', system-ui, sans-serif;
	font-size: 9.5px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

/* ── Menü (masaüstü: ortada tek satır) ── */
#ust .ph__nav {
	grid-area: auto;
	justify-self: center;
	position: static;
	min-width: 0;
	margin: 0;
	padding: 0;
	overflow: visible;
	-webkit-mask-image: none;
	mask-image: none;
}
#ust .ph__nav ul {
	display: flex;
	align-items: center;
	gap: 26px;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	white-space: nowrap;
}
#ust .ph__nav ul a {
	position: relative;
	display: block;
	padding: 8px 0;
	color: var(--u-ink);
	font-family: 'ASG Ekster', 'ASG Yedek', 'Poppins', -apple-system, sans-serif;
	font-size: 14.5px;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
	text-decoration: none;
	transition: color 0.2s ease;
}
#ust .ph__nav ul a::after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -2px;
	width: 5px;
	height: 5px;
	margin-left: -2.5px;
	border-radius: 50%;
	background: var(--u-blue);
	opacity: 0;
	transform: translateY(4px);
	transition: opacity 0.25s ease, transform 0.25s ease;
}
#ust .ph__nav ul a:hover,
#ust .ph__nav ul a.is-active {
	color: var(--u-navy);
}
#ust .ph__nav ul a:hover::after,
#ust .ph__nav ul a.is-active::after {
	opacity: 1;
	transform: none;
}
#ust .ph__panel-alt {
	display: none;
}

/* ── Sağ blok ── */
#ust .ph__actions {
	grid-area: auto;
	display: flex;
	align-items: center;
	gap: 18px;
	flex-shrink: 0;
}
#ust .ph__tel {
	display: inline-flex;
	align-items: center;
	color: var(--u-navy);
	font-family: 'ASG Ekster', 'ASG Yedek', 'Poppins', -apple-system, sans-serif;
	font-size: 14.5px;
	font-weight: 700;
	white-space: nowrap;
	text-decoration: none;
}
#ust .ph__tel:hover {
	color: var(--u-blue);
}
#ust .ph__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	width: auto;
	height: 44px;
	padding: 0 22px;
	border-radius: 999px;
	background: var(--u-grad);
	color: #ffffff;
	font-family: 'ASG Ekster', 'ASG Yedek', 'Poppins', -apple-system, sans-serif;
	font-size: 14.5px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
	white-space: nowrap;
	text-decoration: none;
	box-shadow: 0 10px 24px -10px rgba(10, 37, 64, 0.6);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
#ust .ph__cta:hover {
	transform: translateY(-1px);
	box-shadow: 0 14px 28px -10px rgba(10, 37, 64, 0.7);
}
#ust .ph__cta span {
	display: inline;
}
#ust .ph__cta svg,
#ust .ph__panel-cta svg,
#ust .ph__panel-tel svg {
	width: 16px;
	height: 16px;
	flex: none;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* ── İç sayfa geri düğmesi (makale → liste, liste → ana sayfa) ── */
#ust.ph--ic .ph__in {
	grid-template-columns: auto auto minmax(0, 1fr) auto;
}
#ust .ph__geri {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: none;
	border: 1px solid var(--u-line);
	border-radius: 50%;
	background: #ffffff;
	color: var(--u-navy);
	text-decoration: none;
	transition: border-color 0.2s ease, background-color 0.2s ease;
}
#ust .ph__geri:hover {
	border-color: var(--u-blue);
	background: #f3f6fa;
}
#ust .ph__geri svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}
/* Panel bağlantıları (Ana Sayfa / listeler) masaüstü menüsünde görünmez */
#ust .ph__nav li.ph__panel-only {
	display: none;
}

/* ── Hamburger düğmesi ── */
#ust .ph__burger {
	display: none;
	position: relative;
	width: 44px;
	height: 44px;
	flex: none;
	padding: 0;
	border: 1px solid var(--u-line);
	border-radius: 12px;
	background: #ffffff;
	color: var(--u-navy);
	cursor: pointer;
}
#ust .ph__burger-cizgi,
#ust .ph__burger-cizgi::before,
#ust .ph__burger-cizgi::after {
	position: absolute;
	left: 50%;
	width: 18px;
	height: 2px;
	margin-left: -9px;
	border-radius: 2px;
	background: currentColor;
	transition: transform 0.25s ease, opacity 0.2s ease;
}
#ust .ph__burger-cizgi {
	top: 50%;
	margin-top: -1px;
}
#ust .ph__burger-cizgi::before,
#ust .ph__burger-cizgi::after {
	content: '';
	left: 0;
	margin-left: 0;
}
#ust .ph__burger-cizgi::before { top: -6px; }
#ust .ph__burger-cizgi::after  { top: 6px; }
#ust.is-menu-acik .ph__burger-cizgi { background: transparent; }
#ust.is-menu-acik .ph__burger-cizgi::before { transform: translateY(6px) rotate(45deg); }
#ust.is-menu-acik .ph__burger-cizgi::after  { transform: translateY(-6px) rotate(-45deg); }

/* İlerleme çizgisi */
#ust .ph__progress {
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 0;
	height: 2px;
	background: var(--u-grad);
}

/* Uzun menü etiketli diller (es, fr, ka): 1280–1600 arasında menü sağdaki
   düğmelere değiyordu; aralık ve yazı bir kademe küçülür. */
@media (min-width: 1280px) and (max-width: 1599px) {
	#ust:is(:lang(es), :lang(fr), :lang(ka)) .ph__nav ul {
		gap: 16px;
	}
	#ust:is(:lang(es), :lang(fr), :lang(ka)) .ph__nav ul a {
		font-size: 13.5px;
	}
	#ust:is(:lang(es), :lang(fr), :lang(ka)) .ph__in {
		gap: 20px;
	}
}

/* Geniş masaüstü dışında telefon numarası çubuktan çıkar (menü sığsın) */
@media (max-width: 1439px) {
	#ust .ph__tel {
		display: none;
	}
}

/* ── 1280px altı: hamburger + açılır panel ── */
@media (max-width: 1279px) {
	#ust {
		--u-h: 72px;
	}
	#ust.is-scrolled {
		--u-h: 64px;
	}
	#ust .ph__in {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 16px;
	}
	#ust .ph__burger {
		display: inline-block;
	}
	#ust.ph--ic .ph__in {
		grid-template-columns: auto minmax(0, 1fr) auto;
	}
	#ust .ph__nav li.ph__panel-only {
		display: block;
	}
	#ust .ph__nav li.ph__panel-only + li:not(.ph__panel-only) {
		border-top: 6px solid #f1f4f8;
	}
	#ust .ph__actions {
		gap: 10px;
	}
	/* fixed: grid öğesi olduğu için absolute, grid alanına göre hizalanıyordu */
	#ust .ph__nav {
		position: fixed;
		top: var(--u-h);
		left: 0;
		right: 0;
		justify-self: stretch;
		display: none;
		max-height: calc(100vh - var(--u-h));
		max-height: calc(100dvh - var(--u-h));
		overflow-y: auto;
		padding: 6px var(--u-side) 22px;
		background: #ffffff;
		border-top: 1px solid var(--u-line);
		box-shadow: 0 24px 40px -18px rgba(10, 37, 64, 0.35);
	}
	#ust.is-menu-acik .ph__nav {
		display: block;
	}
	#ust .ph__nav ul {
		display: block;
		white-space: normal;
	}
	#ust .ph__nav li {
		border-bottom: 1px solid var(--u-line);
	}
	#ust .ph__nav ul a {
		padding: 15px 0;
		font-size: 17px;
	}
	#ust .ph__nav ul a::after {
		display: none;
	}
	#ust .ph__panel-alt {
		display: flex;
		gap: 12px;
		margin-top: 20px;
	}
	#ust .ph__panel-tel,
	#ust .ph__panel-cta {
		flex: 1 1 0;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 9px;
		min-height: 50px;
		padding: 0 16px;
		border-radius: 14px;
		font-family: 'ASG Ekster', 'ASG Yedek', 'Poppins', -apple-system, sans-serif;
		font-size: 15.5px;
		font-weight: 700;
		white-space: nowrap;
		text-decoration: none;
	}
	#ust .ph__panel-tel {
		border: 1px solid var(--u-line);
		color: var(--u-navy);
	}
	#ust .ph__panel-cta {
		background: var(--u-grad);
		color: #ffffff;
	}
}

/* ── Telefon: randevu yuvarlak ikona iner, marka sıkışmasın ── */
@media (max-width: 600px) {
	#ust .ph__in {
		gap: 10px;
	}
	#ust .ph__actions {
		gap: 8px;
	}
	#ust .ph__name {
		font-size: 16px;
	}
	#ust .ph__role {
		font-size: 8.5px;
		letter-spacing: 0.14em;
	}
	#ust .ph__brand {
		gap: 10px;
	}
	#ust .ph__cta {
		width: 42px;
		height: 42px;
		padding: 0;
		border-radius: 50%;
	}
	#ust .ph__cta span {
		display: none;
	}
	#ust .ph__burger {
		width: 42px;
		height: 42px;
	}
	#ust .ph__panel-alt {
		flex-direction: column;
	}
	/* İç sayfada geri düğmesine yer: randevu çubuktan çıkar (panelde ve yazının içinde var) */
	#ust.ph--ic .ph__cta {
		display: none;
	}
	#ust .ph__geri {
		width: 40px;
		height: 40px;
	}
}

/* Menü açıkken arka sayfa kaymasın */
html.ust-kilit,
html.ust-kilit body {
	overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
	#ust,
	#ust .ph__in,
	#ust .ph__burger-cizgi,
	#ust .ph__burger-cizgi::before,
	#ust .ph__burger-cizgi::after {
		transition: none;
	}
}
