/* ============================================================
   YBS HUB Grid — Anasayfa home-hub-nav pattern (HUB sayfaları için)
   Slide'ın hemen altında entity grid (taxonomy + override merge)
   ============================================================ */

.home-hub-nav {
    --hub-gold: #b8893d;
    --hub-gold-soft: #d5a85e;
    --hub-navy: #0d1b3d;
    --hub-text: #1f2937;
    --hub-muted: #64748b;
    --hub-bg: #f8fafc;
    --hub-card-bg: #ffffff;
    --hub-border: #e2e8f0;
    background: linear-gradient(180deg, #ffffff 0%, var(--hub-bg) 100%);
    padding: 1.25rem 0 2.25rem;
    border-radius: 14px;
}
/* 2026-05-25 PATRON: çerçeveli banner header + iç çerçeve intro (card-grid pattern ile tutarlı). */
.home-hub-nav__header {
    margin: 0 auto 2.5rem;
    max-width: 56rem;
    padding: 2rem 1.5rem 2.25rem;
    text-align: center;
    background: linear-gradient(135deg, #f8fafc 0%, #ffffff 50%, rgba(184, 137, 61, 0.06) 100%);
    border: 1px solid var(--hub-border);
    border-radius: 1rem;
    box-shadow: 0 1px 2px rgba(13, 27, 61, 0.04), 0 12px 28px -16px rgba(13, 27, 61, 0.10);
    position: relative;
}
.home-hub-nav__header::before {
    /* Üst altın aksent çizgisi */
    content: "";
    position: absolute;
    top: 0;
    left: 12%;
    right: 12%;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--hub-gold) 50%, transparent);
    border-radius: 0 0 4px 4px;
}
@media (min-width: 640px) {
    .home-hub-nav__header {
        padding: 2.5rem 2.25rem 2.75rem;
    }
}
.home-hub-nav__title {
    font-size: clamp(1.5rem, 2.5vw, 2.25rem);
    font-weight: 800;
    color: var(--hub-navy);
    margin: 0 0 1.25rem;
    line-height: 1.2;
    letter-spacing: -0.015em;
}
.home-hub-nav__lead {
    font-size: 1rem;
    line-height: 1.65;
    color: #475569;
    margin: 0 auto;
    max-width: 44rem;
    padding: 1.1rem 1.4rem;
    background: rgba(255, 255, 255, 0.85);
    border: 1px solid rgba(184, 137, 61, 0.22);
    border-radius: 0.85rem;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    text-align: center !important;
    text-wrap: balance;
}
/* Override: lead içindeki tüm child element'ler (p, strong, span) ortalı kalır */
.home-hub-nav__header .home-hub-nav__lead,
.home-hub-nav__header .home-hub-nav__lead * {
    text-align: center !important;
}
@media (min-width: 640px) {
    .home-hub-nav__lead {
        font-size: 1.05rem;
        padding: 1.25rem 1.75rem;
    }
}
.home-hub-nav__lead strong {
    color: var(--hub-navy);
    font-weight: 700;
}

/* Grid — 2026-05-25: kartlar collapsed durumda eşit yükseklik (excerpt min-height ile),
   expand olunca SADECE o satır büyür, diğer satırlar etkilenmez (kayma yasak).
   1fr -> auto: 1fr tüm satırları en uzun satıra çekiyor, expand olunca büyük boşluk oluşuyordu.
   align-items: start: kartlar hücreyi doldurmaz, kendi içeriklerine göre büyür. */
.ybs-hizmet-static-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    grid-auto-rows: auto;
    gap: 1rem;
    padding: 0 .5rem;
    align-items: start;
}
/* Collapsed durumda eşit görsel yükseklik: excerpt min-height + min kart yüksekliği. */
.ybs-hizmet-slide__card { min-height: 100%; }

/* Kart */
.ybs-hizmet-slide__card {
    display: flex;
    flex-direction: column;
    gap: .625rem;
    padding: 1.5rem 1.25rem 1.125rem;
    background: var(--hub-card-bg);
    border: 1px solid var(--hub-border);
    border-radius: 14px;
    color: var(--hub-text);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    position: relative;
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(13, 27, 61, .04), 0 4px 12px -8px rgba(13, 27, 61, .08);
}
.ybs-hizmet-slide__card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 3px;
    background: linear-gradient(90deg, var(--hub-navy) 0%, var(--hub-gold) 100%);
    opacity: 0;
    transition: opacity .25s ease;
}
.ybs-hizmet-slide__card:hover {
    transform: translateY(-3px);
    border-color: var(--hub-gold-soft);
    box-shadow: 0 14px 30px -14px rgba(184, 137, 61, .28), 0 4px 10px -6px rgba(13, 27, 61, .12);
}
.ybs-hizmet-slide__card:hover::before { opacity: 1; }
.ybs-hizmet-slide__card.is-expanded {
    border-color: var(--hub-gold);
    box-shadow: 0 0 0 2px rgba(184, 137, 61, .12), 0 14px 30px -14px rgba(184, 137, 61, .25);
}
.ybs-hizmet-slide__card.is-expanded::before { opacity: 1; }

.ybs-hizmet-slide__title {
    font-size: 1.0625rem;
    font-weight: 700;
    color: var(--hub-navy);
    margin: 0;
    line-height: 1.3;
}
.ybs-hizmet-slide__excerpt {
    font-size: .875rem;
    line-height: 1.55;
    color: var(--hub-muted);
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: calc(.875rem * 1.55 * 6);
}
.ybs-hizmet-slide__card.is-expanded .ybs-hizmet-slide__excerpt {
    -webkit-line-clamp: unset;
    overflow: visible;
    min-height: 0;
}
.ybs-hizmet-slide__continuation {
    font-size: .875rem;
    line-height: 1.6;
    color: var(--hub-text);
    border-top: 1px dashed var(--hub-border);
    padding-top: .75rem;
    margin-top: .25rem;
}
.ybs-hizmet-slide__continuation p { margin: 0 0 .625rem; }
.ybs-hizmet-slide__continuation p:last-child { margin-bottom: 0; }

/* Aksiyon butonları */
.ybs-hizmet-slide__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .5rem;
    margin-top: auto;
    padding-top: .875rem;
    border-top: 1px solid rgba(226, 232, 240, .7);
}
.ybs-hizmet-slide__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .375rem;
    padding: .5625rem .75rem;
    font-size: .8125rem;
    font-weight: 600;
    border-radius: .5rem;
    border: 1px solid var(--hub-border);
    background: #fff;
    color: var(--hub-text);
    cursor: pointer;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
    min-height: 38px;
    line-height: 1.2;
}
.ybs-hizmet-slide__btn:hover {
    border-color: var(--hub-gold-soft);
    color: var(--hub-gold);
}
.ybs-hizmet-slide__btn.is-disabled {
    background: #f8fafc;
    color: #94a3b8;
    border-color: #e2e8f0;
    cursor: not-allowed;
    pointer-events: none;
}
.ybs-hizmet-slide__btn--read[aria-expanded="true"] svg:first-child { transform: rotate(180deg); }
.ybs-hizmet-slide__btn--read svg { transition: transform .2s ease; }
.ybs-hizmet-slide__btn--cta {
    background: linear-gradient(135deg, var(--hub-navy) 0%, #1e3a8a 100%);
    color: #fff;
    border-color: var(--hub-navy);
}
/* Yakında yayında hero — Örnek Dilekçeler + Yargıtay Kararları hub (patron 2026-05-22) */
.ybs-coming-soon-hero {
    margin: 1.5rem 0 2rem;
    padding: 2.5rem 2rem;
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 50%, #fde68a 100%);
    border: 2px dashed #d97706;
    border-radius: 16px;
    text-align: center;
    box-shadow: 0 8px 24px -12px rgba(217,119,6,.25);
}
.ybs-coming-soon-hero__badge {
    display: inline-block;
    padding: .375rem .875rem;
    margin-bottom: 1rem;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .15em;
    background: linear-gradient(135deg, #d97706 0%, #b45309 100%);
    color: #fff;
    border-radius: 9999px;
    box-shadow: 0 4px 10px rgba(180,83,9,.35);
    text-transform: uppercase;
}
.ybs-coming-soon-hero__title {
    font-size: clamp(1.375rem, 3vw, 1.875rem);
    font-weight: 700;
    color: #0d1b3d;
    margin: .25rem 0 .75rem;
    line-height: 1.25;
}
.ybs-coming-soon-hero__lead {
    font-size: 1rem;
    line-height: 1.65;
    color: #44403c;
    max-width: 760px;
    margin: 0 auto;
}
@media (max-width: 640px) {
    .ybs-coming-soon-hero { padding: 1.75rem 1.25rem; }
    .ybs-coming-soon-hero__title { font-size: 1.25rem; }
    .ybs-coming-soon-hero__lead { font-size: .9375rem; }
}

.ybs-hizmet-slide__btn--cta:hover {
    background: linear-gradient(135deg, #1e3a8a 0%, var(--hub-gold) 100%);
    color: #fff;
    border-color: var(--hub-gold);
}

/* Kart altı WhatsApp CTA — tam genişlik */
.ybs-hizmet-slide__whatsapp {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    margin-top: .5rem;
    padding: .625rem .875rem;
    font-size: .8125rem;
    font-weight: 700;
    letter-spacing: .01em;
    border-radius: .5rem;
    background: linear-gradient(135deg, #25d366 0%, #128c7e 100%);
    color: #fff;
    text-decoration: none;
    border: 1px solid #128c7e;
    transition: filter .2s ease, transform .2s ease, box-shadow .2s ease;
    box-shadow: 0 4px 12px -6px rgba(18, 140, 126, .55);
}
.ybs-hizmet-slide__whatsapp:hover {
    filter: brightness(1.05);
    transform: translateY(-1px);
    color: #fff;
    box-shadow: 0 8px 18px -8px rgba(18, 140, 126, .65);
}
.ybs-hizmet-slide__whatsapp svg { flex-shrink: 0; }

/* Hesaplama HUB için kategori chip'leri */
.ybs-hizmet-slide__chips {
    display: flex;
    flex-wrap: wrap;
    gap: .375rem;
    margin: .25rem 0;
}
.ybs-hizmet-slide__chip {
    display: inline-block;
    padding: .25rem .625rem;
    font-size: .6875rem;
    font-weight: 600;
    letter-spacing: .02em;
    background: rgba(184, 137, 61, .12);
    color: var(--hub-gold);
    border-radius: 9999px;
    border: 1px solid rgba(184, 137, 61, .25);
}

/* Responsive */
@media (max-width: 768px) {
    .home-hub-nav { padding: .75rem 0 1.75rem; }
    .ybs-hizmet-static-grid { grid-template-columns: 1fr; gap: .75rem; padding: 0; }
    .ybs-hizmet-slide__card { padding: 1rem .9375rem; }
}

/* =========================================================
   HUB Son İçerik Slide (kategori filtresiz, sondan başa)
   ========================================================= */
.ybs-hub-latest { margin: 2rem 0; padding: 1.5rem 0; border-top: 1px solid var(--hub-border); }
.ybs-hub-latest__header { text-align: center; margin-bottom: 1.25rem; }
.ybs-hub-latest__eyebrow {
    display: inline-block; font-size: .75rem; font-weight: 600;
    letter-spacing: .18em; text-transform: uppercase; color: var(--hub-gold);
    margin: 0 0 .375rem;
}
.ybs-hub-latest__title {
    font-size: clamp(1.25rem, 2vw, 1.625rem); font-weight: 700;
    color: var(--hub-navy); margin: 0; line-height: 1.25;
}
.ybs-hub-latest__slider {
    overflow-x: auto; scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch; padding: .5rem 0 1rem;
    scrollbar-width: thin;
}
.ybs-hub-latest__track { display: flex; gap: 1rem; padding: 0 .25rem; }
.ybs-hub-latest__card {
    flex: 0 0 280px; scroll-snap-align: start;
    display: flex; flex-direction: column; gap: .5rem;
    background: #fff; border: 1px solid var(--hub-border); border-radius: 12px;
    overflow: hidden; transition: transform .2s ease, box-shadow .2s ease;
}
.ybs-hub-latest__card:hover { transform: translateY(-3px); box-shadow: 0 10px 24px -14px rgba(184,137,61,.3); border-color: var(--hub-gold-soft); }
.ybs-hub-latest__media { display: block; aspect-ratio: 16/10; overflow: hidden; }
.ybs-hub-latest__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ybs-hub-latest__body { padding: .75rem .875rem 1rem; display: flex; flex-direction: column; gap: .375rem; }
.ybs-hub-latest__item-title { font-size: .9375rem; font-weight: 700; margin: 0; line-height: 1.3; }
.ybs-hub-latest__item-title a { color: var(--hub-navy); text-decoration: none; }
.ybs-hub-latest__item-title a:hover { color: var(--hub-gold); }
.ybs-hub-latest__meta { font-size: .6875rem; color: var(--hub-gold); font-weight: 600; margin: 0; text-transform: uppercase; letter-spacing: .04em; }
.ybs-hub-latest__excerpt { font-size: .8125rem; line-height: 1.5; color: var(--hub-muted); margin: 0; }

/* =========================================================
   HUB Attorney CTA — Footer üstü sade tek-çerçeve kart
   ========================================================= */
.ybs-hub-attorney-cta {
    --hub-gold: #b8893d;
    --hub-navy: #0d1b3d;
    --hub-text: #1f2937;
    --hub-muted: #64748b;
    margin: 2.5rem 0 1.5rem;
    background: linear-gradient(135deg, #fffbeb 0%, #ffffff 60%);
    border: 1px solid rgba(184,137,61,.28);
    border-radius: 16px;
    padding: 1.5rem 1.75rem;
    box-shadow: 0 10px 30px -20px rgba(13, 27, 61, .25);
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 1.5rem;
    align-items: start;
}
.ybs-hub-attorney-cta__media {
    aspect-ratio: 2/3;
    border-radius: 12px;
    overflow: hidden;
    border: 2px solid var(--hub-gold);
    box-shadow: 0 8px 20px -10px rgba(184,137,61,.4);
}
.ybs-hub-attorney-cta__media img,
.ybs-hub-attorney-cta__media picture {
    width: 100%; height: 100%; display: block; object-fit: cover;
}
.ybs-hub-attorney-cta__body { color: var(--hub-text); }
.ybs-hub-attorney-cta__name {
    font-size: 1.25rem; color: var(--hub-navy); margin: 0 0 .125rem; line-height: 1.2;
}
.ybs-hub-attorney-cta__bar {
    font-size: .8125rem; color: var(--hub-gold); font-weight: 600;
    margin: 0 0 .75rem; letter-spacing: .02em;
}
.ybs-hub-attorney-cta__quote {
    margin: 0 0 .75rem; padding: .5rem .875rem;
    border-left: 3px solid var(--hub-gold);
    background: rgba(184,137,61,.06); border-radius: 0 6px 6px 0;
}
.ybs-hub-attorney-cta__quote p {
    font-size: .8125rem; font-style: italic; margin: 0; color: var(--hub-text);
}
.ybs-hub-attorney-cta__quote cite {
    font-size: .6875rem; color: var(--hub-muted); font-style: normal;
}
.ybs-hub-attorney-cta__intro,
.ybs-hub-attorney-cta__cta-line {
    font-size: .9375rem; line-height: 1.55; margin: 0 0 .625rem;
}
.ybs-hub-attorney-cta__btn {
    display: inline-flex; align-items: center; gap: .5rem;
    margin-top: .25rem;
    padding: .625rem 1.125rem; font-size: .875rem; font-weight: 600;
    background: linear-gradient(135deg, var(--hub-navy) 0%, #1e3a8a 100%);
    color: #fff; border-radius: .5rem; text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease;
}
.ybs-hub-attorney-cta__btn:hover { transform: translateY(-2px); box-shadow: 0 8px 20px -10px rgba(13,27,61,.4); color: #fff; }

@media (max-width: 720px) {
    .ybs-hub-attorney-cta { grid-template-columns: 1fr; padding: 1.25rem; gap: 1.125rem; }
    .ybs-hub-attorney-cta__media { max-width: 200px; margin: 0 auto; }
    .ybs-hub-latest__card { flex: 0 0 240px; }
}

@media (prefers-reduced-motion: reduce) {
    .ybs-hizmet-slide__card, .ybs-hizmet-slide__btn { transition: none; }
    .ybs-hizmet-slide__card:hover { transform: none; }
}
