*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

:root {
    --rz-wine: #6d1a36;
    --rz-gold: #d4a017;
    --rz-text: #2a1a1f;
    --rz-paper: #fbf7f2;
    --rz-card: #ffffff;
    --rz-grey: #6e5a60;
    --rz-edge: #ecdfd6;
}

body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: var(--rz-paper);
    color: var(--rz-text);
    font: 16px/1.7 Arial, "Helvetica Neue", sans-serif;
}

a { color: var(--rz-wine); }

.rz-head {
    padding: 18px 20px;
    text-align: center;
    background: var(--rz-card);
    border-bottom: 1px solid var(--rz-edge);
}

.rz-head__logo {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
    font-style: italic;
    font-weight: 700;
    letter-spacing: .06em;
    color: var(--rz-wine);
    text-decoration: none;
}

.rz-paper {
    width: 100%;
    max-width: 780px;
    margin: 0 auto;
    padding: 46px 20px 60px;
    counter-reset: rzsec;
}

.rz-paper__title {
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(28px, 4vw, 40px);
    line-height: 1.2;
    color: var(--rz-wine);
}

.rz-paper__date {
    margin: 10px 0 34px;
    font-size: 14px;
    color: var(--rz-grey);
}

.rz-part {
    padding: 0 0 0 20px;
    margin-bottom: 30px;
    border-left: 3px solid var(--rz-edge);
}

.rz-part h2 {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 21px;
    line-height: 1.3;
    color: var(--rz-text);
    margin-bottom: 8px;
}

.rz-part h2::before {
    counter-increment: rzsec;
    content: counter(rzsec) ". ";
    color: var(--rz-gold);
}

.rz-part p + p,
.rz-part p + ul,
.rz-part ul + p { margin-top: 10px; }

.rz-part ul { padding-left: 20px; }

.rz-part li { margin-bottom: 4px; }

.rz-part li::marker { color: var(--rz-wine); }

.rz-bottom {
    margin-top: auto;
    padding: 26px 20px;
    text-align: center;
    background: var(--rz-card);
    border-top: 1px solid var(--rz-edge);
}

.rz-bottom__wrap { max-width: 860px; margin: 0 auto; }

.rz-bottom__links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 20px;
    margin-bottom: 12px;
}

.rz-bottom__links a { font-size: 12px; }

.rz-bottom__copy {
    font-size: 12px;
    color: var(--rz-grey);
    margin-bottom: 8px;
}

.rz-bottom__text {
    max-width: 740px;
    margin: 0 auto;
    font-size: 11px;
    line-height: 1.65;
    color: #9a8a8f;
}
