/* ESB Defter: lacivert mürekkep + logo altını; başlık Sora, metin Lora */
:root {
	--esb-lac: #13233a;
	--esb-lac-2: #1e3554;
	--esb-altin: #e8a317;
	--esb-altin-a: #fdf3dc;
	--esb-gok: #2f6fae;
	--esb-gri: #f3f5f8;
	--esb-cizgi: #e2e6ec;
	--esb-soluk: #5e6b7c;
	--esb-baslik: "Sora", "Segoe UI", sans-serif;
	--esb-metin: "Lora", Georgia, serif;
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #fff; color: var(--esb-lac); font-family: var(--esb-metin); font-size: 18px; line-height: 1.7; }
img { max-width: 100%; height: auto; }
a { color: var(--esb-gok); }
a:hover { color: var(--esb-lac); }
:focus-visible { outline: 3px solid var(--esb-altin); outline-offset: 2px; }
h1, h2, h3, h4 { font-family: var(--esb-baslik); color: var(--esb-lac); line-height: 1.2; letter-spacing: -0.015em; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); }
.esb-atla { position: absolute; left: -9999px; }
.esb-atla:focus { left: 12px; top: 12px; z-index: 99; background: #fff; padding: 8px 12px; }

/* üst */
.esb-ust { border-top: 4px solid var(--esb-altin); border-bottom: 1px solid var(--esb-cizgi); background: #fff; position: sticky; top: 0; z-index: 20; }
.esb-ust-ic { max-width: 1180px; margin: 0 auto; padding: 12px 20px; display: flex; align-items: center; gap: 24px; }
.esb-logo img { display: block; height: 44px; width: auto; }
.esb-logo a { font-family: var(--esb-baslik); font-weight: 700; color: var(--esb-lac); text-decoration: none; }
.esb-menu { display: flex; align-items: center; gap: 20px; margin-left: auto; }
.esb-menu ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 4px; }
.esb-menu a { display: block; font-family: var(--esb-baslik); font-size: 15px; font-weight: 600; color: var(--esb-lac); text-decoration: none; padding: 8px 12px; border-radius: 6px; }
.esb-menu a:hover, .esb-menu .current-menu-item > a, .esb-menu .current-post-parent > a { background: var(--esb-altin-a); color: var(--esb-lac); }
.esb-ara input { font: 15px var(--esb-baslik); border: 1px solid var(--esb-cizgi); background: var(--esb-gri); border-radius: 999px; padding: 8px 16px; width: 230px; color: var(--esb-lac); }
.esb-ara input:focus { background: #fff; border-color: var(--esb-gok); outline: none; }
.esb-menu-dugme { display: none; margin-left: auto; font: 600 15px var(--esb-baslik); background: var(--esb-lac); color: #fff; border: 0; border-radius: 6px; padding: 8px 14px; cursor: pointer; }

/* vitrin */
.esb-vitrin { background: var(--esb-lac); color: #fff; }
.esb-vitrin-ic { max-width: 1180px; margin: 0 auto; padding: 56px 20px 60px; }
.esb-vitrin-ust { font: 600 13px var(--esb-baslik); text-transform: uppercase; letter-spacing: .12em; color: var(--esb-altin); margin: 0 0 12px; }
.esb-vitrin-baslik { color: #fff; font-size: clamp(32px, 4.6vw, 52px); font-weight: 700; margin: 0 0 32px; max-width: 18ch; }
.esb-sorular { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; counter-reset: soru; }
.esb-sorular a { display: flex; flex-direction: column; gap: 10px; height: 100%; padding: 22px 22px 20px; border-radius: 10px; background: var(--esb-lac-2); border: 1px solid rgba(255,255,255,.08); color: #fff; text-decoration: none; position: relative; transition: background .15s, border-color .15s; }
.esb-sorular a::before { counter-increment: soru; content: "?"; position: absolute; right: 18px; top: 10px; font: 700 54px/1 var(--esb-baslik); color: rgba(232,163,23,.22); }
.esb-sorular a:hover { background: #24406a; border-color: var(--esb-altin); }
.esb-soru { font: 600 20px/1.3 var(--esb-baslik); padding-right: 40px; }
.esb-soru-alt { font: 500 14px var(--esb-baslik); color: var(--esb-altin); margin-top: auto; }

/* düzen */
.esb-duzen { max-width: 1180px; margin: 0 auto; padding: 40px 20px 20px; display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 48px; }
.esb-liste-bas h1 { font-size: 36px; margin: 4px 0 8px; }
.esb-etiket { font: 600 13px var(--esb-baslik); text-transform: uppercase; letter-spacing: .1em; color: var(--esb-soluk); margin: 0 0 6px; }
.esb-aciklama { color: var(--esb-soluk); font-size: 17px; }
.esb-satir { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 24px; padding: 24px 0; border-bottom: 1px solid var(--esb-cizgi); }
.esb-satir:first-of-type { padding-top: 12px; }
.esb-satir-gorsel { display: block; aspect-ratio: 3 / 2; border-radius: 8px; overflow: hidden; background: var(--esb-gri); }
.esb-satir-gorsel img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .25s; }
.esb-satir:hover .esb-satir-gorsel img { transform: scale(1.03); }
.esb-gorselsiz { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; font: 700 64px var(--esb-baslik); color: var(--esb-altin); background: var(--esb-lac); }
.esb-ust-bilgi { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; font: 500 13px var(--esb-baslik); color: var(--esb-soluk); }
.esb-kat { background: var(--esb-altin-a); color: #7a5300; text-decoration: none; padding: 2px 9px; border-radius: 4px; font-weight: 600; }
.esb-kat:hover { background: var(--esb-altin); color: var(--esb-lac); }
.esb-satir-baslik { font-size: 22px; font-weight: 600; margin: 8px 0 8px; }
.esb-satir-baslik a { color: var(--esb-lac); text-decoration: none; }
.esb-satir-baslik a:hover { color: var(--esb-gok); }
.esb-satir-metin p { margin: 0; font-size: 16.5px; line-height: 1.6; color: #3b4859; }
.navigation.pagination { margin: 32px 0; font-family: var(--esb-baslik); }
.nav-links { display: flex; flex-wrap: wrap; gap: 6px; }
.page-numbers { padding: 8px 13px; border-radius: 6px; border: 1px solid var(--esb-cizgi); text-decoration: none; color: var(--esb-lac); font-size: 15px; }
.page-numbers.current { background: var(--esb-lac); color: #fff; border-color: var(--esb-lac); }
.esb-bos { font-size: 18px; }

/* yan */
.esb-yan { align-self: start; position: sticky; top: 92px; }
.esb-kutu { background: var(--esb-gri); border-radius: 10px; padding: 22px 22px 14px; }
.esb-kutu h2 { font-size: 13px; text-transform: uppercase; letter-spacing: .1em; color: var(--esb-soluk); margin: 0 0 10px; }
.esb-konu-liste { list-style: none; margin: 0; padding: 0; font-family: var(--esb-baslik); }
.esb-konu-liste a { display: flex; justify-content: space-between; padding: 9px 0; border-bottom: 1px solid var(--esb-cizgi); color: var(--esb-lac); text-decoration: none; font-weight: 600; font-size: 15.5px; }
.esb-konu-liste li:last-child a { border-bottom: 0; }
.esb-konu-liste span { color: var(--esb-soluk); font-weight: 500; }
.esb-konu-liste a:hover { color: var(--esb-gok); }

/* yazı */
.esb-yazi { max-width: 760px; margin: 0 auto; padding: 44px 20px 24px; }
.esb-yazi-bas h1 { font-size: clamp(30px, 4.2vw, 44px); font-weight: 700; margin: 12px 0 10px; }
.esb-tarih { font: 500 14px var(--esb-baslik); color: var(--esb-soluk); margin: 0 0 24px; }
.esb-kapak { margin: 0 0 32px; border-radius: 10px; overflow: hidden; background: var(--esb-gri); }
.esb-kapak img { display: block; width: 100%; max-height: 480px; object-fit: contain; }
.esb-govde > * + h2 { margin-top: 1.8em; }
.esb-govde h2 { font-size: 27px; margin-bottom: .5em; padding-top: .2em; border-top: 3px solid var(--esb-altin); display: inline-block; }
.esb-govde h3 { font-size: 21px; margin: 1.5em 0 .4em; }
.esb-govde ul, .esb-govde ol { padding-left: 1.3em; }
.esb-govde li { margin-bottom: .4em; }
.esb-govde li::marker { color: var(--esb-altin); }
.esb-govde blockquote { margin: 1.5em 0; padding: 14px 20px; background: var(--esb-altin-a); border-left: 4px solid var(--esb-altin); font-style: italic; }
.esb-govde table { width: 100%; border-collapse: collapse; font: 15.5px/1.5 var(--esb-baslik); margin: 1.5em 0; }
.esb-govde th { background: var(--esb-lac); color: #fff; text-align: left; font-weight: 600; }
.esb-govde th, .esb-govde td { padding: 10px 13px; border-bottom: 1px solid var(--esb-cizgi); vertical-align: top; }
.esb-govde tbody tr:nth-child(odd) td { background: var(--esb-gri); }
.esb-govde figure { margin: 1.6em 0; }
.esb-govde img { border-radius: 8px; }
#toc_container { background: var(--esb-gri) !important; border: 0 !important; border-radius: 10px; padding: 16px 22px !important; width: 100% !important; font-family: var(--esb-baslik); font-size: 15.5px; }
.esb-benzer { margin-top: 48px; padding: 24px 26px; background: var(--esb-lac); border-radius: 10px; }
.esb-benzer h2 { color: var(--esb-altin); font-size: 13px; text-transform: uppercase; letter-spacing: .1em; margin: 0 0 10px; }
.esb-benzer ul { list-style: none; margin: 0; padding: 0; }
.esb-benzer li { border-top: 1px solid rgba(255,255,255,.1); }
.esb-benzer a { display: block; padding: 10px 0; color: #fff; text-decoration: none; font: 600 17px/1.35 var(--esb-baslik); }
.esb-benzer a:hover { color: var(--esb-altin); }
/* elementor ile yapılmış eski yazılar */
.esb-yazi .elementor-section.elementor-section-boxed > .elementor-container { max-width: 100%; }
.esb-yazi .elementor-widget-text-editor, .esb-yazi .elementor-widget-text-editor p { font-family: var(--esb-metin); font-size: 18px; color: var(--esb-lac); }
.esb-yazi .elementor-heading-title { font-family: var(--esb-baslik) !important; color: var(--esb-lac) !important; }

/* alt */
.esb-alt { background: var(--esb-lac); color: #c6d0dc; margin-top: 56px; font-family: var(--esb-baslik); font-size: 15px; }
.esb-alt-ic { max-width: 1180px; margin: 0 auto; padding: 44px 20px 20px; display: grid; grid-template-columns: 1.3fr 1fr 1.4fr; gap: 40px; }
.esb-alt-ad { color: #fff; font-weight: 700; font-size: 18px; margin: 0 0 8px; }
.esb-alt-baslik { color: var(--esb-altin); font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; margin: 0 0 10px; }
.esb-alt ul { list-style: none; margin: 0; padding: 0; }
.esb-alt li { margin-bottom: 8px; line-height: 1.4; }
.esb-alt a { color: #fff; text-decoration: none; }
.esb-alt a:hover { color: var(--esb-altin); }
.esb-telif { max-width: 1180px; margin: 0 auto; padding: 16px 20px 28px; color: #8797ab; font-size: 13px; border-top: 1px solid rgba(255,255,255,.08); }

@media (max-width: 960px) {
	.esb-duzen { grid-template-columns: 1fr; gap: 24px; }
	.esb-yan { position: static; }
	.esb-sorular { grid-template-columns: 1fr; }
	.esb-alt-ic { grid-template-columns: 1fr; gap: 26px; }
}
@media (max-width: 860px) {
	.esb-menu-dugme { display: block; }
	.esb-menu { display: none; position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-bottom: 1px solid var(--esb-cizgi); flex-direction: column; align-items: stretch; padding: 12px 16px 16px; gap: 10px; }
	.esb-menu.acik { display: flex; }
	.esb-menu ul { flex-direction: column; }
	.esb-ara input { width: 100%; }
	.esb-ust-ic { position: relative; padding: 10px 16px; }
	.esb-logo img { height: 34px; }
}
@media (max-width: 640px) {
	body { font-size: 17px; }
	.esb-vitrin-ic { padding: 36px 16px 40px; }
	.esb-duzen { padding: 24px 16px 8px; }
	.esb-satir { grid-template-columns: 112px minmax(0, 1fr); gap: 14px; padding: 18px 0; }
	.esb-satir-gorsel { aspect-ratio: 1; }
	.esb-satir-baslik { font-size: 17.5px; margin: 6px 0 0; }
	.esb-satir-metin p { display: none; }
	.esb-yazi { padding: 28px 16px 16px; }
	.esb-govde h2 { font-size: 23px; }
	.esb-govde table { display: block; overflow-x: auto; }
}
@media (prefers-reduced-motion: reduce) { .esb-satir-gorsel img, .esb-sorular a { transition: none; } }
