html:has(.documents-page),
body:has(.documents-page) {
    height: auto !important;
    min-height: 100%;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

.documents-page {
    min-height: 100vh;
    background: #fff;
    color: #111;
}

.documents-page > .header {
    height: 90px;
}

.documents-shell {
    width: min(1120px, calc(100% - 4rem));
    margin: 0 auto;
    padding: clamp(4rem, 8vw, 8rem) 0 7rem;
}

.documents-intro {
    max-width: 760px;
    margin-bottom: clamp(4rem, 8vw, 7rem);
}

.documents-eyebrow {
    margin: 0 0 1rem;
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    opacity: .58;
}

.documents-intro h1 {
    display: block;
    margin: 0 0 1.75rem;
    font-size: clamp(3rem, 7vw, 6.5rem);
    line-height: .98;
    letter-spacing: -.055em;
}

.documents-nav {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.documents-nav a {
    padding: .75rem 1.25rem;
    border: 1px solid #111;
    border-radius: 999px;
    color: inherit;
    text-decoration: none;
}

.documents-section {
    max-width: 860px;
    padding: clamp(2rem, 5vw, 4rem);
    margin: 0 0 2rem;
    border-top: 1px solid #111;
    border-radius: 0;
    background: transparent;
}

.documents-section h2 {
    display: block;
    margin: 0 0 2rem;
    font-size: clamp(2rem, 4vw, 3.25rem);
}

.documents-copy {
    font-size: 1rem;
    line-height: 1.8;
}

.documents-copy h2,
.documents-copy h3 {
    display: block;
    margin: 2em 0 .75em;
}

.documents-copy a { color: inherit; }
.documents-empty { opacity: .55; font-style: italic; }

.documents-legal-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .65rem;
    padding-top: 3rem;
    color: rgba(17,17,17,.58);
    font-size: .78rem;
}

.documents-legal-footer a {
    color: inherit;
    text-decoration: none;
    transition: color .2s ease;
}

.documents-legal-footer a:hover,
.documents-legal-footer a:focus-visible { color: #111; }

body.rtl .documents-page { direction: rtl; text-align: right; }
body.rtl .documents-section { margin-left: auto; }

@media (max-width: 767.98px) {
    .documents-shell { width: calc(100% - 2rem); padding-top: 3rem; }
    .documents-section { padding: 1.5rem; border-radius: 18px; }
    .documents-page > .header { height: 85px; }
}
