.policy-wrap {
    max-width: 680px;
    margin: 0 auto;
    padding: 80px 40px 100px;
    position: relative;
    z-index: 1;
}

.policy-back {
    display:         inline-flex;
    align-items:     center;
    gap:             7px;
    font-size:       11px;
    font-weight:     700;
    letter-spacing:  0.12em;
    text-transform:  uppercase;
    color:           var(--sage);
    text-decoration: none;
    margin-bottom:   56px;
    transition:      color 0.2s;
}

.policy-back:hover { color: var(--sage-d); }

.policy-eyebrow {
    font-size:      10px;
    font-weight:    700;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color:          var(--sage);
    margin-bottom:  16px;
}

.policy-title {
    font-family:            var(--ff);
    font-style:             italic;
    font-optical-sizing:    auto;
    font-variation-settings: 'opsz' 72, 'wght' 700;
    font-size:              clamp(32px, 5vw, 48px);
    letter-spacing:         -0.025em;
    line-height:            1.05;
    color:                  var(--ink);
    margin-bottom:          12px;
}

.policy-title .a { color: var(--sage); }

.policy-meta {
    font-size:     12px;
    color:         var(--ink-d);
    margin-bottom: 52px;
    padding-bottom: 36px;
    border-bottom: 1px solid var(--br);
}

.policy-body h2 {
    font-family:            var(--ff);
    font-style:             italic;
    font-optical-sizing:    auto;
    font-variation-settings: 'opsz' 36, 'wght' 600;
    font-size:              20px;
    letter-spacing:         -0.015em;
    color:                  var(--ink);
    margin-top:             44px;
    margin-bottom:          14px;
}

.policy-body p {
    font-size:     14px;
    line-height:   1.75;
    color:         var(--ink-m);
    margin-bottom: 16px;
}

.policy-body ul {
    margin: 0 0 16px 0;
    padding-left: 20px;
}

.policy-body li {
    font-size:     14px;
    line-height:   1.75;
    color:         var(--ink-m);
    margin-bottom: 6px;
}

.policy-body a {
    color:           var(--sage);
    text-decoration: none;
    border-bottom:   1px solid rgba(94,139,98,.3);
    transition:      border-color 0.2s;
}

.policy-body a:hover { border-color: var(--sage); }

.policy-body strong {
    color:       var(--ink);
    font-weight: 700;
}

.policy-card {
    background:    var(--s1);
    border:        1px solid var(--br);
    border-left:   2px solid var(--sage);
    border-radius: 8px;
    padding:       20px 24px;
    margin:        24px 0;
}

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

@media (max-width: 640px) {
    .policy-wrap { padding: 48px 20px 72px; }
}