/* ===========================
   Reset & Base
=========================== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
	--color-primary:   #2B2D42;
	--color-secondary: #8D99AE;
	--color-bg:        #EDF2F4;
	--color-accent:    #EF233C;
	--color-accent-dark: #D90429;
	--color-text:      #2B2D42;
	--color-muted:     #8D99AE;
	--color-bg-alt:    #EDF2F4;
	--font-base:       'Segoe UI', system-ui, sans-serif;
	--radius:          6px;
	--transition:      0.25s ease;
	--container-width: 1280px;

	/* Customizer tarafından override edilir */
	--header-height:  80px;
	--header-shrunk:  56px;
	--header-bg:      #ffffff;
	--header-text:    #2B2D42;
	--header-hover:   #EF233C;
}

html { scroll-behavior: smooth; }

body {
	font-family: var(--font-base);
	color: var(--color-text);
	background: #fff;
	line-height: 1.6;
	font-size: 16px;
}

body.nav-is-open { overflow: hidden; }

img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; transition: color var(--transition); }

/* ===========================
   Layout
=========================== */
.container {
	max-width: var(--container-width);
	margin: 0 auto;
	padding: 0 32px;
}

/* ===========================
   Buttons
=========================== */
.btn {
	display: inline-block;
	padding: 12px 32px;
	border-radius: 100px;
	font-weight: 600;
	cursor: pointer;
	transition: background var(--transition), color var(--transition);
	font-size: 0.95rem;
}
.btn-primary { background: var(--color-accent); color: #fff; }
.btn-primary:hover { background: var(--color-primary); color: #fff; }

/* ===========================
   Promo Bar
=========================== */
@keyframes promoSlideDown {
	from { transform: translateY(-100%); opacity: 0; }
	to   { transform: translateY(0);     opacity: 1; }
}

@keyframes promoShimmer {
	0%   { transform: translateX(-100%) skewX(-15deg); }
	100% { transform: translateX(400%)  skewX(-15deg); }
}

.promo-bar {
	width: 100%;
	padding: 11px 0;
	text-align: center;
	position: relative;
	z-index: 110;
	overflow: hidden;
	animation: promoSlideDown 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.promo-bar__shimmer {
	position: absolute;
	inset: 0;
	pointer-events: none;
}

.promo-bar__shimmer::after {
	content: '';
	position: absolute;
	top: 0; bottom: 0;
	width: 60px;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
	animation: promoShimmer 3.5s ease-in-out infinite;
	animation-delay: 1.5s;
}

.promo-bar__inner {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
}

.promo-bar__content { line-height: 1.4; font-size: inherit; }

.promo-bar__close {
	flex-shrink: 0;
	background: rgba(255,255,255,0.15);
	border: 1px solid rgba(255,255,255,0.25);
	border-radius: 50%;
	cursor: pointer;
	color: currentColor;
	width: 22px; height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background var(--transition), transform var(--transition);
}
.promo-bar__close:hover { background: rgba(255,255,255,0.3); transform: rotate(90deg); }
.promo-bar__close svg { width: 12px; height: 12px; }

/* Dismiss animation */
.promo-bar {
	transition: max-height 0.4s ease, padding 0.4s ease, opacity 0.3s ease;
	max-height: 200px;
}
.promo-bar.is-dismissed {
	max-height: 0;
	padding: 0;
	opacity: 0;
	overflow: hidden;
}

/* ===========================
   Header — Base
=========================== */
/* ─── GTranslate — header içine taşındığında ──────────────────────────────── */
.header-inner .gtranslate_wrapper {
	position: static !important;
	display: flex;
	align-items: center;
	margin-left: 16px;
}
.header-inner .gt_switcher_wrapper {
	position: static !important;
	transform: none !important;
	top: auto !important;
	right: auto !important;
}
.header-inner .gt_switcher {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}
.header-inner .gt_switcher a.gt_selected {
	background: transparent !important;
	border: 1px solid rgba(255,255,255,0.3) !important;
	border-radius: 5px !important;
	color: var(--header-text, #fff) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	padding: 5px 10px !important;
	display: flex !important;
	align-items: center !important;
	gap: 5px !important;
}
.header-inner .gt_switcher a.gt_selected img {
	width: 16px !important;
	height: 16px !important;
}
.header-inner .gt_switcher .gt_option {
	top: 100% !important;
	bottom: auto !important;
	right: 0 !important;
	left: auto !important;
	z-index: 9999 !important;
}
/* Mobil: hamburger butonundan önce */
@media (max-width: 960px) {
	.header-inner .gtranslate_wrapper { margin-left: auto; margin-right: 12px; }
}

.site-header {
	top: 0;
	z-index: 100;
	background: var(--header-bg);
	transition:
		height          0.3s ease,
		background      0.35s ease,
		box-shadow      0.3s ease,
		transform       0.35s ease;
}

.header-inner {
	display: flex;
	align-items: center;
	height: var(--header-height);
	gap: 24px;
	transition: height 0.3s ease;
}

/* ── Logo Sol ── */
.logo--left .site-branding   { flex-shrink: 0; align-self: center; }
.logo--left .main-navigation { margin-left: auto; align-self: center; }
.logo--left .menu-toggle      { align-self: center; }

/* ── Logo Orta ── */
.logo--center .header-inner {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
}
.logo--center .site-branding    { grid-column: 2; justify-self: center; align-self: center; }
.logo--center .main-navigation  { grid-column: 3; justify-self: end; align-self: center; margin-left: 0; }
.logo--center .menu-toggle       { grid-column: 3; justify-self: end; align-self: center; }

/* ── Logo Sağ ── */
.logo--right .site-branding   { order: 3; margin-left: auto; flex-shrink: 0; align-self: center; }
.logo--right .main-navigation { order: 1; margin-left: 0; align-self: center; }
.logo--right .menu-toggle      { order: 2; align-self: center; }

/* ── Şeffaf ── */
.site-header--transparent {
	position: absolute; left: 0; right: 0;
	background: transparent !important;
	border-bottom: none !important;
	box-shadow: none !important;
}
.site-header--transparent .site-title,
.site-header--transparent .main-navigation a { color: #fff; }
.site-header--transparent .menu-toggle__bar  { background: #fff; }

/* ── Scroll efektleri ── */
.site-header.is-scrolled { box-shadow: 0 2px 20px rgba(0,0,0,0.10); }

.site-header.is-shrunk .header-inner { height: var(--header-shrunk); }
.logo--center .site-header.is-shrunk .header-inner { grid-template-rows: var(--header-shrunk); }

.site-header.is-hidden  { transform: translateY(-100%); }

.site-header.is-blurred {
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}

/* Logo boyutu */
.site-branding img,
.site-branding .custom-logo {
	max-height: calc(var(--header-height) * 0.58);
	width: auto;
	transition: max-height 0.3s ease;
}
.site-header.is-shrunk .site-branding img,
.site-header.is-shrunk .custom-logo {
	max-height: calc(var(--header-shrunk) * 0.58);
}

.site-title {
	font-size: 1.3rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--header-text);
}

/* ===========================
   Desktop Navigation
=========================== */
.main-navigation ul {
	list-style: none;
	display: flex;
	align-items: center;
	gap: 2px;
}

.main-navigation ul ul {
	display: flex;
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	min-width: 230px;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 20px 60px rgba(0,0,0,0.13), 0 4px 16px rgba(0,0,0,0.07);
	flex-direction: column;
	padding: 8px;
	z-index: 200;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px) scale(0.98);
	pointer-events: none;
	transition: opacity 0.28s cubic-bezier(0.4,0,0.2,1),
	            transform 0.28s cubic-bezier(0.4,0,0.2,1),
	            visibility 0.28s;
}

/* Üstteki küçük ok */
.main-navigation ul ul::before {
	content: '';
	position: absolute;
	top: -6px;
	left: 22px;
	width: 12px;
	height: 12px;
	background: #fff;
	transform: rotate(45deg);
	border-radius: 2px;
	box-shadow: -2px -2px 5px rgba(0,0,0,0.05);
}

.main-navigation li { position: relative; }

.main-navigation li:hover > ul,
.main-navigation li:focus-within > ul,
.main-navigation ul ul.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0) scale(1);
	pointer-events: auto;
}

.main-navigation a {
	display: flex;
	align-items: center;
	gap: 5px;
	padding: 8px 14px;
	font-size: 0.93rem;
	font-weight: 500;
	white-space: nowrap;
	border-radius: var(--radius);
	color: var(--header-text);
	transition: color var(--transition), background var(--transition);
}
.main-navigation a:hover,
.main-navigation .current-menu-item > a { color: var(--header-hover); }

.main-navigation ul ul a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 11px 16px;
	border-radius: 9px;
	font-size: 0.875rem;
	font-weight: 500;
	color: #333;
	white-space: nowrap;
	position: relative;
	transition: color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}

.main-navigation ul ul a::before {
	content: '';
	display: inline-block;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #480059;
	flex-shrink: 0;
	opacity: 0;
	transform: scale(0);
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.main-navigation ul ul a:hover {
	background: rgba(72,0,89,0.08);
	color: #480059;
	transform: translateX(4px);
}

.main-navigation ul ul a:hover::before {
	opacity: 1;
	transform: scale(1);
}

/* Dropdown chevron */
.main-navigation .menu-item-has-children > a::after {
	content: '';
	display: inline-block;
	width: 0; height: 0;
	border-left: 3.5px solid transparent;
	border-right: 3.5px solid transparent;
	border-top: 4.5px solid currentColor;
	opacity: 0.5;
	flex-shrink: 0;
	transition: transform 0.2s ease, opacity 0.2s ease;
}
.main-navigation li:hover > a::after { transform: rotate(180deg); opacity: 1; }

/* ===========================
   Hamburger Button
=========================== */
.menu-toggle {
	display: none;
	background: none;
	border: none;
	cursor: pointer;
	padding: 8px 12px;
	height: 44px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	flex-shrink: 0;
	margin-left: auto;
	border-radius: 10px;
	transition: background var(--transition);
	color: var(--header-text);
}
.menu-toggle:hover { background: rgba(0,0,0,0.06); }

.menu-toggle__label {
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	color: currentColor;
	line-height: 1;
}

.menu-toggle__box {
	position: relative;
	width: 22px;
	height: 16px;
	display: block;
}

.menu-toggle__bar {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: currentColor;
	border-radius: 2px;
	transition: transform 0.4s cubic-bezier(0.23, 1, 0.32, 1),
	            opacity   0.3s ease,
	            width     0.3s ease,
	            top       0.4s cubic-bezier(0.23, 1, 0.32, 1);
}

.bar-1 { top: 0; }
.bar-2 { top: 50%; transform: translateY(-50%); }
.bar-3 { top: 100%; transform: translateY(-100%); }

/* Açık hâl → X */
.menu-toggle[aria-expanded="true"] .bar-1 {
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
}
.menu-toggle[aria-expanded="true"] .bar-2 {
	opacity: 0;
	transform: translateY(-50%) scaleX(0);
}
.menu-toggle[aria-expanded="true"] .bar-3 {
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
}

/* ===========================
   Mobile Backdrop
=========================== */
.nav-backdrop {
	position: fixed;
	inset: 0;
	z-index: 299;
	background: rgba(10, 10, 20, 0.55);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.35s ease, visibility 0.35s ease;
}
.nav-backdrop.is-active {
	opacity: 1;
	visibility: visible;
}

/* ===========================
   Mobile Drawer Panel
=========================== */
@keyframes itemFadeIn {
	from { opacity: 0; transform: translateX(20px); }
	to   { opacity: 1; transform: translateX(0); }
}

.mobile-panel {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 300;
	width: min(380px, 88vw);
	background: var(--color-bg);
	display: flex;
	flex-direction: column;
	transform: translateX(100%);
	transition: transform 0.42s cubic-bezier(0.4, 0, 0.2, 1);
	overflow-y: auto;
	overscroll-behavior: contain;
	box-shadow: -12px 0 48px rgba(0,0,0,0.18);
}

.mobile-panel.is-open {
	transform: translateX(0);
}

/* Panel header */
.mobile-panel__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 24px;
	border-bottom: 1px solid rgba(0,0,0,0.07);
	flex-shrink: 0;
}

.mobile-panel__brand img,
.mobile-panel__brand .custom-logo {
	max-height: 40px;
	width: auto;
}

.mobile-panel__brand .site-title {
	font-size: 1.1rem;
}

.mobile-panel__close {
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--color-bg-alt);
	border: none;
	border-radius: 50%;
	cursor: pointer;
	color: var(--color-text);
	flex-shrink: 0;
	transition: background var(--transition), transform var(--transition);
}
.mobile-panel__close:hover { background: #e8e8e8; transform: rotate(90deg); }
.mobile-panel__close svg { width: 16px; height: 16px; }

/* Mobile nav */
.mobile-nav {
	flex: 1;
	padding: 16px 0;
	overflow-y: auto;
}

.mobile-nav ul {
	list-style: none;
}

/* Top-level items */
.mobile-nav > ul > li {
	opacity: 0;
	animation: itemFadeIn 0.4s ease forwards;
	border-bottom: 1px solid rgba(0,0,0,0.05);
}

/* Stagger delays for up to 10 items */
.mobile-panel.is-open .mobile-nav > ul > li:nth-child(1)  { animation-delay: 0.07s; }
.mobile-panel.is-open .mobile-nav > ul > li:nth-child(2)  { animation-delay: 0.12s; }
.mobile-panel.is-open .mobile-nav > ul > li:nth-child(3)  { animation-delay: 0.17s; }
.mobile-panel.is-open .mobile-nav > ul > li:nth-child(4)  { animation-delay: 0.22s; }
.mobile-panel.is-open .mobile-nav > ul > li:nth-child(5)  { animation-delay: 0.27s; }
.mobile-panel.is-open .mobile-nav > ul > li:nth-child(6)  { animation-delay: 0.32s; }
.mobile-panel.is-open .mobile-nav > ul > li:nth-child(7)  { animation-delay: 0.37s; }
.mobile-panel.is-open .mobile-nav > ul > li:nth-child(8)  { animation-delay: 0.40s; }
.mobile-panel.is-open .mobile-nav > ul > li:nth-child(9)  { animation-delay: 0.43s; }
.mobile-panel.is-open .mobile-nav > ul > li:nth-child(10) { animation-delay: 0.46s; }

.mobile-nav > ul > li > a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 15px 24px;
	font-size: 1rem;
	font-weight: 600;
	color: var(--color-primary);
	transition: color var(--transition), background var(--transition);
}
.mobile-nav > ul > li > a:hover,
.mobile-nav > ul > li.current-menu-item > a { color: var(--color-accent); }

/* Submenu toggle chevron */
.mobile-nav .menu-item-has-children > a .sub-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px; height: 28px;
	border-radius: 50%;
	background: var(--color-bg-alt);
	flex-shrink: 0;
	transition: background var(--transition), transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.mobile-nav .menu-item-has-children.is-open > a .sub-arrow {
	background: var(--color-accent);
	transform: rotate(180deg);
}
.mobile-nav .menu-item-has-children > a .sub-arrow svg {
	width: 14px; height: 14px;
	stroke: var(--color-muted);
	transition: stroke var(--transition);
}
.mobile-nav .menu-item-has-children.is-open > a .sub-arrow svg {
	stroke: #fff;
}

/* Submenu accordion */
.mobile-nav ul ul {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	background: var(--color-bg-alt);
}
.mobile-nav li.is-open > ul {
	max-height: 600px;
}

.mobile-nav ul ul li a {
	display: block;
	padding: 12px 24px 12px 36px;
	font-size: 0.9rem;
	color: var(--color-muted);
	border-top: 1px solid rgba(0,0,0,0.05);
	transition: color var(--transition);
}
.mobile-nav ul ul li a:hover { color: var(--color-accent); }

/* Panel footer */
.mobile-panel__footer {
	padding: 20px 24px;
	border-top: 1px solid rgba(0,0,0,0.07);
	flex-shrink: 0;
}

.mobile-panel__footer .social-links {
	justify-content: flex-start;
	margin-bottom: 0;
	gap: 8px;
}

.mobile-panel__footer .social-icon {
	width: 36px; height: 36px;
	background: var(--color-bg-alt);
	border-radius: 50%;
	color: var(--color-text);
}
.mobile-panel__footer .social-icon:hover {
	background: var(--color-accent);
	color: #fff;
	transform: none;
}

/* ===========================
   Mozaik Grid
=========================== */

.mosaic-section {
	background: var(--mg-bg, #1a2235);
	width: 100%;
}

/* ── Üst Alıntı Bandı ── */
.mosaic-quote {
	max-width: var(--container-width, 1280px);
	margin-inline: auto;
	padding: 28px 32px;
	text-align: center;
}

.mosaic-quote__text {
	font-size: clamp(0.9rem, 1.5vw, 1.1rem);
	font-weight: 500;
	line-height: 1.65;
	letter-spacing: -0.01em;
	margin: 0;
	max-width: 900px;
	display: inline-block;
}

/* ── Grid ── */
.mosaic-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(3, clamp(240px, 28vw, 400px));
	gap: var(--mg-gap, 10px);
	max-width: var(--container-width, 1280px);
	margin-inline: auto;
}

/* 6 Sabit Pozisyon */
.mosaic-card--pos-1 { grid-column: 1 / 3; grid-row: 1 / 3; }  /* Sol büyük   */
.mosaic-card--pos-2 { grid-column: 3;     grid-row: 1; }       /* Sağ üst sol */
.mosaic-card--pos-3 { grid-column: 4;     grid-row: 1; }       /* Sağ üst sağ */
.mosaic-card--pos-4 { grid-column: 3 / 5; grid-row: 2 / 4; }  /* Sağ büyük   */
.mosaic-card--pos-5 { grid-column: 1;     grid-row: 3; }       /* Sol alt sol */
.mosaic-card--pos-6 { grid-column: 2;     grid-row: 3; }       /* Sol alt sağ */

/* ── Kart ── */
.mosaic-card {
	position: relative;
	overflow: hidden;
	display: block;
	text-decoration: none;
	cursor: pointer;
	background: #111827;
	outline: 3px solid transparent;
	outline-offset: -3px;
	transition:
		outline-color 0.5s cubic-bezier(0.4, 0, 0.2, 1),
		opacity 0.9s ease,
		transform 0.95s cubic-bezier(0.2, 0.05, 0, 1);
}

.mosaic-card--empty {
	background: #1e2a3a;
}

/* Görsel */
.mosaic-card__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	transition: opacity 1s cubic-bezier(0, 0, 0.2, 1),
	            transform 1s cubic-bezier(0, 0, 0.2, 1);
}

/* Gradient overlay — alta doğru koyu */
.mosaic-card__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(
		0deg,
		rgba(10, 14, 26, 0.92) 0%,
		rgba(10, 14, 26, 0.25) 50%,
		rgba(10, 14, 26, 0)    88%
	);
	box-shadow: inset 0 0 0 rgba(201, 168, 76, 0);
	transition: box-shadow 0.5s ease;
}

/* İçerik — sol alt */
.mosaic-card__content {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 28px 28px 28px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	z-index: 1;
}

.mosaic-card__subtitle {
	display: block;
	font-size: 0.7rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.65);
	line-height: 1.5;
}

.mosaic-card__title {
	display: block;
	font-size: clamp(1rem, 1.4vw, 1.45rem);
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #ffffff;
	line-height: 1.2;
}

/* ── Hover — Gold Çerçeve ── */
.mosaic-card:hover {
	outline-color: #C9A84C;
}

.mosaic-card:hover .mosaic-card__img {
	transform: scale(1.04);
}

.mosaic-card:hover .mosaic-card__overlay {
	box-shadow: inset 0 0 60px rgba(201, 168, 76, 0.22);
}

/* ── Scroll Animasyonu ── */
.mg-animate-ready:not(.mg-in-view) .mosaic-card--pos-1 { opacity: 0; transform: translateX(-80px); }
.mg-animate-ready:not(.mg-in-view) .mosaic-card--pos-2 { opacity: 0; transform: translateY(-70px); }
.mg-animate-ready:not(.mg-in-view) .mosaic-card--pos-3 { opacity: 0; transform: translate(70px, -70px); }
.mg-animate-ready:not(.mg-in-view) .mosaic-card--pos-4 { opacity: 0; transform: translateX(80px); }
.mg-animate-ready:not(.mg-in-view) .mosaic-card--pos-5 { opacity: 0; transform: translate(-70px, 70px); }
.mg-animate-ready:not(.mg-in-view) .mosaic-card--pos-6 { opacity: 0; transform: translateY(70px); }

.mg-in-view .mosaic-card--pos-1 { transition-delay: 0s; }
.mg-in-view .mosaic-card--pos-2 { transition-delay: 0.1s; }
.mg-in-view .mosaic-card--pos-3 { transition-delay: 0.2s; }
.mg-in-view .mosaic-card--pos-4 { transition-delay: 0.15s; }
.mg-in-view .mosaic-card--pos-5 { transition-delay: 0.28s; }
.mg-in-view .mosaic-card--pos-6 { transition-delay: 0.35s; }

/* ── Responsive ── */
@media (max-width: 1024px) {
	.mosaic-grid {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: none;
		grid-auto-rows: clamp(220px, 30vw, 360px);
	}

	.mosaic-card--pos-1 { grid-column: 1 / 3; grid-row: auto; }
	.mosaic-card--pos-2 { grid-column: 1;     grid-row: auto; }
	.mosaic-card--pos-3 { grid-column: 2;     grid-row: auto; }
	.mosaic-card--pos-4 { grid-column: 1 / 3; grid-row: auto; }
	.mosaic-card--pos-5 { grid-column: 1;     grid-row: auto; }
	.mosaic-card--pos-6 { grid-column: 2;     grid-row: auto; }
}

@media (max-width: 768px) {
	/* Section: 20px yatay padding — sayfa hizalamasıyla eş */
	.mosaic-section { padding: 0 20px; }

	/* Quote: section padding'den geliyor, kendi yatay padding'i sıfırlanır */
	.mosaic-quote { padding: 22px 0 !important; }

	.mosaic-grid {
		grid-template-columns: 1fr;
		grid-auto-rows: auto;
		gap: 8px;
	}

	/* Sabit yükseklik yerine orantılı — portre fotoğraflar kesilmez */
	.mosaic-card { aspect-ratio: 4 / 3; }

	.mosaic-card--pos-1,
	.mosaic-card--pos-2,
	.mosaic-card--pos-3,
	.mosaic-card--pos-4,
	.mosaic-card--pos-5,
	.mosaic-card--pos-6 {
		grid-column: 1;
		grid-row: auto;
	}

	.mosaic-card__content { padding: 16px 20px; }
	.mosaic-card__title   { font-size: 1rem; }
}

/* ===========================
   Hero Banner
=========================== */
.hero-banner {
	position: relative;
	height: var(--hb-height, 85vh);
	overflow: hidden;
	display: grid;
	grid-template-rows: 1fr;
	grid-template-columns: 1fr;
}

/* Medya katmanı — padding'den bağımsız, her zaman tam kaplar */
.hero-banner__media {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.hero-banner__img,
.hero-banner__video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

/* Overlay */
.hero-banner__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: var(--hb-overlay, rgba(0,0,0,0.45));
}

/* İçerik sarıcı — padding ayarları sadece buraya uygulanır */
.hero-banner__wrap {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-rows: 1fr;
	grid-template-columns: 1fr;
	padding: var(--hb-pt, 80px) var(--hb-pr, 60px) var(--hb-pb, 80px) var(--hb-pl, 60px);
}

.hero-banner__content {
	max-width: var(--hb-max-w, 640px);
	width: 100%;
}

/* 9 Konum */
.hero-banner--top-left    .hero-banner__content { justify-self: start; align-self: start; }
.hero-banner--top-center  .hero-banner__content { justify-self: center; align-self: start; text-align: center; }
.hero-banner--top-right   .hero-banner__content { justify-self: end;    align-self: start; text-align: right; }
.hero-banner--middle-left   .hero-banner__content { justify-self: start;  align-self: center; }
.hero-banner--middle-center .hero-banner__content { justify-self: center; align-self: center; text-align: center; }
.hero-banner--middle-right  .hero-banner__content { justify-self: end;    align-self: center; text-align: right; }
.hero-banner--bottom-left   .hero-banner__content { justify-self: start;  align-self: end; }
.hero-banner--bottom-center .hero-banner__content { justify-self: center; align-self: end; text-align: center; }
.hero-banner--bottom-right  .hero-banner__content { justify-self: end;    align-self: end; text-align: right; }

/* Başlık */
.hero-banner__title {
	font-size: clamp(1.5rem, 4vw + 0.5rem, var(--hb-title-size, 52px));
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.02em;
	margin: 0 0 20px;
}

/* Açıklama */
.hero-banner__desc {
	font-size: clamp(0.95rem, 1.5vw + 0.4rem, 1.25rem);
	line-height: 1.65;
	margin: 0 0 36px;
	max-width: 560px;
}

.hero-banner--middle-center .hero-banner__desc,
.hero-banner--top-center    .hero-banner__desc,
.hero-banner--bottom-center .hero-banner__desc { margin-left: auto; margin-right: auto; }

/* Butonlar */
.hero-banner__btns {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.hero-banner--middle-center .hero-banner__btns,
.hero-banner--top-center    .hero-banner__btns,
.hero-banner--bottom-center .hero-banner__btns { justify-content: center; }

.hero-banner--middle-right  .hero-banner__btns,
.hero-banner--top-right     .hero-banner__btns,
.hero-banner--bottom-right  .hero-banner__btns { justify-content: flex-end; }

.hero-banner__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 13px 32px;
	border-radius: 100px;
	font-weight: 700;
	font-size: 0.95rem;
	cursor: pointer;
	transition: opacity 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
	white-space: nowrap;
	text-decoration: none;
	border: 2px solid transparent;
}

.hero-banner__btn--filled {
	background: var(--btn-bg, #EF233C);
	color: var(--btn-color, #fff);
	border-color: var(--btn-bg, #EF233C);
}

.hero-banner__btn--filled:hover {
	opacity: 0.88;
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(0,0,0,0.2);
}

.hero-banner__btn--outline {
	background: transparent;
	color: var(--btn-color, #fff);
	border-color: var(--btn-border, var(--btn-color, #fff));
}

.hero-banner__btn--outline:hover {
	background: var(--btn-color, #fff);
	color: var(--color-primary, #2B2D42);
	transform: translateY(-2px);
}

/* Play Butonu */
.hero-banner__btn-play {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	text-decoration: none;
	margin-top: 24px;
}

.hero-banner__btn-play__circle {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: var(--play-bg, #ffffff);
	color: var(--play-color, #2B2D42);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.hero-banner__btn-play__circle svg {
	margin-left: 3px;
}

.hero-banner__btn-play:hover .hero-banner__btn-play__circle {
	transform: scale(1.1);
	box-shadow: 0 6px 28px rgba(0, 0, 0, 0.38);
}

.hero-banner__btn-play__label {
	font-size: 1rem;
	font-weight: 600;
	color: var(--play-color, #ffffff);
	letter-spacing: 0.03em;
}

/* ── Responsive ── */
@media (max-width: 768px) {
	.hero-banner {
		height: max(60vh, 420px);
	}

	.hero-banner__wrap {
		padding: var(--hb-pt, 48px) 24px var(--hb-pb, 48px);
	}

	.hero-banner__title {
		font-size: clamp(1.4rem, 7vw, 2.4rem);
		margin-bottom: 14px;
	}

	.hero-banner__desc {
		font-size: 0.95rem;
		margin-bottom: 28px;
	}

	.hero-banner__btns {
		flex-direction: column;
		align-items: flex-start;
	}

	.hero-banner--middle-center .hero-banner__btns,
	.hero-banner--top-center    .hero-banner__btns,
	.hero-banner--bottom-center .hero-banner__btns { align-items: center; }

	.hero-banner--middle-right  .hero-banner__btns,
	.hero-banner--top-right     .hero-banner__btns,
	.hero-banner--bottom-right  .hero-banner__btns { align-items: flex-end; }

	.hero-banner__btn {
		padding: 12px 26px;
		font-size: 0.9rem;
	}
}

/* ===========================
   Sections — aralar boşluk
=========================== */
.mosaic-section,
.ti-section,
.ic-section,
.ng-section,
.co-section,
.ab-root,
.rt-section,
.site-main {
	margin-top: 80px;
}

/* ===========================
   Cards Grid
=========================== */
.cards-grid, .posts-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 32px;
}
.card, .post-card {
	background: #fff;
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: 0 2px 12px rgba(0,0,0,0.07);
	transition: transform var(--transition), box-shadow var(--transition);
}
.card:hover, .post-card:hover { transform: translateY(-4px); box-shadow: 0 8px 28px rgba(0,0,0,0.12); }
.card > *, .post-card .post-content { padding: 28px; }
.card img, .post-card .post-thumbnail img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.post-title a { color: var(--color-primary); font-size: 1.2rem; font-weight: 600; }
.post-title a:hover { color: var(--color-accent); }
.post-excerpt { color: var(--color-muted); margin: 12px 0 20px; }

/* ===========================
   Page / Single
=========================== */
.site-main { padding: 0 0 60px; background: #fff; }
.page-title, .entry-title {
	font-size: clamp(1.6rem, 3vw, 2.4rem);
	color: var(--color-primary);
	margin-bottom: 24px;
	font-weight: 700;
}
.entry-meta { color: var(--color-muted); font-size: 0.9rem; margin-bottom: 24px; }
.page-thumbnail, .entry-thumbnail { margin-bottom: 40px; border-radius: var(--radius); overflow: hidden; }
.page-content, .entry-content { line-height: 1.8; max-width: 760px; }
.page-content h2, .entry-content h2 { font-size: 1.5rem; margin: 36px 0 16px; color: var(--color-primary); }
.page-content p, .entry-content p { margin-bottom: 20px; }

/* ===========================
   404
=========================== */
.error-404 { text-align: center; padding: 80px 0; }
.error-404 h1 { font-size: 2rem; margin-bottom: 16px; color: var(--color-primary); }
.error-404 p { color: var(--color-muted); margin-bottom: 32px; }

/* ===========================
   Footer
=========================== */
.site-footer {
	background: #5c1a5c;
	color: #fff;
	padding: 56px 0 0;
}

/* ── Footer Grid ─────────────────────────────────────────────── */
.footer-grid {
	display: grid;
	grid-template-columns: max-content max-content max-content;
	justify-content: center;
	gap: 72px;
	align-items: start;
	padding-bottom: 48px;
	border-bottom: 1px solid rgba(128,128,128,0.15);
	margin-bottom: 0;
}
.footer-grid--no-certs {
	grid-template-columns: max-content max-content;
}

/* ── Col 1: Navigasyon ───────────────────────────────────────── */
.footer-grid__nav .footer-nav { margin: 0; }
.footer-grid__nav .footer-nav__list {
	list-style: none;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
}
.footer-grid__nav .footer-nav__list a {
	font-size: 0.92rem;
	color: inherit;
	opacity: 0.72;
	text-decoration: none;
	letter-spacing: 0.01em;
	transition: opacity var(--transition);
}
.footer-grid__nav .footer-nav__list a:hover { opacity: 1; }

/* ── Col 2: Sertifikalar ─────────────────────────────────────── */
.footer-grid__certs {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}
.footer-section-title {
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	opacity: 0.42;
	margin: 0 0 20px;
}
.footer-certs {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 24px 32px;
}
.footer-cert__logo {
	height: 96px;
	width: auto;
	max-width: 140px;
	object-fit: contain;
	display: block;
}

/* ── Col 3: Sosyal + PDF ─────────────────────────────────────── */
.footer-grid__social {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 20px;
}
.footer-grid__social .social-links {
	list-style: none;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0;
}
.social-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px; height: 40px;
	color: inherit;
	opacity: 0.72;
	transition: opacity var(--transition), transform var(--transition);
}
.social-icon:hover { opacity: 1; transform: translateY(-2px); }
.social-icon svg { width: 22px; height: 22px; }

.footer-pdfs {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 10px;
}
.footer-pdf__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.82rem;
	color: inherit;
	opacity: 0.68;
	text-decoration: none;
	transition: opacity 0.2s;
	letter-spacing: 0.02em;
}
.footer-pdf__link svg { width: 14px; height: 14px; flex-shrink: 0; }
.footer-pdf__link:hover { opacity: 1; }

/* ── Copyright ───────────────────────────────────────────────── */
.footer-copyright {
	font-size: 0.82rem;
	opacity: 0.42;
	text-align: center;
	padding: 22px 0 36px;
}

/* ===========================
   Responsive — Mobile
=========================== */
@media (max-width: 960px) {
	/* Hamburger görünür */
	.menu-toggle { display: flex; }

	/* Desktop nav gizle */
	.main-navigation { display: none !important; }

	/* Logo center: grid → flex */
	.logo--center .header-inner {
		display: flex;
		align-items: center;
	}
	.logo--center .site-branding {
		grid-column: unset; justify-self: unset; align-self: unset;
	}
	.logo--center .main-navigation {
		grid-column: unset; justify-self: unset; align-self: unset; margin-left: auto;
	}
	.logo--center .menu-toggle {
		grid-column: unset; justify-self: unset; align-self: unset;
	}

	/* Logo right: branding sola, toggle en sağda */
	.logo--right .site-branding { order: 1; margin-left: 0; }
	.logo--right .menu-toggle   { order: 2; margin-left: auto; }
}

@media (max-width: 600px) {
	.container { padding: 0 20px; }
	.hero { padding: 72px 0; }
}

@media (max-width: 768px) {
	.footer-grid {
		grid-template-columns: 1fr;
		gap: 36px;
		text-align: center;
	}
	.footer-grid--no-certs { grid-template-columns: 1fr; }
	.footer-grid__nav .footer-nav__list { align-items: center; }
	.footer-grid__social { align-items: center; }
	.footer-grid__social .social-links { justify-content: center; }
	.footer-pdfs { align-items: center; }
}

/* ===========================
   Text + Image Section
=========================== */

.ti-section {
	background: var(--ti-bg, #fff);
}

.ti-inner {
	display: grid;
	grid-template-columns: var(--ti-col-text, 45%) var(--ti-col-img, 55%);
	align-items: start;
	max-width: var(--container-width, 1280px);
	margin-inline: auto;
}

/* Görsel sola alındığında */
.ti-inner--img-left .ti-image-col { order: -1; }
.ti-inner--img-left .ti-content {
	padding-left:  var(--ti-content-px, 64px);
	padding-right: 0;
}

/* Her iki tarafta görsel (metin ortada) */
.ti-inner--img-both {
	grid-template-columns: 1fr var(--ti-col-text, 45%) 1fr;
	gap: var(--ti-duo-gap, 0);
}

/* Duo Banner — sadece 2 görsel yan yana */
.ti-inner--img-duo {
	grid-template-columns: var(--ti-duo-ratio, 1fr 1fr);
	gap: var(--ti-duo-gap, 0);
}

/* Her iki tarafta metin */
.ti-inner--text-both {
	grid-template-columns: var(--ti-col-text, 45%) auto;
	gap: var(--ti-duo-gap, 0);
	align-items: start;
}

.ti-col-2 {
	padding: var(--ti-pt, 80px) var(--ti-content-px, 32px) var(--ti-pb, 80px);
	font-size: var(--ti-text-size, 16px);
	color: var(--ti-text-color, #2B2D42);
	line-height: 1.75;
}

/* ── Metin Sütunu ── */
.ti-content {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	padding: 0 var(--ti-content-px, 64px) var(--ti-pb, 80px) 0;
}

.ti-eyebrow {
	display: block;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--ti-eyebrow-color, #EF233C);
	margin-bottom: 14px;
}

.ti-title {
	font-size: var(--ti-title-size, 28px);
	font-weight: 500;
	color: var(--ti-title-color, #2B2D42);
	line-height: 1.3;
	margin: 0 0 18px;
	text-align: left;
}

.ti-divider {
	border: none;
	border-top: 1px solid var(--ti-divider-color, #2B2D42);
	margin: 0 0 24px;
	width: 100%;
}

.ti-text {
	font-size: var(--ti-text-size, 16px);
	color: var(--ti-text-color, #2B2D42);
	line-height: 1.75;
}

.ti-text p { margin: 0 0 1em; }
.ti-text p:last-child { margin-bottom: 0; }

/* Buton stilleri */
.ti-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-top: 36px;
	padding: 13px 30px;
	border-radius: 50px;
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
	letter-spacing: 0.04em;
	cursor: pointer;
	transition: gap 0.3s cubic-bezier(0.4,0,0.2,1), background 0.25s ease, color 0.25s ease, transform 0.2s ease, border-color 0.25s ease;
	align-self: var(--ti-btn-align, flex-start);
}

.ti-btn--filled {
	background: var(--ti-btn-bg, #EF233C);
	color: var(--ti-btn-color, #fff);
	border: 2px solid var(--ti-btn-bg, #EF233C);
}

.ti-btn--outline {
	background: transparent;
	color: var(--ti-btn-bg, #EF233C);
	border: 2px solid var(--ti-btn-bg, #EF233C);
}

.ti-btn--text {
	background: transparent;
	color: var(--ti-btn-bg, #EF233C);
	border: 2px solid transparent;
	padding-left: 0;
	padding-right: 0;
	gap: 8px;
}

/* Çizgi → Ok animasyonu */
.ti-btn__icon {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 20px;
	height: 2px;
	background: currentColor;
	border-radius: 1px;
	transition: width 0.3s cubic-bezier(0.4,0,0.2,1);
}

.ti-btn__icon::after {
	content: '';
	position: absolute;
	right: -1px;
	top: 50%;
	width: 7px;
	height: 7px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	border-radius: 0 1px 0 0;
	transform: translateY(-50%) rotate(45deg) scale(0.3);
	opacity: 0;
	transition: opacity 0.25s ease, transform 0.3s cubic-bezier(0.4,0,0.2,1);
}

.ti-btn:hover { gap: 16px; transform: translateY(-1px); }

.ti-btn:hover .ti-btn__icon { width: 28px; }

.ti-btn:hover .ti-btn__icon::after {
	opacity: 1;
	transform: translateY(-50%) rotate(45deg) scale(1);
}

.ti-btn--text:hover { transform: none; }

/* ── Görsel Sütunu ── */
.ti-image-col {
	display: flex;
	flex-direction: column;
}

.ti-image {
	height: clamp(var(--ti-min-h, 440px), calc(100vh - var(--header-height, 80px)), var(--ti-max-h, 2000px));
	position: relative;
	overflow: hidden;
	flex: none;
}

.ti-image-sub {
	padding: 24px 28px;
	font-family: inherit;
	font-size: var(--ti-sub-size, 16px);
	font-weight: 400;
	color: var(--ti-sub-color, #50575e);
	line-height: 1.75;
}

.ti-image__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: var(--ti-img-fit, cover);
	object-position: var(--ti-img-pos, top center);
	display: block;
}

.ti-image__placeholder {
	position: absolute;
	inset: 0;
	background: var(--color-bg, #EDF2F4);
}

/* ── Mobil ── */
@media (max-width: 768px) {
	.ti-inner {
		grid-template-columns: 1fr;
		grid-template-rows: auto auto;
	}

	/* Görsel her zaman üstte */
	.ti-inner .ti-image-col     { order: -1; }
	.ti-inner .ti-image         { height: 260px; }
	.ti-inner--img-left .ti-image-col { order: -1; }

	/* Her iki tarafta görsel: tek sütun, ikinci görsel gizlenir */
	.ti-inner--img-both {
		grid-template-columns: 1fr;
	}
	.ti-inner--img-both .ti-image-col:last-child { display: none; }

	/* Duo Banner: mobilde üst üste, iki resim de görünür */
	.ti-inner--img-duo {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.ti-inner--img-duo .ti-image-col:last-child { display: block; }

	/* Her iki tarafta metin: mobilde üst üste */
	.ti-inner--text-both {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.ti-col-2 { padding: 32px 24px; }

	.ti-image__img {
		position: absolute;
		inset: 0;
		height: 100%;
		width: 100%;
	}

	.ti-content {
		padding: 40px 24px;
	}

	.ti-title { font-size: clamp(20px, 5vw, var(--ti-title-size, 28px)); }
}

@media (max-width: 480px) {
	.ti-content { padding: 32px 20px; }
	.ti-image__img { height: 220px; }
}

/* ═══════════════════════════════════════════════════════════════════
   Görsel + Başlık Kartı  (.ic-*)
   ═══════════════════════════════════════════════════════════════════ */

.ic-section {
	background: var(--ic-bg, #fff);
	padding: var(--ic-pt, 80px) 0 var(--ic-pb, 80px);
}

.ic-inner {
	max-width: var(--ic-max-w, 780px);
	margin: 0 auto;
	padding: 0 clamp(20px, 5vw, 40px);
}

/* ── Görsel ── */
.ic-image {
	width: 100%;
	overflow: hidden;
	border-radius: var(--ic-img-radius, 0px);
	margin-bottom: 40px;
}

.ic-image--16-9 { aspect-ratio: 16 / 9; }
.ic-image--4-3  { aspect-ratio: 4  / 3; }
.ic-image--3-2  { aspect-ratio: 3  / 2; }
.ic-image--1-1  { aspect-ratio: 1  / 1; }

.ic-image img {
	width: 100%;
	height: auto;
	display: block;
}

.ic-image--16-9 img,
.ic-image--4-3 img,
.ic-image--3-2 img,
.ic-image--1-1 img {
	height: 100%;
	object-fit: cover;
}

/* ── İçerik ── */
.ic-eyebrow {
	font-size: var(--ic-eyebrow-size, 13px);
	color: var(--ic-eyebrow-color, #EF233C);
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	margin: 0 0 16px;
}

.ic-title {
	font-size: var(--ic-title-size, 52px);
	color: var(--ic-title-color, #2B2D42);
	line-height: 1.1;
	margin: 0 0 24px;
	font-weight: 700;
	letter-spacing: -0.02em;
}

.ic-text {
	font-size: var(--ic-text-size, 16px);
	color: var(--ic-text-color, #2B2D42);
	line-height: 1.75;
}

.ic-text p { margin: 0 0 16px; }
.ic-text p:last-child { margin-bottom: 0; }

/* ── Buton sarmalayıcı ── */
.ic-btn-wrap {
	display: flex;
	justify-content: var(--ic-btn-justify, center);
	margin-top: 36px;
}

/* ── Responsive ── */
@media (max-width: 640px) {
	.ic-title { font-size: clamp(28px, 8vw, var(--ic-title-size, 52px)); }
	.ic-image { margin-bottom: 28px; }
}

/* ═══════════════════════════════════════════════════════════════════
   Haberler & Etkinlikler  (.ng-*)
   ═══════════════════════════════════════════════════════════════════ */

.ng-section {
	background: var(--ng-bg, #f5f5f0);
	padding: var(--ng-pt, 60px) 0 var(--ng-pb, 80px);
	overflow: hidden;
}

.ng-wrap {
	max-width: var(--container-width, 1280px);
	margin: 0 auto;
	padding: 0 clamp(20px, 5vw, 60px);
}

/* ── Header ── */
.ng-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 36px;
	padding-bottom: 24px;
	border-bottom: 1.5px solid rgba(0,0,0,0.1);
}

.ng-title {
	font-size: var(--ng-title-size, 28px);
	color: var(--ng-title-color, #2B2D42);
	font-weight: 700;
	margin: 0;
	text-align: left;
	letter-spacing: -0.02em;
}

.ng-nav { display: flex; gap: 8px; flex-shrink: 0; }

.ng-prev,
.ng-next {
	width: 40px;
	height: 40px;
	border: 1.5px solid currentColor;
	border-radius: 50%;
	background: transparent;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.25s ease, color 0.25s ease;
	color: var(--ng-title-color, #2B2D42);
}

.ng-prev:hover,
.ng-next:hover {
	background: var(--ng-title-color, #2B2D42);
	color: #fff;
}

.ng-prev:disabled,
.ng-next:disabled {
	opacity: 0.22;
	cursor: default;
	pointer-events: none;
}

/* ── Track / Slider ── */
.ng-track-wrap { overflow: hidden; }

.ng-track {
	display: flex;
	gap: var(--ng-gap, 24px);
	overflow-x: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
.ng-track::-webkit-scrollbar { display: none; }

/* ── Card ── */
.ng-card {
	flex: 0 0 var(--ng-card-w, calc(25% - 18px));
	min-width: 0;
}

.ng-card__img {
	aspect-ratio: var(--ng-img-ratio, 3/2);
	overflow: hidden;
	border-radius: var(--ng-img-radius, 0px);
	margin-bottom: 18px;
	background: #ddd;
}
.ng-section--custom-h .ng-card__img {
	aspect-ratio: unset;
	height: var(--ng-img-height);
}

.ng-card__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.ng-card:hover .ng-card__img img { transform: scale(1.06); }

/* ── Card body ── */
.ng-card__cat {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	margin-bottom: 10px;
}

.ng-card__title {
	font-size: var(--ng-card-title-size, 16px);
	color: var(--ng-card-title-color, #2B2D42);
	line-height: 1.55;
	margin: 0 0 12px;
	font-weight: 500;
	transition: color 0.2s ease;
}

.ng-card:hover .ng-card__title { color: #555; }

.ng-card__link {
	font-size: 13px;
	color: var(--ng-link-color, #6b6b6b);
	text-decoration: none;
	display: inline-block;
	transition: color 0.2s;
	font-style: italic;
}

.ng-card__link:hover { color: var(--ng-title-color, #2B2D42); }

/* ── Card button ── */
.ng-card__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 16px;
	padding: 9px 20px;
	border-radius: 50px;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.03em;
	text-decoration: none;
	background: var(--btn-bg, #2B2D42);
	color: var(--btn-color, #fff);
	transition: opacity 0.2s ease, transform 0.2s ease, gap 0.3s cubic-bezier(0.4,0,0.2,1);
}

.ng-card__btn:hover {
	opacity: 0.88;
	transform: translateY(-1px);
	gap: 12px;
}

.ng-card__btn .ti-btn__icon {
	width: 16px;
	height: 1.5px;
}

/* ── Responsive ── */
@media (max-width: 900px) {
	.ng-card { flex: 0 0 clamp(240px, 62vw, 380px); }
}

@media (max-width: 480px) {
	.ng-card   { flex: 0 0 84vw; }
	.ng-header { margin-bottom: 20px; padding-bottom: 16px; }
}

/* ═══════════════════════════════════════════
   CONTACT OFFICES  (.co-*)
   ═══════════════════════════════════════════ */

.co-section {
	background: var(--co-bg, #f8f8f6);
	padding: var(--co-pt, 80px) 0 var(--co-pb, 80px);
}

.co-wrap {
	max-width: var(--container-width, 1280px);
	margin: 0 auto;
	padding: 0 48px;
}

/* ── Header ── */
.co-header {
	margin-bottom: 64px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.co-eyebrow {
	display: flex;
	align-items: center;
	gap: 14px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--co-accent, #2B2D42);
}

.co-eyebrow::before {
	content: '';
	display: block;
	width: 36px;
	height: 2px;
	background: var(--co-accent, #2B2D42);
	flex-shrink: 0;
}

.co-title {
	font-size: clamp(28px, 3.5vw, 46px);
	font-weight: 800;
	color: var(--co-title-color, #1a1a1a);
	letter-spacing: -0.025em;
	margin: 0;
	line-height: 1.05;
}

.co-subtitle {
	font-size: 15.5px;
	color: #8a8a8a;
	margin: 0;
	font-weight: 400;
	max-width: 500px;
	line-height: 1.65;
}

/* ── Office list ── */
.co-offices {
	display: flex;
	flex-direction: column;
}

.co-divider {
	border: none;
	border-top: 1px solid #e2e2de;
	margin: 0;
}

/* ── Office row ── */
.co-office {
	display: grid;
	grid-template-columns: 260px 1fr;
	gap: 56px;
	padding: 52px 0;
	align-items: start;
	opacity: 0;
	transform: translateY(22px);
	transition: opacity 0.6s ease, transform 0.6s ease;
}

.co-office.co-visible {
	opacity: 1;
	transform: translateY(0);
}

/* ── Left identity column ── */
.co-office__left {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	position: sticky;
	top: 100px;
}

.co-office__num {
	font-size: 52px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: -0.05em;
	color: var(--co-accent, #2B2D42);
	opacity: 0.07;
	flex-shrink: 0;
	user-select: none;
	font-variant-numeric: tabular-nums;
}

.co-office__meta {
	padding-top: 4px;
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.co-office__label {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--co-accent, #2B2D42);
	opacity: 0.6;
}

.co-office__name {
	font-size: 20px;
	font-weight: 700;
	color: #111;
	margin: 0;
	line-height: 1.25;
	letter-spacing: -0.02em;
}

/* ── Right: contact details ── */
.co-office__right {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding-top: 2px;
}

/* ── Detail rows with arrow animation ── */
.co-card__row {
	display: flex;
	align-items: center;
	gap: 14px;
	font-size: 14px;
	color: #5a5a5a;
	line-height: 1.6;
	text-decoration: none;
	padding: 10px 44px 10px 12px;
	margin: 0 -12px;
	border-radius: 6px;
	position: relative;
	transition: background 0.2s ease, color 0.2s ease, padding-left 0.25s cubic-bezier(0.4,0,0.2,1);
	cursor: default;
}

.co-card__row--link { cursor: pointer; }

/* Arrow — shaft */
.co-card__row::before {
	content: '';
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%) scaleX(0);
	transform-origin: right center;
	width: 14px;
	height: 1.5px;
	background: var(--co-accent, #2B2D42);
	opacity: 0;
	transition: opacity 0.2s ease, transform 0.25s cubic-bezier(0.4,0,0.2,1);
}

/* Arrow — head */
.co-card__row::after {
	content: '';
	position: absolute;
	right: 12px;
	top: 50%;
	width: 7px;
	height: 7px;
	border-top: 1.5px solid var(--co-accent, #2B2D42);
	border-right: 1.5px solid var(--co-accent, #2B2D42);
	border-radius: 0 1px 0 0;
	transform: translateY(-50%) rotate(45deg) scale(0.25);
	opacity: 0;
	transition: opacity 0.2s ease, transform 0.25s cubic-bezier(0.4,0,0.2,1);
}

.co-card__row:hover {
	background: rgba(0,0,0,0.03);
	padding-left: 18px;
}

.co-card__row:hover::before {
	opacity: 0.55;
	transform: translateY(-50%) scaleX(1);
}

.co-card__row:hover::after {
	opacity: 0.55;
	transform: translateY(-50%) rotate(45deg) scale(1);
}

.co-card__row--link:hover {
	color: var(--co-accent, #2B2D42);
}

/* ── Icon ── */
.co-card__icon {
	flex-shrink: 0;
	width: 16px;
	height: 16px;
	color: var(--co-accent, #2B2D42);
	opacity: 0.4;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.2s ease;
}

.co-card__row:hover .co-card__icon { opacity: 0.75; }
.co-card__icon svg { display: block; }

.co-card__address { font-style: normal; color: inherit; }

.co-card__prefix {
	font-weight: 600;
	color: #bbb;
	font-size: 11.5px;
}

/* ── Maps link ── */
.co-maps-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--co-accent, #2B2D42);
	text-decoration: none;
	margin-top: 10px;
	padding: 10px 14px;
	margin-left: -14px;
	border-radius: 6px;
	transition: background 0.2s ease, gap 0.2s ease;
}

.co-maps-link:hover {
	background: rgba(0,0,0,0.04);
	gap: 10px;
}

/* ── Responsive ── */
@media (max-width: 960px) {
	.co-office {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 40px 0;
	}
	.co-office__left { position: static; }
	.co-wrap { padding: 0 28px; }
}

@media (max-width: 600px) {
	.co-wrap { padding: 0 16px; }
	.co-office { padding: 32px 0; }
	.co-title { font-size: 26px; }
	.co-office__num { font-size: 40px; }
	.co-office__name { font-size: 18px; }
}

/* ═══════════════════════════════════════════
   ABOUT  (.ab-*)
   ═══════════════════════════════════════════ */

/* ── Manifesto ── */
.ab-manifesto {
	min-height: 100svh;
	background: var(--ab-s1-bg, #16181f);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	overflow: hidden;
}

.ab-manifesto__bg-glow {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse 60% 50% at 25% 60%, rgba(201,160,106,0.07) 0%, transparent 70%),
		radial-gradient(ellipse 40% 60% at 80% 30%, rgba(201,160,106,0.04) 0%, transparent 60%);
	pointer-events: none;
}

.ab-manifesto__inner {
	position: relative;
	z-index: 1;
	text-align: center;
	padding: 80px 40px 120px;
	max-width: 1000px;
	width: 100%;
}

.ab-manifesto__subtext {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: var(--ab-s1-accent, #c9a06a);
	margin: 0 0 52px;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.7s ease, transform 0.7s ease;
}

.ab-manifesto__subtext.ab-revealed {
	opacity: 1;
	transform: translateY(0);
}

.ab-manifesto__statement {
	font-size: clamp(44px, 8vw, 100px);
	font-weight: 800;
	line-height: 1.04;
	letter-spacing: -0.03em;
	color: var(--ab-s1-text, #f5f5f0);
}

.ab-statement-line {
	display: block;
}

.ab-word {
	display: inline-block;
	opacity: 0;
	transform: translateY(22px);
	transition: opacity 0.55s ease, transform 0.55s cubic-bezier(0.16,1,0.3,1);
}

.ab-word.ab-revealed {
	opacity: 1;
	transform: translateY(0);
}

/* Scroll indicator */
.ab-manifesto__scroll {
	position: absolute;
	bottom: 36px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	opacity: 0;
	transition: opacity 0.6s ease;
}

.ab-manifesto__scroll.ab-revealed { opacity: 1; }

.ab-scroll-line {
	display: block;
	width: 1px;
	height: 56px;
	background: linear-gradient(to bottom, var(--ab-s1-accent, #c9a06a), transparent);
	animation: ab-scroll-pulse 2s ease-in-out infinite;
	transform-origin: top center;
}

@keyframes ab-scroll-pulse {
	0%   { transform: scaleY(0); opacity: 1; transform-origin: top center; }
	50%  { transform: scaleY(1); opacity: 1; }
	100% { transform: scaleY(1); opacity: 0; }
}

/* ── Story ── */
.ab-story {
	position: relative;
}

.ab-story__wrap {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: start;
}

.ab-story__media {
	position: sticky;
	top: 0;
	height: 100svh;
	overflow: hidden;
	background: #1a1a1a;
}

.ab-story__img-slot {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 1.4s cubic-bezier(0.4,0,0.2,1);
}

.ab-story__img-slot.ab-active { opacity: 1; }

.ab-story__img-slot img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ab-story__blocks {
	padding: 64px 56px;
}

.ab-story__block {
	padding: 64px 0;
	min-height: 50vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-top: 1px solid rgba(0,0,0,0.08);
	opacity: 0.22;
	transform: translateY(16px);
	transition: opacity 0.9s ease, transform 0.9s cubic-bezier(0.16,1,0.3,1);
}

.ab-story__block:first-child {
	border-top: none;
	padding-top: 40px;
}

.ab-story__block.ab-active {
	opacity: 1;
	transform: translateY(0);
}

.ab-story__label {
	display: block;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #aaa;
	margin-bottom: 18px;
}

.ab-story__title {
	font-size: clamp(24px, 2.8vw, 38px);
	font-weight: 700;
	color: #111;
	margin: 0 0 22px;
	letter-spacing: -0.025em;
	line-height: 1.18;
}

.ab-story__text {
	font-size: 16px;
	color: #666;
	line-height: 1.8;
}

/* ── Values ── */
.ab-values {
	padding: 64px 0;
}

.ab-values__wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 48px;
}

.ab-values__header {
	margin-bottom: 64px;
}

.ab-values__eyebrow {
	width: 40px;
	height: 2px;
	background: var(--ab-s3-accent, #c9a06a);
	margin-bottom: 24px;
}

.ab-values__title {
	font-size: clamp(26px, 3vw, 44px);
	font-weight: 800;
	color: var(--ab-s3-text, #f5f5f0);
	letter-spacing: -0.025em;
	margin: 0;
	line-height: 1.1;
}

.ab-values__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	border-top: 1px solid rgba(255,255,255,0.08);
}

.ab-value {
	padding: 48px 32px 48px 0;
	border-right: 1px solid rgba(255,255,255,0.06);
	position: relative;
	opacity: 0;
	transform: translateY(28px);
	transition: opacity 0.65s ease, transform 0.65s cubic-bezier(0.16,1,0.3,1);
}

.ab-value::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 2px;
	background: var(--ab-s3-accent, #c9a06a);
	transition: width 0.45s cubic-bezier(0.4,0,0.2,1);
}

.ab-value:hover::before { width: 100%; }

.ab-value.ab-visible {
	opacity: 1;
	transform: translateY(0);
}

.ab-value__num {
	display: block;
	font-size: 68px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: -0.05em;
	color: var(--ab-s3-accent, #c9a06a);
	opacity: 0.12;
	margin-bottom: 20px;
	font-variant-numeric: tabular-nums;
	user-select: none;
}

.ab-value__title {
	font-size: 22px;
	font-weight: 700;
	color: var(--ab-s3-text, #f5f5f0);
	margin: 0 0 12px;
	letter-spacing: -0.015em;
}

.ab-value__text {
	font-size: 14px;
	color: rgba(245,245,240,0.5);
	line-height: 1.75;
	margin: 0;
}

/* ── Stats ── */
.ab-stats {
	padding: 64px 0;
}

.ab-stats__wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 48px;
}

.ab-stats__header {
	text-align: center;
	margin-bottom: 40px;
}

.ab-stats__title {
	font-size: clamp(24px, 2.5vw, 40px);
	font-weight: 800;
	color: var(--ab-s4-text, #16181f);
	letter-spacing: -0.025em;
	margin: 0;
}

.ab-stats__grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	border-top: 1px solid rgba(0,0,0,0.1);
	border-bottom: 1px solid rgba(0,0,0,0.1);
}

.ab-stat {
	flex: 1 1 180px;
	padding: 56px 32px;
	text-align: center;
	border-right: 1px solid rgba(0,0,0,0.1);
	opacity: 0;
	transform: translateY(18px);
	transition: opacity 0.6s ease, transform 0.6s cubic-bezier(0.16,1,0.3,1);
}
.ab-stat:last-child { border-right: none; }

.ab-stat.ab-visible {
	opacity: 1;
	transform: translateY(0);
}

.ab-stat__value {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 3px;
	margin-bottom: 14px;
}

.ab-stat__num {
	font-size: clamp(52px, 5.5vw, 80px);
	font-weight: 900;
	color: var(--ab-s4-text, #16181f);
	letter-spacing: -0.05em;
	line-height: 1;
	font-variant-numeric: tabular-nums;
}

.ab-stat__suffix {
	font-size: clamp(32px, 3.2vw, 48px);
	font-weight: 800;
	color: var(--ab-s4-accent, #c9a06a);
	line-height: 1;
	letter-spacing: -0.02em;
}

.ab-stat__label {
	font-size: 13px;
	font-weight: 600;
	color: #666;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ab-stat__sublabel {
	font-size: 12px;
	color: #aaa;
	margin-top: 4px;
}

/* ── Story block inline image (mobile) ── */
.ab-story__block-img {
	display: none; /* masaüstünde gizli — sticky panel gösterir */
}

/* ── Responsive ── */
@media (max-width: 960px) {
	.ab-story__wrap { grid-template-columns: 1fr; }
	.ab-story__media { display: none; }
	.ab-story__blocks { padding: 48px 28px; }
	.ab-story__block { opacity: 1; transform: none; padding: 32px 0; min-height: unset; }

	/* Her blokta görseli göster */
	.ab-story__block-img {
		display: block;
		width: 100%;
		aspect-ratio: 16 / 9;
		overflow: hidden;
		border-radius: 8px;
		margin-bottom: 20px;
	}
	.ab-story__block-img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	/* Values: 2 sütun grid */
	.ab-values__header { text-align: center; }
	.ab-values__eyebrow { margin: 0 auto 24px; }
	.ab-values__grid { grid-template-columns: 1fr 1fr; }
	.ab-value { padding: 28px 16px; border-right: 1px solid rgba(255,255,255,0.06); text-align: center; }
	.ab-value__num { font-size: 44px; }

	/* Stats */
	.ab-values__wrap, .ab-stats__wrap { padding: 0 20px; }
	.ab-values { padding: 56px 0; }
	.ab-stats  { padding: 56px 0; }
	.ab-stat { border-right: none; border-bottom: 1px solid rgba(0,0,0,0.1); flex: 1 1 100%; }
	.ab-stat:last-child { border-bottom: none; }
}

@media (max-width: 600px) {
	.ab-manifesto__inner { padding: 60px 24px 100px; }
	.ab-manifesto__statement { font-size: clamp(36px, 10vw, 56px); }
	.ab-story__blocks { padding: 24px 20px; }
	.ab-stat   { padding: 32px 20px; }
	.ab-value  { padding: 24px 12px; }
}

/* ═══════════════════════════════════════════════════════════════════════════════
   RICH TEXT / HTML SECTION — .rt-*
═══════════════════════════════════════════════════════════════════════════════ */

.rt-inner {
	padding: 0 32px;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
	width: 100%;
}

/* Base typography reset for user content */
.rt-content { color: inherit; }

.rt-content h1,
.rt-content h2,
.rt-content h3,
.rt-content h4,
.rt-content h5,
.rt-content h6 {
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.02em;
	margin: 1.6em 0 0.55em;
}
.rt-content h1:first-child,
.rt-content h2:first-child,
.rt-content h3:first-child { margin-top: 0; }

.rt-content h1 { font-size: clamp(32px, 4vw, 52px); }
.rt-content h2 { font-size: clamp(24px, 3vw, 38px); }
.rt-content h3 { font-size: clamp(20px, 2.4vw, 28px); }
.rt-content h4 { font-size: clamp(17px, 2vw, 22px); }

.rt-content p {
	margin: 0 0 1.25em;
	line-height: 1.78;
	font-size: 16px;
}
.rt-content p:last-child { margin-bottom: 0; }

.rt-content a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.rt-content a:hover { opacity: 0.7; }

.rt-content strong { font-weight: 700; }
.rt-content em     { font-style: italic; }

.rt-content ul,
.rt-content ol {
	margin: 0 0 1.25em;
	padding-left: 1.7em;
	line-height: 1.75;
}
.rt-content li        { margin-bottom: 0.45em; }
.rt-content ul > li   { list-style: disc; }
.rt-content ol > li   { list-style: decimal; }

.rt-content blockquote {
	margin: 1.8em 0;
	padding: 1.1em 1.6em;
	border-left: 3px solid currentColor;
	opacity: 0.85;
	font-size: 17px;
	font-style: italic;
	line-height: 1.7;
}

.rt-content hr {
	border: none;
	border-top: 1px solid rgba(0,0,0,0.12);
	margin: 2em 0;
}

.rt-content img {
	max-width: 100%;
	height: auto;
	border-radius: 4px;
}

.rt-content figure {
	margin: 1.5em 0;
}
.rt-content figcaption {
	font-size: 13px;
	color: #888;
	margin-top: 8px;
	text-align: center;
}

.rt-content table {
	width: 100%;
	border-collapse: collapse;
	margin: 1.5em 0;
	font-size: 15px;
}
.rt-content th,
.rt-content td {
	padding: 10px 14px;
	border: 1px solid rgba(0,0,0,0.1);
	text-align: left;
	vertical-align: top;
}
.rt-content th {
	font-weight: 700;
	background: rgba(0,0,0,0.04);
}
.rt-content tr:nth-child(even) td {
	background: rgba(0,0,0,0.02);
}

/* Alignment helpers from WordPress editor */
.rt-content .aligncenter { display: block; margin: 1.5em auto; }
.rt-content .alignleft    { float: left;  margin: 0 1.5em 1em 0; }
.rt-content .alignright   { float: right; margin: 0 0 1em 1.5em; }
.rt-content .wp-caption    { max-width: 100%; }

@media (max-width: 600px) {
	.rt-content .alignleft,
	.rt-content .alignright { float: none; margin: 1em 0; }
	.rt-content table { display: block; overflow-x: auto; }
}

/* ===========================
   Cak Cards (.cak-*)
   Zengin Metin içi özel kart bileşeni
=========================== */

.cak-section {
	width: 100%;
}

.cak-wrap {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	max-width: var(--container-width, 1280px);
	margin-inline: auto;
}

.cak-card {
	position: relative;
	border-radius: 12px;
	overflow: hidden;
	background: #111827;
	min-height: 420px;
	display: flex;
	flex-direction: column;
	outline: 3px solid transparent;
	outline-offset: -3px;
	transition:
		transform 0.45s cubic-bezier(0.2, 0, 0, 1),
		outline-color 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}

.cak-card:hover {
	transform: translateY(-6px);
	outline-color: #C9A84C;
}

/* Arka plan görseli */
.cak-bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	opacity: 0.38;
	transition: opacity 0.55s ease, transform 0.65s cubic-bezier(0.2, 0, 0, 1);
}

.cak-card:hover .cak-bg {
	opacity: 0.52;
	transform: scale(1.05);
}

/* Koyu gradyan overlay */
.cak-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(
		155deg,
		rgba(10, 14, 26, 0.88) 0%,
		rgba(10, 14, 26, 0.55) 100%
	);
}

/* İçerik */
.cak-content {
	position: relative;
	z-index: 1;
	padding: 36px 32px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex: 1;
}

.cak-title {
	font-size: clamp(1.1rem, 1.5vw, 1.35rem);
	font-weight: 800;
	color: #fff;
	font-style: italic;
	letter-spacing: -0.01em;
	line-height: 1.2;
	margin: 0 0 10px;
}

.cak-sub {
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #C9A84C;
	margin: 0 0 20px;
	display: block;
}

.cak-details {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.cak-details p {
	margin: 0;
	font-size: 0.875rem;
	color: rgba(255, 255, 255, 0.85);
	display: flex;
	align-items: flex-start;
	gap: 8px;
	line-height: 1.45;
}

.cak-gold {
	color: #C9A84C;
	flex-shrink: 0;
	margin-top: 2px;
}

.cak-icon {
	font-size: 1.9rem;
	color: #C9A84C;
	opacity: 0.65;
	align-self: flex-end;
	margin-top: 28px;
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.cak-card:hover .cak-icon {
	opacity: 0.9;
	transform: scale(1.1);
}

/* Gold frame — outline kullanıyor, ayrı elemente gerek yok */
.cak-frame { display: none; }

@media (max-width: 960px) {
	.cak-wrap {
		grid-template-columns: 1fr;
		gap: 16px;
	}
	.cak-card { min-height: 320px; }
}

@media (max-width: 600px) {
	.cak-content { padding: 28px 22px; }
}

/* ═══════════════════════════════════════════════════════════════════
   Mobil Standardizasyon — max-width: 768px
   Kenar boşlukları + tipografi — tüm bileşenler hizalanır.
   ═══════════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {

	/* ── Yatay kenar boşluğu — tüm bileşenler 20px ── */

	/* Header / Footer container */
	.container { padding-left: 20px !important; padding-right: 20px !important; }

	/* İçerik bileşenleri */
	.rt-inner,
	.ic-inner,
	.ng-wrap,
	.co-wrap,
	.ab-values__wrap,
	.ab-stats__wrap   { padding-left: 20px !important; padding-right: 20px !important; }

	/* Metin-Görsel: metin sütunu + görsel sütunu aynı hizada */
	.ti-inner { padding-left: 20px !important; padding-right: 20px !important; }
	/* ti-inner padding zaten kapsıyor — içteki ekstra padding kaldırıldı */
	.ti-content,
	.ti-inner--img-left .ti-content,
	.ti-inner--img-both .ti-content { padding-left: 0 !important; padding-right: 0 !important; }
	.ti-col-2                        { padding-left: 0 !important; padding-right: 0 !important; }

	/* Hero: yatay padding standardize, dikey CSS var'dan gelir */
	.hero-banner__wrap { padding-left: 20px !important; padding-right: 20px !important; }

	/* AB story blocks */
	.ab-story__blocks  { padding-left: 20px; padding-right: 20px; }
	.ab-manifesto__inner { padding-left: 20px; padding-right: 20px; }

	/* ── Bölüm başlıkları — tüm bileşenlerde 22px ── */
	.ti-title    { font-size: 22px; line-height: 1.3; }
	.ng-title    { font-size: 22px; line-height: 1.3; }
	.ic-title    { font-size: 22px; line-height: 1.3; }
	.co-title    { font-size: 22px; line-height: 1.3; }
	.ab-story__title  { font-size: 22px; line-height: 1.3; }
	.ab-values__title { font-size: 22px; line-height: 1.3; }
	.ab-stats__title  { font-size: 22px; line-height: 1.3; }

	/* ── Üst etiketler — tüm bileşenlerde 10px ── */
	.ti-eyebrow,
	.ic-eyebrow,
	.co-eyebrow { font-size: 10px; letter-spacing: 0.12em; }

	/* ── İçerik / paragraf metni — tüm bileşenlerde 15px ── */
	.ti-text        { font-size: 15px; }
	.ti-image-sub   { font-size: 13px; }
	.ic-text        { font-size: 15px; }
	.ng-card__title { font-size: 15px; }
	.ab-story__text { font-size: 15px; }
	.co-subtitle    { font-size: 14px; }
	.co-card__row   { font-size: 13px; }
	.rt-content p,
	.rt-content li  { font-size: 15px; }

	/* RT içine gömülen HTML'nin yatay taşmasını önle — mobil scroll sorunu */
	.rt-content { overflow-x: hidden; }

	/* ── Zengin Metin başlıkları ── */
	.rt-content h1 { font-size: clamp(24px, 6.5vw, 30px); }
	.rt-content h2 { font-size: clamp(20px, 5.5vw, 24px); }
	.rt-content h3 { font-size: clamp(18px, 5vw, 21px); }
	.rt-content h4 { font-size: clamp(16px, 4.5vw, 18px); }

	/* ── About — büyük sayısal değerler ── */
	.ab-manifesto__statement { font-size: clamp(32px, 10vw, 52px); }
	.ab-value__num   { font-size: clamp(36px, 9vw, 48px); }
	.ab-value__title { font-size: 17px; }
	.ab-value__text  { font-size: 13px; }
	.ab-stat__label    { font-size: 12px; }
	.ab-stat__sublabel { font-size: 11px; }

	/* ── Contact — büyük numara ── */
	.co-office__num  { font-size: clamp(28px, 7vw, 36px); }
	.co-office__name { font-size: 16px; }
	.co-office__label { font-size: 10px; }

	/* ── Haber kartları ── */
	.ng-card__cat  { font-size: 10px; }
	.ng-card__link { font-size: 12px; }

	/* ── Mozaik ── */
	.mosaic-card__title { font-size: 1rem; }

	/* ── Kart bileşeni (.cak-*) ── */
	.cak-title     { font-size: 1.05rem; }
	.cak-details p { font-size: 0.82rem; }

	/* ── Butonlar ── */
	.ti-btn { font-size: 13px; }
	.ic-btn { font-size: 13px; }

	/* ── Bölümler arası boşluk — mobilde daha az ── */
	.mosaic-section,
	.ti-section,
	.ic-section,
	.ng-section,
	.co-section,
	.ab-root,
	.rt-section { margin-top: 48px; }
}

/* ═══════════════════════════════════════════════════════════════════
   Luxury Kartlar (.luxury-card)
   ═══════════════════════════════════════════════════════════════════ */

.cakirogullari-section {
	margin: 0;
	padding: 0 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #ffffff;
}

.card-container {
	display: flex;
	gap: 35px;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	max-width: 1280px;
	width: 100%;
	padding: 0 32px;
	box-sizing: border-box;
	perspective: 1500px;
}

.luxury-card {
	width: 320px;
	height: 460px;
	position: relative;
	border-radius: 14px;
	cursor: pointer;
	overflow: hidden;
	background-color: #ffffff;
	box-shadow: 0 15px 35px rgba(0,0,0,0.08);
	border: 1px solid rgba(200,169,81,0.2);
	transform-style: preserve-3d;
	transition: transform 0.6s cubic-bezier(0.25,1,0.33,1), box-shadow 0.6s ease, border-color 0.6s ease;
}

.luxury-card:hover {
	transform: rotateY(10deg) rotateX(6deg) translateY(-15px);
	box-shadow: 0 30px 60px rgba(200,169,81,0.22);
	border-color: rgba(200,169,81,0.7);
}

.card-content-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	padding: 40px 30px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	z-index: 3;
	transform: translateZ(40px);
	transition: transform 0.5s ease;
}

.luxury-card:hover .card-content-wrapper {
	transform: translateZ(65px);
}

.card-main-title {
	font-family: 'Playfair Display', serif;
	font-size: 24px;
	font-weight: 600;
	font-style: italic;
	color: #111111;
	margin: 0 0 8px 0;
	letter-spacing: 0.5px;
	line-height: 1.3;
}

.card-sub-title {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	color: #C8A951;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin: 0 0 25px 0;
}

.card-text-details p {
	font-family: 'Montserrat', sans-serif;
	font-size: 13.5px;
	line-height: 1.6;
	color: #333333;
	margin: 8px 0;
	font-weight: 400;
}

.card-gold-frame {
	position: absolute;
	top: 15px; right: 15px; bottom: 15px; left: 15px;
	border: 1px solid rgba(200,169,81,0.25);
	border-radius: 10px;
	pointer-events: none;
	z-index: 4;
	transition: border-color 0.4s ease;
}

.luxury-card:hover .card-gold-frame {
	border-color: rgba(200,169,81,0.75);
}

.luxury-card::after {
	content: '';
	position: absolute;
	top: 0; left: 0; width: 100%; height: 100%;
	background: linear-gradient(135deg, transparent 30%, rgba(200,169,81,0.12) 50%, transparent 70%);
	transform: translateX(-100%);
	transition: transform 0.7s ease;
	pointer-events: none;
	z-index: 5;
}

.luxury-card:hover::after {
	transform: translateX(100%);
}

.card-bottom-icon {
	align-self: flex-end;
	font-size: 22px;
	color: #C8A951;
	opacity: 0.8;
	transition: transform 0.4s ease;
}

.luxury-card:hover .card-bottom-icon {
	transform: scale(1.2);
	opacity: 1;
}

@media (max-width: 768px) {
	.cakirogullari-section {
		padding: 0;
		justify-content: flex-start;
	}
	.card-container {
		padding: 0;
		gap: 14px;
	}
	.luxury-card {
		width: 100%;
		height: auto;
		min-height: 0;
	}
	.luxury-card:hover {
		transform: translateY(-3px);
		box-shadow: 0 8px 24px rgba(200,169,81,0.15);
	}
	.luxury-card:hover .card-content-wrapper {
		transform: none;
	}
	.card-content-wrapper {
		padding: 22px 20px;
	}
	.card-main-title   { font-size: 20px; }
	.card-sub-title    { font-size: 10px; letter-spacing: 1.5px; margin-bottom: 14px; }
	.card-text-details p { font-size: 14px; line-height: 1.5; margin: 5px 0; }
	.card-bottom-icon  { font-size: 18px; margin-top: 16px; }
	.card-gold-frame   { top: 10px; right: 10px; bottom: 10px; left: 10px; }
}

/* ═══════════════════════════════════════════════════════════════════
   Sürdürülebilirlik Kartları (.sustainability-card)
   ═══════════════════════════════════════════════════════════════════ */

.sustainability-section {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 32px;
}

.sustainability-card-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
	width: 100%;
}

.sustainability-card {
	position: relative;
	background: rgba(255,255,255,0.82);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border: 1px solid rgba(184,146,74,.25);
	border-radius: 24px;
	padding: 38px 32px;
	overflow: hidden;
	cursor: pointer;
	min-height: 200px;
	transition: transform .6s cubic-bezier(0.4,0,0.2,1),
	            box-shadow .6s cubic-bezier(0.4,0,0.2,1),
	            min-height 1.1s cubic-bezier(0.4,0,0.2,1);
}

.sustainability-card:hover {
	min-height: 350px;
	transform: translateY(-12px);
	box-shadow: 0 35px 80px rgba(0,0,0,.15);
}

.sustainability-card::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(184,146,74,.18), transparent 55%);
	opacity: 0;
	transition: .5s;
}

.sustainability-card:hover::before { opacity: 1; }

.card-number {
	font-size: 12px;
	letter-spacing: 4px;
	color: #b8924a;
	font-weight: 700;
	margin-bottom: 24px;
	position: relative;
	z-index: 2;
}

.card-title {
	font-size: 28px;
	font-weight: 600;
	color: #111;
	margin-bottom: 15px;
	position: relative;
	z-index: 2;
}

.card-description {
	font-size: 15px;
	line-height: 1.8;
	color: #555;
	position: relative;
	z-index: 2;
}

.card-expand {
	opacity: 0;
	transform: translateY(30px);
	max-height: 0;
	overflow: hidden;
	transition: opacity .7s cubic-bezier(0.4,0,0.2,1) .15s,
	            transform .7s cubic-bezier(0.4,0,0.2,1) .15s,
	            max-height 1s cubic-bezier(0.4,0,0.2,1) .05s;
	position: relative;
	z-index: 2;
}

.sustainability-card:hover .card-expand {
	opacity: 1;
	transform: translateY(0);
	max-height: 230px;
	margin-top: 30px;
}

.card-expand ul { padding: 0; margin: 0; list-style: none; }

.card-expand li {
	font-size: 14px;
	color: #222;
	padding: 13px 0;
	border-bottom: 1px solid rgba(0,0,0,.08);
}

.card-expand li::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	background: #b8924a;
	border-radius: 50%;
	margin-right: 12px;
}

.gold-line {
	position: absolute;
	bottom: 0; left: 0;
	height: 4px;
	width: 0;
	background: #b8924a;
	transition: width 1s cubic-bezier(0.4,0,0.2,1) .1s;
}

.sustainability-card:hover .gold-line { width: 100%; }

@media (max-width: 900px) {
	.sustainability-card-container { grid-template-columns: 1fr; }
	.sustainability-section { padding: 0 20px; }
}

@media (max-width: 768px) {
	.card-title       { font-size: 20px; }
	.card-description { font-size: 14px; }
	.card-number      { font-size: 11px; }
}
