.ip-page {
  max-width:calc(1000px + var(--gutter)*2);
}
.ip-opening .badge {
  margin-bottom:20px;
}
.ip-result__heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:16px;
}
.ip-result__heading h2 {
  font-size:var(--size-h3);
}
.ip-result__fields {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin:24px 0 0;
}
.ip-result__fields > div {
  min-width:0;
  padding-top:16px;
  border-top:1px solid var(--border);
}
.ip-result__fields .ip-result__address {
  grid-column:1 / -1;
}
.ip-result__fields dt {
  color:var(--text-muted);
  font-size:14px;
}
.ip-result__fields dd {
  margin:8px 0 0;
  overflow-wrap:anywhere;
  font-weight:700;
}
.ip-result__address dd {
  font-size:clamp(22px,4vw,36px);
  line-height:1.45;
  user-select:text;
}
.ip-result__status {
  margin-top:18px;
  color:var(--text-muted);
  font-size:14px;
  overflow-wrap:anywhere;
}
.ip-result__copy-status {
  margin-top:6px;
  font-size:14px;
}
.ip-result__copy-status:empty {
  display:none;
}
.ip-result noscript .callout {
  margin-top:20px;
}
.ip-result-note {
  max-width:820px;
  margin-top:16px;
  color:var(--text-muted);
  font-size:13px;
}
.ip-reading-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:32px;
}
.ip-reading-item {
  min-width:0;
  padding-top:20px;
  border-top:1px solid var(--border-strong);
}
.ip-reading-item h3 {
  font-size:18px;
}
.ip-reading-item p {
  margin-top:12px;
  color:var(--text-muted);
  line-height:1.85;
}
.ip-reading-note {
  margin-top:32px;
}
.ip-page a:not(.btn) {
  text-decoration:underline;
  text-underline-offset:4px;
}
.ip-dns__steps {
  display:grid;
  gap:24px;
  padding-left:24px;
}
.ip-dns__steps li {
  min-width:0;
  padding-left:6px;
}
.ip-dns__steps h3 {
  font-size:18px;
}
.ip-dns__steps p {
  margin-top:8px;
  line-height:1.85;
  color:var(--text-muted);
}
.ip-dns__boundary {
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid var(--border-strong);
  font-size:14px;
}
.ip-privacy p {
  margin-top:16px;
  max-width:820px;
  color:var(--text-muted);
  line-height:1.85;
}
@media (max-width:640px) {
  .ip-result__fields {
    grid-template-columns:1fr;
    gap:18px;
  }
  .ip-reading-grid {
    grid-template-columns:1fr;
    gap:28px;
  }
  .ip-result .cta-row {
    align-items:stretch;
  }
  .ip-result .btn {
    flex:1 1 auto;
  }
}