.faq-hero h1, .faq-category-card h2, .faq-accordion summary span, .faq-entry-page h1 { overflow-wrap: anywhere; }
.faq-index-section, .faq-category-section { padding: 54px 0 76px; }
.faq-category-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
.faq-category-card { --faq-theme: var(--accent-action); --faq-theme-deep: #aa2b1c; --faq-theme-soft: var(--brand-primary-soft); min-width: 0; display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--line); border-top: 3px solid var(--faq-theme); border-radius: 12px; background: #fff; box-shadow: 0 14px 34px rgba(35,31,32,.06); }
.faq-category-card--taxes { --faq-theme: #167c9c; --faq-theme-deep: #0f536c; --faq-theme-soft: #e9f6fa; }
.faq-category-card--rent { --faq-theme: #278269; --faq-theme-deep: #185a48; --faq-theme-soft: #ebf7f2; }
.faq-category-card--residence { --faq-theme: #b9781d; --faq-theme-deep: #80510f; --faq-theme-soft: #fff5df; }
.faq-category-card--mersin { --faq-theme: #2863a3; --faq-theme-deep: #173f70; --faq-theme-soft: #edf4fc; }
.faq-category-card__visual { position: relative; min-height: 116px; overflow: hidden; background: linear-gradient(128deg, var(--faq-theme-soft), #fff 76%); color: var(--faq-theme); }
.faq-category-card__visual::before, .faq-category-card__visual::after { position: absolute; content: ""; border: 1px solid currentColor; border-radius: 50%; opacity: .13; }
.faq-category-card__visual::before { width: 130px; height: 130px; right: 20px; top: -51px; }
.faq-category-card__visual::after { width: 96px; height: 96px; right: 37px; top: -34px; }
.faq-category-card__visual-primary, .faq-category-card__visual-secondary { position: absolute; display: grid; place-items: center; }
.faq-category-card__visual-primary { right: 56px; top: 28px; font-size: 3.15rem; opacity: .72; }
.faq-category-card__visual-secondary { right: 137px; bottom: 18px; font-size: 1.45rem; opacity: .18; }
.faq-category-card__visual-label { position: absolute; left: 24px; top: 23px; padding: 7px 10px; border: 1px solid color-mix(in srgb, var(--faq-theme) 22%, transparent); border-radius: 999px; background: rgba(255,255,255,.78); color: var(--faq-theme-deep); font-size: .69rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.faq-category-card__body { flex: 1; display: flex; flex-direction: column; padding: 25px 27px 27px; }
.faq-category-card__count { margin: 0 0 7px; color: var(--faq-theme-deep); font-size: .74rem; font-weight: 850; text-transform: uppercase; }
.faq-category-card h2 { margin: 0 0 12px; font-size: clamp(1.35rem, 2.2vw, 1.75rem); line-height: 1.12; }
.faq-category-card h2 a { text-decoration: none; }
.faq-category-card h2 a:hover { color: var(--faq-theme-deep); }
.faq-category-card__intro { margin: 0 0 19px; color: var(--muted); font-size: .9rem; line-height: 1.5; }
.faq-category-card__previews { display: grid; gap: 0; margin: 0 0 23px; border-top: 1px solid var(--line); }
.faq-category-card__preview { min-width: 0; padding: 16px 0; border-bottom: 1px solid var(--line); }
.faq-category-card__preview h3 { margin: 0 0 7px; font-size: .91rem; line-height: 1.34; }
.faq-category-card__preview h3 a { color: var(--ink); text-decoration: none; }
.faq-category-card__preview h3 a:hover { color: var(--faq-theme-deep); }
.faq-category-card__preview p { margin: 0; display: -webkit-box; overflow: hidden; color: var(--muted); font-size: .8rem; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.faq-category-card__link { display: inline-flex; align-items: center; gap: 9px; margin-top: auto; color: var(--faq-theme-deep); font-size: .8rem; font-weight: 850; text-decoration: none; }
.faq-category-card__link:hover { color: var(--ink); }
.faq-category-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
.faq-category-card:last-child:nth-child(odd) .faq-category-card__previews { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
.faq-page-grid { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 28px; align-items: start; }
.faq-category-aside { display: grid; gap: 12px; padding: 24px; border: 1px solid var(--line); border-top: 3px solid var(--accent); border-radius: 10px; background: var(--soft); }
.faq-category-aside > i { color: var(--accent-action); font-size: 1.45rem; }
.faq-category-aside h2 { margin: 0; font-size: 1.35rem; }
.faq-category-aside p { margin: 0 0 5px; color: var(--muted); font-size: .86rem; }
.faq-category-aside > a:not(.button) { color: var(--accent-action); font-size: .8rem; font-weight: 800; text-align: center; }
.faq-entry-page { background: var(--soft); }
.faq-entry-page__shell { max-width: var(--site-shell-max); padding-top: 34px; padding-bottom: 76px; }
.faq-entry-page__answer { padding: clamp(24px, 4vw, 40px) clamp(22px, 5vw, 52px); overflow-x: auto; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: var(--muted); font-size: 1rem; }
.faq-entry-page footer { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.faq-entry-page footer .button { gap: 8px; }

@media (max-width: 900px) {
    .faq-page-grid { grid-template-columns: 1fr; }
    .faq-category-aside { grid-template-columns: minmax(0,1fr) auto; align-items: center; }
    .faq-category-aside > i, .faq-category-aside h2, .faq-category-aside p { grid-column: 1; }
    .faq-category-aside .button { grid-column: 2; grid-row: 1 / span 3; }
    .faq-category-aside > a:not(.button) { grid-column: 1 / -1; text-align: left; }
}

@media (max-width: 640px) {
    .faq-index-section, .faq-category-section { padding: 36px 0 54px; }
    .faq-category-grid { grid-template-columns: 1fr; }
    .faq-category-card:last-child:nth-child(odd) { grid-column: auto; }
    .faq-category-card:last-child:nth-child(odd) .faq-category-card__previews { grid-template-columns: 1fr; }
    .faq-category-card__body { padding: 22px; }
    .faq-category-card__visual { min-height: 104px; }
    .faq-category-aside { grid-template-columns: 1fr; }
    .faq-category-aside > i, .faq-category-aside h2, .faq-category-aside p, .faq-category-aside .button, .faq-category-aside > a:not(.button) { grid-column: 1; grid-row: auto; }
    .faq-entry-page { padding-top: 0; }
    .faq-entry-page__shell { padding-top: 22px; padding-bottom: 54px; }
    .faq-entry-page footer { display: grid; }
}
