.info-hero { padding: 88px 0 92px; color: #fff; background: radial-gradient(circle at 82% 18%, rgba(125,232,242,.17), transparent 30%), #151c3f; text-align: center; }
.info-hero .section-kicker { color: #7de8f2; }
.info-hero h1 { margin: 11px 0 17px; font-family: var(--display); font-size: clamp(42px,5.8vw,64px); line-height: 1.09; letter-spacing: -2.5px; }
.info-hero p { max-width: 760px; margin: 0 auto; color: #c2c9df; font-size: 18px; line-height: 1.75; }
.info-hero-compact { padding: 70px 0 74px; }
.policy-date { margin-top: 21px; display: inline-block; color: #9fa8ca; font-size: 13px; }
.info-section { background: var(--surface-soft); }
.info-narrow { max-width: 1040px; }
.info-prose { max-width: 760px; margin: 0 auto; text-align: center; }
.info-prose h2, .contact-guidance h2 { margin: 0 0 14px; font-family: var(--display); font-size: clamp(30px,4vw,42px); letter-spacing: -1.3px; }
.info-prose p, .contact-guidance p { margin: 0; color: var(--ink-soft); font-size: 17px; line-height: 1.82; }
.info-prose p + p { margin-top: 16px; }
.values-grid { margin-top: 54px; display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.value-card { padding: 30px; border: 1px solid var(--line); border-radius: 22px; background: #fff; box-shadow: var(--shadow-sm); }
.value-number { color: var(--emerald); font-family: var(--display); font-size: 13px; font-weight: 800; letter-spacing: 1px; }
.value-card h2 { margin: 17px 0 10px; font-family: var(--display); font-size: 21px; letter-spacing: -.5px; }
.value-card p { margin: 0; color: var(--ink-soft); font-size: 15px; line-height: 1.72; }
.info-callout { margin-top: 54px; padding: 34px 36px; display: flex; align-items: center; justify-content: space-between; gap: 34px; border-radius: 24px; color: #fff; background: #151c3f; }
.info-callout .section-kicker { color: #7de8f2; }
.info-callout h2 { margin: 7px 0 8px; font-family: var(--display); font-size: 27px; letter-spacing: -.8px; }
.info-callout p { max-width: 540px; margin: 0; color: #bdc4dc; line-height: 1.65; }
.info-actions { display: flex; flex: 0 0 auto; gap: 10px; }
.info-callout .button-secondary { color: #fff; border-color: rgba(255,255,255,.24); background: rgba(255,255,255,.08); }
.contact-card { max-width: 830px; margin: 0 auto; padding: 38px; display: flex; align-items: flex-start; gap: 24px; border: 1px solid var(--line); border-radius: 24px; background: #fff; box-shadow: var(--shadow-sm); }
.contact-icon { width: 58px; height: 58px; flex: 0 0 auto; display: grid; place-items: center; color: #fff; border-radius: 17px; background: linear-gradient(135deg,var(--emerald),#3f9ee8); }
.contact-icon svg { width: 27px; height: 27px; }
.contact-card h2 { margin: 8px 0 12px; font-family: var(--display); font-size: clamp(25px,4vw,36px); line-height: 1.2; letter-spacing: -1px; overflow-wrap: anywhere; }
.contact-card h2 a { color: var(--ink); }
.contact-card h2 a:hover { color: var(--emerald-dark); }
.contact-card p { margin: 0; color: var(--ink-soft); line-height: 1.75; }
.contact-guidance { max-width: 830px; margin: 28px auto 0; padding: 28px 30px; border: 1px solid #cdd2fa; border-radius: 20px; background: var(--emerald-soft); }
.contact-guidance h2 { font-size: 22px; }
.contact-guidance p { font-size: 15px; }
.policy-layout { max-width: 1100px; display: grid; grid-template-columns: 300px minmax(0,700px); align-items: start; justify-content: center; gap: 64px; }
.policy-summary { position: sticky; top: 104px; padding: 27px; border: 1px solid #cdd2fa; border-radius: 20px; background: var(--emerald-soft); }
.policy-summary h2 { margin: 10px 0 11px; font-family: var(--display); font-size: 22px; line-height: 1.4; letter-spacing: -.5px; }
.policy-summary p { margin: 0; color: var(--ink-soft); font-size: 14px; line-height: 1.72; }
.policy-content { min-width: 0; padding: 42px 46px; border: 1px solid var(--line); border-radius: 24px; background: #fff; box-shadow: var(--shadow-sm); }
.policy-content section + section { margin-top: 37px; padding-top: 37px; border-top: 1px solid var(--line); }
.policy-content h2 { margin: 0 0 13px; font-family: var(--display); font-size: 25px; line-height: 1.35; letter-spacing: -.7px; }
.policy-content p { margin: 0; color: var(--ink-soft); font-size: 16px; line-height: 1.82; }
.policy-content p + p { margin-top: 15px; }
.policy-content a { color: var(--emerald-dark); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 900px) {
    .values-grid { grid-template-columns: 1fr; }
    .info-callout { align-items: flex-start; flex-direction: column; }
    .policy-layout { grid-template-columns: 1fr; gap: 28px; }
    .policy-summary { position: static; }
}

@media (max-width: 640px) {
    .info-hero { padding: 64px 0 68px; }
    .info-hero p { font-size: 16px; }
    .value-card, .contact-card, .policy-content { padding: 25px; }
    .contact-card { flex-direction: column; }
    .info-callout { padding: 28px 24px; }
    .info-actions { width: 100%; flex-direction: column; }
    .info-actions .button { width: 100%; }
    .policy-content h2 { font-size: 22px; }
}
