.ip-page{max-width:1048px}
.ip-intro{text-align:center;margin-bottom:36px}
.ip-intro h1{margin:20px 0}
.ip-lede{max-width:46em;margin:0 auto;color:var(--text-muted)}
.ip-result{background:var(--white);box-shadow:var(--shadow-window)}
.ip-result-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.ip-result-head h2{margin:0;font-size:var(--size-h3)}
.ip-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:24px 0;gap:0 28px}
.ip-fields>div{min-width:0;padding:20px 0;border-bottom:1px solid var(--line)}
.ip-fields .ip-address-field{grid-column:1/-1;padding-top:0}
.ip-fields dt{font-size:var(--size-small);color:var(--text-muted);margin-bottom:8px}
.ip-fields dd{margin:0;overflow-wrap:anywhere}
.ip-address-field dd{font-size:var(--size-h3);color:var(--accent-dark)}
.ip-actions{display:flex;flex-wrap:wrap;gap:12px}
.ip-feedback{font-size:var(--size-small);margin:16px 0 0;overflow-wrap:anywhere}
.ip-feedback:empty{display:none}
.ip-reading h2{margin-top:0}
.ip-reading .prose{max-width:none}
.ip-reading .callout{margin-bottom:0}
.ip-dns h2{margin-top:20px}
.ip-dns a,.ip-privacy a{color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}
.ip-dns>p:last-child{margin-bottom:0}
.ip-checklist{padding-left:24px;margin:24px 0}
.ip-checklist li{padding-left:6px;overflow-wrap:anywhere}
.ip-checklist li+li{margin-top:18px}
.ip-checklist strong{font-weight:var(--weight-semibold)}
.ip-privacy{margin-top:36px;padding:24px;border:1.5px dashed var(--accent);border-radius:var(--r-md);background:var(--green-soft)}
.ip-privacy h2{font-size:var(--size-h3);margin:0 0 16px}
.ip-privacy p{margin-bottom:12px}
@media(max-width:640px){
  .ip-fields{grid-template-columns:minmax(0,1fr);gap:0}
  .ip-fields .ip-address-field{grid-column:auto}
  .ip-result-head{align-items:flex-start}
  .ip-privacy{padding:20px}
}