.policy-hero {
    padding-block: clamp(44px, 7vw, 84px);
    background: linear-gradient(120deg, var(--green-deep), var(--green-dark) 75%, #12533d);
    color: #fff;
}

.policy-hero .eyebrow { color: var(--mint); }
.policy-hero h1 { font-size: clamp(2.35rem, 5vw, 4.25rem); text-wrap: balance; }
.policy-intro { margin: 16px 0 24px; color: #daeee2; line-height: 1.6; }
.policy-hero .actions a { text-align: center; }
.policy-content { display: grid; gap: 20px; max-width: 860px; padding-block: clamp(32px, 6vw, 64px); }
.policy-section { scroll-margin-top: 16px; padding: clamp(20px, 4vw, 36px); }
.policy-section:target, .policy-section:focus-visible { outline: 2px solid var(--green-text); outline-offset: 3px; }
.policy-section h2 { font-size: clamp(1.45rem, 3.2vw, 2.1rem); }
.policy-section dl { display: grid; gap: 7px; width: 100%; margin: 20px 0 0; }
.policy-section dt { font-size: 1.04rem; font-weight: 700; }
.policy-section dd { margin: 0; color: var(--muted); line-height: 1.6; }
.policy-section dd + dt { margin-top: 9px; padding-top: 13px; border-top: 1px solid var(--line); }
