/* =========================================================
   PG TYPOGRAPHY — Plus Jakarta Sans, modern type system
   Bizix temasının "Fira Sans / Roboto" font handle'larını ezerek
   tüm siteyi tek font sistemine çevirir.
   ========================================================= */

:root {
	/* Font stack */
	--pg-font: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

	/* Type scale — standart sistem (16px tabanlı) */
	--pg-h1: 48px;
	--pg-h2: 36px;
	--pg-h3: 28px;
	--pg-h4: 22px;
	--pg-h5: 18px;
	--pg-h6: 16px;
	--pg-body: 16px;
	--pg-small: 14px;
	--pg-tiny: 12.5px;

	/* Line heights */
	--pg-lh-tight: 1.1;     /* h1, h2 */
	--pg-lh-snug: 1.2;      /* h3, h4 */
	--pg-lh-normal: 1.45;   /* h5, h6 */
	--pg-lh-body: 1.65;     /* body */

	/* Letter spacing */
	--pg-ls-tighter: -0.03em;  /* h1 */
	--pg-ls-tight: -0.02em;    /* h2-h4 */
	--pg-ls-normal: -0.005em;  /* body */

	/* Weights */
	--pg-w-regular: 400;
	--pg-w-medium: 500;
	--pg-w-semibold: 600;
	--pg-w-bold: 700;
	--pg-w-extra: 800;

	/* Text colors — temaya dokunmaz, fallback */
	--pg-text-primary: #14181f;
	--pg-text-secondary: #4a5159;
	--pg-text-muted: #6b7280;
}

/* =========================================================
   GLOBAL — body & temel
   ========================================================= */

html {
	font-size: 16px;
	-webkit-text-size-adjust: 100%;
}

body,
body.swm-body,
.swm-body,
input,
button,
select,
textarea {
	font-family: var(--pg-font) !important;
	font-size: var(--pg-body) !important;
	line-height: var(--pg-lh-body) !important;
	letter-spacing: var(--pg-ls-normal) !important;
	font-weight: var(--pg-w-regular) !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-feature-settings: 'cv02', 'cv03', 'cv04', 'cv11', 'ss01';
	text-rendering: optimizeLegibility;
}

/* =========================================================
   HEADINGS — global override
   Bizix tema'nın font handle'larını ezer:
   .gyan_heading_text, .gyan-heading-font, .gyan-font-heading,
   .swm-heading-font, .swm-font-heading, .swm-pf-only-title,
   .gyan_events_main_title
   ========================================================= */

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.gyan_heading_text,
.gyan-heading-font,
.gyan-font-heading,
.swm-heading-font,
.swm-font-heading,
.swm-pf-only-title,
.swm-heading-text,
.gyan_events_main_title,
.elementor-heading-title,
.entry-title,
.post-title,
.widget-title,
.swm-section-heading,
.swm-blog-title,
.swm-pf-title {
	font-family: var(--pg-font) !important;
	font-style: normal !important;
	color: var(--pg-text-primary);
}

/* h1 — büyük başlıklar */
h1, .h1, .entry-title, .swm-section-heading {
	font-size: var(--pg-h1) !important;
	font-weight: var(--pg-w-extra) !important;
	line-height: var(--pg-lh-tight) !important;
	letter-spacing: var(--pg-ls-tighter) !important;
}

/* h2 — bölüm başlıkları */
h2, .h2,
.gyan_heading_text,
.gyan-heading-font,
.swm-pf-only-title {
	font-size: var(--pg-h2) !important;
	font-weight: var(--pg-w-bold) !important;
	line-height: var(--pg-lh-tight) !important;
	letter-spacing: var(--pg-ls-tight) !important;
}

/* h3 — alt bölüm */
h3, .h3 {
	font-size: var(--pg-h3) !important;
	font-weight: var(--pg-w-bold) !important;
	line-height: var(--pg-lh-snug) !important;
	letter-spacing: var(--pg-ls-tight) !important;
}

/* h4 — kart başlıkları, blog başlıkları */
h4, .h4,
.swm-blog-title,
.swm-pf-title,
.swm-services-title {
	font-size: var(--pg-h4) !important;
	font-weight: var(--pg-w-semibold) !important;
	line-height: var(--pg-lh-snug) !important;
	letter-spacing: var(--pg-ls-tight) !important;
}

/* h5 — küçük başlık */
h5, .h5,
.widget-title {
	font-size: var(--pg-h5) !important;
	font-weight: var(--pg-w-semibold) !important;
	line-height: var(--pg-lh-normal) !important;
	letter-spacing: -0.01em !important;
}

/* h6 — etiket başlık */
h6, .h6 {
	font-size: var(--pg-h6) !important;
	font-weight: var(--pg-w-semibold) !important;
	line-height: var(--pg-lh-normal) !important;
	letter-spacing: 0 !important;
}

/* Headings spacing */
h1, h2, h3, h4, h5, h6 {
	margin-top: 0;
	margin-bottom: 0.5em;
}

/* =========================================================
   PARAGRAPHS, LISTS, GENEL TEXT
   ========================================================= */

p,
.swm-text,
.elementor-text-editor,
.gyan-text-content,
li,
td,
th {
	font-family: var(--pg-font) !important;
	font-size: var(--pg-body) !important;
	line-height: var(--pg-lh-body) !important;
	letter-spacing: var(--pg-ls-normal) !important;
	font-weight: var(--pg-w-regular) !important;
}

p {
	margin-top: 0;
	margin-bottom: 1em;
	color: var(--pg-text-secondary);
}

/* Lead paragrafları (büyük açıklayıcı metin) */
.lead,
.swm-lead,
.entry-content > p:first-of-type {
	font-size: 18px !important;
	line-height: 1.6 !important;
	color: var(--pg-text-primary);
}

/* Small text */
small,
.small,
.swm-small {
	font-size: var(--pg-small) !important;
}

/* =========================================================
   NAV / MENÜ — tema font handle'larını ez
   (sadece tema menüsü; pg-header.css kendi nav'ını yönetir)
   ========================================================= */

.swm-primary-nav,
.swm-primary-nav a,
.swm-primary-nav-wrap a,
.menu a,
nav a {
	font-family: var(--pg-font) !important;
	letter-spacing: 0 !important;
}

/* =========================================================
   BUTTONS, INPUTS — pg-buttons.css ile uyumlu kalsın
   ========================================================= */

button,
input[type="button"],
input[type="submit"],
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="password"],
input[type="number"],
textarea,
select,
.swm-button,
.elementor-button,
.wp-block-button__link,
.wp-block-search__button,
.wpcf7-form-control,
.wpcf7-submit {
	font-family: var(--pg-font) !important;
}

/* =========================================================
   ELEMENTOR — sayfa düzenleyici override
   ========================================================= */

.elementor-widget-heading h1,
.elementor-widget-heading h2,
.elementor-widget-heading h3,
.elementor-widget-heading h4,
.elementor-widget-heading h5,
.elementor-widget-heading h6,
.elementor-widget-heading .elementor-heading-title {
	font-family: var(--pg-font) !important;
}

.elementor,
.elementor-widget,
.elementor-text-editor p,
.elementor-text-editor li {
	font-family: var(--pg-font) !important;
}

/* Elementor heading default size override (sadece inline size yoksa) */
.elementor-widget-heading h2.elementor-heading-title:not([style*="font-size"]) {
	font-size: var(--pg-h2) !important;
}
.elementor-widget-heading h1.elementor-heading-title:not([style*="font-size"]) {
	font-size: var(--pg-h1) !important;
}
.elementor-widget-heading h3.elementor-heading-title:not([style*="font-size"]) {
	font-size: var(--pg-h3) !important;
}

/* =========================================================
   BLOG / POST CONTENT
   ========================================================= */

.swm-blog-list .swm-blog-title,
.swm-blog-grid .swm-blog-title,
article .entry-title,
.post .entry-title {
	font-family: var(--pg-font) !important;
	font-weight: var(--pg-w-bold) !important;
	letter-spacing: var(--pg-ls-tight) !important;
}

.swm-blog-list .swm-blog-title a,
article .entry-title a {
	color: inherit;
	transition: color .25s ease;
}
.swm-blog-list .swm-blog-title a:hover,
article .entry-title a:hover {
	color: #ff6b35;
}

.entry-content p,
.entry-content li {
	font-family: var(--pg-font) !important;
	font-size: 17px !important;
	line-height: 1.7 !important;
	color: var(--pg-text-secondary);
}

/* =========================================================
   WIDGETS, FOOTER
   ========================================================= */

.widget,
.widget-title,
.swm-footer,
.swm-footer * {
	font-family: var(--pg-font) !important;
}

.widget-title,
.swm-footer-widgets h3,
.swm-footer-widgets h4 {
	font-size: 16px !important;
	font-weight: var(--pg-w-semibold) !important;
	letter-spacing: 0 !important;
	margin-bottom: 16px;
}

/* =========================================================
   STRONG, EM, LINKS
   ========================================================= */

strong, b {
	font-weight: var(--pg-w-bold) !important;
}

em, i {
	font-style: italic;
}

a {
	font-family: inherit;
}

/* =========================================================
   FORMS — label & helper text
   ========================================================= */

label,
.swm-cf7-style label,
.wpcf7-form label,
form label {
	font-family: var(--pg-font) !important;
	font-size: var(--pg-small) !important;
	font-weight: var(--pg-w-medium) !important;
	letter-spacing: 0 !important;
}

/* =========================================================
   RESPONSIVE — küçük ekranlarda boyut düşür
   ========================================================= */

@media (max-width: 1024px) {
	:root {
		--pg-h1: 40px;
		--pg-h2: 32px;
		--pg-h3: 24px;
		--pg-h4: 20px;
	}
}

@media (max-width: 768px) {
	:root {
		--pg-h1: 32px;
		--pg-h2: 26px;
		--pg-h3: 22px;
		--pg-h4: 18px;
		--pg-h5: 16px;
		--pg-body: 15px;
	}

	body {
		font-size: 15px !important;
	}

	.entry-content p,
	.entry-content li {
		font-size: 16px !important;
	}
}

@media (max-width: 480px) {
	:root {
		--pg-h1: 28px;
		--pg-h2: 22px;
		--pg-h3: 19px;
	}
}

/* =========================================================
   PG HEADER — kendi font kuralını korusun
   pg-header.css içinde "Inter" tanımlı; biz onu Plus Jakarta'ya çekelim
   ========================================================= */

.pg-header,
.pg-header *,
.pg-mobile-nav,
.pg-mobile-nav *,
.pg-search-overlay,
.pg-search-overlay * {
	font-family: var(--pg-font) !important;
}

/* =========================================================
   PRINT
   ========================================================= */

@media print {
	body { font-size: 12pt !important; }
	h1 { font-size: 24pt !important; }
	h2 { font-size: 20pt !important; }
	h3 { font-size: 16pt !important; }
}
