@font-face{font-family:'Gasoek One';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/gasoek-one-639e522b.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Geist';font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/geist-f49f83ef.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Geist Mono';font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fonts/geist-mono-8c3cbed7.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* manish.org: black outlines, hard shadows, heavy display type and highlighter
   slabs, in full colour. */
:root{
  --ink:#141414; --ink-2:#3B3B3B; --cream:#F5F1E8; --paper:#FFFFFF;
  --lav:#C8B6FF; --lav-2:#E4DAFF; --pink:#FF90E8; --yellow:#FFD23F; --mint:#7EE2B8;
  --sky:#8CCBFF; --peach:#FFB38A; --coral:#FF7A6B; --green:#1F9D55;
  --disp:'Gasoek One','Arial Black',Impact,sans-serif;
  --ui:'Geist',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --mono:'Geist Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --bw:2px; --r:16px; --sh:5px 5px 0 var(--ink);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.6 var(--ui);overflow-x:hidden}
a{color:inherit}
img,svg{display:block}
h1,h2,h3,h4,p{margin:0}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}
.nowrap{white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;z-index:50;background:var(--yellow);border:var(--bw) solid var(--ink);
  padding:.5rem .9rem;border-radius:10px;font-weight:700}
.skip:focus{left:12px}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:6px}

/* ---- header ---- */
.top{position:sticky;top:0;z-index:20;background:var(--cream);border-bottom:var(--bw) solid var(--ink)}
.topin{display:flex;align-items:center;gap:1.4rem;height:70px}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;margin-right:auto}
.mono{display:grid;place-items:center;width:40px;height:40px;background:var(--pink);border:var(--bw) solid var(--ink);
  border-radius:11px;box-shadow:3px 3px 0 var(--ink);font:400 1.25rem/1 var(--disp);flex:none}
.mono.sm{width:32px;height:32px;font-size:1rem;border-radius:9px;box-shadow:2px 2px 0 var(--ink)}
.brandname{font-weight:800;font-size:1.1rem;letter-spacing:-.01em}
.nav{display:flex;gap:.3rem}
.nav a{text-decoration:none;font-weight:600;font-size:.98rem;padding:.45rem .9rem;border-radius:999px;border:var(--bw) solid transparent}
.nav a:hover{border-color:var(--ink);background:var(--paper)}

/* ---- buttons ---- */
.btn{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;font:700 1.02rem/1 var(--ui);
  padding:.95rem 1.35rem;border:var(--bw) solid var(--ink);border-radius:12px;box-shadow:4px 4px 0 var(--ink);
  transition:transform .12s ease,box-shadow .12s ease;cursor:pointer;color:var(--ink);white-space:nowrap}
.btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.btn:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}
.btn-peach{background:var(--peach)} .btn-white{background:var(--paper)} .btn-ink{background:var(--ink);color:var(--paper)}
.btn-sm{padding:.6rem 1rem;font-size:.92rem;box-shadow:3px 3px 0 var(--ink)}

/* ---- hero ---- */
.hero{position:relative;overflow:hidden;background:var(--lav);border-bottom:var(--bw) solid var(--ink);padding:88px 0 104px}
.swoosh{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.swoosh path{fill:none;stroke:rgba(255,255,255,.55);stroke-width:1.5}
.herogrid{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center}
.chip{display:inline-flex;align-items:center;gap:.5rem;background:var(--paper);border:var(--bw) solid var(--ink);
  border-radius:999px;padding:.35rem .9rem;font:600 .9rem/1.3 var(--ui);box-shadow:3px 3px 0 var(--ink);margin-bottom:26px}
.chip i{font-style:normal;color:#8A58E8}
h1{font:400 clamp(2.5rem,6.4vw,5.6rem)/.92 var(--disp);text-transform:uppercase;letter-spacing:-.02em}
h1 span{display:block}
.h1a{color:#5B4A99;font-size:.62em;margin-bottom:.22em;letter-spacing:0}
.h1c{margin-top:.08em}
.slab{display:inline-block;background:var(--paper);padding:.04em .16em .02em;margin-left:-.1em;transform:rotate(-1.6deg);
  box-shadow:4px 4px 0 var(--ink);border:var(--bw) solid var(--ink)}
.slab-pink{background:var(--pink)} .slab-mint{background:var(--mint)}
.lead{font-weight:700;font-size:1.35rem;line-height:1.35;margin:30px 0 10px;max-width:30ch}
.sub{font-size:1.15rem;color:var(--ink-2);max-width:42ch}
.ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.ctas.center{justify-content:center}

/* hero windows: a terminal and a report card */
.heroart{position:relative;min-height:560px}
.win{position:absolute;border:var(--bw) solid var(--ink);border-radius:14px;box-shadow:7px 7px 0 var(--ink);overflow:hidden}
.bar{display:flex;align-items:center;gap:.7rem;padding:.6rem .9rem;border-bottom:var(--bw) solid var(--ink);
  font:600 .74rem/1 var(--mono);text-transform:uppercase;letter-spacing:.08em}
.bar em{font-style:normal;margin-left:auto;text-transform:none;letter-spacing:0;opacity:.7}
.dots{display:inline-flex;gap:6px}
.dots i{width:11px;height:11px;border-radius:50%;border:1.5px solid var(--ink);background:var(--coral)}
.dots i:nth-child(2){background:var(--yellow)} .dots i:nth-child(3){background:var(--mint)}
.term{left:0;top:0;width:88%;background:#1B1A22;color:#F2F0FA;z-index:1}
.term .bar{background:#2A2835;color:#CFC9E6;border-bottom-color:#000}
.term .dots i{border-color:#000}
.log{list-style:none;margin:0;padding:16px 18px 26px;font:500 .86rem/1.55 var(--mono)}
.log li{position:relative;padding-left:1.6em;margin:.18em 0}
.log li::before{position:absolute;left:0;top:0}
.log .go{color:#E8E4F6} .log .go::before{content:"\2192";color:#9A93BA}
.log .ok{color:#8BF0B8} .log .ok::before{content:"\2713";color:#8BF0B8}
.log .warn{color:#FFD86B} .log .warn::before{content:"!";color:#FFD86B;font-weight:700;left:.25em}
.card{right:0;top:190px;width:62%;background:var(--paper);z-index:2}   /* overlaps only the terminal's bottom edge */
.card .bar{background:var(--cream)}
.rep{padding:16px 18px 18px}
.rephead{display:flex;align-items:flex-start;gap:.6rem;justify-content:space-between}
.rephead b{font-size:1.02rem;line-height:1.3}
.sev{flex:none;font:700 .72rem/1 var(--ui);text-transform:uppercase;letter-spacing:.06em;padding:.38rem .6rem;
  border:var(--bw) solid var(--ink);border-radius:999px;background:var(--yellow)}
.repby{font:500 .8rem/1.4 var(--mono);color:#555;margin:6px 0 12px}
.repby span{margin:0 .3em}
.steps{list-style:none;margin:0;padding:0;border-top:2px dashed #CFCABC}
.steps li{display:flex;align-items:center;gap:.6rem;padding:.5rem 0;border-bottom:2px dashed #CFCABC;font-weight:600;font-size:.92rem}
.steps li::before{content:"";width:20px;height:20px;border:var(--bw) solid var(--ink);border-radius:50%;flex:none}
.steps .done::before{background:var(--mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3.2L15 7' fill='none' stroke='%23141414' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.steps .todo{color:#6A6A6A}
.steps .todo::before{border-style:dashed;border-color:#8A8A8A}

/* stickers */
.sticker{position:absolute;width:112px;height:112px;pointer-events:none}
.sticker .edge{fill:var(--ink)}
.sticker .face{stroke:var(--ink);stroke-width:3}
.sticker .face.pink{fill:var(--pink)} .sticker .face.yellow{fill:var(--yellow)} .sticker .face.mint{fill:var(--mint)}
.sticker .ink-line{fill:none;stroke:var(--ink);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.sticker .ink-line.thick{stroke-width:8}
.sticker-a{left:-26px;top:42px;transform:rotate(-18deg)}
.sticker-b{right:3%;bottom:18px;transform:rotate(14deg);width:96px;height:96px}
.sticker-c{left:45%;bottom:-30px;transform:rotate(-8deg);width:88px;height:88px}

/* ---- marquee ---- */
.marquee{background:var(--ink);color:var(--paper);overflow:hidden;border-bottom:var(--bw) solid var(--ink);padding:18px 0}
.track{display:flex;width:max-content;align-items:center;gap:26px;animation:slide 38s linear infinite}
.track span{font:400 1.7rem/1 var(--disp);text-transform:uppercase;white-space:nowrap}
.track i{font-style:normal;font-size:1.35rem;color:var(--yellow)}
.track i:nth-of-type(3n+2){color:var(--pink)} .track i:nth-of-type(3n){color:var(--mint)}
@keyframes slide{to{transform:translateX(-50%)}}

/* ---- sections ---- */
.sect{padding:104px 0;border-bottom:var(--bw) solid var(--ink)}
.eyebrow{display:inline-block;font:700 .82rem/1 var(--mono);text-transform:uppercase;letter-spacing:.12em;
  background:var(--paper);border:var(--bw) solid var(--ink);border-radius:999px;padding:.45rem .8rem;margin-bottom:22px}
h2{font:400 clamp(2rem,4.6vw,3.7rem)/1 var(--disp);text-transform:uppercase;letter-spacing:-.01em;max-width:18ch}
h2 .slab{box-shadow:3px 3px 0 var(--ink)}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:52px}
.tile{border:var(--bw) solid var(--ink);border-radius:var(--r);box-shadow:var(--sh);padding:28px 26px 30px;
  transition:transform .15s ease,box-shadow .15s ease}
.tile:hover{transform:translate(-3px,-3px);box-shadow:8px 8px 0 var(--ink)}
.tile.lav{background:var(--lav)} .tile.pink{background:var(--pink)} .tile.yellow{background:var(--yellow)}
.badge{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--paper);
  border:var(--bw) solid var(--ink);box-shadow:3px 3px 0 var(--ink);margin-bottom:22px}
.badge svg{width:28px;height:28px;fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tile h3{font:800 1.55rem/1.15 var(--ui);letter-spacing:-.02em;margin-bottom:10px}
.tile p{font-size:1.03rem;line-height:1.55}

/* how I report */
.band-yellow{background:var(--yellow)}
.path{list-style:none;margin:52px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:s}
.stepcard{position:relative;background:var(--paper);border:var(--bw) solid var(--ink);border-radius:var(--r);box-shadow:var(--sh);padding:24px 22px 26px}
.stepcard:not(:last-child)::after{content:"";position:absolute;right:-22px;top:46px;width:22px;border-top:3px dashed var(--ink)}
.num{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:var(--bw) solid var(--ink);
  font:400 1.5rem/1 var(--disp);margin-bottom:18px;box-shadow:3px 3px 0 var(--ink)}
.n1{background:var(--lav)} .n2{background:var(--pink)} .n3{background:var(--mint)} .n4{background:var(--sky)}
.stepcard h3{font:800 1.25rem/1.2 var(--ui);margin-bottom:8px}
.stepcard p{font-size:.98rem;line-height:1.55}
.rules{margin-top:30px;background:var(--ink);color:var(--paper);border:var(--bw) solid var(--ink);border-radius:var(--r);
  box-shadow:var(--sh);padding:24px 28px;display:flex;align-items:center;gap:32px;flex-wrap:wrap}
.rules h3{font:400 1.5rem/1 var(--disp);text-transform:uppercase}
.rules ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px 26px}
.rules li{display:flex;align-items:center;gap:.55rem;font-weight:600}
.rules li::before{content:"";width:18px;height:18px;border-radius:50%;border:2px solid var(--paper);background:var(--mint)}
.rules li:nth-child(2)::before{background:var(--pink)} .rules li:nth-child(3)::before{background:var(--yellow)}
.rules li:nth-child(4)::before{background:var(--sky)}

/* open data */
.band-ink{background:var(--ink);color:var(--paper)}
.on-ink{color:var(--paper)}
.eyebrow.on-ink{background:var(--ink);border-color:var(--paper)}
.odgrid{display:grid;grid-template-columns:1fr 1fr;gap:48px 64px;align-items:start}
.heart{display:inline-block;width:.86em;height:.86em;vertical-align:-.06em}
.heart path{fill:var(--pink);stroke:var(--paper);stroke-width:1.3}
.odtext{font-size:1.2rem;line-height:1.6;color:#E6E3DA;margin-top:24px;max-width:40ch}
.why3{display:grid;gap:16px}
.whyc{border:var(--bw) solid var(--paper);border-radius:14px;padding:18px 22px;color:var(--ink);box-shadow:5px 5px 0 #4A4A4A}
.whyc b{display:block;font:400 1.35rem/1.1 var(--disp);text-transform:uppercase;margin-bottom:4px}
.whyc.c1{background:var(--mint)} .whyc.c2{background:var(--sky)} .whyc.c3{background:var(--peach)}
.srcs{grid-column:1/-1}
.srclabel{font:600 .82rem/1.3 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:#BDB8AC;margin-bottom:16px}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px}
.chips li{border:var(--bw) solid var(--ink);border-radius:999px;padding:.5rem 1rem;font-weight:700;font-size:.98rem;color:var(--ink)}
.band-ink .chips li{border-color:var(--paper)}
.k1{background:var(--pink)} .k2{background:var(--yellow)} .k3{background:var(--mint)}
.k4{background:var(--sky)} .k5{background:var(--peach)} .k6{background:var(--lav)}

/* resume */
.resgrid{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;margin-top:48px}
.rescol:only-child{grid-column:1/-1}
.colhead{font:400 1.45rem/1 var(--disp);text-transform:uppercase;margin:0 0 18px}
.rescol .colhead:not(:first-child),.colhead.mt{margin-top:40px}
.timeline{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.job{background:var(--paper);border:var(--bw) solid var(--ink);border-radius:var(--r);box-shadow:var(--sh);padding:20px 22px}
.when{font:600 .82rem/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:#5A5A5A;margin-bottom:8px}
.job h4{font:800 1.2rem/1.3 var(--ui)}
.job h4 span{font-weight:600;color:var(--ink-2)}
.job ul{margin:10px 0 0;padding-left:1.2em}
.job li{margin:.2em 0}
.chips.light li{font-size:.92rem}
.plain{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.plain li span{font-family:var(--mono);font-size:.85rem;color:#5A5A5A}
.repgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.repcard{border:var(--bw) solid var(--ink);border-radius:var(--r);box-shadow:var(--sh);padding:18px 20px}
.repmeta{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.repcard .sev{background:var(--paper)}
.yr{font:600 .85rem/1 var(--mono)}
.repcard h4{font:800 1.12rem/1.3 var(--ui);margin-bottom:6px}
.repcard .status{font:600 .82rem/1.3 var(--mono);text-transform:uppercase;letter-spacing:.06em;margin-top:10px}

/* contact */
.band-pink{background:var(--pink)}
.contact{text-align:center}
.contact h2{margin:0 auto;max-width:20ch}
.contact .sub{margin:26px auto 0;max-width:46ch;color:var(--ink)}

/* ---- footer ---- */
.foot{padding:30px 0 40px}
.footin{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.foot p{font-weight:600}
.foot p span{margin:0 .35em}
.foot .quiet{margin-left:auto;color:#555;font-weight:500}

/* ---- responsive ---- */
@media(max-width:1060px){
  .herogrid{grid-template-columns:1fr;gap:56px}
  .heroart{max-width:620px;width:100%}
  .path{grid-template-columns:repeat(2,1fr)}
  .stepcard:nth-child(2)::after{display:none}
  .repgrid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
  .nav{display:none}
  .cards3{grid-template-columns:1fr}
  .odgrid{grid-template-columns:1fr}
  .resgrid{grid-template-columns:1fr}
  .sticker-c{display:none}
}
@media(max-width:560px){
  body{font-size:16px}
  .wrap{padding:0 16px}
  .topin{height:62px;gap:.8rem}
  .brandname{font-size:1rem}
  .hero{padding:52px 0 64px}
  h1{font-size:clamp(2.1rem,11.4vw,3.2rem)}
  .lead{font-size:1.15rem;margin-top:22px}
  .sub{font-size:1.05rem}
  .heroart{min-height:0;display:grid;gap:22px}
  .win{position:relative;inset:auto;width:auto}
  .term{order:2}
  .log{font-size:.8rem;padding:14px}
  .sticker{width:74px;height:74px}
  .sticker-a{left:auto;right:-22px;top:-8px;width:66px;height:66px}
  .sticker-b{display:none}
  .sect{padding:68px 0}
  .path{grid-template-columns:1fr}
  .stepcard::after{display:none}
  .repgrid{grid-template-columns:1fr}
  .track span{font-size:1.3rem}
  .rules{padding:20px}
  .foot .quiet{margin-left:0;width:100%}
  .btn{padding:.85rem 1.1rem}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .track{animation:none}
  .btn,.tile{transition:none}
}

/* ======================= free WHOIS ======================= */
.band-mint{background:var(--mint)}
.toolgrid{display:grid;grid-template-columns:1fr 1fr;gap:40px 56px;align-items:center}
.toolgrid .sub{margin-top:22px}
.lookup{background:var(--paper);border:var(--bw) solid var(--ink);border-radius:var(--r);box-shadow:var(--sh);padding:22px 22px 18px}
.lookup label{display:block;font:700 .82rem/1 var(--mono);text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}
.lrow{display:flex;gap:12px}
.lookup input{flex:1 1 auto;min-width:0;height:56px;padding:0 16px;border:var(--bw) solid var(--ink);border-radius:12px;
  background:var(--cream);font:600 1.08rem/1 var(--mono);color:var(--ink)}
.lookup input::placeholder{color:#6B6B6B;font-weight:500}
.lookup input:focus{outline:none;box-shadow:0 0 0 4px var(--yellow)}
.lookup .btn{height:56px;flex:none}
.try{margin-top:14px;font-size:.92rem;color:var(--ink-2)}
.try a{display:inline-block;margin:0 .25rem .3rem 0;padding:.2rem .6rem;border:1.5px solid var(--ink);border-radius:999px;
  font:600 .82rem/1.4 var(--mono);text-decoration:none;background:var(--cream)}
.try a:hover{background:var(--yellow)}
.toolhero{background:var(--lav);border-bottom:var(--bw) solid var(--ink);padding:64px 0 72px}
.toolh1{font-size:clamp(2.2rem,5.4vw,4.4rem);line-height:.98;max-width:16ch}
.toolhero .sub{margin:24px 0 30px}
.lookup.big{max-width:880px;padding:26px}
.lookup.big input{height:62px;font-size:1.2rem}
.lookup.big .btn{height:62px}
.formfoot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 18px}
.meter{margin-top:14px;font-size:.9rem;color:var(--ink-2)}
.meter b{font-family:var(--disp);font-weight:400;font-size:1.05rem;color:var(--ink)}
.result{margin-top:34px;max-width:880px}
.answer{position:relative;background:var(--paper);border:var(--bw) solid var(--ink);border-radius:14px;box-shadow:7px 7px 0 var(--ink);overflow:hidden}
.answer.oops,.answer.limit{padding:20px 24px}
.answer.oops{background:var(--peach)} .answer.limit{background:var(--yellow)}
.answer .ah{font:400 1.3rem/1.1 var(--disp);text-transform:uppercase;margin-bottom:6px}
.answer .bar{background:var(--cream)}
.answer .bar .via{text-transform:none;letter-spacing:0;font-weight:500;opacity:.75}
.ab{padding:22px 24px 24px}
.atitle{font:400 clamp(1.6rem,3.6vw,2.4rem)/1.05 var(--disp);text-transform:uppercase;overflow-wrap:anywhere}
.codes .term{order:0}
.answer.free .verdict{margin-top:10px;font-weight:700;font-size:1.1rem}
.answer.free{background:var(--mint)} .answer.free .bar{background:var(--paper)}
.asked{margin-top:8px;font:500 .88rem/1.4 var(--mono);color:#555}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:18px 0 0}
.fact{padding:12px 0;border-top:2px dashed #D6D0C2;min-width:0}
.fact dt{font:600 .74rem/1 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:#5A5A5A;margin-bottom:6px}
.fact dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.fact dd a{color:inherit}
.rel{font-weight:500;color:#5A5A5A;font-size:.9rem}
.cc{display:inline-block;font:700 .72rem/1 var(--mono);padding:.25rem .45rem;border:1.5px solid var(--ink);border-radius:6px;background:var(--lav-2);vertical-align:1px}
.ok{color:var(--green)}
.muted{color:#5A5A5A;font-weight:500}
.ns{list-style:none;margin:0;padding:0;font:500 .9rem/1.6 var(--mono)}
.tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.tags li{font:600 .76rem/1 var(--mono);padding:.35rem .55rem;border:1.5px solid var(--ink);border-radius:999px;background:var(--cream)}
.raw{margin-top:20px;border:var(--bw) solid var(--ink);border-radius:12px;overflow:hidden}
.raw summary{cursor:pointer;padding:.7rem 1rem;font:700 .85rem/1.3 var(--mono);background:var(--cream)}
.raw[open] summary{border-bottom:var(--bw) solid var(--ink)}
.raw pre{margin:0;max-height:420px;overflow:auto;padding:14px 16px;background:#1B1A22;color:#EDEAF7;font:500 .78rem/1.5 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere}
.apigrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
.apigrid .sub{margin-top:22px}
.apifacts{margin:26px 0 0;padding:0;list-style:none;display:grid;gap:14px}
.apifacts li{padding-left:28px;position:relative}
.apifacts li::before{content:"";position:absolute;left:0;top:.35em;width:16px;height:16px;border-radius:50%;border:2px solid var(--ink);background:var(--mint)}
code{font:500 .9em/1 var(--mono);background:var(--lav-2);padding:.12em .35em;border-radius:5px;border:1px solid rgba(20,20,20,.2)}
.codes{display:grid;gap:22px}
.win.code{position:relative;inset:auto;width:auto}
.win.code pre{margin:0;padding:16px 18px;overflow-x:auto;font:500 .84rem/1.6 var(--mono)}
.win.card.code pre{color:var(--ink)}
.c-dim{color:#8F89AE}
.slim{padding:64px 0}
.qa{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.qa > div{background:var(--paper);border:var(--bw) solid var(--ink);border-radius:var(--r);box-shadow:var(--sh);padding:20px 22px}
.qa h3{font:800 1.15rem/1.25 var(--ui);margin-bottom:8px}
.qa p{font-size:.98rem}
.nav a[aria-current="page"]{background:var(--ink);color:var(--paper)}
@media(max-width:1060px){.apigrid{grid-template-columns:1fr}.qa{grid-template-columns:1fr}}
@media(max-width:820px){.toolgrid{grid-template-columns:1fr}.facts{grid-template-columns:1fr}}
@media(max-width:560px){
  .lrow{flex-direction:column}
  .lookup .btn{width:100%;justify-content:center}
  .lookup,.lookup.big{padding:18px 16px}
  .toolhero{padding:40px 0 52px}
  .ab{padding:18px 16px 20px}
  .formfoot{display:block}
}

/* owner and contact cards */
.contacts{margin-top:24px}
.chead{font:400 1.3rem/1 var(--disp);text-transform:uppercase;margin:0 0 14px}
.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.ccard{border:var(--bw) solid var(--ink);border-radius:14px;padding:16px 18px;box-shadow:4px 4px 0 var(--ink);background:var(--cream);min-width:0}
.ccard.r-registrant{background:#FFE0F7} .ccard.r-admin{background:var(--lav-2)} .ccard.r-tech{background:#D6F6E8}
.ccard.r-billing{background:#FFE3D2} .ccard.r-abuse{background:#FFE0DB} .ccard.r-noc{background:#DCEEFF}
.ccard.r-routing{background:#FFF1BF} .ccard.r-reseller{background:var(--paper)}
.crole{font:700 .72rem/1 var(--mono);text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}
.cflag{display:inline-block;font:700 .68rem/1 var(--mono);text-transform:uppercase;letter-spacing:.06em;padding:.3rem .55rem;
  border:1.5px solid var(--ink);border-radius:999px;background:var(--yellow);margin-bottom:10px}
.cname{font-weight:800;font-size:1.04rem;line-height:1.3;overflow-wrap:anywhere}
.cline{margin-top:3px;font-size:.95rem;overflow-wrap:anywhere}
.caddr{margin-top:8px;font-style:normal;font-size:.93rem;line-height:1.45;overflow-wrap:anywhere}
.cmeta{margin-top:10px;font:500 .84rem/1.6 var(--mono);overflow-wrap:anywhere}
.cmeta a{color:inherit}
.chandle{color:#555}
.chidden{color:#4A4A4A;font-weight:500;font-size:.95rem}
