/**
 * Conmigo Travel Agency — Global Design Tokens & Typography Overrides
 *
 * Site genelinde kullanilan renk, tipografi ve spacing degiskenleri.
 * Tek yerden degistirmek icin bu dosyadaki degerleri guncelleyin.
 *
 * Font sistemi: Playfair Display (heading) + Inter (body)
 * Diger tum fontlar kaldirildi — sadece bu 2 font kullanilir.
 */

/* ================================================================
   1. DESIGN TOKENS (:root)
   ================================================================ */
:root {
	/* ── Typography ── */
	--font-body:                   "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--font-heading:                "Playfair Display", Georgia, "Times New Roman", serif;

	/* ── Brand Colors ── */
	--color-primary:               #3A3235;
	--color-primary-foreground:    #FFFFFF;
	--color-secondary:             #7A6E72;
	--color-accent:                #D4764E;
	--color-accent-light:          #E8A583;
	--color-accent-dark:           #B5563E;
	--color-accent-text:           #C4652A;

	/* ── Surface & Background ── */
	--color-surface:               #F4EEEB;
	--color-background:            #FBF7F5;
	--color-white:                 #FFFFFF;

	/* ── UI Colors ── */
	--color-border:                #E5DDDA;
	--color-focus:                 var(--color-accent);
	--color-overlay-dark:          rgba(0, 0, 0, 0.35);
	--color-shadow:                rgba(0, 0, 0, 0.1);

	/* ── Status Colors ── */
	--color-success:               #4A7C59;
	--color-error:                 #C75050;
	--color-warning:               #D4A843;

	/* ── Spacing (8px grid, rem tabanlı) ── */
	--spacing-3xs:                 0.125rem;  /* 2px  */
	--spacing-2xs:                 0.25rem;   /* 4px  */
	--spacing-xs:                  0.25rem;   /* 4px  */
	--spacing-sm:                  0.5rem;    /* 8px  */
	--spacing-md:                  1rem;      /* 16px */
	--spacing-lg:                  1.5rem;    /* 24px */
	--spacing-xl:                  2rem;      /* 32px */
	--spacing-2xl:                 3rem;      /* 48px */
	--spacing-3xl:                 4rem;      /* 64px */
	--spacing-4xl:                 5rem;      /* 80px */
	--spacing-5xl:                 6rem;      /* 96px */
	--spacing-6xl:                 8rem;      /* 128px */

	/* ── Fluid Spacing (clamp: mobile → desktop) ── */
	/* Section padding: simetrik (üst = alt). Toplam section arası = 2x değer. */
	--section-space:               clamp(1.25rem, 0.9rem + 1.5vw, 1.875rem);  /* 20→30px (toplam 40→60px) */
	--section-space-lg:            clamp(1.5rem, 1rem + 2vw, 2.5rem);         /* 24→40px (toplam 48→80px, CTA/footer) */
	--section-space-xl:            clamp(2rem, 1.25rem + 3vw, 3rem);          /* 32→48px (toplam 64→96px, hero) */
	--container-gutter:            clamp(1.25rem, 0.5rem + 2.5vw, 2.5rem);    /* 20→40px  */
	--content-gap:                 clamp(1.25rem, 1rem + 0.75vw, 1.5rem);     /* 20→24px  */

	/* ── Semantik Spacing ── */
	--heading-gap:                 1.5rem;    /* heading → body arası */
	--paragraph-gap:               1.25rem;   /* paragraflar arası */
	--card-padding:                1.5rem;    /* kart iç boşluk */
	--card-gap:                    2rem;      /* kartlar arası */
	--form-field-gap:              1.5rem;    /* form alanları arası */
	--form-label-gap:              0.375rem;  /* label → input arası */

	/* ── Border Radius ── */
	--radius-sm:                   4px;
	--radius-md:                   8px;
	--radius-lg:                   12px;
	--radius-full:                 9999px;

	/* ── Focus Ring ── */
	--focus-ring:                  2px solid var(--color-focus);
	--focus-offset:                2px;
}

/* ================================================================
   1b. ACCESSIBILITY UTILITIES
   ================================================================ */

/* Screen-reader only — visually hidden but accessible */
.sr-only,
.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Skip link — becomes visible on focus */
.skip-link:focus {
	position: fixed;
	top: 8px;
	left: 8px;
	z-index: 100000;
	width: auto;
	height: auto;
	clip: auto;
	padding: 12px 24px;
	background-color: var(--color-white);
	color: var(--color-primary);
	font-size: 1rem;
	font-weight: 600;
	border: var(--focus-ring);
	border-radius: var(--radius-md);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Respect motion preferences */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* ================================================================
   2. TYPOGRAPHY OVERRIDES
   Elementor Kit Montserrat tanimlarini Playfair Display ile gecersiz kilar.
   Specificity: .elementor-kit-* h1 {} ile eslesir.
   ================================================================ */

/*
 * Elementor Kit heading font-family override.
 * Kit post-5.css'te Montserrat tanimli — biz Playfair Display kullaniyoruz.
 * [class*="elementor-kit-"] selectoru tum kit ID'lerini yakalar.
 */
[class*="elementor-kit-"] h1,
[class*="elementor-kit-"] h2,
[class*="elementor-kit-"] h3,
[class*="elementor-kit-"] h4,
[class*="elementor-kit-"] h5,
[class*="elementor-kit-"] h6 {
	font-family: var(--font-heading);
	font-weight: 600;
}
[class*="elementor-kit-"] h1 {
	font-weight: 700;
}

/*
 * Elementor heading widget override.
 * Widget icinde .elementor-heading-title class'i kullanilir.
 */
.elementor-heading-title {
	font-family: var(--font-heading);
	font-weight: 600;
}
h1.elementor-heading-title,
h1 .elementor-heading-title {
	font-weight: 700;
}

/*
 * Elementor widget title overrides (icon-box, image-box, vb.)
 */
.elementor-icon-box-title,
.elementor-image-box-title,
.elementor-cta__title,
.elementor-post__title,
.elementor-widget-theme-post-title .elementor-heading-title {
	font-family: var(--font-heading);
}

/* Tur kart icon-box (destination) body font kullanir, heading degil */
.tour-card .elementor-icon-box-title,
.e-loop-item .elementor-icon-box-title {
	font-family: var(--font-body);
	line-height: 1.2;
}
.tour-card .elementor-icon-box-content,
.e-loop-item .elementor-icon-box-content {
	line-height: 1.2;
}

/* Tur kart basligi (tc_title H4) — destination ile divider arasinda nefes alani */
.elementor-element-tc_title .elementor-heading-title {
	margin-top: 8px;
	margin-bottom: 8px;
}

/* Tur kart CTA linki — heading widget ama body font kullanir */
.elementor-element-tc_cta .elementor-heading-title {
	font-family: var(--font-body) !important;
}

/*
 * Outlined CTA buton — heading widget'i buton gibi gosterir.
 * Ana sayfada "View All Tours" vb. linkler icin.
 * Kullanim: Elementor heading widget'ina "cta-outlined" CSS class'i ver.
 */
.cta-outlined .elementor-heading-title,
.cta-outlined.elementor-heading-title {
	display: inline-block;
	font-family: var(--font-body) !important;
	font-size: 1rem;
	font-weight: 600 !important;
	color: var(--color-accent);
	background-color: transparent;
	border: 2px solid var(--color-border);
	border-radius: var(--radius-lg);
	padding: 14px 32px;
	transition: border-color 0.3s ease, background-color 0.3s ease, color 0.3s ease;
	cursor: pointer;
}
.cta-outlined .elementor-heading-title:hover,
.cta-outlined.elementor-heading-title:hover {
	border-color: var(--color-accent);
	background-color: rgba(212, 118, 78, 0.06);
}
.cta-outlined .elementor-heading-title a,
.cta-outlined.elementor-heading-title a {
	color: inherit !important;
	text-decoration: none !important;
}

/* ================================================================
   3. TYPOGRAPHY SCALE (Major Third — 1.25)
   Body 18px, heading'ler responsive, 50-68 yas hedef kitle icin
   optimize edilmis boyutlar.
   ================================================================ */

/*
 * Body text: 16px → 18px.
 * 50+ yas grubunda okunabilirlik icin minimum 18px oneriliyor.
 */
[class*="elementor-kit-"] {
	font-size: 1.125rem; /* 18px */
	line-height: 1.65;
}

/*
 * Heading scale — Desktop (varsayilan).
 * Major Third (1.25) orani: 44 → 35 → 28 → 23.
 */
[class*="elementor-kit-"] h1 {
	font-size: 2.75rem;   /* 44px */
	line-height: 1.18;
}
[class*="elementor-kit-"] h2 {
	font-size: 2.1875rem; /* 35px */
	line-height: 1.28;
}
[class*="elementor-kit-"] h3 {
	font-size: 1.75rem;   /* 28px */
	line-height: 1.32;
}
[class*="elementor-kit-"] h4 {
	font-size: 1.4375rem; /* 23px */
	line-height: 1.38;
}
[class*="elementor-kit-"] h5 {
	font-size: 1.125rem;  /* 18px */
	line-height: 1.4;
}
[class*="elementor-kit-"] h6 {
	font-size: 1rem;      /* 16px */
	line-height: 1.45;
}

/*
 * Tablet heading overrides (≤1024px).
 */
@media (max-width: 1024px) {
	[class*="elementor-kit-"] h1 {
		font-size: 2.25rem;   /* 36px */
	}
	[class*="elementor-kit-"] h2 {
		font-size: 1.875rem;  /* 30px */
	}
	[class*="elementor-kit-"] h3 {
		font-size: 1.625rem;  /* 26px */
	}
	[class*="elementor-kit-"] h4 {
		font-size: 1.3125rem; /* 21px */
	}
}

/*
 * Mobile heading + body overrides (≤767px).
 */
@media (max-width: 767px) {
	[class*="elementor-kit-"] {
		font-size: 1.0625rem; /* 17px */
	}
	[class*="elementor-kit-"] h1 {
		font-size: 2rem;      /* 32px */
	}
	[class*="elementor-kit-"] h2 {
		font-size: 1.75rem;   /* 28px */
	}
	[class*="elementor-kit-"] h3 {
		font-size: 1.5rem;    /* 24px */
	}
	[class*="elementor-kit-"] h4 {
		font-size: 1.25rem;   /* 20px */
	}
}

/* ================================================================
   3b. HEADING VERTICAL RHYTHM
   Baslik ustundeki bosluk > altindaki bosluk (Gestalt yakinlik).
   Elementor inline style her zaman bu kurallari gecersiz kilar.
   ================================================================ */
[class*="elementor-kit-"] h1 { margin-top: 0;      margin-bottom: 1.5rem; }
[class*="elementor-kit-"] h2 { margin-top: 2.5rem; margin-bottom: 1.25rem; }
[class*="elementor-kit-"] h3 { margin-top: 2rem;   margin-bottom: 1rem; }
[class*="elementor-kit-"] h4 { margin-top: 1.5rem; margin-bottom: 0.75rem; }
[class*="elementor-kit-"] h5 { margin-top: 1.25rem; margin-bottom: 0.5rem; }
[class*="elementor-kit-"] h6 { margin-top: 1rem;   margin-bottom: 0.5rem; }

/* Section'in ilk cocugu olan heading: margin-top gereksiz (section padding yeterli) */
body .e-con > .e-con-inner > .elementor-widget:first-child :is(h1,h2,h3,h4,h5,h6) {
	margin-top: 0;
}

/* Kart/loop icinde heading margin sifirla — kart layout'u kontrol eder */
body .e-loop-item :is(h1,h2,h3,h4,h5,h6),
body .tour-card :is(h1,h2,h3,h4,h5,h6),
body .rel-card :is(h1,h2,h3,h4,h5,h6) {
	margin-top: 0;
	margin-bottom: 0;
}

/* Mobile heading margin azaltma */
@media (max-width: 767px) {
	[class*="elementor-kit-"] h2 { margin-top: 1.5rem;  margin-bottom: 1rem; }
	[class*="elementor-kit-"] h3 { margin-top: 1.25rem; margin-bottom: 0.75rem; }
	[class*="elementor-kit-"] h4 { margin-top: 1rem;    margin-bottom: 0.5rem; }
}

/* ================================================================
   3c. PARAGRAPH SPACING
   Tutarli paragraf arasi bosluk ve son paragrafta margin sifirla.
   ================================================================ */
[class*="elementor-kit-"] p {
	margin-top: 0;
	margin-bottom: var(--paragraph-gap);
}
[class*="elementor-kit-"] p:last-child {
	margin-bottom: 0;
}

/* ================================================================
   4. BUTTON OVERRIDES
   Kirmizi gradient → solid accent renk.
   Min-height 48px (WCAG touch target), font-size 16px.
   ================================================================ */

/*
 * Primary buton: solid accent arka plan, gradient kaldirildi.
 * Elementor Kit .elementor-kit-5 .elementor-button specificity'sini
 * gecmek icin body selector eklendi.
 */
body .elementor-button,
body.elementor-kit-5 .elementor-button,
body.elementor-kit-5 button,
body.elementor-kit-5 input[type="button"],
body.elementor-kit-5 input[type="submit"],
[class*="elementor-kit-"] .elementor-button,
[class*="elementor-kit-"] button,
[class*="elementor-kit-"] input[type="submit"] {
	background-image: none !important;
	background-color: var(--color-accent) !important;
	color: var(--color-primary-foreground) !important;
	border: none;
	border-radius: var(--radius-md);
	font-family: var(--font-body);
	font-size: 1rem;       /* 16px */
	font-weight: 600;
	min-height: 48px;
	padding: 14px 32px;
	transition: background-color 0.3s ease, box-shadow 0.3s ease;
	line-height: 1.2;
}
body .elementor-button:hover,
body .elementor-button:focus,
body.elementor-kit-5 .elementor-button:hover,
body.elementor-kit-5 .elementor-button:focus,
body.elementor-kit-5 button:hover,
body.elementor-kit-5 button:focus,
body.elementor-kit-5 input[type="submit"]:hover,
body.elementor-kit-5 input[type="submit"]:focus {
	background-image: none !important;
	background-color: var(--color-accent-dark) !important;
	color: var(--color-primary-foreground) !important;
}
body .elementor-button:focus-visible,
body.elementor-kit-5 .elementor-button:focus-visible,
body.elementor-kit-5 button:focus-visible,
body.elementor-kit-5 input[type="submit"]:focus-visible {
	outline: var(--focus-ring);
	outline-offset: var(--focus-offset);
}

/* ================================================================
   5. LINK COLORS
   Hello Elementor reset #c36 pembe link rengini brand accent ile
   degistirir.
   ================================================================ */
[class*="elementor-kit-"] a:not(.elementor-button):not([class*="elementor-item"]) {
	color: var(--color-accent-text);
	text-decoration: none;
	transition: color 0.2s ease;
}
[class*="elementor-kit-"] a:not(.elementor-button):not([class*="elementor-item"]):hover {
	color: var(--color-accent-dark);
	text-decoration: underline;
}

/* ================================================================
   6. ICON COLOR OVERRIDES
   Kirmizi (#E10000, #E23125) ikonlari brand accent ile degistirir.
   Elementor icon-box, icon-list ve social-icons widget'larini kapsar.
   ================================================================ */
body .elementor-icon-box-icon .elementor-icon,
body .elementor-icon-box-icon .elementor-icon i,
body .elementor-icon-box-icon .elementor-icon svg {
	color: var(--color-accent) !important;
	fill: var(--color-accent) !important;
}
body .elementor-icon-list-icon i,
body .elementor-icon-list-icon svg {
	color: var(--color-accent) !important;
	fill: var(--color-accent) !important;
}

/* ================================================================
   7. FORM INPUT OVERRIDES
   Form alanlari: soguk gri #E1E1E1 border → sicak gri token.
   Min font-size 16px (iOS zoom engellemek icin).
   ================================================================ */
body .elementor-field-group .elementor-field,
body .elementor-field-group .elementor-field-textual {
	border-color: var(--color-border) !important;
	border-radius: var(--radius-md);
	font-size: 1rem;       /* 16px — iOS zoom engeller */
	padding: 12px 16px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	background-color: var(--color-background);
}
body .elementor-field-group .elementor-field:focus,
body .elementor-field-group .elementor-field-textual:focus {
	border-color: var(--color-accent) !important;
	box-shadow: 0 0 0 3px rgba(212, 118, 78, 0.15);
	background-color: var(--color-white);
}
body .elementor-field-group .elementor-field:focus-visible,
body .elementor-field-group .elementor-field-textual:focus-visible {
	outline: var(--focus-ring);
	outline-offset: var(--focus-offset);
}

/* Placeholder rengi */
body .elementor-field::placeholder {
	color: var(--color-secondary);
	opacity: 0.7;
}

/* Form layout spacing */
body .elementor-form .elementor-field-group {
	margin-bottom: var(--spacing-md); /* 16px — daha sıkı aralık */
}
body .elementor-form .elementor-field-label {
	margin-bottom: var(--form-label-gap); /* 6px */
	font-family: var(--font-body);
	font-size: 1rem; /* 16px — accessible minimum */
	font-weight: 600;
	color: var(--color-primary);
	letter-spacing: 0.01em;
}

/* Textarea yuksekligi */
body .elementor-field-group .elementor-field-textual textarea {
	min-height: 120px;
	resize: vertical;
}

/* ================================================================
   7b. ELEMENTOR FORM CARD CONTAINER
   Form widget'inin bulundugu container'a kart gorunumu.
   Elementor editor'de container'a "form-card" CSS class'i verilir.
   ================================================================ */
.form-card {
	background-color: var(--color-white);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-lg);
	padding: var(--spacing-xl) !important; /* 32px */
	box-shadow: var(--shadow-card);
}
@media (max-width: 767px) {
	.form-card {
		padding: var(--spacing-lg) !important; /* 24px */
	}
}

/* ================================================================
   7c. DYNAMIC CONTENT WIDGET — MOBILE COMPACT LAYOUT
   Request form sayfasinda tur gorseli + basligi mobilde yatay gosterir.
   ================================================================ */
.conmigo-widget-wrapper .conmigo-image img {
	border-radius: var(--radius-lg);
}

@media (max-width: 767px) {
	/* Mobilde yatay layout: gorsel sol, baslik sag */
	.conmigo-widget-wrapper {
		display: flex !important;
		flex-direction: row !important;
		align-items: center;
		gap: var(--spacing-md); /* 16px */
		text-align: left !important;
	}
	.conmigo-widget-wrapper .conmigo-image {
		flex-shrink: 0;
		width: 100px;
	}
	.conmigo-widget-wrapper .conmigo-image img {
		width: 100px;
		height: 100px;
		object-fit: cover;
		border-radius: var(--radius-md);
	}
	.conmigo-widget-wrapper .conmigo-title {
		font-size: 1.125rem !important; /* 18px — mobile'de kompakt */
		line-height: 1.3;
		margin: 0 !important;
	}
	.conmigo-widget-wrapper .conmigo-price {
		font-size: 0.9375rem;
		margin-top: var(--spacing-xs) !important;
	}
}

/* ================================================================
   8. CARD & SHADOW STANDARDIZATION
   Tum kartlar icin tek bir border-radius ve shadow standardi.
   ================================================================ */

/* Standart box-shadow token */
:root {
	--shadow-card:         0 2px 8px rgba(0, 0, 0, 0.08);
	--shadow-card-hover:   0 8px 24px rgba(0, 0, 0, 0.12);
}

/*
 * Elementor posts kartlari — border-radius ve shadow.
 * Loop template (641) kendi shadow/radius tanimliyor,
 * bu yuzden .e-loop-item buraya dahil edilmez.
 */
body .elementor-post {
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--shadow-card);
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}
body .elementor-post:hover {
	box-shadow: var(--shadow-card-hover);
	transform: translateY(-2px);
}

/*
 * Loop grid kart yukseklik duzeltmesi.
 * Desktop grid'de auto-rows:1fr tum kartlari esit yukseklikte tutar.
 * tc_root icindeki tc_content alani flex-grow:1 ile boslugu doldurur,
 * boylece kart alt kenari ile shadow siniri ayni hizada olur.
 * Mobilde sorun yok (tek sutun, her kart kendi yuksekliginde).
 */
body .e-loop-item > .e-con {
	height: 100%;
	display: flex;
	flex-direction: column;
}
body .e-loop-item > .e-con > .e-con:last-child {
	flex-grow: 1;
}

/*
 * Elementor image border-radius override.
 * Kit'te 15px tanimli — biz 12px kullaniyoruz.
 * width+height attr mevcut gorsellere CSS aspect-ratio ekler (CLS koruması).
 */
[class*="elementor-kit-"] img {
	border-radius: var(--radius-lg);
}
img {
	max-width: 100%;
	height: auto;
}

/* Kart icindeki gorseller: border-radius devre disi.
 * Kart container'i (tc_root) overflow:hidden + border-radius tanimi var,
 * gorsel de radius alirsa "kutu icinde kutu" gorunumu olusur.
 */
body .elementor-post .elementor-post__thumbnail img,
body .e-loop-item img,
body .tour-card img {
	border-radius: 0;
}

/* ================================================================
   9. SPACING & LAYOUT DEFAULTS
   CSS class tabanli section spacing sistemi.
   Elementor'da icerik/yapi, CSS'te stil.
   Elementor container'a CSS class vererek spacing kontrol edilir.

   Kullanim (Elementor > Advanced > CSS Classes):
     .section          → Normal section (30px padding)
     .section-lg       → CTA, featured (40px padding)
     .section-hero     → Ana sayfa hero (80vh, immersive)
     .section-hero-sm  → Alt sayfa hero (45vh, compact)
     .section-none     → Padding yok
   ================================================================ */

/* Section padding token'lari */
:root {
	--section-padding:             1.875rem;  /* 30px — normal section */
	--section-padding-lg:          2.5rem;    /* 40px — CTA, featured */
	--container-padding-desktop:   2.5rem;    /* 40px */
	--container-padding-tablet:    2rem;      /* 32px */
	--container-padding-mobile:    1.25rem;   /* 20px */
}

/*
 * Elementor boxed container — max-width.
 */
body .e-con.e-con-boxed {
	max-width: 1200px;
}

/*
 * Top-level section container'lara fluid side padding.
 * clamp() ile 20px (mobile) → 40px (desktop) arasi fluid gecis.
 */
body .e-con.e-con-full > .e-con-inner {
	padding-left: var(--container-gutter);
	padding-right: var(--container-gutter);
}

/*
 * .section — Normal icerik section'lari.
 * Simetrik: 30px üst + 30px alt = toplam 60px section arasi.
 */
body .section.e-con {
	padding-top: var(--section-padding) !important;
	padding-bottom: var(--section-padding) !important;
}

/*
 * .section-lg — CTA, featured, footer-öncesi gibi vurgulu section'lar.
 * Simetrik: 40px üst + 40px alt = toplam 80px section arasi.
 */
body .section-lg.e-con {
	padding-top: var(--section-padding-lg) !important;
	padding-bottom: var(--section-padding-lg) !important;
}

/*
 * .section-hero — Ana sayfa hero. Immersive, tam ekran yaklasimi.
 * 80vh ile viewport'un buyuk bolumunu kaplar.
 * min/max-height ile asiri kisa/uzun ekranlarda kontrol saglar.
 */
body .section-hero.e-con,
body .section-hero-sm.e-con {
	position: relative;
	padding-top: 0 !important;
	padding-bottom: 2rem !important; /* icerik alt kenardan nefes alsin */
	justify-content: flex-end !important; /* icerik alta yaslanir */
	align-items: center !important; /* yatayda ortala */
}
body .section-hero.e-con {
	min-height: 80vh !important;
	min-height: 80dvh !important; /* mobilde tarayici chrome'u hesaba katar */
}

/*
 * .section-hero-sm — Alt sayfa hero (FAQ, About, Contact, Tours).
 * Sayfa basligi + breadcrumb icin yeterli, icerigi ezmez.
 */
body .section-hero-sm.e-con {
	min-height: 45vh !important;
	min-height: 45dvh !important;
	max-height: 500px !important;
}

/*
 * .align-left — Hero icerigini sola yaslar ve boxed content ile hizalar.
 * Widget'lara max-width + margin:auto vererek, alttaki e-con-boxed
 * icerigi ile ayni sol kenardan baslamasini saglar.
 * Container padding'e dokunmaz — yalnizca widget centering ile calisir.
 * Kullanim: section-hero-sm align-left
 */
/* e-con-full: widget'lar direkt cocuk — 1200px boxed ile hizala */
body .align-left.e-con-full > .elementor-element {
	max-width: 1200px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	text-align: left !important;
	position: relative;
	z-index: 2;
}
/* e-con-boxed: .e-con-inner varsa */
body .align-left.e-con > .e-con-inner {
	text-align: left !important;
	position: relative;
	z-index: 2;
}
body .align-left.e-con > .e-con-inner > .elementor-element {
	text-align: left !important;
}

/*
 * Hero overlay — gorsel uzerine koyu katman.
 * Beyaz yazinin her gorselde okunmasini saglar.
 * ::before ile icerik uzerine yarim saydam siyah gradient.
 */
body .section-hero.e-con::before,
body .section-hero-sm.e-con::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		to bottom,
		rgba(0, 0, 0, 0) 0%,
		rgba(0, 0, 0, 0) 40%,
		rgba(0, 0, 0, 0.35) 100%
	);
	z-index: 1;
	pointer-events: none;
}

/* Hero icerigi overlay'in ustunde kalsin */
/* e-con-boxed: icerik .e-con-inner icinde */
body .section-hero.e-con > .e-con-inner,
body .section-hero-sm.e-con > .e-con-inner {
	position: relative;
	z-index: 2;
}
/* e-con-full: icerik dogrudan container icinde (wrapper yok) */
body .section-hero.e-con-full > .elementor-element,
body .section-hero-sm.e-con-full > .elementor-element {
	position: relative;
	z-index: 2;
}

/*
 * .section-none — Padding gerektirmeyen container'lar.
 * Wrapper parent, bosluk istemeyen alanlar icin.
 */
body .section-none.e-con {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Tablet (≤1024px) */
@media (max-width: 1024px) {
	body .section.e-con {
		padding-top: 1.5rem !important;    /* 24px */
		padding-bottom: 1.5rem !important;
	}
	body .section-lg.e-con {
		padding-top: 2rem !important;      /* 32px */
		padding-bottom: 2rem !important;
	}
	body .section-hero.e-con {
		min-height: 70vh !important;
		min-height: 70dvh !important;
	}
	body .section-hero-sm.e-con {
		min-height: 35vh !important;
		min-height: 35dvh !important;
		max-height: 400px !important;
	}
}

/* Mobile (≤767px) */
@media (max-width: 767px) {
	body .section.e-con {
		padding-top: 1.25rem !important;   /* 20px */
		padding-bottom: 1.25rem !important;
	}
	body .section-lg.e-con {
		padding-top: 1.5rem !important;    /* 24px */
		padding-bottom: 1.5rem !important;
	}
	body .section-hero.e-con {
		min-height: 60vh !important;
		min-height: 60dvh !important;
	}
	body .section-hero-sm.e-con {
		min-height: 30vh !important;
		min-height: 30dvh !important;
		max-height: 300px !important;
	}
}

/*
 * Elementor widget arasi default gap.
 * Fluid: 20px (mobile) → 24px (desktop).
 * Elementor'da acik deger atanmissa inline style bunu gecersiz kilar.
 */
body .e-con > .e-con-inner {
	gap: var(--content-gap);
}

/* ================================================================
   10. PAGINATION
   Elementor posts widget ve WordPress varsayilan pagination.
   ================================================================ */
body .elementor-pagination,
body .e-load-more-anchor,
body nav.navigation.pagination {
	margin-top: var(--spacing-2xl); /* 48px */
	display: flex;
	justify-content: center;
	align-items: center;
	gap: var(--spacing-xs); /* 4px */
	flex-wrap: wrap;
}
body .elementor-pagination .page-numbers,
body nav.navigation.pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px; /* WCAG touch target */
	min-height: 44px;
	padding: 8px 14px;
	font-family: var(--font-body);
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--color-primary);
	background-color: var(--color-white);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	text-decoration: none;
	transition: all 0.2s ease;
	line-height: 1;
}
body .elementor-pagination .page-numbers:hover,
body nav.navigation.pagination .page-numbers:hover {
	border-color: var(--color-accent);
	color: var(--color-accent);
	background-color: rgba(212, 118, 78, 0.06);
}
body .elementor-pagination .page-numbers.current,
body nav.navigation.pagination .page-numbers.current {
	background-color: var(--color-accent);
	border-color: var(--color-accent);
	color: var(--color-primary-foreground);
	font-weight: 600;
}
body .elementor-pagination .page-numbers.dots,
body nav.navigation.pagination .page-numbers.dots {
	border: none;
	background: none;
	color: var(--color-secondary);
	cursor: default;
	min-width: auto;
	padding: 8px 4px;
}
body .elementor-pagination .page-numbers.dots:hover,
body nav.navigation.pagination .page-numbers.dots:hover {
	background: none;
	color: var(--color-secondary);
}
/* Prev/Next arrows */
body .elementor-pagination .page-numbers.prev,
body .elementor-pagination .page-numbers.next,
body nav.navigation.pagination .page-numbers.prev,
body nav.navigation.pagination .page-numbers.next {
	font-weight: 600;
}
body .elementor-pagination .page-numbers:focus-visible,
body nav.navigation.pagination .page-numbers:focus-visible {
	outline: var(--focus-ring);
	outline-offset: var(--focus-offset);
}

/* ================================================================
   10b. TRIPADVISOR WIDGET FIX
   TripAdvisor eklentisi JS ile inline margin-top ekliyor.
   Mobilde gereksiz bosluk olusturuyor — override.
   ================================================================ */
.ti-footer.ti-footer-grid {
	margin-top: 16px !important;
}
@media (max-width: 767px) {
	.ti-footer.ti-footer-grid {
		margin-top: 8px !important;
	}
}

/* ================================================================
   11. FOOTER
   ================================================================ */

/* TURSAB lisans kutusu */
.ft-tursab-box .elementor-icon-box-wrapper {
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: var(--radius-md);
	padding: 14px 16px;
}

/* Footer link renkleri */
.elementor-element-ft_bottom a {
	color: #7A6E72 !important;
	transition: color 0.2s ease;
}
.elementor-element-ft_bottom a:hover {
	color: #FFFFFF !important;
	text-decoration: none !important;
}

/* Footer legal links arasi bosluk */
.elementor-element-ft_legal a {
	margin-left: 16px;
}
.elementor-element-ft_legal a:first-child {
	margin-left: 0;
}
