/**
 * Inner page shell — content cards + legal text layout.
 * Replaces duplicated inline <style> blocks on policy/info pages.
 */

html.ha-unified main.container,
html.ha-unified main {
    flex-grow: 1;
    padding-top: 40px;
    padding-bottom: 80px;
}

html.ha-unified .content-card {
    background: var(--bg-white, #ffffff);
    border-radius: var(--border-radius, 12px);
    box-shadow: var(--shadow-sm, 0 4px 10px rgba(0, 0, 0, 0.03));
    border: 1px solid var(--border-color, #e5ebe7);
    padding: 60px;
    max-width: 900px;
    margin: 0 auto;
}

html.ha-unified .page-title {
    text-align: center;
    margin-bottom: 40px;
}

html.ha-unified .page-title h1 {
    font-size: 3rem;
    margin-bottom: 15px;
}

html.ha-unified .divider {
    width: 80px;
    height: 4px;
    background: linear-gradient(90deg, var(--accent-blue, #0079c6), var(--primary-green, #007305));
    margin: 0 auto 30px;
    border-radius: 4px;
}

html.ha-unified .legal-content h3 {
    font-size: 1.3rem;
    margin-top: 35px;
    margin-bottom: 15px;
    color: var(--dark-green, #004b04);
    font-family: 'Playfair Display', 'Times New Roman', serif;
}

html.ha-unified .legal-content p {
    margin-bottom: 20px;
    color: var(--text-light, #525a54);
}

html.ha-unified .legal-content ul.bullet-list {
    margin: 0 0 20px 0;
    padding-left: 1.35rem;
    color: var(--text-light, #525a54);
}

html.ha-unified .legal-content ul.bullet-list li {
    margin-bottom: 8px;
}

html.ha-unified .legal-content ul.bullet-list ul {
    margin-top: 10px;
    list-style-type: circle;
}

html.ha-unified *[id] {
    scroll-margin-top: 120px;
}

@media (max-width: 768px) {
    html.ha-unified main.container,
    html.ha-unified main {
        padding-top: calc(var(--site-fixed-header-offset, 9.5rem) + 12px);
        padding-bottom: clamp(48px, 10vw, 72px);
        padding-inline: var(--gutter);
        box-sizing: border-box;
    }

    html.ha-unified body.ha-mobile-bottom-nav-on main.container,
    html.ha-unified body.ha-mobile-bottom-nav-on main {
        padding-bottom: var(--ha-page-pad-nav-clear, calc(var(--ha-mobile-bottom-nav-h, 78px) + 24px)) !important;
    }

    html.ha-unified .content-card {
        padding: clamp(20px, 5vw, 32px) clamp(16px, 4vw, 24px);
        max-width: 100%;
    }

    html.ha-unified .page-title h1 {
        font-size: clamp(1.65rem, 7vw, 2.25rem);
        line-height: 1.2;
    }
}
