/* 1.7.0: okunabilirlik ve ölçülü bölüm hiyerarşisi. */
:root { --hb-vurgu:#79283b; }
.hb-ana .hb-bolum-basligi,.hb-sayfa h2 { font-size:clamp(1.35rem,2.5vw,1.85rem); line-height:1.3; }
.hb-ana > section,.hb-ana > .hb-bolum { margin-block-start:clamp(1.5rem,4vw,3rem); }
.hb-ana .hb-giris { border-bottom:1px solid var(--hb-cizgi); padding-bottom:1.5rem; }
.hb-giris__metin { line-height:1.65; }
.hb-giris__kimlik { row-gap:.25rem; }
.hb-konular { gap:.75rem; }
.hb-konu { background:var(--hb-yuzey); border:1px solid var(--hb-cizgi); border-radius:10px; padding:1rem; }
.hb-konu__ikon { color:var(--hb-vurgu); background:#f3edef; }
.hb-konu__gundelik { font-size:1rem; line-height:1.5; color:#48515c; }
.hb-konu__ad { margin-bottom:.2rem; }
.hb-yazi-karti { background:var(--hb-yuzey); border:1px solid var(--hb-cizgi); border-radius:10px; padding:1.25rem; }
.hb-yazi-karti__meta { border-top:1px solid var(--hb-cizgi); padding-top:.75rem; margin-top:.75rem; color:#48515c; }
.hb-etiket { color:var(--hb-vurgu); letter-spacing:.045em; }
.hb-avukat-listesi { background:transparent; padding:0; }
.hb-avukatlar { gap:1rem; }
.hb-avukat-karti { border:1px solid var(--hb-cizgi); border-radius:10px; background:var(--hb-yuzey); padding:1.25rem; }
.hb-avukat-karti__ad { line-height:1.35; }
.hb-profil__bilgiler { border-block:1px solid var(--hb-cizgi); padding-block:1rem; }
.hb-yazi__govde { line-height:1.8; }
.hb-yazi__govde p,.hb-yazi__govde li { max-width:72ch; }
.hb-yazi__govde h2 { line-height:1.35; margin-top:2.25rem; }
.hb-kisa-cevap { background:transparent; border:0; padding:0; }
.hb-icindekiler { background:var(--hb-yuzey); border:1px solid var(--hb-cizgi); border-radius:10px; padding:1.25rem; }
.hb-icindekiler a { min-height:44px; padding-block:.25rem; }
.wp-block-group.is-style-hb-sureler { border-inline-start:3px solid var(--hb-vurgu); background:var(--hb-bej); }
.hb-iletisim__kisi { background:var(--hb-yuzey); border:1px solid var(--hb-cizgi); border-radius:10px; padding:1.1rem; min-width:0; }
.hb-iletisim__bag { min-height:44px; overflow-wrap:anywhere; }
.hb-pratik { margin-block:2rem; padding:clamp(1rem,3vw,2rem); border:1px solid var(--hb-cizgi); background:var(--hb-yuzey); border-radius:10px; }
.hb-pratik details { padding-block:.75rem; border-bottom:1px solid var(--hb-cizgi); }
.hb-pratik details:last-child { border-bottom:0; }
.hb-pratik summary { min-height:44px; cursor:pointer; font-weight:600; line-height:1.5; padding-block:.5rem; box-sizing:border-box; }
.hb-pratik details p { color:#48515c; line-height:1.7; max-width:70ch; }
.hb-pratik summary:focus-visible { outline:3px solid var(--hb-vurgu); outline-offset:3px; }
.hb-surec { counter-reset:adim; list-style:none; padding:0; display:grid; gap:1rem; }
.hb-surec li { counter-increment:adim; border-top:1px solid var(--hb-cizgi); padding-top:1rem; }
.hb-surec li::before { content:counter(adim,decimal-leading-zero); display:block; color:var(--hb-vurgu); font-weight:600; margin-bottom:.5rem; }
@media(min-width:900px) { .hb-surec { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:599px) {
 .hb-konular,.hb-kartlar { grid-template-columns:minmax(0,1fr); }
 .hb-ana .hb-giris__baslik { font-size:clamp(1.75rem,7vw,2.1rem); }
 .hb-ana .hb-giris { padding-bottom:1rem; }
 .hb-giris__foto img { max-height:150px; }
 .hb-konu,.hb-yazi-karti,.hb-avukat-karti { padding:1rem; }
 .hb-yazi-karti__baslik { min-height:0; }
}
@media(prefers-reduced-motion:reduce) { .hb-konu,.hb-yazi-karti,.hb-avukat-karti { transition:none; } }

/* 1.7.1: yerleştirilen büro özeti ve içerik alanları. */
.hb-buro-ozet { border-block:1px solid var(--hb-cizgi); padding:clamp(1.25rem,3vw,2.5rem); background:var(--hb-bej); border-radius:10px; }
.hb-buro-ozet__ust { margin:0 0 .5rem; color:var(--hb-vurgu); font-weight:600; font-size:.9375rem; }
.hb-buro-ozet p { max-width:65ch; }
.hb-sayfa .hb-avukat-listesi { margin-top:2rem; }
.hb-sayfa .hb-avukatlar { grid-template-columns:repeat(2,minmax(0,1fr)); }
.hb-yazi__govde a { overflow-wrap:anywhere; }
.hb-pratik details[open] { padding-bottom:1rem; }
@media(max-width:699px) { .hb-sayfa .hb-avukatlar { grid-template-columns:minmax(0,1fr); } }

/* 1.7.2: geniş bej yüzeyleri nötrleştir; eski ana sayfa kuralını da karşıla. */
.hb-ana > .hb-avukat-listesi { background:transparent; padding:0; }
.hb-buro-ozet { background:var(--hb-yuzey); border:1px solid var(--hb-cizgi); }
/* Koyu masaüstü alt bölümünde beyaz kart içindeki ad da okunur kalır. */
.hb-iletisim__kisi { color:var(--hb-murekkep); }
.hb-alt-bilgi .hb-iletisim__kisi a:focus-visible { outline-color:var(--hb-murekkep); }

/* 1.7.3 — Nötr zemin: kayıtlı eski paletin sarı yüzeylerini de karşılar. */
body, .editor-styles-wrapper {
 --wp--preset--color--zemin:#f7f7f7;
 --wp--preset--color--yuzey:#fff;
 --wp--preset--color--bej:#f0f0f0;
 --wp--preset--color--cizgi:#ddd;
 --hb-zemin:#f7f7f7;
 --hb-yuzey:#fff;
 --hb-bej:#f0f0f0;
 --hb-cizgi:#ddd;
 background-color:#f7f7f7;
}
/* Liste ve profil sayfaları aynı kalır; yalnızca ana sayfa kartları kayar. */
.hb-ana .hb-konular:not(.hb-konular--detay),
.hb-ana .hb-kartlar:not(.hb-kartlar--baglanti) {
 display:flex; flex-wrap:nowrap; gap:1rem;
 max-width:100%; min-width:0; overflow-x:auto;
 padding:4px 4px 12px; box-sizing:border-box;
 scroll-snap-type:x proximity; scroll-padding-inline:4px;
 scrollbar-width:thin; scrollbar-color:#92999f transparent;
}
.hb-ana .hb-konular:not(.hb-konular--detay) > li,
.hb-ana .hb-kartlar:not(.hb-kartlar--baglanti) > li {
 flex:0 0 calc((100% - 2rem) / 3); min-width:0;
 scroll-snap-align:start; margin:0;
}
.hb-ana .hb-konular > li:only-child,
.hb-ana .hb-kartlar > li:only-child { flex-basis:100%; }
.hb-ana .hb-konu, .hb-ana .hb-yazi-karti { height:100%; }
.hb-ana .hb-kaydirma {
 display:flex; justify-content:flex-end; align-items:center;
 gap:.5rem; flex-wrap:wrap; margin: .5rem 0 1rem;
 grid-column:1 / -1; grid-row:3;
}
.hb-kaydirma[hidden] { display:none !important; }
.hb-kaydirma span { margin-right:auto; color:var(--hb-ikincil); font-size:.9375rem; }
.hb-kaydirma button {
 min-height:44px; min-width:44px; padding:.5rem .75rem;
 border:1px solid #92999f; border-radius:8px;
 color:var(--hb-murekkep); background:#fff; font:inherit; cursor:pointer;
}
.hb-kaydirma button:disabled { opacity:.45; cursor:default; }
.hb-kaydirma button:focus-visible,
.hb-ana .hb-konular:focus-visible, .hb-ana .hb-kartlar:focus-visible {
 outline:2px solid var(--hb-murekkep); outline-offset:2px;
}
@media(max-width:899px) {
 .hb-ana .hb-konular:not(.hb-konular--detay) > li,
 .hb-ana .hb-kartlar:not(.hb-kartlar--baglanti) > li { flex-basis:calc((100% - 1rem) / 2.15); }
}
@media(max-width:599px) {
 .hb-ana .hb-konular:not(.hb-konular--detay) > li,
 .hb-ana .hb-kartlar:not(.hb-kartlar--baglanti) > li { flex-basis:86%; }
 .hb-ana .hb-konular > li:only-child,
 .hb-ana .hb-kartlar > li:only-child { flex-basis:100%; }
 .hb-kaydirma span { flex-basis:100%; }
}
.hb-ana .hb-konular:not(.hb-konular--detay) > li:only-child,
.hb-ana .hb-kartlar:not(.hb-kartlar--baglanti) > li:only-child { flex-basis:100%; }

/* 1.7.5: WordPress'in odak/Escape/kaydırma kilidi korunarak sağ çekmece. */
.hb-menu.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay) {
 padding:0; background:rgba(15,24,34,.42); overflow:hidden;
 animation:none; transform:none; transition:none;
}
.hb-menu .is-menu-open .wp-block-navigation__responsive-close {
 position:absolute; inset:0 0 0 auto;
 width:min(85vw,360px); max-width:none; margin:0;
 height:100%; height:100dvh; background:var(--hb-zemin);
 overflow-y:auto; overscroll-behavior:contain; box-shadow:-8px 0 32px #18243126;
 transform:none; transition:none; animation:hb-panel-gorun .18s ease-out both;
}
.hb-menu .is-menu-open .wp-block-navigation__responsive-dialog {
 position:relative; min-height:100%; margin:0; box-sizing:border-box;
 padding:calc(1.25rem + env(safe-area-inset-top)) 1.25rem calc(1.25rem + env(safe-area-inset-bottom));
}
.hb-menu .is-menu-open .wp-block-navigation__responsive-dialog::before {
 content:'Menü'; display:block; color:var(--hb-murekkep); font-size:1.25rem; font-weight:600;
}
.hb-menu .is-menu-open .wp-block-navigation__responsive-container-close {
 top:calc(.65rem + env(safe-area-inset-top)); right:.65rem; min-width:44px; min-height:44px;
 display:flex; justify-content:center; align-items:center;
}
.hb-menu.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top:1.5rem; }
/* Geometriyi oynatmadan aç: odaklama yatay kaydırma başlatamaz. */
@keyframes hb-panel-gorun { from { opacity:0; clip-path:inset(0 0 0 100%); } to { opacity:1; clip-path:inset(0); } }
@media(prefers-reduced-motion:reduce) { .hb-menu .is-menu-open .wp-block-navigation__responsive-close { animation:none; } }
.hb-ana .hb-tumu { margin:.5rem 0 1rem; }
.hb-ana .hb-tumu .hb-ok-baglanti { min-height:44px; display:inline-flex; align-items:center; gap:.5rem; font-weight:600; }
.hb-ana .hb-tumu--konular { text-align:right; }

/* 1.7.6 — Mobilde dört açık konu satırı; masaüstünde 2x2. */
.hb-ana .hb-konular:not(.hb-konular--detay) {
 display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
 gap:.75rem; overflow:visible; padding:0; scroll-snap-type:none;
}
.hb-ana .hb-konular:not(.hb-konular--detay) > li { min-width:0; }
.hb-ana .hb-konular .hb-konu { min-height:88px; padding:1rem; }
.hb-ana .hb-tumu--konular { margin:.75rem 0 1.25rem; }
.hb-ana .hb-tumu--konular a {
 padding:.5rem 1rem; border:1px solid var(--hb-cerceve); border-radius:8px;
 background:var(--hb-yuzey); text-decoration:none;
}
.hb-ana .hb-tumu--konular a:hover { text-decoration:underline; }
.hb-ana .hb-buro-ozet { box-sizing:border-box; width:100%; max-width:75rem; padding:1.5rem; }
.hb-ana .hb-buro-ozet p { margin-block:.5rem .75rem; }
.hb-ana .hb-kartlar > li:only-child .hb-yazi-karti__baslik { min-height:0; }
.hb-ana .hb-kartlar > li:only-child .hb-yazi-karti__govde { gap:.5rem; }
.hb-ana .hb-kartlar > li:only-child .hb-yazi-karti__aciklama { max-width:78ch; }
.hb-ana .hb-kartlar > li:only-child .hb-yazi-karti__meta { margin-top:.5rem; }
/* Fotoğraf yokken geniş ve basık bej kutu yerine nötr, kare simge. */
.hb-avukat-karti:has(.hb-avukat-karti__bos) { grid-template-columns:56px minmax(0,1fr) 20px; }
.hb-avukat-karti:has(.hb-avukat-karti__bos) .hb-avukat-karti__foto { width:56px; }
.hb-avukat-karti__bos {
 display:flex; align-items:center; justify-content:center; width:56px; height:56px;
 min-height:0; border-radius:8px; background:#ededed; color:var(--hb-ikincil);
}
@media(min-width:782px) {
 .hb-ana .hb-kartlar > li:only-child .hb-yazi-karti__meta { flex-direction:row; flex-wrap:wrap; gap:.5rem 1.5rem; }
}
@media(max-width:599px) {
 .hb-ana .hb-konular:not(.hb-konular--detay) { grid-template-columns:minmax(0,1fr); }
 .hb-ana .hb-konular .hb-konu { min-height:76px; padding:.875rem; }
 .hb-ana .hb-tumu--konular a { display:flex; justify-content:center; }
 .hb-ana .hb-buro-ozet { padding:1rem; }
}
.hb-avukat-karti:has(.hb-avukat-karti__bos) .hb-avukat-karti__foto { background:transparent; }

/* 1.7.7 — Her yatay bölümde üç satır; ileri/geri düğmesi yok. */
.hb-ana .hb-konu-sayfalari {
 display:flex; gap:1rem; list-style:none; margin:0; padding:4px 4px 10px;
 max-width:100%; box-sizing:border-box; overflow-x:auto; scroll-snap-type:x proximity;
 scroll-padding-inline:4px; scrollbar-width:thin;
}
.hb-ana .hb-konu-sayfalari > .hb-konu-sayfasi {
 flex:0 0 calc(100% - 24px); min-width:0; margin:0; scroll-snap-align:start;
}
.hb-konu-grubu {
 display:grid; grid-template-rows:repeat(3,minmax(76px,auto)); gap:.75rem;
 list-style:none; padding:0; margin:0; height:100%; box-sizing:border-box;
}
.hb-konu-grubu > li { min-width:0; margin:0; }
.hb-ana .hb-konu-grubu .hb-konu { min-height:76px; padding:.875rem 1rem; height:100%; }
.hb-konu-gosterge { display:flex; align-items:center; gap:1rem; margin:.25rem 0; color:var(--hb-ikincil); }
.hb-konu-gosterge > span { white-space:nowrap; font-variant-numeric:tabular-nums; }
.hb-konu-noktalar { display:flex; overflow:auto; max-width:100%; }
.hb-konu-noktalar button { flex:none; width:44px; height:44px; padding:0; border:0; background:transparent; cursor:pointer; }
.hb-konu-noktalar button::before { content:''; display:block; width:8px; height:8px; margin:auto; border:1px solid #46505c; border-radius:50%; }
.hb-konu-noktalar button[aria-current]::before { background:var(--hb-murekkep); }
.hb-konu-sayfalari:focus-visible, .hb-konu-noktalar button:focus-visible { outline:2px solid var(--hb-murekkep); outline-offset:1px; }

/* 1.7.8 — Kısa menüde içerik kadar yükseklik; uzun menüde iç kaydırma. */
.hb-menu .is-menu-open .wp-block-navigation__responsive-close {
 inset:1rem 0 auto auto; height:auto; max-height:calc(100dvh - 2rem);
 border-radius:14px 0 0 14px; border:1px solid var(--hb-cizgi); border-right:0;
}
.hb-menu .is-menu-open .wp-block-navigation__responsive-dialog {
 min-height:0; padding-bottom:1.25rem;
}
.hb-menu .is-menu-open .wp-block-navigation__responsive-dialog::before {
 content:'Metropol Hukuk Ofisi'; font-size:1rem; max-width:calc(100% - 44px);
 line-height:1.4; padding-bottom:.75rem; border-bottom:1px solid var(--hb-cizgi);
}
.hb-menu.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top:.5rem; }
.hb-menu .is-menu-open a[aria-current="page"] { background:#eceeef; border-radius:6px; }
.hb-yol-tarifi { display:flex; flex-wrap:wrap; gap:.75rem; margin-block:1rem; }
.hb-yol-tarifi a { display:inline-flex; align-items:center; min-height:44px; padding:.5rem .875rem; border:1px solid var(--hb-cerceve); border-radius:8px; box-sizing:border-box; }
.hb-ofis-ilkeleri p,.hb-ofis-surec li { max-width:72ch; }
@media(max-width:599px) { .hb-yol-tarifi a { width:100%; justify-content:center; } }
/* 1.8.3 — Eşit, okunaklı avukat kartları. */
.hb-ana .hb-avukatlar { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.hb-ana .hb-avukatlar > li + li { border-top:0; }
.hb-ana .hb-avukat-karti { padding:1.5rem; border-radius:12px; align-items:center; min-height:180px; height:100%; box-sizing:border-box; }
.hb-ana .hb-avukat-karti:has(.hb-avukat-karti__bos) { grid-template-columns:80px minmax(0,1fr) 20px; gap:1rem; }
.hb-ana .hb-avukat-karti:has(.hb-avukat-karti__bos) .hb-avukat-karti__foto { width:80px; }
.hb-avukat-karti__bos { font-family:var(--hb-serif); font-size:1.5rem; font-weight:600; color:var(--hb-murekkep); }
.hb-ana .hb-avukat-karti__bos { width:80px; height:96px; background:#edf0f2; border-radius:8px; border-bottom:3px solid var(--hb-vurgu); box-sizing:border-box; }
.hb-ana .hb-avukat-karti__ad { font-size:1.2rem; }
.hb-avukat-karti__profil { display:block; font-size:.9375rem; font-weight:600; color:var(--hb-murekkep); text-decoration:underline; text-underline-offset:3px; margin-top:.65rem; }
@media(max-width:699px) {
 .hb-ana .hb-avukatlar { grid-template-columns:minmax(0,1fr); }
 .hb-ana .hb-avukat-karti { min-height:148px; padding:1.1rem; }
 .hb-ana .hb-avukat-karti:has(.hb-avukat-karti__bos) { grid-template-columns:64px minmax(0,1fr) 18px; gap:.75rem; }
 .hb-ana .hb-avukat-karti:has(.hb-avukat-karti__bos) .hb-avukat-karti__foto { width:64px; }
 .hb-ana .hb-avukat-karti__bos { width:64px; height:80px; }
}
/* 1.8.4 — Ana sayfa altında kişi kartları yerine kısa ofis bilgisi. */
.hb-alt-sade__adres { max-width:75rem; margin:.75rem auto 0; line-height:1.6; overflow-wrap:anywhere; font-size:1rem; }
