/* ==========================================================================
   Document pages (privacy, support)
   Same brand, no WebGL — these need to be readable, printable and crawlable.
   ========================================================================== */

body.doc{
  background:var(--ink);
  overflow-x:hidden;
}

/* the journey's header is fixed over a canvas; here it just sits on the page */
.hdr--doc{
  position:sticky;top:0;
  background:rgba(5,5,6,.86);
  backdrop-filter:saturate(180%) blur(18px);
  -webkit-backdrop-filter:saturate(180%) blur(18px);
  border-bottom:1px solid rgba(255,255,255,.07);
  mix-blend-mode:normal;
}

.doc__wrap{
  max-width:min(72ch, calc(100vw - var(--gutter) * 2));
  margin-inline:auto;
  padding:clamp(40px,7vh,84px) 0 clamp(56px,8vh,96px);
}

.doc__back{
  display:inline-block;margin-bottom:2.4rem;
  font-size:.84rem;color:var(--muted);
  transition:color .3s var(--ease);
}
.doc__back:hover{color:var(--yellow)}

.doc__wrap h1{
  font-family:'Archivo',sans-serif;font-weight:800;
  font-size:clamp(2.1rem,5.2vw,3.4rem);
  line-height:1;letter-spacing:-.035em;text-transform:uppercase;
  margin:0 0 2rem;
}
.doc__wrap h2{
  font-family:'Archivo',sans-serif;font-weight:700;
  font-size:clamp(1.15rem,2.1vw,1.45rem);letter-spacing:-.02em;
  margin:2.8rem 0 .9rem;padding-top:1.6rem;
  border-top:1px solid rgba(255,255,255,.09);
}
.doc__wrap h3{
  font-family:'Inter',sans-serif;font-weight:600;
  font-size:1rem;letter-spacing:-.01em;color:var(--text);
  margin:1.8rem 0 .5rem;
}
.doc__wrap p,
.doc__wrap li{
  font-size:.95rem;line-height:1.72;color:#C2C2CA;margin:0 0 1rem;
}
.doc__wrap strong{color:var(--text);font-weight:600}
.doc__wrap ul,.doc__wrap ol{margin:0 0 1.3rem;padding-left:1.25rem}
.doc__wrap li{margin-bottom:.5rem}
.doc__wrap li::marker{color:var(--muted)}

.doc__wrap a{
  color:var(--yellow);
  border-bottom:1px solid rgba(255,196,0,.35);
  transition:border-color .3s var(--ease);
  word-break:break-word;
}
.doc__wrap a:hover{border-bottom-color:var(--yellow)}
.doc__back,.doc__cta a{border-bottom:0}

.doc__lede{
  font-size:clamp(1rem,1.5vw,1.14rem) !important;
  line-height:1.6 !important;color:var(--muted) !important;
  margin-bottom:2rem !important;
}
.doc__cta{margin:0 0 2.4rem}
.doc__cta .appstore{padding:.85em 1.5em}
.doc__cta .appstore .lg{font-size:1.02rem}

.doc__wrap table{
  width:100%;border-collapse:collapse;margin:0 0 1.6rem;font-size:.88rem;
}
.doc__wrap th,.doc__wrap td{
  text-align:left;padding:.7rem .8rem;
  border-bottom:1px solid rgba(255,255,255,.08);color:#C2C2CA;
}
.doc__wrap th{color:var(--text);font-weight:600}

@media print{
  .hdr--doc,.ft,.doc__back{display:none}
  body.doc{background:#fff}
  .doc__wrap h1,.doc__wrap h2,.doc__wrap h3,.doc__wrap strong{color:#000}
  .doc__wrap p,.doc__wrap li,.doc__wrap td{color:#222}
  .doc__wrap a{color:#000;border-bottom-color:#999}
}

/* ==========================================================================
   FORMS
   ========================================================================== */
.fbox{
  margin:2.6rem 0 3.2rem;padding:clamp(1.4rem,3.4vw,2.2rem);
  border:1px solid rgba(255,255,255,.1);border-radius:18px;
  background:rgba(255,255,255,.025);
}
.fbox--warn{border-color:rgba(255,196,0,.28);background:rgba(255,196,0,.035)}
.fbox__h{
  margin:0 0 1.2rem !important;padding-top:0 !important;border-top:0 !important;
  font-family:'Archivo',sans-serif;font-weight:700;
  font-size:clamp(1.15rem,2.1vw,1.45rem);letter-spacing:-.02em;
}
.fbox p{font-size:.92rem}

.form{display:flex;flex-direction:column;gap:1.05rem;margin-top:1.4rem}
.form__row{display:grid;gap:1.05rem}
.form__row--2{grid-template-columns:1fr 1fr}
@media (max-width:620px){.form__row--2{grid-template-columns:1fr}}

.field{display:flex;flex-direction:column;gap:.42rem;min-width:0}
.field label{
  font-size:.78rem;font-weight:600;letter-spacing:.02em;color:var(--text);
  display:flex;align-items:baseline;gap:.5em;
}
.req,.opt{
  font-size:.6rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:var(--yellow);
}
.opt{color:var(--muted)}

.field input,.field select,.field textarea{
  width:100%;font:inherit;font-size:.92rem;color:var(--text);
  background:rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.14);border-radius:11px;
  padding:.78em .9em;
  transition:border-color .25s var(--ease),background .25s var(--ease);
  -webkit-appearance:none;appearance:none;
}
.field textarea{resize:vertical;min-height:110px;line-height:1.55}
.field select{
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),
                   linear-gradient(135deg,var(--muted) 50%,transparent 50%);
  background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;
  background-size:6px 6px,6px 6px;background-repeat:no-repeat;
  padding-right:2.6em;
}
.field select option{background:#14141a;color:var(--text)}
.field input::placeholder,.field textarea::placeholder{color:#63636d}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--yellow);background:rgba(0,0,0,.5);
}
.field.is-bad input,.field.is-bad select,.field.is-bad textarea{border-color:#ff6b5e}
.field__err{font-size:.74rem;color:#ff8a80;min-height:0}
.field.is-bad .field__err{min-height:1em}

.form__more{margin:-.2rem 0 .2rem}
.form__more summary{
  cursor:pointer;font-size:.8rem;color:var(--muted);
  padding:.3rem 0;transition:color .25s var(--ease);
}
.form__more summary:hover{color:var(--text)}
.form__more > div{margin-top:1rem}

.btn-submit{
  align-self:flex-start;cursor:pointer;
  background:var(--yellow);color:#0A0A0C;border:0;border-radius:999px;
  padding:.95em 1.8em;font-weight:700;font-size:.9rem;letter-spacing:-.01em;
  transition:transform .3s var(--ease),background .3s var(--ease);
}
.btn-submit:hover{transform:translateY(-2px);background:var(--yellow-2,#FFD65A)}
.btn-submit:active{transform:scale(.98)}
.btn-submit--warn{background:#ff6b5e;color:#fff}
.btn-submit--warn:hover{background:#ff8378}

.form__note{font-size:.76rem !important;color:var(--muted) !important;margin:0 !important}

.form__ok,.form__fallback{
  border-radius:12px;padding:1rem 1.1rem;font-size:.88rem;line-height:1.55;
}
.form__ok{background:rgba(61,214,140,.1);border:1px solid rgba(61,214,140,.32)}
.form__ok strong{display:block;color:#3DD68C;margin-bottom:.25rem}
.form__ok span{color:#C2C2CA}
.form__fallback{background:rgba(255,196,0,.08);border:1px solid rgba(255,196,0,.3)}
.form__fallback p{font-size:.88rem !important;margin-bottom:.7rem !important}
.form__fallback textarea{
  width:100%;font:inherit;font-size:.8rem;line-height:1.5;color:var(--text);
  background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.14);
  border-radius:10px;padding:.7em .8em;resize:vertical;
}
.btn-copy{
  margin-top:.7rem;cursor:pointer;
  background:transparent;color:var(--text);
  border:1px solid rgba(255,255,255,.28);border-radius:999px;
  padding:.55em 1.1em;font-size:.8rem;font-weight:600;
  transition:background .25s var(--ease),border-color .25s var(--ease);
}
.btn-copy:hover{background:rgba(255,255,255,.08);border-color:var(--yellow)}
