﻿:root {
    --cb-ink: #4b321d;
    --cb-ink-soft: #6a4a2c;
    --cb-paper: #f4e3c5;
    --cb-paper-deep: #e8cfab;
    --cb-paper-soft: #fbf1df;
    --cb-border: rgba(117, 78, 42, 0.28);
    --cb-shadow: 0 18px 40px rgba(76, 50, 28, 0.22), 0 8px 18px rgba(76, 50, 28, 0.14);
    --cb-radius: 18px;
    --cb-accent: #8b5e34;
    --cb-accent-dark: #6f4826;
    --cb-focus: 0 0 0 3px rgba(139, 94, 52, 0.22);
}

.cookie-banner {
    position: fixed;
    left: 50%;
    bottom: 22px;
    transform: translateX(-50%);
    width: min(760px, calc(100vw - 24px));
    padding: 16px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    z-index: 9999;
    border-radius: var(--cb-radius);
    background: radial-gradient(circle at top left, rgba(255, 248, 233, 0.55), transparent 34%), linear-gradient(180deg, rgba(251, 241, 223, 0.98) 0%, rgba(232, 207, 171, 0.98) 100%);
    border: 1px solid var(--cb-border);
    box-shadow: var(--cb-shadow);
    color: var(--cb-ink);
}

    .cookie-banner::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        pointer-events: none;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0));
        opacity: 0.7;
    }

    .cookie-banner p {
        position: relative;
        z-index: 1;
        margin: 0;
        color: var(--cb-ink);
        font-size: 1rem;
        line-height: 1.45;
        font-weight: 600;
        letter-spacing: 0.1px;
    }

    .cookie-banner a {
        color: var(--cb-accent-dark);
        text-decoration: none;
        border-bottom: 1px solid rgba(111, 72, 38, 0.32);
    }

        .cookie-banner a:hover {
            border-bottom-color: rgba(111, 72, 38, 0.6);
        }

    .cookie-banner button {
        position: relative;
        z-index: 1;
        border: 1px solid rgba(117, 78, 42, 0.3);
        background: linear-gradient(180deg, #c9955a 0%, #a9703e 100%);
        color: #fff7eb;
        border-radius: 999px;
        padding: 10px 16px;
        font-size: 0.95rem;
        font-weight: 700;
        cursor: pointer;
        box-shadow: 0 8px 18px rgba(76, 50, 28, 0.18);
        transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
        white-space: nowrap;
        font-family: "Georgia", "Times New Roman", serif;
    }

        .cookie-banner button:hover {
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(76, 50, 28, 0.24);
            filter: brightness(1.04);
        }

        .cookie-banner button:active {
            transform: translateY(0);
            box-shadow: 0 8px 18px rgba(76, 50, 28, 0.18);
        }

        .cookie-banner button:focus-visible,
        .cookie-banner a:focus-visible {
            outline: none;
            box-shadow: var(--cb-focus);
            border-radius: 10px;
        }

    .cookie-banner[style*="display: none"] {
        visibility: hidden !important;
        pointer-events: none !important;
    }

@media (max-width: 520px) {
    .cookie-banner {
        flex-direction: column;
        align-items: stretch;
        text-align: left;
        gap: 10px;
        padding: 14px 12px;
        bottom: 14px;
        width: calc(100vw - 18px);
    }

        .cookie-banner button {
            width: 100%;
            padding: 11px 14px;
        }

        .cookie-banner p {
            font-size: 0.96rem;
        }
}

.privacy-wrapper {
    width: min(980px, calc(100vw - 24px));
    margin: clamp(18px, 10vh, 72px) auto 28px auto;
    padding: clamp(18px, 2.8vw, 30px);
    background: radial-gradient(circle at top left, rgba(255, 248, 233, 0.44), transparent 30%), linear-gradient(180deg, rgba(248, 231, 201, 0.98) 0%, rgba(233, 210, 174, 0.98) 100%);
    border: 1px solid rgba(117, 78, 42, 0.2);
    border-radius: 22px;
    box-shadow: 0 22px 52px rgba(76, 50, 28, 0.16), 0 8px 18px rgba(76, 50, 28, 0.1);
    color: var(--cb-ink);
    line-height: 1.8;
    font-family: "Georgia", "Times New Roman", serif;
}

    .privacy-wrapper h1,
    .privacy-wrapper h2,
    .privacy-wrapper h3 {
        color: #4b321d;
        margin-top: 18px;
        margin-bottom: 10px;
        letter-spacing: 0.2px;
    }

    .privacy-wrapper h1 {
        font-size: clamp(1.6rem, 2.2vw, 2.1rem);
        line-height: 1.15;
    }

    .privacy-wrapper h2 {
        font-size: clamp(1.2rem, 1.7vw, 1.5rem);
    }

    .privacy-wrapper h3 {
        font-size: clamp(1.05rem, 1.3vw, 1.2rem);
    }

    .privacy-wrapper p {
        color: var(--cb-ink-soft);
        margin: 0 0 12px 0;
    }

    .privacy-wrapper ul {
        padding-left: 1.1rem;
        margin: 0 0 14px 0;
    }

    .privacy-wrapper li {
        margin: 0 0 10px 0;
        color: var(--cb-ink-soft);
    }

    .privacy-wrapper a {
        color: var(--cb-accent-dark);
        text-decoration: none;
        border-bottom: 1px solid rgba(111, 72, 38, 0.28);
    }

        .privacy-wrapper a:hover {
            border-bottom-color: rgba(111, 72, 38, 0.55);
        }

@media (max-width: 768px) {
    .privacy-wrapper {
        width: calc(100vw - 18px);
        margin: 22px auto;
        padding: 16px 14px;
        font-size: 1rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cookie-banner,
    .cookie-banner button {
        transition: none !important;
    }
}
