/*
Theme Name: Houzez Child
Theme URI: http://www.favethemes.com/
Author: Favethemes
Author URI: http://www.favethemes.com/
Description: Houzez is a premium WordPress theme for real estate agents where modern aesthetics are combined with tasteful simplicity, and where the ease of use is achieved without compromise in your ability to customise the design. Whether you are a real estate agent looking to build a website for your company or a web developer seeking a perfect WordPress theme for your next project, you are certain to appreciate the numerous features and benefits that our theme provides.
Version: 1.0
Tags: white, right-sidebar, left-sidebar, custom-colors, custom-menu, featured-images, post-formats, theme-options, translation-ready
License: GNU General Public License version 3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: houzez
Template: houzez
*/


@import url("../houzez/style.css");

/* Your CSS code goes here
-------------------------------------- */

/* Ana menü: Türkçe etiketler ("İLANLAR") dar alanda kırılmasın, açılır menü oku yazının yanında kalsın */
.houzez-nav-menu-main-desktop-wrap .houzez-nav-menu-main .nav-link {
	white-space: nowrap;
}
.houzez-nav-menu-main-desktop-wrap .houzez-nav-menu-main > ul > li > .dropdown-toggle:after {
	float: none;
}

/* Türkçe başlıklarda "ile" gibi sözcüklerin ilk harfini CSS ile değiştirme. */
.elementor .elementor-heading-title {
	text-transform: none !important;
}

/* Demo düzenindeki negatif aralıklar masaüstünde yatay kaydırma oluşturmasın. */
.elementor .elementor-icon-list-items.elementor-inline-items {
	margin-inline: 0;
}
.elementor-22664 .elementor-widget-houzez_elementor_property-card-v6 .listing-view.row {
	margin-inline: 0;
}
.elementor-22664 .elementor-widget-houzez_elementor_blog_posts .row {
	margin-inline: 0;
}


/* Demo container'ları 1440px kutulu ve kenar boşluksuz; 1025–1503px ekranlarda içerik kenara yapışmasın. */
@media (min-width: 1025px) and (max-width: 1503px) {
	.e-con.e-con-boxed > .e-con-inner {
		max-width: min(var(--content-width), calc(100vw - 64px));
	}
}

/* İlan detayı (Single Property 01 şablonu): kat planı veya video yoksa yalnızca başlık kalmasın. */
.elementor-element-b00f19c:not(:has(.elementor-widget-houzez-property-section-floorplan)),
.elementor-element-c0aaa38:not(:has(.elementor-widget-houzez-property-section-video)) {
	display: none;
}

/* Danışman e-postası yokken Houzez randevu/bilgi formlarını basmıyor; boş sekmeler görünmesin.
   E-posta girildiğinde formlar ve sekmeler kendiliğinden geri gelir. */
.property-form-tabs-wrap:not(:has(form)) {
	display: none;
}

/* İlan detayı: randevu formundan sonra şablonda arka arkaya iki ayraç var; tek çizgi kalsın. */
.elementor-element-4284bb0 {
	display: none;
}

/* Fiyatsız ve kiralık ilan (functions.php body sınıfları): kredi hesaplayıcı 0 TL'yi ya da aylık kirayı
   kredi tutarı sayıp hesap göstermesin. */
.evin-fiyatsiz-ilan .elementor-element-ed27310,
.evin-fiyatsiz-ilan .elementor-element-1d4e27f,
.evin-kiralik-ilan .elementor-element-ed27310,
.evin-kiralik-ilan .elementor-element-1d4e27f {
	display: none;
}

/* Konumu girilmemiş ilan (functions.php body sınıfı): boş harita kutusu gizlenir, adres satırı kalır. */
.evin-haritasiz-ilan .elementor-element-fa457dc {
	display: none;
}

/* Danışman e-postası yokken randevu ve danışman iletişim formları gönderilemiyor (functions.php body sınıfı). */
.evin-danisman-epostasi-yok .elementor-element-77c0ad1,
.evin-danisman-epostasi-yok .elementor-widget-houzez-agent-contact-form {
	display: none;
}

/* İlan detayı haritası: Houzez mobil/tablette harita kutusunu absolute yapıyor, kapsayıcı 0 yükseklikte kalıp harita kayboluyordu. */
.elementor-widget-houzez-property-section-map .houzez-elementor-map-wrap {
	position: relative;
}

/* İlanlar (yarım harita): Houzez JS sabit yüksekliği yalnızca >768px'te veriyor, CSS ise <768px'te
   akışa geçiyor. Tam 768px'te (dikey iPad) liste footer'ın üstüne taşıyordu; burada da akışa geç. */
@media (min-width: 768px) and (max-width: 768.98px) {
	.half-map-wrap {
		position: relative;
	}
	.main-half-map-wrap {
		height: auto;
	}
}

/* Ortam kütüphanesinden ilan videosu (functions.php): Houzez kutusu 16:9 iframe için 0 yükseklikli;
   dosya videosu kendi oranıyla (çoğu zaman dikey telefon videosu) ortalanarak gösterilir. */
.block-video-wrap:has(> .evin-ilan-video) {
	height: auto;
	padding-bottom: 0;
}
.evin-ilan-video {
	display: block;
	width: 100%;
	max-height: min(80vh, 720px);
	background: #000;
	object-fit: contain;
}

/* İlan fotoğraf önizlemesi (lightbox): dikey fotoğraflar ekran yüksekliğini aşmasın; genişlik orana göre.
   136px = pencere üst/alt boşluğu (2 × 28) + başlık (47) + galeri iç boşluğu (2 × 15) + pay. */
.property-lightbox .lightbox-slider .slick-slide img {
	width: auto;
	max-width: 100%;
	max-height: calc(100vh - 136px);
	margin: 0 auto;
}

/* Elementor üst menü kapsayıcıları z-index 99999; önizleme penceresi (9999/1055) mobilde menünün altında kalıp
   kapat düğmesi görünmüyordu. Pencere ve karartma menünün üstüne alınır. */
.property-lightbox .modal {
	z-index: 100000;
}
body:has(.property-lightbox .modal.show) .modal-backdrop {
	z-index: 99999;
}

/* Önizleme penceresi (ilan sayfası galerisi ve kartlardaki Önizleme düğmesi) üste yaslanıyordu;
   fotoğraf ekranı doldurmadığında altta boşluk kalıyordu. Dikeyde ortalanır. */
@media (min-width: 768px) {
	.property-lightbox .modal-dialog {
		display: flex;
		align-items: center;
		min-height: calc(100% - 3.5rem);
	}
	.property-lightbox .modal-content {
		width: 100%;
	}
}

/* İlan sayfası özet şeridi (yatak odası / banyo / alan): ilanda bu bilgiler yoksa Houzez kutuyu boş bırakıyordu;
   içinde gösterge yoksa gizlenir. */
.elementor-element-8fb16e7:not(:has(.hs-meta-widget-module)) {
	display: none;
}

/* İlan açıklamasının altındaki taşınmaz yetki numarası (functions.php). */
.evin-yetki-no {
	margin: 24px 0 0;
	padding-top: 12px;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	font-size: 13px;
	color: #6b7280;
}

/* Kredi hesaplayıcı halkasının ortasındaki aylık tutar tek satırda kalsın; punto sığacak kadar
   küçültülür (assets/js/kredi-hesaplama.js). */
.mortgage-calculator-monthly-payment {
	white-space: nowrap;
	line-height: 1.2;
}

/* İlan detayı "Bilgi İste": Ara ve WhatsApp düğmeleri yan yana; sığmadıkları genişlikte alt alta
   geçip tam genişliğe yayılırlar. Başlık ve form tam satır kalır. Elementor yönü --flex-direction
   değişkeniyle ve daha özgül bir seçiciyle verdiği için değişken ezilir. */
.elementor .elementor-element.elementor-element-2c9cd1f.e-con {
	--flex-direction: row;
	--flex-wrap: wrap;
	--column-gap: 10px;
	flex-direction: row;
	flex-wrap: wrap;
}
.elementor-element-2c9cd1f > .elementor-element {
	width: 100%;
}
.elementor-element-2c9cd1f > .elementor-element-evinara,
.elementor-element-2c9cd1f > .elementor-element-evinwha {
	width: auto;
	flex: 1 1 0;
}
.elementor-element-2c9cd1f > .elementor-element-evinara .elementor-button,
.elementor-element-2c9cd1f > .elementor-element-evinwha .elementor-button {
	width: 100%;
	justify-content: center;
	white-space: nowrap;
	padding-left: 12px;
	padding-right: 12px;
}

/* Footer telif satırı (scripts/yasal-metinler.php): yasal metin bağlantıları metin rengini alır, üzerine
   gelince altı çizilir; altında küçük geliştirici imzası. */
.elementor-element-8182958 .elementor-heading-title a,
.elementor-element-760ec0c .elementor-heading-title a {
	color: inherit;
	white-space: nowrap;
}
.elementor-element-8182958 .elementor-heading-title a:hover,
.elementor-element-760ec0c .elementor-heading-title a:hover {
	text-decoration: underline;
}
.evin-imza {
	display: inline-block;
	margin-top: 6px;
	font-size: 0.85em;
	opacity: 0.75;
}

/* İletişim kapağı açık renkli bir çizim; tablet ve mobilde başlık çizimin üzerine geldiği için lacivert
   katman alta doğru tamamen şeffaflaşmaz, yazı okunur kalır (masaüstünde başlık solda, çizim sağda). */
@media (max-width: 1024px) {
	.elementor-element.elementor-element-909dab3::before {
		background-image: linear-gradient(180deg, #15293f 0%, rgba(21, 41, 63, 0.78) 100%) !important;
	}
}

/* Header favori bağlantısı (functions.php [evin_favori_baglanti]): kalp ve favori sayısı. Sayı 0'da gizli. */
.evin-header-favori { width: auto; margin: 0 12px 0 16px; }
/* Masaüstü header: menü kapsayıcısı içeriğinden dardı, menü sağdaki alana taşıyordu (kalp İletişim'in üstüne
   biniyordu). 1025–1365px'te menü, logo ve sağ taraf içerikleri kadar yer alır, kalan boşluk iki yana eşit dağılır;
   1025–1279px'te menü aralıkları da sıkılaşır ki menü, kalp ve Değerleme düğmesi tek satıra sığsın. Daha genişte
   Elementor'un ortalanmış düzeni kalır. */
@media (min-width: 1025px) and (max-width: 1365px) {
	body .elementor-18468 .elementor-element.elementor-element-25021fa.e-con { --width: auto; --flex-shrink: 0; }
	body .elementor-18468 .elementor-element.elementor-element-f964dda.e-con,
	body .elementor-18468 .elementor-element.elementor-element-79eadb1.e-con { --width: auto; --flex-grow: 1; --flex-shrink: 0; }
}
@media (min-width: 1025px) {
	body .elementor-18468 .elementor-element.elementor-element-9ea7063,
	.evin-header-favori { flex-shrink: 0; }
	body .elementor-18468 .elementor-element.elementor-element-9ea7063 .elementor-button,
	body .elementor-18468 .elementor-element.elementor-element-ca0d409 .elementor-heading-title { white-space: nowrap; }
}
@media (min-width: 1025px) and (max-width: 1279px) {
	body .elementor-18468 .elementor-element.elementor-element-377d7c2 .houzez-nav-menu-main-desktop-wrap .houzez-nav-menu-main .nav-link { padding-left: 8px; padding-right: 8px; }
	body .elementor-18468 .elementor-element.elementor-element-9ea7063 .elementor-button { padding-left: 18px; padding-right: 18px; }
	.evin-header-favori { margin: 0 6px 0 10px; }
}
@media (min-width: 1025px) and (max-width: 1149px) {
	body .elementor-18468 .elementor-element.elementor-element-377d7c2 .houzez-nav-menu-main-desktop-wrap .houzez-nav-menu-main .nav-link { padding-left: 6px; padding-right: 6px; font-size: 12px; letter-spacing: .3px; }
	body .elementor-18468 .elementor-element.elementor-element-ca0d409 .elementor-heading-title { font-size: 20px; }
	body .elementor-18468 .elementor-element.elementor-element-9ea7063 .elementor-button { padding-left: 14px; padding-right: 14px; font-size: 14px; }
}
.evin-favori-baglanti { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; color: #13253f; font-size: 22px; line-height: 1; }
.evin-favori-baglanti:hover, .evin-favori-baglanti:focus-visible { color: #0f9d8a; }
.evin-favori-sayi { position: absolute; top: 3px; right: 0; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: #0f9d8a; color: #fff; font-size: 11px; font-weight: 700; line-height: 18px; text-align: center; }
@media (max-width: 1024px) { .evin-header-favori { margin-right: 0; } }

/* Ziyaretçi Favorilerim sayfası (template/user_dashboard_favorites.php). */
.evin-favoriler-sayfasi .listing-wrap { padding-top: 40px; }
.evin-favori-bos { max-width: 520px; margin: 24px auto 40px; padding: 40px 24px; border-radius: 8px; background: #fff; text-align: center; }
.evin-favori-bos > .houzez-icon { display: block; margin-bottom: 16px; color: #0f9d8a; font-size: 36px; }
.evin-favori-bos-baslik { margin-bottom: 8px; color: #13253f; font-size: 20px; font-weight: 600; }
.evin-favori-bos .btn { margin-top: 12px; }

/* İlan karşılaştırma sayfası (template/template-compare.php). İlk sütun sabit, tablo gerektiğinde yana kayar. */
.evin-karsilastir { padding-top: 40px; padding-bottom: 40px; }
.evin-karsilastir-bilgi { margin: 0 0 16px; color: #5c6670; font-size: 14px; }
.evin-karsilastir-bilgi a { font-weight: 600; }
.evin-karsilastir-kaydir:not([hidden]) { display: block; margin-top: 4px; }
/* position: relative: hücrelerdeki ekran okuyucu metni (visually-hidden, absolute) kaydırma kutusunun dışına taşıp mobilde sayfayı genişletiyordu. */
.evin-karsilastir-tablo { --evin-k-etiket: 200px; --evin-k-sutun: 220px; --evin-k-sutun-en-fazla: 360px; position: relative; overflow-x: auto; overscroll-behavior-x: contain; }
.evin-karsilastir-tablo:focus-visible { outline: 2px solid #0f9d8a; outline-offset: 2px; }
/* Az ilanda sütunlar sınırsız genişlemesin (tek ilanda görsel 800 px'i aşıyordu); çok ilanda tablo yana kayar. */
.evin-karsilastir-tablo table { width: clamp(calc(var(--evin-k-etiket) + var(--evin-k-sutun-sayisi, 4) * var(--evin-k-sutun)), 100%, calc(var(--evin-k-etiket) + var(--evin-k-sutun-sayisi, 4) * var(--evin-k-sutun-en-fazla))); margin: 0; border-collapse: separate; border-spacing: 0; table-layout: fixed; color: #222; font-size: 14px; line-height: 1.5; }
.evin-karsilastir-tablo th, .evin-karsilastir-tablo td { padding: 12px 16px; border-bottom: 1px solid #eef0f3; background: #fff; text-align: left; vertical-align: top; overflow-wrap: break-word; }
.evin-karsilastir-tablo tbody tr:nth-child(even) > * { background: #f7f8fa; }
.evin-karsilastir-tablo .evin-k-etiket { position: sticky; left: 0; z-index: 1; width: var(--evin-k-etiket); color: #13253f; font-weight: 600; transition: box-shadow .2s; }
.evin-karsilastir-tablo.evin-k-kaydirildi .evin-k-etiket { box-shadow: 6px 0 8px -6px rgba(19, 37, 63, .3); }
.evin-karsilastir-tablo thead > tr > * { padding-top: 16px; padding-bottom: 8px; border-bottom-color: #dfe3e8; }
.evin-k-gorsel { display: block; margin-bottom: 10px; overflow: hidden; border-radius: 6px; background: #eef0f3; aspect-ratio: 4 / 3; }
.evin-k-gorsel img { display: block; width: 100%; height: 100%; object-fit: cover; }
.evin-k-baslik { display: -webkit-box; overflow: hidden; color: #13253f; font-size: 15px; font-weight: 600; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.evin-k-baslik:hover, .evin-k-baslik:focus-visible { color: #0f9d8a; }
.evin-k-fiyat { margin-top: 6px; color: #13253f; font-size: 16px; font-weight: 700; }
.evin-k-cikar { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; margin-top: 4px; padding: 0; border: 0; background: none; color: #6b7280; font-size: 13px; }
.evin-k-cikar:hover, .evin-k-cikar:focus-visible { color: #c0392b; }
.evin-k-var { color: #0f9d8a; font-size: 18px; }
.evin-k-yok { color: #9aa3ad; }
.evin-karsilastir-tablo .evin-k-grup > * { padding-top: 20px; background: #eaf6f4; color: #0f9d8a; font-size: 13px; font-weight: 700; letter-spacing: .3px; text-transform: uppercase; }
@media (max-width: 1024px) {
	.evin-karsilastir-tablo { --evin-k-etiket: 140px; --evin-k-sutun: 145px; }
}
@media (max-width: 767px) {
	.evin-karsilastir { padding-top: 24px; }
	.evin-karsilastir-tablo { --evin-k-etiket: 100px; --evin-k-sutun: 133px; }
	.evin-karsilastir-tablo table { font-size: 13px; }
	.evin-karsilastir-tablo th, .evin-karsilastir-tablo td { padding: 10px; }
	.evin-k-baslik { font-size: 14px; }
	.evin-k-fiyat { font-size: 15px; }
}
.evin-karsilastir-bos p:not(.evin-favori-bos-baslik) .houzez-icon { vertical-align: -2px; color: #0f9d8a; }

/* Karşılaştırma paneli mobilde header'ın (z-index 99999) altında kalıyor, başlığı ve görselleri görünmüyordu. */
.compare-property-panel.compare-property-panel-open { z-index: 100000; }

/* Footer alt satırı (18750 genel, 21890 ilan listesi/harita). "Yukarı çık" düğmesi (sağ altta sabit) tablet ve
   masaüstünde sosyal ikonların üstüne geliyordu; mobilde telif metni sola dayalı, dar ve sıkışık satırlıydı,
   ikonlar ortadaydı. */
body .elementor-18750 .elementor-element.elementor-element-8182958 .elementor-heading-title,
body .elementor-21890 .elementor-element.elementor-element-760ec0c .elementor-heading-title { line-height: 1.6; }
@media (min-width: 768px) {
	body .elementor-18750 .elementor-element.elementor-element-871517a,
	body .elementor-21890 .elementor-element.elementor-element-311660f { --padding-right: 64px; --column-gap: 24px; --gap: 12px 24px; }
	/* Telif metni küçülmeyince tablette ikonlar alt alta diziliyordu. */
	body .elementor-element.elementor-element-8182958.elementor-element,
	body .elementor-element.elementor-element-760ec0c.elementor-element { --flex-shrink: 1; flex-shrink: 1 !important; min-width: 0; }
	body .elementor-element.elementor-element-9b7346c,
	body .elementor-element.elementor-element-a738376 { --flex-shrink: 0; flex-shrink: 0; }
}
@media (max-width: 1024px) {
	/* Tablette "Emlak Tipleri" sütunu "Bölgeler" listesinin ortasına hizalanıyordu. */
	body .elementor-18750 .elementor-element.elementor-element-eec19b4,
	body .elementor-21890 .elementor-element.elementor-element-f1597c9 { --align-items: flex-start; }
}
@media (max-width: 767px) {
	body .elementor-18750 .elementor-element.elementor-element-871517a,
	body .elementor-21890 .elementor-element.elementor-element-311660f { --padding-top: 24px; --padding-right: 0px; --padding-left: 0px; --padding-bottom: 72px; --gap: 16px; --row-gap: 16px; }
	body .elementor-element.elementor-element-8182958,
	body .elementor-element.elementor-element-760ec0c { width: 100%; text-align: center; }
	/* İlan listesinde ikonlar, üstlerinde "Bizi takip edin", en altta telif metni. */
	body .elementor-21890 .elementor-element.elementor-element-311660f { --flex-direction: column; --padding-bottom: 136px; }
	body .elementor-element.elementor-element-6ea68fd { order: 1; margin: 0; text-align: center; }
	body .elementor-element.elementor-element-a738376 { order: 2; margin-top: -6px; }
	body .elementor-element.elementor-element-760ec0c { order: 3; }
	/* Harita sayfasında alttaki "İlanlar / Harita Görünümü" çubuğunun sağ ucunu örtmesin. */
	.houzez-halfmap-page .back-to-top-wrap { bottom: 76px; }
}
@media (max-width: 767px) {
	.evin-telif-ayrac { display: block; height: 0; overflow: hidden; }
}

/* Haber kartları (ana sayfa bileşeni ve haber sayfasındaki İlgili Yazılar): aynı satırdaki kartlar eşit boyda,
   "Devamını oku" kartın altına hizalı. Ana sayfada kartlar satırı doldurur (3 haber 4 sütuna diziliyordu). */
.blog-posts-module .blog-post-item-wrap,
.related-posts-wrap .blog-post-item-wrap { height: 100%; }
.blog-posts-module .blog-post-item-v1,
.related-posts-wrap .blog-post-item-v1 { display: flex; flex-direction: column; height: 100%; margin-bottom: 0 !important; }
.blog-posts-module .blog-post-item-v1 .blog-post-content-wrap,
.related-posts-wrap .blog-post-item-v1 .blog-post-content-wrap { display: flex; flex: 1 1 auto; flex-direction: column; }
.blog-posts-module .blog-post-item-v1 .blog-post-link,
.related-posts-wrap .blog-post-item-v1 .blog-post-link { margin-top: auto; }
.elementor-element-aa6a42e .blog-posts-module > .row { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; margin: 0; }
.elementor-element-aa6a42e .blog-posts-module > .row > * { width: auto; max-width: none; margin: 0; padding: 0; }

/*
 * Ana sayfa ve Hakkımızda "Adresinizle başlayın" kartı: formun sonundaki <br> ile boş mesaj kutusu düğmenin altına
 * ~35px boşluk ekliyordu (kartın alt iç boşluğu bu yüzden 10px'e düşürülmüştü). Boşluk kaldırılır, alt iç boşluk
 * üstüyle eşitlenir. Telefonda lacivert kutu tabletin %10 iç boşluğunu devralıp alanları ekranın ~%60'ına daraltıyordu.
 */
.elementor-element-afc9024 form > br,
.elementor-element-94781b4 form > br,
.elementor-element-afc9024 .ele-form-messages:empty,
.elementor-element-94781b4 .ele-form-messages:empty { display: none; }
body .elementor-22664 .elementor-element.elementor-element-8a34b46,
body .elementor-16650 .elementor-element.elementor-element-766ee35 { --padding-bottom: 40px; }
@media (max-width: 767px) {
	body .elementor-22664 .elementor-element.elementor-element-681d65c,
	body .elementor-16650 .elementor-element.elementor-element-fcc5a2e { --padding-top: 24px; --padding-right: 16px; --padding-bottom: 24px; --padding-left: 16px; }
	body .elementor-22664 .elementor-element.elementor-element-8a34b46,
	body .elementor-16650 .elementor-element.elementor-element-766ee35 { --padding-top: 20px; --padding-right: 16px; --padding-bottom: 20px; --padding-left: 16px; }
}

/* Değerleme formunda yer tutucular girilmiş metinle aynı siyahtı; form ilk bakışta dolu görünüyordu. */
/* Houzez tema ayarları .form-control::placeholder rengini !important basıyor. */
body .elementor-element.elementor-element-f790fb7 .form-control::placeholder,
body .elementor-element.elementor-element-f790fb7 input::placeholder,
body .elementor-element.elementor-element-f790fb7 textarea::placeholder { color: #8a8f98 !important; opacity: 1; }
/* Seçim yapılmamış açılır listeler ("Seçiniz", "Tip seçin") da yer tutucu gibi soluk; açılan seçenekler normal renkte. */
body .elementor-element.elementor-element-f790fb7 select:has(option[value=""]:checked) { color: #8a8f98; }
body .elementor-element.elementor-element-f790fb7 select option { color: #000; }
