/* Henchu legal page styles */

.henchu-legal-page {
    background-color: #F8F2E2;
    color: #1F2418;
    font-family: "Hedvig Letters Sans", "Noto Sans Kannada", system-ui, sans-serif;
    font-size: 16px;
    line-height: 1.65;
}

.legal-hero {
    background-color: #40552D;
    color: #F3EBDC;
    padding: 80px 24px 72px;
    text-align: center;
}

.legal-eyebrow {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #A8BC8A;
    margin-bottom: 16px;
}

.legal-title {
    font-family: "Hedvig Letters Serif", "Tiro Kannada", Georgia, serif;
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 400;
    line-height: 1.1;
    color: #F3EBDC;
    margin-bottom: 16px;
}

.legal-meta {
    font-size: 13px;
    color: #A8BC8A;
    margin-bottom: 24px;
}

.legal-intro {
    max-width: 620px;
    margin: 0 auto;
    font-size: 17px;
    color: #D6CDBA;
}

.legal-body {
    max-width: 760px;
    margin: 0 auto;
    padding: 64px 24px 96px;
}

.legal-section {
    margin-bottom: 56px;
    padding-bottom: 56px;
    border-bottom: 1px solid #D7CDB8;
}

.legal-section:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.legal-section h2 {
    font-family: "Hedvig Letters Serif", "Tiro Kannada", Georgia, serif;
    font-size: clamp(1.4rem, 2.4vw, 1.8rem);
    font-weight: 400;
    color: #40552D;
    line-height: 1.2;
    margin-bottom: 20px;
}

.legal-section h3 {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #2E3F1F;
    margin-top: 28px;
    margin-bottom: 10px;
}

.legal-section p {
    margin-bottom: 16px;
    max-width: 68ch;
}

.legal-section ul,
.legal-section ol {
    padding-left: 20px;
    margin-bottom: 16px;
}

.legal-section li {
    margin-bottom: 8px;
    max-width: 68ch;
}

.legal-section a {
    color: #40552D;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.legal-section a:hover {
    color: #2E3F1F;
}

/* Tables (refund quick-reference, shipping timelines) */
.legal-table {
    width: 100%;
    border-collapse: collapse;
    margin: 8px 0 4px;
    font-size: 14px;
    background-color: #FFFDF7;
    border: 1px solid #D7CDB8;
    border-radius: 12px;
    overflow: hidden;
}

.legal-table thead th {
    background-color: #40552D;
    color: #F3EBDC;
    font-family: "Hedvig Letters Sans", "Noto Sans Kannada", system-ui, sans-serif;
    font-weight: 600;
    text-align: left;
    padding: 12px 16px;
    letter-spacing: 0.01em;
}

.legal-table td {
    padding: 12px 16px;
    border-top: 1px solid #E4DCC8;
    color: #2E3320;
    vertical-align: top;
}

.legal-table tbody tr:nth-child(even) {
    background-color: #F8F2E2;
}

@media (max-width: 600px) {
    .legal-hero {
        padding: 56px 20px 48px;
    }

    .legal-body {
        padding: 48px 20px 72px;
    }

    .legal-contact-block {
        padding: 24px 20px;
    }

    /* Allow wide tables to scroll instead of overflowing on small screens */
    .legal-table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}

/* ── Info table (two-column key/value, used on certifications page) ── */
.legal-table--info {
    width: 100%;
}

.legal-table--info th {
    width: 40%;
    background: none;
    color: #4A5240;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.legal-table--info td {
    width: 60%;
    color: #1F2418;
}

/* ── Certificate images ── */
.legal-cert-image {
    margin-top: 24px;
    border: 1px solid #D7CDB8;
    border-radius: 12px;
    overflow: hidden;
    background: #F3EBDC;
    max-width: 640px;
}

.legal-cert-image img {
    width: 100%;
    height: auto;
    display: block;
}

.legal-cert-placeholder {
    margin-top: 16px;
    font-size: 13px;
    color: #8A8070;
    font-style: italic;
}

@media (max-width: 600px) {
    .legal-table--info th,
    .legal-table--info td {
        display: block;
        width: 100%;
    }

    .legal-table--info th {
        padding-bottom: 4px;
        border-top: 1px solid #E4DCC8;
    }

    .legal-table--info td {
        border-top: none;
        padding-top: 4px;
    }
}

.legal-contact-block {
    background-color: #F3EBDC;
    border-radius: 16px;
    padding: 36px;
    border-bottom: none;
}

.legal-contact-block address {
    font-style: normal;
    line-height: 1.8;
    color: #4A5240;
}

.legal-contact-block strong {
    color: #1F2418;
}
