/* ──────────────────────────────────────────────────────────────
   OVMIS — header + footer (ov_header.php / ov_footer.php)

   Elementor şablonları 6906 / 6908'in 20.10.2026'da canlıdan ÖLÇÜLEN
   değerleri. Renk ve yazı tipleri Elementor kit'inin (elementor-kit-12)
   genel değişkenlerinden okunur, kit yoksa parantezdeki değere düşer.

   Her kural en az İKİ sınıfla yazıldı: `.elementor-kit-12 a`, `h3` gibi kit
   kuralları (sınıf + öğe) tek sınıflı kuralı eziyor (TUZAK #76).
   ────────────────────────────────────────────────────────────── */

.ov-hdr,
.ov-ftr {
	--ov-mavi: var(--e-global-color-ovblue, #0056B8);
	--ov-mavi-koyu: #003E86;
	--ov-koyu: var(--e-global-color-ovink, #0F1729);
	--ov-govde: var(--e-global-color-ovbody, #4A5468);
	--ov-cizgi: var(--e-global-color-ovborder, #E1E7EF);
	--ov-yuzey: var(--e-global-color-ovtint, #F1F5F9);
	--ov-gece: var(--e-global-color-ovdark, #0F172A);
	--ov-yazi: var(--e-global-typography-ovbtn-font-family, "Inter"), "Inter", sans-serif;
	--ov-baslik: "Plus Jakarta Sans", sans-serif;
	box-sizing: border-box;
}

.ov-hdr *,
.ov-ftr * {
	box-sizing: border-box;
}

/* =================================================================
   HEADER
   ================================================================= */
.ov-hdr {
	position: relative;
	z-index: 50;
	background: #fff;
	border-bottom: 1px solid var(--ov-cizgi);
	padding: 14px 32px;
}

.ov-hdr .ov-hdr__ic {
	max-width: 1320px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

/* ----- Logo ----- */
.ov-hdr .ov-hdr__logo {
	display: block;
	flex: 0 0 auto;
	line-height: 0;
}

.ov-hdr .ov-hdr__logo img {
	display: block;
	width: 168px;
	height: auto;
	max-width: 100%;
}

/* ----- Masaüstü menü: pill şerit ----- */
.ov-hdr .ov-hdr__nav {
	flex: 0 1 auto;
}

.ov-hdr .ov-hdr__menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 4px;
}

.ov-hdr .ov-hdr__menu > li {
	position: relative;
	margin: 0;
}

.ov-hdr .ov-hdr__menu > li > a {
	display: flex;
	align-items: center;
	padding: 9px 14px;
	border-radius: 999px;
	color: var(--ov-mavi);
	font-family: var(--ov-yazi);
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color .16s, color .16s;
}

.ov-hdr .ov-hdr__menu > li > a:hover,
.ov-hdr .ov-hdr__menu > li > a:focus-visible {
	background-color: var(--ov-yuzey);
	color: var(--ov-mavi-koyu);
}

/* Bulunulan sayfa — mavi pill. Ata sınıfları functions.php'deki
   `ovmis_menu_ata_sinifi` filtresi şehir sayfalarına ve yazılara da veriyor. */
.ov-hdr .ov-hdr__menu > li.current-menu-item > a,
.ov-hdr .ov-hdr__menu > li.current-menu-ancestor > a,
.ov-hdr .ov-hdr__menu > li.current-menu-parent > a,
.ov-hdr .ov-hdr__menu > li.current_page_ancestor > a,
.ov-hdr .ov-hdr__menu > li.current_page_parent > a {
	padding: 9px 16px;
	background-color: var(--ov-mavi);
	color: #fff;
}

/* ▾ ok — Elementor'ün caret-down simgesi (15px, 10px sol boşluk) */
.ov-hdr .ov-hdr__menu > li.menu-item-has-children > a::after {
	content: "";
	width: 15px;
	height: 15px;
	margin-left: 10px;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform .15s;
}

.ov-hdr .ov-hdr__menu > li.menu-item-has-children:hover > a::after,
.ov-hdr .ov-hdr__menu > li.menu-item-has-children:focus-within > a::after {
	transform: rotate(180deg);
}

/* ----- Alt menü (Temizlik Şirketi ▾) — hover + klavye, JS yok ----- */
.ov-hdr .ov-hdr__menu .sub-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	min-width: 252px;
	max-width: 300px;
	margin: 10px 0 0;
	padding: 8px;
	list-style: none;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 18px 40px -12px rgba(15, 23, 41, .22);
	z-index: 100;
}

/* Fare üst öğeden alt menüye inerken aradaki 10px'te menü kapanmasın */
.ov-hdr .ov-hdr__menu > li.menu-item-has-children::before {
	content: "";
	position: absolute;
	inset: 100% 0 auto 0;
	height: 12px;
}

.ov-hdr .ov-hdr__menu > li:hover > .sub-menu,
.ov-hdr .ov-hdr__menu > li:focus-within > .sub-menu {
	display: block;
}

.ov-hdr .ov-hdr__menu .sub-menu li {
	display: block;
	width: 100%;
	margin: 0;
}

.ov-hdr .ov-hdr__menu .sub-menu a {
	display: flex;
	align-items: center;
	padding: 13px 20px;
	color: var(--ov-govde);
	font-family: "Yantramanav", var(--ov-yazi);
	font-size: 13px;
	font-weight: 500;
	line-height: 20px;
	text-decoration: none;
}

.ov-hdr .ov-hdr__menu .sub-menu a:hover,
.ov-hdr .ov-hdr__menu .sub-menu a:focus-visible,
.ov-hdr .ov-hdr__menu .sub-menu .current-menu-item > a {
	background-color: var(--ov-mavi);
	color: #fff;
}

/* ----- Sağ: telefon + "Hemen Randevu" ----- */
.ov-hdr .ov-hdr__eylem {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 16px;
}

.ov-hdr .ov-hdr__tel {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--ov-mavi);
	font-family: var(--ov-yazi);
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ov-hdr .ov-hdr__tel svg {
	width: 15px;
	height: 15px;
	fill: currentColor;
}

.ov-hdr .ov-hdr__btn {
	display: inline-block;
	padding: 11px 22px;
	border-radius: 999px;
	background-color: var(--ov-mavi);
	color: #fff;
	font-family: var(--ov-yazi);
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color .16s;
}

.ov-hdr .ov-hdr__btn:hover,
.ov-hdr .ov-hdr__btn:focus-visible {
	background-color: var(--ov-mavi-koyu);
	color: #fff;
}

/* ----- Mobil menü kutusu: masaüstünde yok ----- */
.ov-hdr .ov-hdr__mobil {
	display: none;
}

/* ----- Tablet (≤1024): hamburger en solda, pill şerit gizli ----- */
@media (max-width: 1024px) {
	.ov-hdr {
		padding: 0 24px;
	}

	.ov-hdr .ov-hdr__nav {
		display: none;
	}

	/* Elementor'deki gibi: hamburger solda, logo ortada, eylemler sağda
	   (space-between; 900px'te canlıda ölçüldü) */
	.ov-hdr .ov-hdr__mobil {
		display: flex;
		align-items: center;
		order: -1;
	}
}

/* ----- Mobil (≤767) ----- */
@media (max-width: 767px) {
	.ov-hdr {
		padding: 12px 18px;
	}

	.ov-hdr .ov-hdr__ic {
		gap: 10px;
	}

	.ov-hdr .ov-hdr__logo img {
		width: 132px;
	}

	.ov-hdr .ov-hdr__eylem {
		gap: 8px;
	}

	.ov-hdr .ov-hdr__tel {
		display: none;
	}

	.ov-hdr .ov-hdr__btn {
		padding: 9px 14px;
	}
}

@media (max-width: 480px) {
	.ov-hdr .ov-hdr__logo img {
		max-width: 118px;
	}
}

/* =================================================================
   FOOTER
   ================================================================= */
.ov-ftr {
	background-color: var(--ov-gece);
	padding: 72px 32px 32px;
	font-family: var(--ov-yazi);
}

.ov-ftr .ov-ftr__ic {
	max-width: 1320px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 44px;
}

.ov-ftr .ov-ftr__ust {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 40px;
}

.ov-ftr .ov-ftr__marka {
	width: calc(28% - 32px);
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.ov-ftr .ov-ftr__sutun {
	width: calc(18% - 32px);
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* ----- Marka sütunu ----- */
.ov-ftr .ov-ftr__logo {
	display: block;
	line-height: 0;
}

.ov-ftr .ov-ftr__logo img {
	display: block;
	width: 160px;
	height: auto;
	max-width: 100%;
}

.ov-ftr .ov-ftr__ozet {
	margin: 0;
	color: rgba(255, 255, 255, .62);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
}

.ov-ftr .ov-ftr__sosyal {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0 9px;
}

.ov-ftr .ov-ftr__sosyal a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, .10);
	transition: background-color .16s;
}

.ov-ftr .ov-ftr__sosyal a:hover,
.ov-ftr .ov-ftr__sosyal a:focus-visible {
	background-color: rgba(255, 255, 255, .18);
}

.ov-ftr .ov-ftr__sosyal svg {
	width: 14px;
	height: 14px;
	fill: #fff;
}

/* ----- Bağlantı sütunları ----- */
.ov-ftr .ov-ftr__baslik {
	margin: 0;
	padding: 0;
	color: #fff;
	font-family: var(--ov-baslik);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0;
}

.ov-ftr .ov-ftr__liste,
.ov-ftr .ov-ftr__iletisim {
	list-style: none;
	margin: 0;
	padding: 2px 0 0;
	display: flex;
	flex-direction: column;
	gap: 11px;
}

.ov-ftr .ov-ftr__iletisim {
	gap: 13px;
}

.ov-ftr .ov-ftr__liste a,
.ov-ftr .ov-ftr__iletisim a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: rgba(255, 255, 255, .72);
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
}

.ov-ftr .ov-ftr__iletisim a {
	color: rgba(255, 255, 255, .80);
}

.ov-ftr .ov-ftr__liste a:hover,
.ov-ftr .ov-ftr__liste a:focus-visible,
.ov-ftr .ov-ftr__iletisim a:hover,
.ov-ftr .ov-ftr__iletisim a:focus-visible {
	color: #fff;
}

.ov-ftr .ov-ftr__iletisim a svg {
	width: 15px;
	height: 15px;
	flex: 0 0 auto;
	fill: currentColor;
}

.ov-ftr .ov-ftr__bilgi {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.ov-ftr .ov-ftr__bilgi svg {
	width: 14px;
	height: 14px;
	flex: 0 0 auto;
	margin-top: 5px;
	fill: rgba(255, 255, 255, .55);
}

.ov-ftr .ov-ftr__bilgi p {
	margin: 0;
	color: rgba(255, 255, 255, .80);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
}

/* ----- Rozetler + telif şeridi ----- */
.ov-ftr .ov-ftr__rozetler,
.ov-ftr .ov-ftr__alt {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 18px;
	padding-top: 26px;
	border-top: 1px solid rgba(255, 255, 255, .10);
}

.ov-ftr .ov-ftr__alt {
	justify-content: space-between;
}

.ov-ftr .ov-ftr__etiket {
	margin: 0;
	color: rgba(255, 255, 255, .45);
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .6px;
	text-transform: uppercase;
}

.ov-ftr .ov-ftr__rozet-gorseller {
	display: flex;
	align-items: center;
	gap: 14px;
}

.ov-ftr .ov-ftr__rozet-gorseller a {
	line-height: 0;
}

.ov-ftr .ov-ftr__rozet-gorseller img {
	display: block;
	width: 92px;
	height: auto;
}

.ov-ftr .ov-ftr__yasal {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 22px;
}

.ov-ftr .ov-ftr__yasal a {
	color: rgba(255, 255, 255, .45);
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
}

.ov-ftr .ov-ftr__yasal a:hover,
.ov-ftr .ov-ftr__yasal a:focus-visible {
	color: rgba(255, 255, 255, .80);
}

/* ----- Tablet: marka tam satır, sütunlar ikişer ----- */
@media (max-width: 1024px) {
	.ov-ftr {
		padding: 52px 24px 23px;
	}

	.ov-ftr .ov-ftr__marka {
		width: 100%;
	}

	.ov-ftr .ov-ftr__sutun {
		width: calc(50% - 20px);
	}
}

/* ----- Mobil: tek sütun ----- */
@media (max-width: 767px) {
	.ov-ftr {
		padding: 42px 20px 19px;
	}

	.ov-ftr .ov-ftr__ust {
		flex-direction: column;
	}

	.ov-ftr .ov-ftr__sutun {
		width: 100%;
	}

	.ov-ftr .ov-ftr__alt {
		flex-direction: column;
		align-items: flex-start;
	}
}
