/**
 * Dinamik sayfalar — kurumsal / blog / yasal (site teması ile uyumlu)
 */

.dynamic-page {
    --page-radius: 16px;
    --page-radius-sm: 12px;
    --page-shadow: 0 8px 36px rgba(15, 23, 42, 0.07);
    --page-shadow-hover: 0 14px 40px rgba(15, 23, 42, 0.1);
    --page-surface: var(--bg-white, #fff);
    --page-muted: var(--text-light, #666);
    --page-text: var(--text-dark, #263238);
    --page-accent: var(--secondary-color, #008ed9);
    --page-accent-soft: color-mix(in srgb, var(--secondary-color, #008ed9) 12%, transparent);
    --page-band-surface: var(--bg-light, #f5f5f5);
    --page-band-masthead: color-mix(in srgb, var(--primary-color, #263238) 6%, var(--page-band-surface));

    padding: 36px 0 56px;
    background: var(--page-band-surface);
}

.dynamic-page--has-breadcrumb {
    padding: 0 0 56px;
}

.dynamic-page--has-breadcrumb .dynamic-page__inner {
    padding-top: 28px;
}

.dynamic-page__masthead {
    padding: 18px 0 20px;
    background: var(--page-band-masthead);
    border-bottom: 1px solid color-mix(in srgb, var(--primary-color, #263238) 10%, transparent);
}

.dynamic-page__masthead-inner {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 20px;
}

.page-layout--narrow.dynamic-page--has-breadcrumb .dynamic-page__masthead-inner {
    max-width: 720px;
}

.page-layout--container.dynamic-page--has-breadcrumb .dynamic-page__masthead-inner {
    max-width: 960px;
}

.page-layout--wide.dynamic-page--has-breadcrumb .dynamic-page__masthead-inner,
.blog-index.dynamic-page--has-breadcrumb .dynamic-page__masthead-inner {
    max-width: 1180px;
}

.dynamic-page__breadcrumb .breadcrumb-list {
    margin: 0;
}

.dynamic-page__breadcrumb .breadcrumb-item:not(:last-child)::after {
    content: '›';
    margin-left: 10px;
    color: var(--text-light, #666);
}

.dynamic-page__breadcrumb .breadcrumb-item.active span {
    display: inline-block;
    max-width: min(52ch, 100%);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: bottom;
}

.dynamic-page__inner {
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
}

.page-layout--narrow .dynamic-page__inner {
    max-width: 720px;
}

.page-layout--container .dynamic-page__inner {
    max-width: 960px;
}

.page-layout--wide .dynamic-page__inner {
    max-width: 1180px;
}

.page-layout--full .dynamic-page__inner {
    max-width: none;
    padding: 0;
}

.page-layout--full.dynamic-page--has-breadcrumb .dynamic-page__masthead-inner {
    max-width: none;
}

.page-layout--full.dynamic-page {
    background: var(--bg-light, #f5f5f5);
}

/* —— Ana kart —— */
.dynamic-page__card,
.blog-post__article {
    background: var(--page-surface);
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: var(--page-radius);
    box-shadow: var(--page-shadow);
    overflow: hidden;
}

.dynamic-page__card {
    padding: 0;
}

.dynamic-page__header {
    padding: 28px 32px 0;
}

/* Kurumsal: kart içi sade başlık */
.dynamic-page__header--intro {
    padding: 24px 28px 20px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.dynamic-page__header--intro .dynamic-page__title {
    font-size: clamp(1.5rem, 2.6vw, 1.875rem);
    line-height: 1.22;
}

.dynamic-page__header--intro .dynamic-page__title::after {
    content: '';
    display: block;
    width: 32px;
    height: 2px;
    margin-top: 10px;
    border-radius: 2px;
    background: var(--page-accent);
}

.dynamic-page__header--intro .dynamic-page__summary {
    margin-top: 10px;
    max-width: 62ch;
    font-size: 1rem;
    line-height: 1.55;
}

/* —— Yasal / gizlilik —— */
.page-template--legal_doc .dynamic-page__header--legal {
    padding: 26px 32px 22px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    background: color-mix(in srgb, var(--primary-color, #263238) 3%, var(--page-surface));
}

.page-template--legal_doc .dynamic-page__header--legal .dynamic-page__title {
    font-size: clamp(1.45rem, 2.6vw, 1.9rem);
    line-height: 1.22;
}

.page-template--legal_doc .dynamic-page__header--legal .dynamic-page__title::after {
    content: '';
    display: block;
    width: 32px;
    height: 2px;
    margin-top: 10px;
    border-radius: 2px;
    background: var(--page-accent);
}

.page-template--legal_doc .dynamic-page__header--legal .dynamic-page__summary {
    margin-top: 10px;
    max-width: 68ch;
    font-size: 1rem;
    line-height: 1.55;
}

.page-template--legal_doc .dynamic-page__header--legal + .dynamic-page-content--legal {
    padding-top: 26px;
}

.page-template--legal_doc .dynamic-page-content--legal {
    font-size: 0.96875rem;
    line-height: 1.78;
}

.page-template--legal_doc .dynamic-page-content--legal h2 {
    font-size: 1.2rem;
    margin-top: 1.85em;
}

.page-template--legal_doc .dynamic-page-content--legal h3 {
    font-size: 1.05rem;
}

.page-template--legal_doc .dynamic-page-content--legal ul,
.page-template--legal_doc .dynamic-page-content--legal ol {
    padding-left: 1.5em;
}

.page-template--legal_doc .dynamic-page-content--legal li::marker {
    color: var(--page-accent);
}

.page-template--legal_doc .page-section {
    background: color-mix(in srgb, var(--bg-light, #f5f5f5) 55%, var(--page-surface));
}

.dynamic-page__title {
    margin: 0;
    font-family: var(--heading-font, inherit);
    font-size: clamp(1.5rem, 2.8vw, 1.85rem);
    font-weight: 400;
    line-height: 1.25;
    color: var(--page-text);
    letter-spacing: -0.02em;
}

.dynamic-page__summary {
    margin: 12px 0 0;
    font-size: 1.0625rem;
    line-height: 1.6;
    color: var(--page-muted);
}

.dynamic-page__header--intro + .dynamic-page-content {
    padding-top: 22px;
}

.dynamic-page-content {
    padding: 24px 32px 32px;
    font-size: 1rem;
    line-height: 1.8;
    color: var(--page-text);
}

.dynamic-page-content > *:first-child {
    margin-top: 0;
}

.dynamic-page-content > *:last-child {
    margin-bottom: 0;
}

.dynamic-page-content h2,
.dynamic-page-content h3,
.dynamic-page-content h4 {
    font-family: var(--heading-font, inherit);
    font-weight: 400;
    color: var(--primary-color, #263238);
    margin: 1.6em 0 0.65em;
    line-height: 1.3;
}

.dynamic-page-content h2 {
    font-size: 1.35rem;
    padding-bottom: 0.35em;
    border-bottom: 2px solid var(--page-accent-soft);
}

.dynamic-page-content h3 {
    font-size: 1.15rem;
}

.dynamic-page-content p {
    margin: 0 0 1.1em;
}

.dynamic-page-content ul,
.dynamic-page-content ol {
    margin: 0 0 1.25em;
    padding-left: 1.35em;
}

.dynamic-page-content li {
    margin-bottom: 0.45em;
}

.dynamic-page-content a {
    color: var(--secondary-color, #008ed9);
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: var(--transition, color 0.2s ease);
}

.dynamic-page-content a:hover {
    color: var(--secondary-dark, #0077b6);
}

.dynamic-page-content blockquote {
    margin: 1.5em 0;
    padding: 16px 20px;
    border-left: 4px solid var(--secondary-color, #008ed9);
    background: color-mix(in srgb, var(--secondary-color, #008ed9) 8%, var(--bg-white, #fff));
    border-radius: 0 var(--page-radius-sm) var(--page-radius-sm) 0;
    color: var(--page-muted);
    font-style: italic;
}

.dynamic-page-content img,
.dynamic-page-content iframe,
.dynamic-page-content table {
    max-width: 100%;
    height: auto;
}

.dynamic-page-content img {
    border-radius: var(--page-radius-sm);
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.08);
}

.dynamic-page-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.25em 0;
    font-size: 0.9375rem;
}

.dynamic-page-content th,
.dynamic-page-content td {
    padding: 10px 14px;
    border: 1px solid var(--border-color, #e0e0e0);
    text-align: left;
}

.dynamic-page-content th {
    background: color-mix(in srgb, var(--primary-color, #263238) 6%, var(--bg-white, #fff));
    font-weight: 600;
}

/* —— Bölüm ayırıcı (galeri, PDF) —— */
.page-section {
    margin: 0;
    padding: 28px 32px 32px;
    border-top: 1px solid color-mix(in srgb, var(--border-color, #e0e0e0) 80%, transparent);
    background: color-mix(in srgb, var(--bg-light, #f5f5f5) 45%, var(--page-surface));
}

.page-section__title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 18px;
    font-family: var(--heading-font, inherit);
    font-size: 1.05rem;
    font-weight: 400;
    color: var(--primary-color, #263238);
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.page-section__title i {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: var(--page-accent-soft);
    color: var(--secondary-color, #008ed9);
    font-size: 15px;
}

/* —— Galeri —— */
.page-gallery__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
    gap: 14px;
}

.page-gallery__item {
    position: relative;
    aspect-ratio: 4/3;
    border: 0;
    border-radius: var(--page-radius-sm);
    overflow: hidden;
    cursor: zoom-in;
    background: color-mix(in srgb, var(--primary-color, #263238) 6%, #fff);
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.page-gallery__item::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 55%, rgba(15, 23, 42, 0.35) 100%);
    opacity: 0;
    transition: opacity 0.25s ease;
    pointer-events: none;
}

.page-gallery__item:hover {
    transform: translateY(-3px);
    box-shadow: var(--page-shadow-hover);
}

.page-gallery__item:hover::after {
    opacity: 1;
}

.page-gallery__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;
}

.page-gallery__item:hover img {
    transform: scale(1.04);
}

/* —— PDF —— */
.page-pdf-viewer {
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: var(--page-radius-sm);
    overflow: hidden;
    background: var(--page-surface);
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04);
}

.page-pdf-viewer + .page-pdf-viewer,
.page-pdf-buttons + .page-pdf-viewer {
    margin-top: 16px;
}

.page-pdf-viewer__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
    padding: 12px 16px;
    font-size: 13px;
    color: var(--page-muted);
    background: color-mix(in srgb, var(--primary-color, #263238) 4%, var(--bg-white, #fff));
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.page-pdf-viewer__head i {
    color: #dc2626;
    font-size: 18px;
}

.page-pdf-viewer__head span {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 500;
    color: var(--page-text);
}

.page-pdf-viewer__frame {
    display: block;
    width: 100%;
    min-height: min(72vh, 560px);
    border: 0;
    background: #fafafa;
}

.page-pdf-viewer__fallback {
    margin: 0;
    padding: 14px 16px;
    text-align: center;
    border-top: 1px solid rgba(0, 0, 0, 0.05);
    background: color-mix(in srgb, var(--bg-light, #f5f5f5) 50%, transparent);
}

.page-pdf-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.page-pdf-btn {
    --page-pdf-red: #c62828;
    --page-pdf-red-hover: #b71c1c;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 26px;
    border-radius: 8px;
    background: var(--page-pdf-red);
    color: #fff !important;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.35;
    text-decoration: none !important;
    border: 0;
    cursor: pointer;
    box-shadow: none;
    transition: none;
}

.page-pdf-btn:hover,
.page-pdf-btn:focus,
.page-pdf-btn:focus-visible {
    color: #fff !important;
    background: var(--page-pdf-red-hover);
    transform: none;
    box-shadow: none;
    text-decoration: none !important;
}

.page-pdf-btn i {
    font-size: 17px;
    opacity: 0.95;
}

.page-pdf-btn--inline {
    margin-left: auto;
    padding: 11px 18px;
    font-size: 14px;
}

.page-downloads {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.page-downloads__label {
    font-size: 13px;
    font-weight: 600;
    color: var(--page-muted);
    width: 100%;
    margin-bottom: 4px;
}

/* —— Kapak görseli (yalnızca içerik bloğu; galeri/PDF tam genişlik) —— */
.dynamic-page__main {
    min-width: 0;
}

.dynamic-page__content-row--left,
.dynamic-page__content-row--right {
    display: grid;
    grid-template-columns: minmax(220px, 34%) minmax(0, 1fr);
    gap: 24px 28px;
    align-items: start;
    padding: 24px 32px 8px;
}

.dynamic-page__content-row--right {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 34%);
}

.dynamic-page__content-row .dynamic-page-content {
    padding: 0 0 24px;
}

.dynamic-page__cover-slot--side .page-cover {
    position: sticky;
    top: 20px;
}

.page-cover {
    margin: 0;
    min-width: 0;
}

.page-cover__media {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: color-mix(in srgb, var(--primary-color, #263238) 8%, #fff);
    border-radius: var(--page-radius-sm);
    overflow: hidden;
    line-height: 0;
}

.page-cover__media img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* Üst / alt: içerik alanında tam genişlik */
.dynamic-page__cover-slot--top .page-cover,
.dynamic-page__cover-slot--bottom .page-cover {
    width: 100%;
}

.dynamic-page__cover-slot--top .page-cover__media,
.dynamic-page__cover-slot--bottom .page-cover__media {
    border-radius: 0;
}

.dynamic-page__cover-slot--top .page-cover__media img {
    max-height: min(52vh, 440px);
}

.dynamic-page__cover-slot--bottom .page-cover__media img {
    max-height: min(44vh, 380px);
}

.dynamic-page__cover-slot--bottom {
    padding: 0 32px 8px;
}

.dynamic-page__cover-slot--side .page-cover__media img {
    max-height: min(70vh, 520px);
    min-height: 200px;
}

.dynamic-page__cover-slot--top + .dynamic-page-content,
.dynamic-page__cover-slot--top + .dynamic-page__content-row .dynamic-page-content,
.dynamic-page__header--intro + .dynamic-page__cover-slot--top + .dynamic-page-content {
    padding-top: 22px;
}

.dynamic-page__card--cover-top .dynamic-page__header--intro,
.dynamic-page__card--cover-top .dynamic-page__header--legal {
    border-bottom: 0;
}

.page-template--legal_doc .dynamic-page__card--cover-top .dynamic-page__header--legal {
    border-bottom: none;
}

/* —— Blog yazısı (tekil) —— */
.page-template--blog .dynamic-page__inner {
    padding-top: 8px;
}

.blog-post {
    background: transparent;
    box-shadow: none;
    border: 0;
}

.blog-post__article {
    background: var(--page-surface);
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: var(--page-radius);
    box-shadow: var(--page-shadow);
    overflow: hidden;
}

.blog-post--cover-top .blog-post__header + .dynamic-page__cover-slot--top .page-cover__media {
    border-radius: 0;
}

.blog-post--cover-top .dynamic-page__cover-slot--top + .dynamic-page-content.blog-post__body {
    padding-top: 16px;
}

.blog-post__header {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding: 28px 32px 24px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.blog-post__header:not(:has(.blog-post__lead)) {
    padding-bottom: 22px;
}

.blog-post__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
    margin-bottom: 14px;
}

.blog-post__badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    background: var(--page-accent-soft);
    color: var(--secondary-color, #008ed9);
}

.blog-post__date {
    font-size: 13px;
    color: var(--page-muted);
}

.blog-post__title {
    margin: 0;
    font-family: var(--heading-font, inherit);
    font-size: clamp(1.65rem, 3.5vw, 2.35rem);
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: var(--page-text);
}

.blog-post__title::after {
    content: '';
    display: block;
    width: 32px;
    height: 2px;
    margin-top: 12px;
    border-radius: 2px;
    background: var(--page-accent);
}

.blog-post__lead {
    display: block;
    width: 100%;
    max-width: none;
    margin: 18px 0 0;
    padding: 16px 20px;
    box-sizing: border-box;
    border-left: 3px solid var(--page-accent);
    border-radius: 0 var(--page-radius-sm) var(--page-radius-sm) 0;
    background: color-mix(in srgb, var(--page-accent) 7%, var(--page-surface));
}

.blog-post__excerpt {
    margin: 0;
    max-width: none;
    font-size: 1.0625rem;
    line-height: 1.65;
    color: color-mix(in srgb, var(--page-text) 82%, var(--page-muted));
}

.blog-post__body {
    padding-top: 0;
}

.blog-post__header + .dynamic-page__cover-slot--top,
.blog-post__header + .dynamic-page__content-row,
.blog-post__header + .dynamic-page-content.blog-post__body {
    margin-top: 0;
}

@media (max-width: 900px) {
    .dynamic-page__content-row--left,
    .dynamic-page__content-row--right {
        grid-template-columns: 1fr;
        gap: 18px;
        padding-left: 20px;
        padding-right: 20px;
    }

    .dynamic-page__cover-slot--side .page-cover {
        position: static;
    }

    .dynamic-page__cover-slot--side .page-cover__media img {
        max-height: min(42vh, 320px);
        min-height: 0;
    }

    .dynamic-page__cover-slot--bottom {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* —— Blog liste (vitrin) —— */
.blog-index.dynamic-page {
    padding: 0 0 64px;
}

.blog-index__content {
    padding-top: 0;
}

.blog-index__intro {
    margin-bottom: 24px;
    padding-bottom: 18px;
    border-bottom: 1px solid color-mix(in srgb, var(--border-color, #e0e0e0) 80%, transparent);
}

.blog-index__title {
    margin: 0;
    font-family: var(--heading-font, inherit);
    font-size: clamp(1.65rem, 3vw, 2.15rem);
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: -0.03em;
    color: var(--page-text);
}

.blog-index__title::after {
    content: '';
    display: block;
    width: 32px;
    height: 2px;
    margin-top: 12px;
    border-radius: 2px;
    background: var(--page-accent);
}

.blog-index__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 22px;
}

.blog-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: var(--page-surface);
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: var(--page-radius);
    overflow: hidden;
    box-shadow: var(--page-shadow);
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.blog-card:hover {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--page-accent) 18%, transparent);
    box-shadow: var(--page-shadow-hover);
}

.blog-card__link {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-height: 100%;
    color: inherit;
    text-decoration: none;
}

.blog-card__link:focus-visible {
    outline: 2px solid var(--page-accent);
    outline-offset: 3px;
}

.blog-card__media {
    position: relative;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: color-mix(in srgb, var(--primary-color, #263238) 6%, #fff);
}

.blog-card__media::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 55%, rgba(15, 23, 42, 0.12) 100%);
    opacity: 0;
    transition: opacity 0.25s ease;
    pointer-events: none;
}

.blog-card:hover .blog-card__media::after {
    opacity: 1;
}

.blog-card__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.blog-card:hover .blog-card__image:not(.blog-card__image--placeholder) {
    transform: scale(1.04);
}

.blog-card__image--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    color: color-mix(in srgb, var(--primary-color, #263238) 22%, transparent);
    background:
        linear-gradient(135deg,
            color-mix(in srgb, var(--page-accent) 8%, #fff) 0%,
            color-mix(in srgb, var(--primary-color, #263238) 6%, #fff) 100%);
}

.blog-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: stretch;
    min-height: 0;
    padding: 18px 22px 22px;
}

.blog-card__meta {
    flex: 0 0 auto;
    min-height: 1.25rem;
    margin-bottom: 6px;
}

.blog-card__date {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--page-accent);
}

.blog-card__title {
    flex: 0 0 auto;
    margin: 0 0 10px;
    min-height: calc(1.125rem * 1.35 * 2);
    font-family: var(--heading-font, inherit);
    font-size: 1.125rem;
    line-height: 1.35;
    color: var(--page-text);
    transition: color 0.2s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-card:hover .blog-card__title {
    color: var(--page-accent);
}

.blog-card__excerpt {
    flex: 1 1 auto;
    margin: 0;
    min-height: calc(0.9375rem * 1.6 * 3);
    font-size: 0.9375rem;
    line-height: 1.6;
    color: var(--page-muted);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-card__excerpt:empty {
    display: block;
    visibility: hidden;
}

.blog-card__more {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
    width: 100%;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    font-size: 13px;
    font-weight: 600;
    color: var(--page-accent);
}

.blog-card__more i {
    font-size: 11px;
    transition: transform 0.2s ease;
}

.blog-card:hover .blog-card__more i {
    transform: translateX(4px);
}

.blog-index__empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    text-align: center;
    padding: 56px 28px;
    border-radius: var(--page-radius);
    background: var(--page-surface);
    border: 1px dashed color-mix(in srgb, var(--border-color, #e0e0e0) 90%, transparent);
    box-shadow: var(--page-shadow);
    color: var(--page-muted);
    font-size: 1rem;
}

.blog-index__empty-icon {
    font-size: 2rem;
    color: color-mix(in srgb, var(--page-accent) 55%, var(--page-muted));
    opacity: 0.85;
}

.blog-index__empty p {
    margin: 0;
    max-width: 36ch;
    line-height: 1.55;
}

@media (max-width: 1024px) {
    .blog-index__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }
}

@media (max-width: 640px) {
    .dynamic-page__masthead {
        padding: 14px 0 16px;
    }

    .dynamic-page--has-breadcrumb .dynamic-page__inner {
        padding-top: 22px;
    }

    .blog-index__intro {
        margin-bottom: 20px;
        padding-bottom: 14px;
    }

    .blog-index__grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .blog-card__body {
        padding: 16px 18px 18px;
    }
}

.page-layout--full .dynamic-page__card,
.page-layout--full .blog-post__article {
    border-radius: 0;
}

/* —— Mobil —— */
@media (max-width: 768px) {
    .dynamic-page {
        padding-top: 24px;
    }

    .dynamic-page__header--intro {
        padding: 20px 20px 16px;
    }

    .dynamic-page__header--intro .dynamic-page__title::after {
        margin-top: 8px;
    }

    .dynamic-page__header--intro + .dynamic-page-content {
        padding-top: 18px;
    }

    .page-template--legal_doc .dynamic-page__header--legal {
        padding: 22px 20px 18px;
    }

    .page-template--legal_doc .dynamic-page__header--legal + .dynamic-page-content--legal {
        padding-top: 20px;
    }

    .dynamic-page__header,
    .dynamic-page-content,
    .page-section,
    .blog-post__header,
    .blog-post__body {
        padding-left: 20px;
        padding-right: 20px;
    }

    .blog-post__header {
        padding-top: 22px;
        padding-bottom: 20px;
    }

    .blog-post__lead {
        margin-top: 14px;
        padding: 14px 16px;
    }

    .blog-post__title::after {
        margin-top: 10px;
    }

    .dynamic-page-content {
        padding-top: 20px;
        padding-bottom: 24px;
    }

    .page-section {
        padding: 22px 20px 24px;
    }

    .page-gallery__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .page-gallery__item {
        aspect-ratio: 1;
    }

    .page-pdf-viewer__frame {
        min-height: 420px;
    }
}

@media (max-width: 480px) {
    .page-gallery__grid {
        gap: 8px;
    }
}
