/* Public SMS disclosures: compact, readable and outside primary navigation. */
.sms-policy { width: min(100% - 2.5rem, 76ch); margin: 0 auto; padding: clamp(2.5rem, 7vw, 6rem) 0; }
.sms-policy h1 { max-width: 20ch; font-size: clamp(2rem, 5vw, 3.4rem); line-height: 1.12; margin: .4rem 0 1.4rem; }
.sms-policy h2 { margin: 2rem 0 .75rem; font-size: clamp(1.2rem, 2.4vw, 1.55rem); line-height: 1.3; }
.sms-policy p, .sms-policy li { line-height: 1.7; }
.sms-policy p { margin: 1rem 0; }
.sms-policy ul { padding-inline-start: 1.4rem; margin: 1rem 0; }
.sms-policy li + li { margin-top: .35rem; }
.sms-policy a { text-decoration: underline; text-underline-offset: .18em; overflow-wrap: anywhere; }
.sms-policy a:focus-visible { outline: 3px solid currentColor; outline-offset: 4px; }
.sms-policy-links { position: static; inset: auto; width: auto; box-shadow: none; background: transparent; flex-direction: row; align-items: center; display: flex; flex-wrap: wrap; gap: .5rem 1.4rem; padding: 1rem 0; border-block: 1px solid #cbd5da; margin: 1.4rem 0 1.8rem; }
.sms-policy-links a { display: inline-flex; align-items: center; min-height: 2.75rem; }
.sms-effective { font-weight: 600; }
.sms-call-to-action { border-left: 3px solid #0064a3; background: #f1f6f8; padding: .5rem clamp(1rem, 4vw, 1.6rem); margin: 1.25rem 0; }
@media (max-width: 480px) { .sms-policy { width: calc(100% - 2rem); } .sms-policy-links { gap: .25rem 1rem; } }
