/* Mithra Makina — tek palet, tipografi, bosluk (2026-10-20). Kaynaklar: NOTLAR.md */
:root {
	--mm-brand: #005aab;      /* logodaki mavi (-logo_3.png en sik renk) */
	--mm-brand-dark: #003f7a; /* hover */
	--mm-navy: #041833;       /* mevcut footer zemini */
	--mm-sky: #9fc1df;        /* logodaki acik mavi; yalniz koyu zeminde */
	--mm-text: #212529;       /* Bootstrap 4 $body-color */
	--mm-muted: #555;
	--mm-surface: #f4f7fb;
	--mm-line: #d0d7e2;
}

/* Tipografi: 16px govde, 1.5 satir (theme.css 14px/26px ve #777 yerine) */
body, p { color: var(--mm-text); }
body { font-size: 16px; line-height: 1.5; }
h1, h2, h3, h4, h5, h6 { color: var(--mm-navy); }

/* Linkler: header.php ici #607D8B / #ef2e41 kurallarini ezer */
a { color: var(--mm-brand); }
a:hover, a:focus { color: var(--mm-brand-dark); }

/* Odak gorunur olsun: theme.css "body a { outline:none !important }" kuralini ezer */
body a:focus-visible, .btn:focus-visible, button:focus-visible { outline: 3px solid var(--mm-brand) !important; outline-offset: 2px; }
#footer a:focus-visible, .mm-hero-text a:focus-visible { outline-color: var(--mm-sky) !important; }

/* Butonlar: skin #00AACE (beyazla 2.74:1) yerine marka mavisi */
html .btn-primary, html .btn-primary:focus { background-color: var(--mm-brand); border-color: var(--mm-brand); color: #fff; }
html .btn-primary:hover, html .btn-primary.hover, html .btn-primary:active { background-color: var(--mm-brand-dark); border-color: var(--mm-brand-dark); color: #fff; }

/* Menu */
#header .header-nav-main nav > ul > li > a,
#header .header-nav-main:not(.header-nav-main-mobile-dark) nav > ul > li > a,
#header .header-nav.header-nav-links.header-nav-light-text nav > ul > li > a { color: var(--mm-text); }
#header .header-nav-main nav > ul > li > a.active,
#header .header-nav-main nav > ul > li:hover > a,
#header .header-nav.header-nav-links nav > ul > li > a.active { color: var(--mm-brand) !important; background: none !important; }
#header .header-nav.header-nav-dropdowns-dark nav > ul > li.dropdown .dropdown-menu > li:hover > a,
ul.dropdown-menu li a:hover { background-color: var(--mm-brand) !important; color: #fff !important; }
#header .header-btn-collapse-nav { background: var(--mm-brand); }
/* ust bar eskiden 0.8em x 14px = 11.2px; govde 16px olunca buyuyup tasmasin diye ayni boyutta sabit */
#header .header-nav-top .nav > li > a, #header .header-nav-top .nav > li > span { font-size: 11.2px; }

/* Footer */
#footer, #footer .footer-copyright.footer-copyright-style-2 { background-color: var(--mm-navy); }
#footer a:not(.btn):hover, #footer a:not(.btn).link-hover-style-1:hover { color: var(--mm-sky); }

/* ---- Ana sayfa ---- */
.mm-btn { min-height: 44px; padding: .625rem 1.5rem; font-weight: 600; font-size: 1rem; border-radius: 0; margin: 0 .5rem .5rem 0; }
.mm-btn-light { border: 2px solid #fff; color: #fff; background: transparent; }
.mm-btn-light:hover, .mm-btn-light:focus { background: #fff; color: var(--mm-navy); }

.mm-hero { position: relative; background: var(--mm-navy); }
.mm-hero .carousel-item img { display: block; }
.mm-hero-text { background: var(--mm-navy); color: #fff; padding: 1.5rem 0; }
.mm-hero-text h1 { color: #fff; font-size: 1.75rem; line-height: 1.2; font-weight: 700; letter-spacing: 0; margin: 0 0 .75rem; }
.mm-lead { color: #fff; font-size: 1rem; max-width: 40em; margin-bottom: 1.25rem; }
@media (min-width: 992px) {
	/* metin, foto ustunde en az %75 lacivert katmanda durur (en kotu durum beyaz foto: 7.96:1) */
	.mm-hero-text { position: absolute; left: 0; right: 0; bottom: 0; padding: 6rem 0 3rem; background: linear-gradient(to top, rgba(4,24,51,.9) 0, rgba(4,24,51,.75) 65%, rgba(4,24,51,0) 100%); }
	.mm-hero-text h1 { font-size: 2.5rem; max-width: 18em; }
	.mm-lead { font-size: 1.25rem; }
}

/* Bootstrap 4 spacer olcegi: 3rem = spacer-5, 1.5rem = spacer-4 (kart alt boslugu mb-4 ile toplam 3rem); masaustunde 2 kati */
.mm-section { padding: 3rem 0 1.5rem; }
@media (min-width: 992px) { .mm-section { padding: 6rem 0 4.5rem; } }
.mm-surface { background: var(--mm-surface); }
.mm-h2 { font-size: 1.75rem; line-height: 1.2; font-weight: 700; letter-spacing: 0; text-transform: none; margin: 0 0 2rem; }
@media (min-width: 992px) { .mm-h2 { font-size: 2rem; } }
.mm-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; }
.mm-head a { font-weight: 600; margin-bottom: 2rem; }

.mm-card { display: flex; flex-direction: column; height: 100%; padding: 1.5rem; background: #fff; border: 1px solid var(--mm-line); border-top: 3px solid var(--mm-brand); color: var(--mm-text); text-decoration: none; transition: box-shadow .2s; }
.mm-card:hover, .mm-card:focus { color: var(--mm-text); text-decoration: none; box-shadow: 0 8px 24px rgba(4,24,51,.12); }
.mm-num { color: var(--mm-brand); font-weight: 700; font-size: .875rem; margin-bottom: .75rem; }
.mm-card-title { color: var(--mm-navy); font-size: 1.25rem; font-weight: 700; line-height: 1.2; flex: 1; margin-bottom: 1rem; }
.mm-more { color: var(--mm-brand); font-weight: 600; }

.mm-project { display: block; color: var(--mm-text); text-decoration: none; }
.mm-project:hover { text-decoration: none; color: var(--mm-text); }
.mm-project img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; margin-bottom: .75rem; background: var(--mm-line); }
.mm-project strong { display: block; color: var(--mm-navy); font-size: 1rem; }
.mm-project span { display: block; color: var(--mm-muted); font-size: .875rem; }
.mm-project:hover strong { color: var(--mm-brand); }

.mm-logos { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
@media (min-width: 768px) { .mm-logos { grid-template-columns: repeat(6, 1fr); gap: 1.5rem; } }
.mm-logos li { display: flex; align-items: center; justify-content: center; height: 88px; padding: .75rem; border: 1px solid var(--mm-line); background: #fff; }
.mm-logos img { max-width: 100%; max-height: 100%; object-fit: contain; filter: grayscale(1); opacity: .85; transition: filter .2s, opacity .2s; }
.mm-logos li:hover img { filter: none; opacity: 1; }

@media (prefers-reduced-motion: reduce) { .mm-card, .mm-logos img, .carousel-item { transition: none !important; } }

/* ---- Ust bar (2026-10-20). Kaynaklar: cikti/ust-bar/RAPOR.md ---- */
/* 64px yukseklik (M3 small top app bar); Porto'nun 3px gri ust cizgisi kaldirildi */
#header .header-body { border-top: 0; }
#header .header-nav, #header .header-nav.header-nav-links { min-height: 64px; padding: 0; } /* Porto mobilde 70px */
#header .header-logo { margin: 8px 0; }
#header .header-logo img { height: 48px; width: auto; }

/* Hafif saydam + bulanik zemin yalniz destekleyen tarayicida; digerleri Porto'nun opak #fff'inde kalir */
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
	#header .header-body { background: rgba(255, 255, 255, .85); -webkit-backdrop-filter: saturate(180%) blur(20px); backdrop-filter: saturate(180%) blur(20px); }
}
@media (prefers-reduced-transparency: reduce) {
	#header .header-body { background: #fff; -webkit-backdrop-filter: none; backdrop-filter: none; }
}

/* Menu yazisi: 14px / 600 / %5 harf araligi (buyuk harf) */
#header .header-nav.header-nav-links.header-nav-light-text nav > ul > li > a,
#header .mm-lang-btn { font-size: 14px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; }
@media (min-width: 992px) {
	#header .header-nav.header-nav-links nav > ul > li > a { min-height: 64px; margin: 0; }
	/* Alt menu: 12.8px / -0.5px ve Porto koyu tema artigi #2a2a2a ayiraclar yerine */
	#header .header-nav.header-nav-dropdowns-dark nav > ul > li.dropdown li a { font-size: 14px; letter-spacing: 0; border-bottom-color: var(--mm-line); }
}

/* Dil acilir menusu (Bootstrap 4 dropdown) */
#header .mm-lang { display: flex; align-items: center; align-self: stretch; margin-left: .5rem; }
#header .mm-lang-btn { display: inline-flex; align-items: center; min-height: 44px; padding: 0 .75rem; color: var(--mm-text); background: transparent; border: 0; border-radius: 0; box-shadow: none; }
#header .mm-lang-btn:hover, #header .mm-lang.show .mm-lang-btn { color: var(--mm-brand); }
#header .mm-lang-btn .flag, #header .mm-lang .dropdown-item .flag { margin-right: .5rem; }
/* Bootstrap 4 .dropdown-toggle::after oku (sinif kullanilmadi: Porto JS .dropdown-toggle'a mobil ok/tiklama baglar) */
#header .mm-lang-btn::after { content: ""; margin-left: .255em; border-top: .3em solid; border-right: .3em solid transparent; border-left: .3em solid transparent; }
#header .mm-lang .dropdown-menu { min-width: 100%; margin: 0; padding: 0; border: 1px solid var(--mm-line); border-radius: 0; background: #fff; box-shadow: 0 8px 24px rgba(4, 24, 51, .12); }
#header .mm-lang .dropdown-item { display: flex; align-items: center; min-height: 44px; padding: 0 1rem; font-size: 14px; color: var(--mm-text); }
#header .mm-lang .dropdown-item:hover, #header .mm-lang .dropdown-item:focus { background: var(--mm-brand); color: #fff; }

/* Telefon: hamburger 44x44 dokunma alani, dil menusu yaninda */
#header .header-btn-collapse-nav { width: 44px; height: 44px; padding: 0; margin-left: .5rem; }

/* ---- Altbilgi (footer) — kaynaklar: cikti/altbilgi/RAPOR.md ---- */
#footer { font-size: 1rem; line-height: 1.5; color: rgba(255,255,255,.87); }
#footer p { color: rgba(255,255,255,.87); font-size: 1rem; line-height: 1.5; }
#footer .mm-foot-logo { display: block; width: 94px; height: auto; margin-bottom: 1.5rem; }
#footer .mm-foot-about p:last-child { margin-bottom: 0; }


#footer .mm-foot-list, #footer .mm-foot-contact { margin: 0; }
#footer .mm-foot-list li, #footer .mm-foot-contact li { margin-bottom: .5rem; }
#footer .mm-foot-list a:not(.btn), #footer .mm-foot-contact a:not(.btn) { color: rgba(255,255,255,.87); }
#footer .mm-foot-sub { margin: .5rem 0 0; padding-left: 1rem; border-left: 1px solid rgba(255,255,255,.12); }
#footer .mm-foot-sub li { font-size: .875rem; }

#footer .mm-foot-contact li { display: flex; align-items: baseline; }
#footer .mm-foot-contact i { flex: none; width: 1.25em; margin-right: .5rem; color: var(--mm-sky); }

#footer .footer-copyright.footer-copyright-style-2 { border-top: 1px solid rgba(255,255,255,.12); }
#footer .footer-copyright p { color: rgba(255,255,255,.6); font-size: .875rem; }

/* ---- slider-yazi (2026-10-20): slayt gostergesi + baslik olcegi. Kaynaklar: cikti/slider-yazi/RAPOR.md ---- */

/* Slayt gostergesi: Bootstrap 4 .carousel-indicators; cubuk 4px (M3 linear progress), dokunma alani 4+10+10 = 24px (WCAG 2.5.8) */
.mm-hero .carousel-indicators li { position: relative; height: 4px; }
.mm-hero .carousel-indicators button { position: absolute; top: -10px; bottom: -10px; left: 0; width: 100%; padding: 0; border: 0; background: transparent; cursor: pointer; }
.mm-hero .carousel-indicators button:focus-visible { outline-color: var(--mm-sky) !important; }
@media (max-width: 991.98px) {
	/* telefonda yazi fotonun altinda; gosterge fotonun alt kenarinda, masaustundeki lacivert gecisin ayni tonu ustunde */
	.mm-hero .carousel-indicators { margin: 0; padding: 1.5rem 15% .5rem; background: linear-gradient(to top, rgba(4,24,51,.75), rgba(4,24,51,0)); }
}

/* Basliklar: Bootstrap 4 olcegi (2.5/2/1.75/1.5rem, satir 1.2) + RFS ile dar ekranda kuculme; Porto'nun 14px icin sabit px satir araliklarini ezer */
h1 { font-size: calc(1.375rem + 1.5vw); line-height: 1.2; }
h2 { font-size: calc(1.325rem + .9vw); line-height: 1.2; }
h3 { font-size: calc(1.3rem + .6vw); line-height: 1.2; }
h4 { font-size: calc(1.275rem + .3vw); line-height: 1.2; }
@media (min-width: 1200px) { h1 { font-size: 2.5rem; } h2 { font-size: 2rem; } h3 { font-size: 1.75rem; } h4 { font-size: 1.5rem; } }

/* Sayfa baslik bandi h1: Porto page-header-modern h1 = 28px (1.75rem); kalinlik ana sayfa basliklariyla ayni (700) */
.page-header.page-header-modern.page-header-sm h1 { font-size: calc(1.3rem + .6vw); line-height: 1.2; font-weight: 700; }
@media (min-width: 1200px) { .page-header.page-header-modern.page-header-sm h1 { font-size: 1.75rem; } }

/* Ana sayfa proje karti basligi: 2 satira inince .mm-card-title gibi 1.2 satir araligi */
.mm-project strong { line-height: 1.2; margin-bottom: .25rem; }

/* Proje listesi kartlari (inline stilli, sinifsiz): sabit 110px kutudan yazi tasiyordu; olcu ana sayfa .mm-project ile ayni */
div[style*="height: 110px"] { height: auto !important; min-height: 7.25rem; } /* 116px = 3 satir baslik (3x19.2) + 2 alt satir (2x21) + bosluk/kenar 16px: satirdaki kartlar esit boy */
div[style*="height: 110px"] > div:first-child { font-size: 1rem !important; line-height: 1.2; margin-bottom: .25rem; }
div[style*="height: 110px"] > div + div, div[style*="height: 110px"] > div + div a { font-size: .875rem; color: var(--mm-muted) !important; }
@media (min-width: 768px) { .col-md-3[style*="float: left"]:nth-child(4n+1) { clear: left; } } /* boy farkinda float satirlari kaymasin */

/* ===== 2026-10-20 YENI GORUNUM (hedef gorsel klonu) ===== */

/* --- tasarim-sistemi (tokens) --- */
/* ==== Mithra Makina — tasarım sistemi (2026-10-20). custom.css'in SONUNA eklenir. Ölçü kaynakları: tasarim-sistemi/RAPOR.md ==== */

/* Figtree (SIL OFL 1.1) — kendi sunucumuz: assets/mithramakina/fonts/. Tek variable dosya 300–900 tüm ağırlıkları kapsar.
   unicode-range Google Fonts'un kendi bölmesi: ğ Ğ ş Ş İ latin-ext'te, ç ö ü ı latin'de; tarayıcı yalnız gerekeni indirir. */
@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 300 900;
	font-display: swap;
	src: url('../fonts/figtree-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 300 900;
	font-display: swap;
	src: url('../fonts/figtree-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	/* SÖZLEŞME — değerler hedef görselden piksel ölçüldü (RAPOR.md tablo 2) */
	--mm-font: 'Figtree', Arial, sans-serif;
	--mm-container: 1310px;      /* içerik 1280 (görsel 82–1367 @1448) + 2×15 BS4 padding */
	--mm-navy: #00041f;          /* h2 lacivert çekirdeği */
	--mm-blue: #005fde;          /* 5 düz mavi örneğin ortalaması; beyazla 5.69:1 */
	--mm-blue-light: #c3e7fe;    /* hero h1 2. satır */
	--mm-text: #19294c;          /* menü metni */
	--mm-muted: #606c8b;         /* gri metin; beyazla 5.23:1 */
	--mm-line: #dde2ea;          /* kart ok dairesi çerçevesi */
	--mm-bg-soft: #fafcfe;       /* faaliyet/projeler zemini */
	--mm-radius: 8px;            /* kart köşesi */
	--mm-radius-btn: 8px;        /* hero dolu düğme köşesi */
	--mm-shadow: 0 24px 52px -16px rgba(17, 85, 154, .10);       /* kart alt/yan/üst gölge profiline Gauss modeliyle oturtuldu, rms 0.67 gri düzeyi */
	--mm-shadow-hover: 0 28px 60px -16px rgba(17, 85, 154, .18); /* hedefte hover yok: kaynak yok, karar */

	/* Yazı ölçeği (görselden ölçüldü, px @1448 ≈ @1440) */
	--mm-fs-h1: 60px;      /* hero h1, 700, satır 60px */
	--mm-fs-h2: 32px;      /* bölüm h2, 700, satır 35px */
	--mm-fs-card: 21px;    /* kart başlığı, 700 */
	--mm-fs-lead: 19px;    /* hero paragrafı, 400, satır 25px */
	--mm-fs-body: 15px;    /* gövde, 400, satır 1.5 */
	--mm-fs-menu: 12.5px;  /* menü ve "tümünü gör" bağlantısı, 500 */
	--mm-fs-btn: 15px;     /* düğme, 600 */
	--mm-fs-eyebrow: 12px; /* .mm-eyebrow, 600, harf aralığı 2px */

	/* custom.css'teki eski adları yeni değerlere bağla (linkler, odak, menü, butonlar bunları kullanıyor) */
	--mm-brand: var(--mm-blue);
	--mm-brand-dark: #004cb2; /* hover: --mm-blue %80 parlaklık, kaynak yok, karar; beyazla 7.85:1 */
	--mm-surface: var(--mm-bg-soft);
}

/* Global yazı tipi (Porto: Open Sans 14px, başlık 200 ağırlık ve -.05em) */
/* renkler custom.css'te zaten var(--mm-text)/var(--mm-navy) */
body { font-family: var(--mm-font); font-size: var(--mm-fs-body); }
h1, h2, h3, h4, h5, h6 { font-family: var(--mm-font); font-weight: 700; letter-spacing: 0; }

/* Footer hedef görselde yok: --mm-navy değişse de eski zemini korur (custom.css var(--mm-navy) kullanıyor) */
#footer, #footer .footer-copyright.footer-copyright-style-2 { background-color: #041833; }

/* Container: ≥1200 kenarda en az ~80px boşluk (görselde içerik kenarı 82px) — 1440'ta içerik 1280, daha genişte sabit */
@media (min-width: 1200px) {
	.container { max-width: min(var(--mm-container), calc(100% - 130px)); }
}

/* Düğmeler (görsel: hero düğmeleri 239×50–52, köşe 8, yatay iç boşluk 28–30, metin 15/600) */
html .btn-primary, .mm-btn { font-weight: 600; border-radius: var(--mm-radius-btn); }
.mm-btn { display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 52px; padding: 0 28px; font-size: var(--mm-fs-btn); line-height: 1.2; }
.mm-btn-light { border: 1px solid #fff; }

/* Bölüm etiketi: önde 28×2 mavi çizgi, 14px boşluk, BÜYÜK harf 12px/600, harf aralığı 2px. Hero'da renk beyaza ezilir. */
.mm-eyebrow { display: flex; align-items: center; gap: 14px; margin: 0; color: var(--mm-muted); font-size: var(--mm-fs-eyebrow); font-weight: 600; line-height: 1.2; letter-spacing: 2px; text-transform: uppercase; }
.mm-eyebrow::before { content: ""; flex: 0 0 28px; height: 2px; background: var(--mm-blue); }

/* --- ust menu + hero --- */
/* ==== ust-hero (2026-10-20): yuzen ust menu + hero. Olculer hedef-tasarim.png'den px (1448 genislik); kaynaklar cikti/ust-hero/RAPOR.md ==== */

/* ---------- Ust menu: yuzen, yuvarlak kose kutu (her sayfada ayni) ---------- */
/* kutu ustte 20px bosluk (hedef y=20); Porto #header'a JS ile kutu yuksekligini verir, content-box ile bosluk bunun disinda kalir */
#header { padding-top: 20px; box-sizing: content-box; }
/* ana sayfa: hero sayfanin en ustunden baslar, menu ustune biner */
html:has(.mm-hero) #header { position: absolute; top: 0; left: 0; right: 0; }

/* kutu = icerik genisligi + her yanda 8px (hedef 74-1373, icerik 82-1367) = .container - 2x15 + 2x8; .container formulu tasarim-sistemi/tokens.css ile ayni. Kenar 1px beyaz, kose 12px */
html #header .header-body {
	width: calc(100% - 20px); margin: 0 auto; left: 0; right: 0;
	border: 1px solid rgba(255, 255, 255, .8); border-radius: 12px; background: #fff;
	box-shadow: 0 8px 24px rgba(4, 24, 51, .12);
	-webkit-backdrop-filter: none; backdrop-filter: none;
}
@media (min-width: 1200px) { html #header .header-body { max-width: calc(min(var(--mm-container), calc(100% - 130px)) - 14px); } }
/* ic sayfa: beyaz (opak) kutu, acik bant ustunde kenari gorunsun diye 1px acik gri cerceve */
html:not(:has(.mm-hero)) #header .header-body { border-color: var(--mm-line); }
/* ana sayfa: cam. %94 beyaz = en kotu durumda (koyu foto) aktif mavi menu yazisi 4.5:1 (WCAG 1.4.3); hedefteki ~%70 bu esigi gecmiyor */
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
	html:has(.mm-hero) #header .header-body { background: rgba(255, 255, 255, .94); -webkit-backdrop-filter: saturate(180%) blur(16px); backdrop-filter: saturate(180%) blur(16px); }
}
@media (prefers-reduced-transparency: reduce) {
	html #header .header-body { background: #fff !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
}
/* sabitlenince (Porto sticky: position fixed, top 0) kutu yine 20px asagida ve ortada */
html.sticky-header-active #header .header-body { margin-top: 20px; box-shadow: 0 8px 24px rgba(4, 24, 51, .12); border-bottom-color: rgba(255, 255, 255, .8); }
html.sticky-header-active:not(:has(.mm-hero)) #header .header-body { border-color: var(--mm-line); }

/* ic bosluk: Teklif Al sagdan 23px, logo soldan 50px (hedef 1349->1373 ve 75->126); yukseklik 62 + 2 kenar = 64 (hedef y 20-83) */
html #header .header-container { max-width: none; padding: 0 23px 0 50px; }
#header .header-nav, #header .header-nav.header-nav-links { min-height: 62px; }
#header .header-logo { margin: 0; }
#header .header-logo img { height: 39px; width: auto; } /* hedef logo y 33-71 */

@media (min-width: 992px) {
	/* menu kutunun tam ortasinda (hedef menu merkezi 725.5, kutu merkezi 724) */
	#header .header-nav-main { position: absolute; left: 50%; top: 0; bottom: 0; transform: translateX(-50%); }
	#header .header-nav-main nav > ul { flex-wrap: nowrap; white-space: nowrap; }
	#header .header-nav-main nav > ul > li { margin: 0; }
	/* boyut/kalinlik tasarim-sistemi --mm-fs-menu (12.5px, 500); maddeler arasi 40px (hedef 39-40).
	   Panel metni BUYUK HARF; hedefteki gibi kucuk harf: lowercase + ilk harf buyuk (lang=tr ile I/İ dogru). ::first-letter flex kapta calismaz, bu yuzden block */
	#header .header-nav.header-nav-links nav > ul > li > a,
	#header .header-nav.header-nav-links.header-nav-light-text nav > ul > li > a {
		position: relative; display: block; min-height: 62px; padding: 0 20px; margin: 0; line-height: 62px;
		font-family: var(--mm-font); font-size: var(--mm-fs-menu, 12.5px); font-weight: 500; letter-spacing: 0; text-transform: lowercase; color: var(--mm-text);
	}
	#header .header-nav.header-nav-links nav > ul > li > a::first-letter { text-transform: uppercase; }
	/* aktif: mavi yazi + 3px mavi alt cizgi, yazi genisliginde, kutu altindan 13px yukarida (hedef y 67-69) */
	#header .header-nav.header-nav-links nav > ul > li > a::before {
		content: ""; position: absolute; left: 20px; right: 20px; bottom: 13px; height: 3px; background: var(--mm-blue); transform: scaleX(0); transition: transform .2s;
	}
	#header .header-nav.header-nav-links nav > ul > li.mm-current > a::before,
	#header .header-nav.header-nav-links nav > ul > li > a.active::before { transform: scaleX(1); }
	/* Porto dropdown-toggle oku hedefte yok */
	#header .header-nav-main nav > ul > li > a.dropdown-toggle::after { display: none; }
}
#header .header-nav-main nav > ul > li.mm-current > a,
#header .header-nav.header-nav-links nav > ul > li.mm-current > a { color: var(--mm-blue) !important; }
@media (prefers-reduced-motion: reduce) { #header .header-nav.header-nav-links nav > ul > li > a::before { transition: none; } }
/* 992-1199: EN menu (en uzun) dil dugmesine binmesin diye maddeler arasi 20px (1024'te olculdu: 40px'te 26px cakisma); kaynak yok, karar */
@media (min-width: 992px) and (max-width: 1199.98px) {
	#header .header-nav.header-nav-links nav > ul > li > a, #header .header-nav.header-nav-links.header-nav-light-text nav > ul > li > a { padding: 0 10px; }
	#header .header-nav.header-nav-links nav > ul > li > a::before { left: 10px; right: 10px; }
	html #header .header-container { padding-left: 24px; }
}

/* dil: dunya ikonu + TR + asagi ok (hedef 1131-1181; ikon 14px, metin 12px) */
#header .mm-lang { margin-left: auto; }
#header .mm-lang-btn { gap: 8px; min-height: 44px; padding: 0 6px; font-family: var(--mm-font); font-size: var(--mm-fs-menu, 12.5px); font-weight: 500; letter-spacing: 0; color: var(--mm-text); }
#header .mm-lang-btn .fa-globe { font-size: 14px; }
#header .mm-lang-btn::after { content: "\f078"; margin: 0; border: 0; font-family: "Font Awesome 5 Free"; font-weight: 900; font-size: 8px; }
#header .mm-lang .dropdown-menu { border-radius: 8px; overflow: hidden; }
#header .mm-lang .dropdown-item { font-family: var(--mm-font); }
#header .header-btn-collapse-nav { background: var(--mm-blue); border-radius: 6px; }

/* Teklif Al: 138x40, kose --mm-radius-btn, 15px/600, dil ile arasi 30px (hedef 1211-1349 x 32-72) */
#header .mm-teklif { display: none; }
@media (min-width: 992px) {
	#header .mm-teklif, #header .mm-teklif:focus { background: var(--mm-blue); border-color: var(--mm-blue); color: #fff; }
	#header .mm-teklif { display: inline-flex; align-items: center; justify-content: center; gap: 14px; height: 40px; min-width: 138px; margin-left: 24px; padding: 0 26px; border-radius: var(--mm-radius-btn); font-family: var(--mm-font); font-size: var(--mm-fs-btn, 15px); font-weight: 600; line-height: 1; text-transform: none; }
	#header .mm-teklif .fa-arrow-right { font-size: 14px; }
}

/* telefon: logo + dil + hamburger; acik menu opak beyaz kutu icinde okunur */
@media (max-width: 991.98px) {
	#header { padding-top: 10px; } /* Porto header-floating-bar mobil bosluk 10px */
	html.sticky-header-active #header .header-body { margin-top: 10px; }
	html #header .header-container { padding: 0 12px 0 16px; }
	#header .header-logo img { height: 36px; }
	#header .header-body:has(nav.show, nav.collapsing) { background: #fff; }
	#header .header-nav-main nav > ul > li > a { font-family: var(--mm-font); color: var(--mm-text); text-transform: lowercase; }
	#header .header-nav-main nav > ul > li > a::first-letter { text-transform: uppercase; }
	#header .header-nav-main nav > ul > li.mm-current > a { box-shadow: inset 3px 0 0 var(--mm-blue); }
}

/* ---------- Hero: tam genislik resim, koyu degrade, solda metin ---------- */
.mm-hero { position: relative; display: flex; overflow: hidden; background: #06111e; }
.mm-hero #demo { position: absolute; inset: 0; }
.mm-hero .carousel-inner, .mm-hero .carousel-item { height: 100%; }
.mm-hero .carousel-item img { display: block; width: 100%; height: 100%; object-fit: cover; }
/* sol koyu degrade: hedefte x 0-480 arasi zemin (6,17,30); hedef metni %47'de biter, bizim h1 %59'a uzanir -> koyu kisim %75'e kadar (h1 en kotu durumda beyaz fotoda >=3:1). Alt: ok/gosterge kontrasti */
.mm-hero #demo::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
	background: linear-gradient(90deg, rgba(6, 17, 30, .92) 0, rgba(6, 17, 30, .85) 33%, rgba(6, 17, 30, .6) 55%, rgba(6, 17, 30, 0) 75%), linear-gradient(0deg, rgba(6, 17, 30, .5) 0, rgba(6, 17, 30, 0) 25%); }

/* metin akista, alta yaslanir: dugme alti hero altindan 130px yukarida (hedef 458 / 588); h1 satir sayisi degisse de dugmeler ve gosterge yerinde kalir. Masaustu yukseklik 588 (hedef 0-588) */
.mm-hero-text { position: relative; z-index: 2; flex: 1; display: flex; align-items: flex-end; min-height: 588px; padding: 104px 0 130px; background: none; color: #fff; pointer-events: none; }
.mm-hero-text .container { pointer-events: auto; }
.mm-hero .mm-eyebrow { color: #fff; margin: 0 0 12px; }
/* h1: Figtree 700 58px, satir 60px (hedef cap 40px, satir arasi 60px); en fazla 2 dengeli satir */
.mm-hero-text h1 { max-width: 15em; margin: 0 0 14px; font-family: var(--mm-font); font-size: 58px; line-height: 60px; font-weight: 700; letter-spacing: -.01em; color: #fff; text-wrap: balance; }
.mm-hero-text h1 span { color: var(--mm-blue-light); }
/* paragraf 17px/26px, genislik 560px (hedef x 83-635, satir arasi 26) */
.mm-hero .mm-lead { max-width: 560px; margin: 0 0 22px; font-family: var(--mm-font); font-size: 17px; line-height: 26px; color: #fff; }
/* dugmeler 52px yuksek, kose --mm-radius-btn, aralik 22px, 15px/600 (hedef 82-320 ve 342-555, y 407-458) */
.mm-hero .mm-btn { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 52px; margin: 0 18px 0 0; /* 18 + satir ici bosluk ~4 = 22px (hedef 320->342) */ padding: 0 27px; border-radius: var(--mm-radius-btn); font-family: var(--mm-font); font-size: var(--mm-fs-btn, 15px); font-weight: 600; line-height: 1.2; text-transform: none; }
.mm-hero .mm-btn-light { border: 1px solid rgba(255, 255, 255, .85); color: #fff; background: transparent; }
.mm-hero .mm-btn-light:hover, .mm-hero .mm-btn-light:focus { background: #fff; color: var(--mm-navy); }
.mm-hero .btn-primary.mm-btn { background: var(--mm-blue); border-color: var(--mm-blue); }

/* gosterge + oklar: .container icinde (metinle her genislikte ayni hiza), alttan 28px (hedef ok alti 560 / 588) */
.mm-hero-nav { position: absolute; left: 0; right: 0; bottom: 28px; z-index: 3; pointer-events: none; }
.mm-hero-nav .container { display: flex; align-items: flex-end; gap: 18px; } /* oklar arasi 18px (hedef 1308->1327) */
.mm-hero-nav .carousel-indicators, .mm-hero-nav a { pointer-events: auto; }
/* gosterge: numara 12px + altinda 2px cizgi, 52px adim; cizgi oklarin altindan 13px yukarida (hedef "01/02/03" x 82,137,187; cizgi y 545-546, ok alti 560) */
.mm-hero .carousel-indicators { position: static; flex: 1; justify-content: flex-start; margin: 0 0 13px; padding: 0; background: none; }
.mm-hero .carousel-indicators li { position: static; flex: 0 0 auto; width: auto; height: auto; margin: 0 20px 0 0; padding: 0; border: 0; text-indent: 0; background: none; opacity: 1; }
.mm-hero .carousel-indicators button { position: relative; top: auto; bottom: auto; display: block; width: 32px; min-height: 24px; padding: 0 0 12px; border: 0; background: none; text-align: left; font-family: var(--mm-font); font-size: 12px; line-height: 12px; font-weight: 600; color: rgba(255, 255, 255, .55); cursor: pointer; }
.mm-hero .carousel-indicators button::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: rgba(255, 255, 255, .35); }
.mm-hero .carousel-indicators li.active button { color: #fff; }
.mm-hero .carousel-indicators li.active button::after { background: #fff; }

/* oklar: 42px yuvarlak, 1px beyaz cerceve (hedef x 1267-1308 / 1327-1368, y 519-560) */
.mm-hero .carousel-control-prev, .mm-hero .carousel-control-next { position: static; flex: 0 0 42px; width: 42px; height: 42px; border: 1px solid rgba(255, 255, 255, .85); border-radius: 50%; color: #fff; opacity: 1; font-size: 14px; transition: background-color .2s, color .2s; }
.mm-hero .carousel-control-prev:hover, .mm-hero .carousel-control-next:hover,
.mm-hero .carousel-control-prev:focus, .mm-hero .carousel-control-next:focus { background: #fff; color: var(--mm-navy); }
.mm-hero .carousel-indicators button:focus-visible, .mm-hero a:focus-visible { outline: 3px solid var(--mm-blue-light) !important; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .mm-hero .carousel-control-prev, .mm-hero .carousel-control-next { transition: none; } }

/* telefon/tablet: metin ustte okunur (tum foto koyu ortulu), dugmeler yan yana sigmazsa alt alta; oklar gizli (gosterge dugmeleri + kaydirma var) */
@media (max-width: 991.98px) {
	.mm-hero #demo::after { background: linear-gradient(0deg, rgba(6, 17, 30, .92) 0, rgba(6, 17, 30, .7) 100%); }
	.mm-hero-text { min-height: 0; padding: 116px 0 104px; }
	/* M3 headline-large 32/40, govde 16/24 */
	.mm-hero-text h1 { font-size: 32px; line-height: 40px; margin-bottom: 16px; }
	.mm-hero .mm-lead { font-size: 16px; line-height: 24px; margin-bottom: 24px; }
	.mm-hero .mm-btn { min-height: 48px; padding: 0 20px; margin: 0 12px 12px 0; }
	.mm-hero .carousel-control-prev, .mm-hero .carousel-control-next { display: none; }
}
@media (min-width: 576px) and (max-width: 991.98px) {
	.mm-hero .carousel-control-prev, .mm-hero .carousel-control-next { display: flex; }
}

/* --- faaliyet --- */
/* ---- Faaliyet alanlari: 4 kart + yatay kaydirma (2026-10-20). Olculer hedef-tasarim.png'den px; kaynaklar cikti/faaliyet/RAPOR.md ---- */
.mm-faaliyet { padding: 28px 0 8px; background: #fbfcfe; }
.mm-faaliyet-head { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.mm-faaliyet-head .mm-eyebrow { margin: 0 auto 0 0; }
.mm-faaliyet-tum { display: inline-flex; align-items: center; font-size: 13px; line-height: 16px; font-weight: 500; color: var(--mm-blue, #004edb); }
.mm-faaliyet-tum svg { margin-left: 18px; }
.mm-faaliyet-oklar { display: flex; gap: 8px; margin: -8px 0; }
.mm-faaliyet-oklar[hidden] { display: none; }

/* kart oku ve kaydirma oklari ayni daire: 31px, 1px acik cerceve */
.mm-ok, .mm-faaliyet .mm-more { display: inline-flex; align-items: center; justify-content: center; width: 31px; height: 31px; padding: 0; border: 1px solid #d7dfe6; border-radius: 50%; background: #fff; color: var(--mm-blue, #004edb); }
.mm-ok { cursor: pointer; }
.mm-ok[aria-disabled="true"] { opacity: .4; cursor: default; }

/* kaydirma seridi: golge kesilmesin diye 15px (Bootstrap gutter) yan, 8/24px ust/alt bosluk negatif marjla geri alinir; 15 < kart araligi 19, 5. kart gorunmez */
.mm-kaydir { list-style: none; display: flex; gap: 19px; margin: -8px -15px -16px; padding: 8px 15px 24px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding: 0 15px; scroll-behavior: smooth; overscroll-behavior-x: contain; scrollbar-width: none; }
.mm-kaydir::-webkit-scrollbar { display: none; }
.mm-kaydir > li { display: flex; flex: 0 0 85%; scroll-snap-align: start; }
@media (min-width: 768px) { .mm-kaydir > li { flex-basis: calc((100% - 19px) / 2); } }
@media (min-width: 992px) { .mm-kaydir > li { flex-basis: calc((100% - 38px) / 3); } }
@media (min-width: 1200px) { .mm-kaydir > li { flex-basis: calc((100% - 57px) / 4); } }
@media (prefers-reduced-motion: reduce) { .mm-kaydir { scroll-behavior: auto; } }

/* kart: ust resim kenardan kenara, altta baslik + sag ok, altinda aciklama (varsa) */
.mm-faaliyet .mm-card { display: grid; grid-template-columns: 1fr auto; align-items: center; align-content: start; width: 100%; height: auto; padding: 0 0 17px; border: 0; border-radius: var(--mm-radius, 6px); overflow: hidden; background: #fff; box-shadow: var(--mm-shadow, 0 12px 40px rgba(0, 70, 160, .08)); }
.mm-faaliyet .mm-card:hover, .mm-faaliyet .mm-card:focus { box-shadow: var(--mm-shadow-hover, 0 16px 44px rgba(0, 70, 160, .16)); }
.mm-faaliyet .mm-card-img { grid-column: 1 / -1; width: 100%; max-width: none; height: auto; aspect-ratio: 308 / 117; object-fit: cover; margin: 0 0 18px; }
/* 3px dikey ic bosluk: tek satirda satir yuksekligi (31px daire) degismez, cok satirli baslikla aciklama arasi acilir */
.mm-faaliyet .mm-card-title { margin: 0 12px 0 22px; padding: 3px 0; font-size: 20px; line-height: 1.2; }
.mm-faaliyet .mm-more { margin-right: 18px; }
.mm-card-desc { grid-column: 1 / -1; margin: 0 18px 0 22px; color: var(--mm-muted); font-size: 13px; line-height: 19px; }

/* --- projeler + ortaklar + footer --- */
/* ---- Projeler + Proje Ortaklari (2026-10-20). Olcu kaynaklari: cikti/projeler-alt/RAPOR.md (hedef 1448 px) ---- */
/* ust/alt 44 px: kart alti -> sonraki eyebrow cizgisi 53 px (44 + baslik ici 9) */
.mm-proj, .mm-partners { padding: 44px 0; background: var(--mm-bg-soft); }
.mm-proj { overflow: hidden; } /* serit sag kenara tasar; sayfada yatay kaydirma cubugu cikmasin */
.mm-proj + .mm-partners { padding-top: 0; }
.mm-faaliyet ~ .mm-proj { padding-top: 27px; } /* hedef: faaliyet kart alti -> etiket cizgisi 53 px; faaliyet seridi altta 16 px golge payi birakiyor */

/* Bolum basi: eyebrow solda, link sagda ayni satirda (hedefteki faaliyet basligi gibi) */
.mm-proj .mm-head, .mm-partners .mm-head { display: flex; align-items: center; margin: 0 0 18px; }
.mm-head .mm-head-link { display: inline-flex; align-items: center; gap: 19px; margin: 0 0 0 auto; font-size: 13px; line-height: 20px; font-weight: 600; color: var(--mm-blue); white-space: nowrap; } /* margin: custom.css:71 .mm-head a alt boslugunu ezer */
.mm-head-link:hover, .mm-head-link:focus { color: var(--mm-navy); text-decoration: none; }
/* Buyuk baslik/aciklama varsa (metin bossa PHP basmaz): 3 kolon, aciklama hep 2. kolonda (x = konteyner + %40) */
.mm-proj .mm-head-full { display: grid; grid-template-columns: 40% minmax(0, 446px) 1fr; align-items: start; padding-top: 2px; margin-bottom: 16px; }
.mm-head-full .mm-eyebrow { grid-column: 1 / -1; margin-bottom: 10px; }
.mm-proj-h { grid-column: 1; grid-row: 2; margin: 0; font-size: 29px; line-height: 35px; font-weight: 700; letter-spacing: 0; color: var(--mm-navy); }
.mm-proj-h span { display: block; color: var(--mm-blue); }
.mm-proj-desc { grid-column: 2; grid-row: 2; margin: 0; font-size: 15px; line-height: 23px; color: var(--mm-muted); }
.mm-head-full .mm-head-link { grid-column: 3; grid-row: 2; justify-self: end; margin: 4px 0 0; }
@media (max-width: 991.98px) {
	.mm-proj .mm-head-full { grid-template-columns: 100%; }
	.mm-proj-h, .mm-proj-desc, .mm-head-full .mm-head-link { grid-column: 1; grid-row: auto; justify-self: start; }
	.mm-proj-desc, .mm-head-full .mm-head-link { margin-top: 12px; }
}

/* Kart seridi: 4 kart konteynere sigar, 5. sag kenardan tasar (serit saga sayfa kenarina, sola golge payi 24 px uzanir; ilk kart konteyner hizasinda); kaydirma dokunma/izleme paneli/klavye (Tab) ile */
.mm-proj-track { display: flex; gap: 11px; list-style: none; margin: 0 calc(50% - 50vw) -40px -24px; padding: 0 calc(50vw - 50%) 40px 24px; scroll-padding-left: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; overscroll-behavior-x: contain; } /* alt 40 px: kart golgesi kirpilmasin */
.mm-proj-track > li { display: flex; flex: 0 0 calc((100% - 33px) / 4); scroll-snap-align: start; }
@media (max-width: 1199.98px) { .mm-proj-track > li { flex-basis: calc((100% - 33px) / 3.5); } } /* dar ekranda yarim kart = kaydirilir ipucu */
@media (max-width: 991.98px) { .mm-proj-track > li { flex-basis: calc((100% - 22px) / 2.5); } }
@media (max-width: 575.98px) { .mm-proj-track > li { flex-basis: 80%; } }

.mm-proj .mm-project { display: flex; flex-direction: column; width: 100%; background: #fff; border-radius: var(--mm-radius); box-shadow: var(--mm-shadow); overflow: hidden; transition: box-shadow .2s; }
.mm-proj .mm-project:hover, .mm-proj .mm-project:focus { box-shadow: var(--mm-shadow-hover); }
.mm-proj .mm-project:focus-visible { outline-offset: -3px; } /* serit tasmayi kirptigi icin odak cercevesi icte */
.mm-proj .mm-project img { margin: 0; }
.mm-proj .mm-project strong { padding: 16px 22px 4px; font-weight: 700; }
.mm-proj .mm-project span { padding: 0 22px 18px; }

/* Logolar: kartlarla ayni kose/golge/aralik */
.mm-partners .mm-logos { gap: 11px; }
.mm-partners .mm-logos li { border: 0; border-radius: var(--mm-radius); box-shadow: var(--mm-shadow); }

/* Altbilgi basliklari eyebrow diliyle (footer.php'de .mm-eyebrow eklendi) */
#footer .mm-foot-title.mm-eyebrow { margin-bottom: 1.5rem; color: rgba(255, 255, 255, .87); }

@media (prefers-reduced-motion: reduce) { .mm-proj .mm-project { transition: none; } }
