.policy-hero {
    padding-bottom: clamp(46px, 5vw, 80px);
}

.policy-hero h1 {
    font-size: clamp(2rem, 3.6vw, 3.1rem);
    max-width: 22ch;
}

.policy-hero .lead {
    max-width: 100%;
}

.policy-block {
    padding: clamp(22px, 2.4vw, 32px);
    border-radius: var(--radius-l);
    background: rgba(255, 255, 255, .6);
    border: 1px solid var(--border);
}

.policy-block h2 {
    font-size: clamp(1.06rem, 1.2vw, 1.25rem);
    margin-bottom: 14px;
}

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

.policy-block ul {
    padding-left: 0;
    list-style: none;
    display: grid;
    gap: 10px;
    margin-bottom: 1.1rem;
}

.policy-block ul li {
    position: relative;
    padding-left: 26px;
    margin: 0;
}

.policy-block ul li::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 11px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: linear-gradient(120deg, var(--violet), var(--coral));
}

.policy-card {
    padding: clamp(22px, 2.4vw, 30px);
    border-radius: var(--radius-l);
    background: linear-gradient(150deg, var(--plum-2), var(--plum));
    color: rgba(242, 231, 247, .8);
}

.policy-card p {
    margin-bottom: .45rem;
    color: rgba(242, 231, 247, .8);
    font-size: .95rem;
}

.policy-card p:last-child {
    margin-bottom: 0;
}

.policy-card strong {
    color: #fff;
    font-family: var(--head);
    font-size: 1.02rem;
}

.policy-card a {
    color: var(--coral);
}

.policy-closing {
    font-family: var(--head);
    font-size: 1rem;
    color: var(--text);
}
