:root{
  --cyan:#66FFFF;
  --cyan-soft:#9bfdff;
  --cyan-2:#2E5C5C;
  --cyan-dim:#234a4b;
  --bg:#062023;
  --panel:#0b2a2d;
  --panel-2:#0e3034;
  --panel-h:#123a3e;
  --line:rgba(102,255,255,.12);
  --line-2:rgba(102,255,255,.18);
  --txt:#e9fbfa;
  --muted:#8fbcb8;
  --faint:#5f8884;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --maxw:560px;
  --ease:cubic-bezier(.2,.7,.2,1);
}

*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;text-size-adjust:100%}

body{
  font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  font-weight:400;color:var(--txt);line-height:1.55;
  min-height:100vh;min-height:100dvh;
  display:flex;justify-content:center;
  -webkit-tap-highlight-color:transparent;overflow-x:hidden;
  background:
    radial-gradient(880px 520px at 50% -8%, rgba(102,255,255,.14), transparent 60%),
    radial-gradient(620px 620px at 110% 115%, rgba(102,255,255,.06), transparent 60%),
    linear-gradient(180deg,#073034 0%, #062023 55%, #041719 100%);
  background-attachment:fixed;
  padding:max(54px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) calc(70px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));
}

/* scattered NONOS logomarks in the background */
.bg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.bg i{
  position:absolute;display:block;background:var(--cyan);
  -webkit-mask:url(assets/nonos-logomark.svg) center/contain no-repeat;
          mask:url(assets/nonos-logomark.svg) center/contain no-repeat;
}
.bg .m1{width:360px;height:360px;top:-70px;left:-90px;opacity:.05;transform:rotate(-10deg)}
.bg .m2{width:200px;height:200px;top:22%;right:-56px;opacity:.045;transform:rotate(9deg)}
.bg .m3{width:460px;height:460px;bottom:-150px;left:-140px;opacity:.045;transform:rotate(6deg)}
.bg .m4{width:150px;height:150px;bottom:16%;right:9%;opacity:.05;transform:rotate(-6deg)}
.bg .m5{width:120px;height:120px;top:11%;left:42%;opacity:.035;transform:rotate(14deg)}
.bg .m6{width:240px;height:240px;top:54%;left:-70px;opacity:.04;transform:rotate(-4deg)}

.wrap{width:100%;max-width:var(--maxw);position:relative;z-index:1}

/* masthead */
.top{display:flex;align-items:center;gap:14px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.logo{height:30px;width:auto;display:block;flex:0 0 auto}
.tag{margin-left:auto;font-family:var(--mono);font-size:10px;letter-spacing:2.4px;color:var(--cyan);opacity:.8;text-transform:uppercase}

/* hero */
.lede{padding:36px 0 4px}
.lede h1{font-weight:600;font-size:clamp(25px,7.5vw,32px);line-height:1.15;letter-spacing:-.4px}
.lede h1 b{color:var(--cyan);font-weight:600}
.lede p{margin-top:15px;color:var(--muted);font-weight:300;font-size:14px;max-width:480px}

/* contract */
.ca{
  margin:26px 0 2px;border:1px solid var(--line-2);border-radius:14px;
  background:linear-gradient(180deg,var(--panel-2),var(--panel));
  display:flex;align-items:center;gap:12px;padding:14px 15px;
  box-shadow:inset 0 0 24px -16px rgba(102,255,255,.5);
}
.ca .k{font-family:var(--mono);font-size:10px;letter-spacing:1px;color:var(--cyan);text-transform:uppercase;flex:0 0 auto}
.ca .v{font-family:var(--mono);font-size:12px;color:var(--txt);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ca button{
  font-family:"Poppins",sans-serif;font-weight:500;font-size:12px;color:var(--cyan-soft);
  background:rgba(102,255,255,.06);border:1px solid var(--line-2);border-radius:9px;padding:7px 15px;cursor:pointer;
  transition:background .16s var(--ease),border-color .16s var(--ease);flex:0 0 auto;min-height:34px;
}
.ca button:hover,.ca button:active{background:rgba(102,255,255,.14);border-color:var(--cyan-2)}

/* sections */
section{margin-top:34px}
.sh{
  font-family:var(--mono);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--cyan);opacity:.85;
  padding-bottom:12px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:9px;
}
.sh::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px rgba(102,255,255,.8)}

a.row{
  display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--txt);
  padding:13px 8px;border-bottom:1px solid var(--line);border-radius:12px;
  transition:background .16s var(--ease),transform .16s var(--ease),padding .16s var(--ease);
}
a.row:last-child{border-bottom:none}
@media(hover:hover){
  a.row:hover{background:var(--panel-h);padding-left:13px;padding-right:13px;border-bottom-color:transparent}
  a.row:hover .ico{border-color:var(--cyan-2);color:var(--cyan);background:rgba(102,255,255,.10);box-shadow:0 0 24px -8px rgba(102,255,255,.7)}
  a.row:hover .x{color:var(--cyan);transform:translate(2px,-2px)}
}
a.row:active{background:var(--panel-h);transform:scale(.99)}

.ico{
  width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;
  border:1px solid var(--line-2);border-radius:12px;background:rgba(102,255,255,.04);color:var(--muted);
  transition:color .16s var(--ease),border-color .16s var(--ease),background .16s var(--ease),box-shadow .16s var(--ease);
}
.ico::before{
  content:"";width:22px;height:22px;background:currentColor;
  -webkit-mask:url(assets/nonos-logomark.svg) center/contain no-repeat;
          mask:url(assets/nonos-logomark.svg) center/contain no-repeat;
}
.b{min-width:0;flex:1;display:flex;flex-direction:column}
.t{font-weight:500;font-size:14.5px;letter-spacing:.1px}
.s{font-weight:300;font-size:12.5px;color:var(--muted);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.x{font-family:var(--mono);font-size:13px;color:var(--faint);flex:0 0 auto;transition:color .16s var(--ease),transform .16s var(--ease)}

.note{
  margin-top:40px;border:1px solid var(--line-2);border-radius:14px;
  background:linear-gradient(180deg,var(--panel-2),var(--panel));
  padding:16px 18px;box-shadow:inset 0 0 24px -16px rgba(102,255,255,.5);
}
.note-h{
  display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:1.4px;
  text-transform:uppercase;color:var(--cyan);margin-bottom:9px;
}
.note-h svg{width:15px;height:15px}
.note p{font-weight:300;font-size:12.5px;line-height:1.6;color:var(--muted)}
.note a{color:var(--cyan-soft);text-decoration:none;border-bottom:1px solid var(--cyan-2)}
.note a:hover{color:var(--cyan)}

footer{
  margin-top:30px;padding-top:20px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;
}
footer .c{font-weight:300;font-size:12px;color:var(--faint)}
footer .m{font-family:var(--mono);font-size:10.5px;color:var(--faint);letter-spacing:.4px}

.toast{
  position:fixed;left:50%;bottom:calc(26px + env(safe-area-inset-bottom));transform:translate(-50%,18px);
  background:var(--cyan);color:#04181a;font-weight:600;font-size:12.5px;padding:10px 18px;border-radius:9px;
  opacity:0;transition:opacity .22s var(--ease),transform .22s var(--ease);pointer-events:none;z-index:10;
  box-shadow:0 8px 30px -10px rgba(102,255,255,.7);
}
.toast.on{opacity:1;transform:translate(-50%,0)}

@media(max-width:430px){
  .lede{padding-top:30px}
  .s{font-size:12px}
  .ca .v{font-size:11px}
  footer{justify-content:center;text-align:center}
  .bg .m1,.bg .m3,.bg .m6{opacity:.035}
}
