/**
 * ParlaVale — Faz 6 responsive & UI cilası (pv-* tüm sayfalar).
 *
 * Breakpoint matrisi (6 viewport — test checklist ile uyumlu):
 *   xs  0–374px    küçük telefon
 *   sm  375–767px  mobil (414 dahil)
 *   md  768–1023px tablet
 *   lg  1024–1279px masaüstü
 *   xl  1280px+    geniş ekran
 */

/* —— Tasarım tokenları (pv sayfaları) —— */
body.pv-home,
body.pv-chrome,
body.pv-hk,
body.pv-hmz,
body.pv-vv,
body.pv-il,
body.pv-vc,
body.pv-hakkimizda {
	--pv-bp-xs-max: 374px;
	--pv-bp-sm-max: 767px;
	--pv-bp-md-min: 768px;
	--pv-bp-md-max: 1023px;
	--pv-bp-lg-min: 1024px;
	--pv-bp-xl-min: 1280px;
	--pv-section-py-mobile: clamp(3rem, 10vw, 5rem);
	--pv-gutter-mobile: max(1rem, env(safe-area-inset-left, 0px));
	--pv-gutter-mobile-r: max(1rem, env(safe-area-inset-right, 0px));
}

/* —— Global: taşma, medya, container —— */
body.pv-home,
body.pv-chrome,
body.pv-hk,
body.pv-hmz,
body.pv-vv,
body.pv-il,
body.pv-vc,
body.pv-hakkimizda {
	overflow-x: clip;
}

body.pv-home .elementor-section,
body.pv-chrome .elementor-section,
body.pv-hk .elementor-section,
body.pv-hmz .elementor-section,
body.pv-vv .elementor-section,
body.pv-il .elementor-section,
body.pv-vc .elementor-section,
body.pv-home .e-con,
body.pv-chrome .e-con,
body.pv-hk .e-con,
body.pv-hmz .e-con,
body.pv-vv .e-con,
body.pv-il .e-con,
body.pv-vc .e-con {
	max-width: 100%;
	min-width: 0;
}

body.pv-home .elementor-widget-container,
body.pv-chrome .elementor-widget-container,
body.pv-hk .elementor-widget-container,
body.pv-hmz .elementor-widget-container,
body.pv-vv .elementor-widget-container,
body.pv-il .elementor-widget-container,
body.pv-vc .elementor-widget-container {
	max-width: 100%;
	min-width: 0;
}

body.pv-home img,
body.pv-chrome img,
body.pv-hk img,
body.pv-hmz img,
body.pv-vv img,
body.pv-il img,
body.pv-vc img,
body.pv-home video,
body.pv-chrome video,
body.pv-hk video,
body.pv-hmz video,
body.pv-vv video {
	max-width: 100%;
	height: auto;
}

body.pv-home table,
body.pv-chrome table,
body.pv-vc table,
body.pv-il table {
	display: block;
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

/* —— Mobil menü (≤1023) —— */
@media (max-width: 1023px) {
	.pv-navbar__inner {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 12px !important;
		flex-wrap: nowrap !important;
	}

	.pv-navbar__inner > .pv-logo-link {
		flex: 0 1 auto !important;
		min-width: 0 !important;
		max-width: calc(100% - 52px) !important;
	}

	.pv-navbar__inner > .pv-navbar__hamburger {
		flex: 0 0 auto !important;
		margin-left: auto !important;
		display: flex !important;
	}

	.pv-navbar__inner > .pv-navbar__menu,
	.pv-navbar__inner > .pv-navbar__actions,
	.pv-navbar__menu,
	.pv-navbar__actions {
		display: none !important;
		visibility: hidden !important;
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		overflow: hidden !important;
		clip: rect(0, 0, 0, 0) !important;
		pointer-events: none !important;
	}

	.pv-mobile-menu:not(.pv-mobile-menu--open) {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	.pv-hero__contact-bar--desktop,
	.pv-hero__contact-bar--home-premium.pv-hero__contact-bar--desktop,
	body.pv-vc .pv-hero__contact-bar--desktop,
	body.pv-vc .pv-hero__contact-bar--vc-premium,
	body.pv-il .pv-hero__contact-bar--desktop,
	body.pv-vv .pv-hero__contact-bar--desktop {
		display: none !important;
	}

	body.pv-hk .pv-hero__contact-bar--desktop {
		display: none !important;
	}
}

@media (min-width: 1024px) {
	.pv-navbar__hamburger {
		display: none !important;
	}

	.pv-mobile-menu,
	.pv-mobile-menu.pv-mobile-menu--open {
		display: none !important;
	}
}

body.pv-mobile-nav-open,
html.pv-mobile-nav-open {
	overflow: hidden;
	touch-action: none;
	height: 100%;
}

/* iOS safe-area */
.pv-mobile-bar,
.pv-footer__bottom,
.pv-footer--theme-fallback .pv-footer__bottom {
	padding-bottom: max(0.75rem, env(safe-area-inset-bottom, 0px));
}

.pv-navbar,
.pv-navbar.pv-navbar--fixed {
	padding-top: max(0px, env(safe-area-inset-top, 0px));
}

body.pv-home,
body.pv-chrome,
body.pv-vc,
body.pv-il {
	padding-bottom: env(safe-area-inset-bottom, 0px);
}

/* Dokunma hedefleri (min 44px) */
.pv-footer__quick-btn,
.pv-mobile-bar__btn,
.pv-navbar__cta,
.pv-navbar__hamburger,
.pv-mobile-menu__link,
.pv-mobile-menu__toggle,
.pv-hero__btn,
.pv-vc-form__btn,
.pv-il-form__submit,
button.pv-vc-step__nav,
.pv-btn,
.pv-btn-call {
	min-height: 2.75rem;
}

.pv-footer__quick-btn,
.pv-mobile-bar__btn,
.pv-navbar__hamburger {
	min-width: 2.75rem;
}

/* Tablo / grid taşması */
.pv-vc-form table,
.pv-il-form table,
.pv-hmz-grid,
.pv-hmz-bento,
.elementor-widget-pv-vc-booking .pv-vc-form__grid {
	max-width: 100%;
}

.pv-vc-form__grid,
.pv-il-form__row--split,
.pv-hk-stats__grid,
.pv-hk-team__grid,
.pv-hk-values__grid {
	min-width: 0;
}

/* —— xs: 0–374px —— */
@media (max-width: 374px) {
	.pv-container {
		width: min(100% - 24px, var(--pv-container));
	}

	.pv-services,
	.pv-why,
	.pv-testimonials,
	.pv-cta,
	.pv-stats,
	.pv-hk-section,
	.pv-hmz-section,
	.pv-vv-section,
	.pv-vc-section,
	.pv-il-section {
		padding-top: var(--pv-section-py-mobile);
		padding-bottom: var(--pv-section-py-mobile);
	}

	.pv-hero {
		padding-top: 72px;
		min-height: auto;
	}

	.pv-hero__inner {
		min-height: 0;
	}

	.pv-hero__content {
		padding: 32px 0 40px;
	}

	.pv-hero__media {
		min-height: 240px;
	}

	.pv-hero__img,
	.pv-hero__side-img {
		min-height: 240px;
	}

	.pv-service-card {
		height: min(380px, 88vh);
	}

	.pv-service-card__body {
		padding: 20px;
	}

	.pv-stats__number {
		font-size: clamp(1.5rem, 8vw, 2rem);
	}

	.pv-mobile-menu__panel {
		padding-left: 16px;
		padding-right: 16px;
	}
}

/* —— sm: ≤767px (mobil) —— */
@media (max-width: 767px) {
	.pv-container {
		width: min(100% - 32px, var(--pv-container));
	}

	.pv-navbar__inner {
		padding-left: var(--pv-gutter-mobile);
		padding-right: var(--pv-gutter-mobile-r);
	}

	.pv-footer__main {
		padding-left: var(--pv-gutter-mobile);
		padding-right: var(--pv-gutter-mobile-r);
	}

	.pv-hero__title {
		font-size: clamp(1.75rem, 8vw, 2.5rem);
		word-break: break-word;
	}

	.pv-hero__desc {
		max-width: 100%;
	}

	.pv-hero__trust {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}

	.pv-hero__trust-item,
	.pv-stats__item {
		min-width: 0;
		flex: 1 1 auto;
	}

	.pv-hero__cta {
		flex-direction: column;
		align-items: stretch;
	}

	.pv-hero__cta .pv-btn {
		width: 100%;
		justify-content: center;
	}

	.pv-stats__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px 12px;
	}

	.pv-services__grid,
	.pv-services__grid--count-3 {
		grid-template-columns: 1fr !important;
		gap: 20px;
	}

	.pv-services__grid--count-3 .pv-service-card:nth-child(3):last-child {
		grid-column: auto !important;
		max-width: none !important;
		margin-inline: 0 !important;
	}

	.pv-service-card {
		height: min(420px, 75vh);
		margin-inline: 0;
	}

	.pv-testimonials__grid {
		grid-template-columns: 1fr !important;
	}

	.pv-why__grid {
		gap: 32px;
	}

	.pv-why__badge {
		display: none;
	}

	.pv-footer__cols {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.pv-footer__col--contact {
		grid-column: auto;
	}

	.pv-footer__quick {
		flex-direction: column;
	}

	.pv-footer__quick-btn {
		width: 100%;
		justify-content: center;
	}

	.pv-navbar__panel,
	.pv-navbar__dropdown-menu {
		max-width: 100vw;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.pv-vc-form__field,
	.pv-il-form__field,
	.pv-vc-form input,
	.pv-vc-form select,
	.pv-il-form input,
	.pv-il-form textarea {
		max-width: 100%;
	}

	.pv-vc-form__grid,
	.pv-hmz-grid__inner,
	.pv-hmz-bento__grid {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.pv-vc-form__steps-indicator {
		flex-wrap: wrap;
		gap: 0.5rem;
	}

	.pv-vc-hero__inner,
	.pv-il-hero__inner,
	.pv-hk-hero__grid,
	.pv-vv-hero__inner {
		grid-template-columns: 1fr !important;
	}

	.pv-il-form__row--split,
	.pv-il-contact__grid {
		grid-template-columns: 1fr !important;
	}

	.pv-hk-team__grid,
	.pv-hk-values__grid {
		grid-template-columns: 1fr !important;
	}

	.pv-mobile-bar {
		display: flex !important;
		padding-left: max(0.5rem, env(safe-area-inset-left, 0px));
		padding-right: max(0.5rem, env(safe-area-inset-right, 0px));
	}

	body.pv-home,
	body.pv-chrome,
	body.pv-vc,
	body.pv-il,
	body.pv-hk,
	body.pv-hakkimizda,
	body.pv-hmz {
		padding-bottom: calc(60px + env(safe-area-inset-bottom, 0px));
	}
}

/* —— md: 768–1023px (tablet) —— */
@media (min-width: 768px) and (max-width: 1023px) {
	.pv-mobile-menu__panel {
		max-width: min(420px, 92vw);
		margin-left: auto;
	}

	.pv-mobile-menu__link,
	.pv-mobile-menu__sublink {
		min-height: 48px;
		display: flex;
		align-items: center;
	}
	.pv-footer__cols {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pv-footer__col--contact {
		grid-column: 1 / -1;
	}

	.pv-hmz-grid__inner,
	.pv-hmz-bento__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pv-vc-form__grid--steps {
		grid-template-columns: 1fr 1fr;
	}

	.pv-il-form__row--split {
		grid-template-columns: 1fr 1fr;
	}

	.pv-hero__inner {
		gap: clamp(1.5rem, 3vw, 2.5rem);
	}

	.pv-services__grid--count-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.pv-services__grid--count-3 .pv-service-card:nth-child(3):last-child {
		grid-column: 1 / -1;
		max-width: min(100%, 520px);
		margin-inline: auto;
	}

	.pv-testimonials__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.pv-hk-team__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pv-stats__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* —— lg: 1024–1279px —— */
@media (min-width: 1024px) and (max-width: 1279px) {
	.pv-hero__inner {
		padding-inline: 20px;
	}

	.pv-container {
		width: min(100% - 40px, var(--pv-container));
	}

	.pv-services__grid--count-3 {
		gap: 22px;
	}

	.pv-footer__main {
		gap: 48px 32px;
	}
}

/* —— xl: 1280px+ —— */
@media (min-width: 1280px) {
	.pv-hero__inner {
		max-width: 1400px;
		margin-inline: auto;
	}

	.pv-container {
		width: min(100% - 48px, var(--pv-container));
	}
}

/* Elementor editör: chrome gizleme önizlemede bozulmasın */
body.elementor-editor-active .elementor-widget-pv-header,
body.elementor-editor-active .elementor-widget-pv-footer {
	display: block !important;
	visibility: visible !important;
	height: auto !important;
	max-height: none !important;
	overflow: visible !important;
	pointer-events: auto !important;
}

@media (prefers-reduced-motion: reduce) {
	body.pv-home *,
	body.pv-chrome *,
	body.pv-hk *,
	body.pv-hmz *,
	body.pv-vv *,
	body.pv-il *,
	body.pv-vc * {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
