.ip-page{max-width:1080px}
.ip-intro{max-width:820px;margin-bottom:32px}
.ip-intro h1{margin-top:24px}
.ip-lede{max-width:44em;font-size:19px;color:var(--text-muted);line-height:1.8}
.ip-result{margin-bottom:64px}
.ip-result-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.ip-result-heading h2{margin:0;font-size:26px}
.ip-status{margin-top:16px;color:var(--text-muted)}
.ip-status.is-error{color:var(--accent-dark)}
.ip-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:24px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--border);overflow:hidden}
.ip-field{padding:22px;background:var(--bg-panel)}
.ip-field-primary{grid-column:1 / -1;background:var(--bg-panel-2)}
.ip-field dt{font-size:var(--size-small);color:var(--text-muted);margin-bottom:8px}
.ip-field dd{margin:0;font-weight:var(--weight-medium);overflow-wrap:anywhere}
.ip-field-primary dd{font-size:clamp(22px,3vw,34px);line-height:1.5;font-weight:var(--weight-bold)}
.ip-actions{margin-top:24px}
.ip-actions [role=status]{font-size:var(--size-small);overflow-wrap:anywhere}
.ip-result-note{margin-top:20px;font-size:var(--size-small)}
.ip-reading{margin-block:64px}
.ip-explanations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.ip-explanations article{padding-top:20px;border-top:1px solid var(--border)}
.ip-explanations h3{font-size:20px;margin-bottom:12px}
.ip-explanations p{line-height:1.9;color:var(--text-muted)}
.ip-reading .prose{max-width:none}
.ip-dns-steps{padding-left:1.5em}
.ip-dns-steps li+li{margin-top:18px}
.ip-privacy h2{font-size:28px;margin-top:20px}
.ip-privacy p{line-height:1.9;color:var(--text-muted)}
@media(max-width:640px){
  .ip-lede{font-size:var(--size-body)}
  .ip-fields,.ip-explanations{grid-template-columns:minmax(0,1fr)}
  .ip-field{padding:18px}
  .ip-result{margin-bottom:48px}
  .ip-reading{margin-block:48px}
  .ip-explanations{gap:24px}
}