main {
    padding: 7.5rem 1.4rem 3rem;
    min-height: calc(100vh - 58px);
}

h1 {
    font-size: clamp(2rem, 4.7vw, 3.5rem);
    line-height: 1.05;
    letter-spacing: -0.03em;
    margin-bottom: 0.8rem;
    background: linear-gradient(120deg, #6fe9ff 0%, #69a9ff 35%, #a88bff 68%, #ff7fc5 100%);
    background-size: 220% 220%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: heroGradientShift 9s ease-in-out infinite;
}

.lead {
    font-size: clamp(1rem, 1.9vw, 1.15rem);
    color: var(--muted);
    max-width: 70ch;
    margin-bottom: 1.5rem;
}

.policy-card {
    background: var(--card);
    border: 1px solid var(--card-border);
    border-radius: 22px;
    padding: clamp(1.2rem, 3.5vw, 2.2rem);
    box-shadow: var(--glow);
    text-align: left;
}

.policy-card h2 {
    font-size: clamp(1.2rem, 2.2vw, 1.6rem);
    margin-top: 1.1rem;
    margin-bottom: 0.45rem;
}

.policy-card h2:first-of-type {
    margin-top: 0;
}

.policy-card p,
.policy-card li {
    color: var(--muted);
    font-size: 0.98rem;
}

.policy-card ul {
    margin: 0.5rem 0 1rem 1.2rem;
}

.policy-card a {
    color: var(--cyan);
    text-decoration: none;
}

.policy-card a:hover {
    text-decoration: underline;
}

@media (prefers-reduced-motion: reduce) {
    h1 {
        animation: none;
    }
}

@media (max-width: 768px) {
    main {
        padding-top: 6.3rem;
    }
}

