/* Funbit. Left rail + wide colour bands. System fonts only: fast, and nothing is sent to third parties. */
:root{
  --paper:#f7f5ff; --ink:#1b1640; --violet:#5a36e8; --sun:#ffc93c; --mist:#e8e2fa; --line:#d8d0f3; --mute:#58527d;
  --rail:16.5rem; --gut:clamp(1.5rem,5vw,4.5rem);
  --round:ui-rounded,"SF Pro Rounded","Arial Rounded MT Bold","Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --text:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:linear-gradient(to right,var(--ink) var(--rail),var(--paper) var(--rail));color:var(--ink);font:1.0625rem/1.65 var(--text);display:grid;grid-template-columns:var(--rail) minmax(0,1fr);min-height:100vh}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--violet)}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--violet);outline-offset:3px}
.skip{position:absolute;left:-999px;top:0;background:var(--sun);color:var(--ink);padding:.6rem 1rem;z-index:30}
.skip:focus{left:1rem;top:1rem}

/* rail */
.rail{position:sticky;top:0;height:100vh;background:var(--ink);color:var(--paper);display:flex;flex-direction:column;padding:2rem 1.75rem 1.75rem;overflow-y:auto}
.rail :focus-visible{outline-color:var(--sun)}
.brand{display:flex;align-items:center;gap:.7rem;color:var(--paper);text-decoration:none;font:800 1.7rem/1 var(--round);letter-spacing:-.02em}
.brand:hover{color:var(--paper)}
.brand svg{width:2.1rem;height:2.1rem;flex:none}
.menu-btn{display:none}
.nav{margin:3.2rem 0 0}
.nav ul{margin:0;padding:0;list-style:none}
.nav a{display:flex;align-items:center;gap:.8rem;padding:.55rem 0;color:#cfc9ee;text-decoration:none;font:600 1.1rem/1.3 var(--round)}
.nav a::before{content:"";width:.6rem;height:.6rem;background:#3a3470;flex:none}
.nav a:hover{color:#fff}
.nav a:hover::before{background:var(--violet)}
.nav a[aria-current="page"]{color:#fff}
.nav a[aria-current="page"]::before{background:var(--sun)}
.lang{margin-top:auto;display:flex;gap:1.2rem;font:700 .95rem/1 var(--round)}
.lang a{color:#9d96cf;text-decoration:none;padding:.4rem 0}
.lang a:hover{color:#fff}
.lang [aria-current]{color:var(--sun)}

/* sections */
main{min-width:0;flex:1}
.col{min-width:0;display:flex;flex-direction:column}
.sec{padding:clamp(3rem,6vw,5.5rem) var(--gut)}
.sec.mist{background:var(--mist)}
.sec.violet{background:var(--violet);color:#fff}
.in{max-width:44rem}
.in.wide{max-width:60rem}
h1,h2,h3{font-family:var(--round);font-weight:800;letter-spacing:-.025em;line-height:1.08;margin:0 0 .5em}
h1{font-size:clamp(2.5rem,5.6vw,4.6rem)}
h2{font-size:clamp(1.8rem,3.4vw,2.7rem)}
h3{font-size:1.3rem;letter-spacing:-.01em;line-height:1.2}
p{margin:0 0 1.1em}
.lead{font-size:1.28rem;line-height:1.55;max-width:34em}
.muted{color:var(--mute)}
.sec.violet a{color:#fff}

/* buttons */
.actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2rem}
.btn{display:inline-block;font:700 1.05rem/1 var(--round);padding:1rem 1.6rem;border-radius:.4rem;border:2px solid var(--violet);background:var(--violet);color:#fff;text-decoration:none;cursor:pointer}
.btn:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.btn.line{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.line:hover{background:var(--ink);color:#fff}
.btn.sun{background:var(--sun);border-color:var(--sun);color:var(--ink)}
.btn.sun:hover{background:#fff;border-color:#fff;color:var(--ink)}

/* hero art */
.hero-art{margin-top:3rem;max-width:42rem}

/* what we do: plain rows, no cards */
.rows{display:grid;gap:2.2rem;margin-top:2.4rem}
.row{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:1rem 2rem;align-items:baseline}
.row h3{margin:0;display:flex;align-items:center;gap:.7rem}
.row h3::before{content:"";width:.7rem;height:.7rem;background:var(--sun);outline:2px solid var(--ink);outline-offset:-2px;flex:none}
.row p{margin:0;max-width:34em}

/* domains for sale */
.dlist{list-style:none;margin:2rem 0 0;padding:0}
.dlist li{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto;align-items:baseline;gap:.4rem 1.5rem;padding:1.1rem 1rem;margin:0 -1rem}
.dlist li:nth-child(odd){background:var(--mist)}
.dname{font:600 1.35rem/1.3 var(--mono);color:var(--ink)}
.dprice{color:var(--mute)}
.dlist a{font-weight:700}
.empty{border-left:.7rem solid var(--sun);padding:.4rem 0 .4rem 1.4rem;margin-top:2rem;max-width:36em}
.empty p:last-child{margin:0}

.steps{counter-reset:s;list-style:none;margin:1.6rem 0 0;padding:0;display:grid;gap:1.1rem}
.steps li{counter-increment:s;display:grid;grid-template-columns:2.4rem 1fr;gap:1rem;align-items:baseline}
.steps li::before{content:counter(s);font:800 1.4rem/1 var(--round);color:var(--violet)}

/* contact form */
.form{max-width:36rem}
.f{margin-bottom:1.3rem}
.f label{display:block;font:700 .98rem/1.3 var(--round);margin-bottom:.4rem}
.f input,.f textarea{width:100%;font:inherit;color:var(--ink);background:#fff;border:2px solid #b9aee8;border-radius:.4rem;padding:.8rem .9rem}
.f input:focus,.f textarea:focus{outline:3px solid var(--sun);outline-offset:0;border-color:var(--ink)}
.f textarea{min-height:11rem;resize:vertical}
.f.sum{max-width:15rem}
.f .hint{font-size:.92rem;color:var(--mute);margin:.4rem 0 0}
.note{padding:1rem 1.2rem;border-left:.7rem solid var(--violet);background:var(--mist);margin-bottom:1.8rem;font-weight:600}
.note.err{border-left-color:#c2271d;background:#fbe9e7}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* footer */
.foot{padding:2rem var(--gut);border-top:2px solid var(--ink);color:var(--mute);font-size:.98rem;display:flex;flex-wrap:wrap;gap:.5rem 2rem;justify-content:space-between}
.foot a{color:var(--mute)}

@media (max-width:880px){
  body{display:block;background:var(--paper)}
  .rail{position:relative;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:1rem var(--gut)}
  .brand{font-size:1.45rem}
  .menu-btn{display:block;background:transparent;border:2px solid #4b4486;border-radius:.4rem;color:var(--paper);font:700 .95rem/1 var(--round);padding:.65rem .95rem;cursor:pointer}
  .nav{display:none;order:3;width:100%;margin:1rem 0 0}
  .nav.open{display:block}
  .lang{display:none;order:4;margin:.8rem 0 .2rem;width:100%}
  .nav.open + .lang{display:flex}
  .row{grid-template-columns:1fr}
  .dlist li{grid-template-columns:1fr}
  .dlist li{margin:0 calc(var(--gut) * -1);padding-left:var(--gut);padding-right:var(--gut)}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
