/* =============================================================================
   BoardIt "pro" satellite pages (LIVE, D97) — /inquire/, /thanks/, /privacy/
   in the landing's aesthetic. Tokens mirror /pro.css; fonts self-hosted (D64).
   ============================================================================= */
@font-face{
  font-family:'Manrope';
  src:url('/shared/fonts/manrope-var.woff2') format('woff2');
  font-weight:200 800; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'Inter';
  src:url('/shared/fonts/inter-var.woff2') format('woff2');
  font-weight:100 900; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'JetBrains Mono';
  src:url('/shared/fonts/jbmono-var.woff2') format('woff2');
  font-weight:100 800; font-style:normal; font-display:swap;
}
:root{
  --bg:#08090c; --panel:#0e0f14; --line:#1f222a; --line-2:#2b2f3a;
  --text:#eef1f6; --dim:#9aa3b3; --dim2:#626a78;
  --blue:#0e3fe6; --blue-up:#5b7cff; --ink:#0a0c12;
  --glow:rgba(91,124,255,.55);
  --shell-grad:
    radial-gradient(70% 52% at 16% 0%, rgba(255,255,255,.8), transparent 68%),
    radial-gradient(60% 55% at 85% 20%, rgba(228,236,255,.65), transparent 72%),
    radial-gradient(70% 60% at 30% 95%, rgba(130,160,255,.5), transparent 74%),
    linear-gradient(135deg, #f6f8ff 10%, #dfe8ff 34%, #5b7cff 64%, #0e3fe6 90%);
  --display:'Inter',-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --font:'Manrope',-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,'Cascadia Mono',Consolas,Menlo,monospace;
}
*{box-sizing:border-box;}
body{
  margin:0; font-family:var(--font); background:var(--bg); color:var(--text);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  min-height:100vh; display:flex; flex-direction:column;
}
/* the family signature: a thin slice of the hero gradient along the top */
.strip{height:4px; background:var(--shell-grad); flex:none;}
.wm{font-family:Arial,Helvetica,sans-serif; display:inline-flex; align-items:center; white-space:nowrap; font-weight:800;}
.wm-it{display:inline-flex; align-items:center; justify-content:center; line-height:1;
  background:#fff; color:#08090c; border-radius:.16em; padding:.1em .18em .15em; margin-left:.05em;}
/* ---- nav (inquire / thanks / privacy) ---- */
nav{
  display:flex; align-items:center; justify-content:space-between;
  padding:20px clamp(24px,3.4vw,56px); max-width:1760px; margin:0 auto; width:100%;
}
.brand{display:flex; align-items:center; gap:11px; font-size:23px; color:var(--text); text-decoration:none;}
.brand svg{width:32px; height:32px; display:block;}
.nav-right{display:flex; align-items:center; gap:12px;}
.nav-ghost{
  font-size:14px; font-weight:800; color:var(--text); text-decoration:none;
  border:1.5px solid var(--line-2); border-radius:10px; padding:9px 18px;
  transition:border-color .14s ease, background .14s ease;
}
.nav-ghost:hover{border-color:var(--blue-up); background:rgba(91,124,255,.08);}
.nav-cta{
  font-size:14px; font-weight:800; color:var(--ink); background:#fff; text-decoration:none;
  border-radius:10px; padding:10px 18px; transition:opacity .14s ease;
}
.nav-cta:hover{opacity:.85;}
/* ---- shared type ---- */
.kicker{
  font-family:var(--mono); font-size:12.5px; font-weight:600; letter-spacing:.26em;
  text-transform:uppercase; color:var(--blue-up); margin:0 0 18px;
  display:flex; align-items:center; gap:12px;
}
.kicker .rb{width:12px; height:12px; border-radius:3.5px; flex:none; border:1px solid var(--line-2);
  background:linear-gradient(to bottom right, #fff 50%, #2b3244 50%);}
h1{
  font-family:var(--display); letter-spacing:-0.04em; font-weight:600;
  font-size:clamp(34px,4.6vw,56px); line-height:1.02; margin:0 0 14px; text-wrap:balance;
}
.sub{font-size:17px; font-weight:600; color:var(--dim); line-height:1.6; margin:0 0 34px; max-width:52ch;}
/* ---- the glow card (auth / login / inquire form) ---- */
.card-wrap{position:relative;}
.card-wrap::before{
  content:""; position:absolute; inset:-90px -120px; pointer-events:none;
  background:radial-gradient(46% 42% at 50% 42%, rgba(91,124,255,.17), transparent 70%);
}
.card{
  position:relative; background:linear-gradient(180deg,#10131d,#0c0d13);
  border:1px solid rgba(91,124,255,.4); border-radius:18px; padding:30px 30px 28px;
  box-shadow:0 0 70px -22px var(--glow), 0 0 0 1px rgba(91,124,255,.1) inset;
}
/* ---- form furniture ---- */
.field{margin-bottom:18px;}
.field label{
  display:block; font-family:var(--mono); font-size:11.5px; font-weight:600;
  letter-spacing:.18em; text-transform:uppercase; color:var(--dim2); margin-bottom:9px;
}
.field label .opt{color:var(--dim2); text-transform:none; letter-spacing:.04em;}
.field input, .field textarea{
  width:100%; background:#0a0b10; border:1.5px solid var(--line-2); border-radius:12px;
  padding:13px 15px; font-family:var(--font); font-size:16.5px; font-weight:600;
  color:var(--text); outline:none; transition:border-color .14s ease, box-shadow .14s ease;
}
.field textarea{min-height:110px; resize:vertical;}
.field input:focus, .field textarea:focus{
  border-color:var(--blue-up); box-shadow:0 0 0 4px rgba(91,124,255,.16);
}
.field input::placeholder, .field textarea::placeholder{color:var(--dim2); font-weight:600;}
.btn-primary{
  display:flex; width:100%; align-items:center; justify-content:center; gap:9px;
  min-height:54px; background:#fff; color:var(--ink); border:0; border-radius:13px;
  font-family:var(--font); font-size:16.5px; font-weight:800; letter-spacing:-0.01em;
  cursor:pointer; text-decoration:none; transition:opacity .14s ease, transform .1s ease;
}
.btn-primary:hover{opacity:.87;} .btn-primary:active{transform:scale(.985);}
.btn-link{
  display:block; width:100%; margin-top:14px; background:none; border:0; cursor:pointer;
  font-family:var(--font); font-size:14.5px; font-weight:700; color:var(--dim);
  text-decoration:underline; text-underline-offset:3px; text-decoration-color:var(--line-2);
}
.btn-link:hover{color:var(--text);}
.form-note{
  font-family:var(--mono); font-size:11.5px; font-weight:600; letter-spacing:.06em;
  color:var(--dim2); line-height:1.7; margin:18px 0 0;
}
.form-error{display:none; font-size:14.5px; font-weight:700; color:#ff8896; margin:0 0 14px;}
.code-hint{font-size:14px; font-weight:600; color:var(--dim); line-height:1.55; margin:9px 0 0;}
/* ---- centered auth column (auth / login) ---- */
.auth-wrap{
  flex:1; width:100%; max-width:470px; margin:0 auto; padding:24px;
  display:flex; flex-direction:column; justify-content:center; gap:22px;
}
.auth-brand{display:flex; align-items:center; gap:12px; font-size:34px;}
.auth-brand svg{width:44px; height:44px; display:block;}
.auth-msg{font-size:19.5px; font-weight:700; line-height:1.5; margin:0;}
.auth-msg .dim{display:block; margin-top:6px; color:var(--dim); font-weight:600; font-size:15.5px;}
.auth-actions{margin-top:22px;}
.store-badge{display:inline-flex; border-radius:12px;}
.store-badge:active{transform:scale(.98);}
.auth-alt{
  display:block; margin-top:16px; font-size:14.5px; font-weight:700; color:var(--dim);
  text-decoration:underline; text-underline-offset:3px; text-decoration-color:var(--line-2);
  text-align:center;
}
.handoff{text-align:center;}
.store-pill{
  display:inline-flex; align-items:center; gap:10px; font-size:16px; font-weight:800;
  color:#fff; background:#111110; border:1px solid var(--line-2); text-decoration:none;
  padding:13px 22px; border-radius:12px;
}
/* ---- page bodies ---- */
main{flex:1; width:100%;}
.inq-main{max-width:560px; margin:0 auto; padding:56px 24px 90px;}
.prose{max-width:680px; margin:0 auto; padding:56px 24px 90px;}
.prose h2{
  font-family:var(--display); letter-spacing:-0.03em; font-size:clamp(21px,3vw,26px);
  font-weight:600; line-height:1.15; margin:46px 0 12px;
}
.prose p{font-size:16.5px; font-weight:600; line-height:1.65; color:var(--dim); margin:0 0 16px;}
.prose ul{margin:0 0 16px; padding-left:22px;}
.prose li{font-size:16.5px; font-weight:600; line-height:1.65; color:var(--dim); margin:0 0 10px;}
.prose p b, .prose li b{font-weight:800; color:var(--text);}
.prose a.mail{color:var(--text); font-weight:800; text-decoration:underline;
  text-underline-offset:3px; text-decoration-color:var(--line-2);}
.prose a.mail:hover{text-decoration-color:var(--dim);}
.effective{
  font-family:var(--mono); font-size:12.5px; font-weight:600; letter-spacing:.14em;
  text-transform:uppercase; color:var(--dim2); margin:0 0 34px;
}
/* ---- footer ---- */
footer{border-top:1px solid var(--line); padding:30px 0; flex:none;}
footer .fwrap{
  max-width:1760px; margin:0 auto; padding:0 clamp(24px,3.4vw,56px);
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
}
.foot-brand{display:flex; align-items:center; gap:10px; font-size:19px;}
.foot-brand svg{width:26px; height:26px; display:block;}
.foot-meta{font-family:var(--mono); font-size:12px; font-weight:600; letter-spacing:.08em; color:var(--dim2);}
.foot-meta a{color:var(--dim2); text-decoration:none;}
.foot-meta a:hover{color:var(--text);}
/* the sandbox state switcher (mockup-only chrome, never ships) */
.mockbar{
  position:fixed; right:14px; bottom:14px; z-index:9; display:flex; gap:7px;
  background:rgba(14,15,20,.9); border:1px solid var(--line-2); border-radius:12px; padding:8px;
}
.mockbar button{
  font-family:var(--mono); font-size:10.5px; font-weight:600; letter-spacing:.06em;
  color:var(--dim); background:none; border:1px solid var(--line-2); border-radius:8px;
  padding:6px 9px; cursor:pointer;
}
.mockbar button.on{color:#fff; border-color:var(--blue-up); background:rgba(91,124,255,.16);}

