/* ====== ZÁKLAD ====== */
.onas-page {
    min-height: 100vh;
    font-family: var(--font-family-primary);
}

/* ====== COVER ====== */
.cover-section {
    position: relative;
    max-width: 1200px;
    margin: var(--spacing-xl) auto 0;
    min-height: clamp(160px, 35vw, 360px);
    overflow: hidden;
}

.cover-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ====== OBSAHOVÁ SEKCE ====== */
.content-section {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    padding: var(--spacing-xl) var(--spacing-md);
    padding-left: calc(var(--spacing-md) + env(safe-area-inset-left));
    padding-right: calc(var(--spacing-md) + env(safe-area-inset-right));
}

/* Dekorativní pozadí – jemně prosvítá přes text */
.decorative-background {
    position: absolute;
    inset: 0;
    max-width: 800px;
    max-height: 1000px;
    top: -200px;
    right: 5%;
    pointer-events: none;
    z-index: -1;           /* za textem */
    opacity: 0.8;        /* základní prosvit na desktopu */
}
.decorative-background img {
    max-width: 90%;
    height: auto;
    object-fit: contain;
    mix-blend-mode: multiply;          /* přirozený “inkoustový” efekt */
    /*filter: contrast(115%) brightness(105%);*/
}

/* Obsah nad dekorací */
.content-wrapper {
    position: relative;
    z-index: 1;
    max-width: 1200px;
    margin-inline: auto;
}

/* ====== TYPOGRAFIE ====== */
.page-title {
    font-family: var(--font-family-medium);
    font-weight: 700;
    font-size: clamp(1.6rem, 5.2vw, 2.8rem);
    margin-bottom: var(--spacing-lg);
    color: var(--theme-primary-color);
    text-align: left;
}

.page-content {
    font-size: clamp(1rem, 3.7vw, 1.125rem);
    line-height: 1.75;
    color: var(--theme-primary-color);
    white-space: normal;
    overflow-wrap: anywhere;
    hyphens: auto;
    margin-bottom: var(--spacing-xl);
}

/* Vložená typografie z CMS (bez extra tříd) */
.content-wrapper h1,
.content-wrapper h2,
.content-wrapper h3,
.content-wrapper h4 {
    margin-top: var(--spacing-xl);
    margin-bottom: var(--spacing-md);
    font-family: var(--font-family-medium);
}
.content-wrapper h3 { font-size: 1.5rem; color: var(--theme-secondary-color); }
.content-wrapper p { margin-bottom: var(--spacing-md); }
.content-wrapper ul,
.content-wrapper ol { margin: var(--spacing-md) 0; padding-left: var(--spacing-xl); }
.content-wrapper li { margin-bottom: var(--spacing-sm); line-height: 1.6; }
.content-wrapper blockquote {
    border-left: 4px solid var(--theme-secondary-color);
    padding-left: var(--spacing-md);
    margin: var(--spacing-xl) 0;
    font-style: italic;
    color: var(--theme-secondary-color);
}
.content-wrapper a {
    color: var(--theme-secondary-color);
    text-decoration: underline;
    transition: var(--transition-normal);
}
.content-wrapper a:hover { color: var(--theme-primary-color); text-decoration: none; }
.content-wrapper strong { font-family: var(--font-family-medium); font-weight: 600; }

/* ====== MEDIA QUERIES ====== */

/* <= 992px – tablet */
@media (max-width: 992px) {
    .content-section { padding: var(--spacing-xxl) var(--spacing-lg); }
    .decorative-background { opacity: 0.8; }
}

/* <= 768px – mobil a menší tablety na výšku */
@media (max-width: 768px) {
    .content-section { padding: var(--spacing-xl) var(--spacing-md); }

    /* jemný světlý závoj pro čitelnost textu nad dekorací */
    .content-section::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 0; /* nad dekorací, pod textem */
    }

    .decorative-background {
        opacity: 0.8;
        top: -110px;
        right: 5%;
    }
    .page-title { font-size: clamp(1.5rem, 6vw, 2rem); margin-bottom: var(--spacing-lg); }
    .page-content { font-size: clamp(0.95rem, 3.8vw, 1.05rem); }
    .cover-section { min-height: clamp(160px, 45vw, 280px)}
}

/* <= 480px – malé telefony */
@media (max-width: 480px) {
    .content-section { padding: var(--spacing-lg) var(--spacing-sm); }
    .page-title { font-size: clamp(1.35rem, 7vw, 1.8rem); }
    .decorative-background {
        opacity: 0.8;
        top: -90px;
        right: 5%;
    }
}
