body:has(.sms-review) { margin: 0; background: #101014; }
.sms-review, .sms-review *, .sms-legal, .sms-legal * { box-sizing: border-box; }
.sms-review { max-width: 900px; margin: auto; padding: 32px 24px 64px; font: 16px/1.75 system-ui, sans-serif; color: #e4e4e7; }
.sms-review a { color: #c6d7ff; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.review-header, .review-links { display: flex; gap: 12px 24px; flex-wrap: wrap; align-items: center; }
.review-header { justify-content: space-between; margin-bottom: 48px; font-size: 14px; }
.sms-review .review-brand { color: #fff; font-weight: 750; letter-spacing: 1.5px; text-decoration: none; }
.review-brand span { color: #a1a1aa; font-size: 11px; }
.review-label { color: #a1a1aa; font-size: 12px; letter-spacing: 1.4px; }
.sms-review h1 { font-size: clamp(32px, 6vw, 48px); line-height: 1.15; letter-spacing: -1.5px; margin: 12px 0; }
.review-lead { font-size: 19px; color: #b4b4bc; margin-bottom: 32px; }
.sms-review section, .sms-review footer { border-top: 1px solid #2e2e36; padding: 28px 0; }
.sms-review h2 { font-size: 22px; line-height: 1.35; margin: 0 0 16px; }
.sms-review h3 { font-size: 17px; margin: 28px 0 12px; }
.sms-review p { margin: 12px 0; }
.sms-review ul, .sms-review ol { padding-left: 24px; }
.sms-review li { margin: 10px 0; }
.review-notice, .sms-review blockquote { padding: 16px 20px; border: 1px solid #34343d; border-radius: 12px; background: #19191e; margin: 20px 0; }
.sms-review figure { margin: 28px 0; }
.sms-review img { display: block; width: 100%; height: auto; border-radius: 12px; border: 1px solid #34343d; }
.sms-review figcaption, .sms-review footer { color: #a1a1aa; font-size: 13px; }
.sms-review figcaption { margin-top: 12px; }
@media (max-width: 540px) { .sms-review { padding: 24px 18px 40px; font-size: 15px; } .review-header { margin-bottom: 32px; } }
body:has(.sms-legal) { margin: 0; background: #101014; color: #e4e4e7; font: 16px/1.75 system-ui, sans-serif; }
.sms-legal { max-width: 800px; margin: auto; padding: 40px 24px; }
.sms-legal h1 { font-size: clamp(28px, 5vw, 40px); line-height: 1.2; }
.sms-legal h2 { font-size: 21px; margin-top: 28px; }
.sms-legal a { color: #c6d7ff; overflow-wrap: anywhere; }
