/* ============================================================
   THE 1% FORUM — MOBILE LAYER  (mobile.css)
   Loads AFTER theme.css on *.mobile.html pages only.
   Phone-first; content rail capped at 480px and centred so it
   also previews cleanly on desktop. Reuses all brand tokens.
   ============================================================ */

html{background:#000;}
body{
  max-width:480px;margin-inline:auto;position:relative;
  background:var(--ink-800);min-height:100vh;font-size:16px;
  padding-bottom:78px;            /* room for fixed bottom CTA */
  box-shadow:0 0 80px rgba(0,0,0,.6);
  overflow-x:clip;
}
.m-gut{padding-inline:18px;}

/* ---------- announcement (minimized, reveals on scroll) ---------- */
.m-ann{
  position:fixed;top:0;left:50%;transform:translate(-50%,-100%);
  width:100%;max-width:480px;z-index:60;transition:transform .32s ease;
  background:linear-gradient(90deg,#0d0d0e,#161310 50%,#0d0d0e);
  border-bottom:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;gap:9px;
  padding:7px 14px;font-family:var(--f-cond);
  text-transform:uppercase;letter-spacing:.1em;font-size:10.5px;color:var(--text-dim);
  white-space:nowrap;
}
.m-ann.show{transform:translate(-50%,0);}
.m-ann b{color:var(--gold-bright);font-weight:600;}
.m-ann .m-ann__t{color:var(--gold-bright);font-variant-numeric:tabular-nums;}
.m-ann a{color:var(--gold-bright);text-decoration:underline;text-underline-offset:2px;font-weight:600;}

/* ---------- header ---------- */
.m-head{
  position:sticky;top:0;z-index:55;transition:top .3s ease;
  display:flex;align-items:center;justify-content:space-between;
  padding:11px 16px;background:rgba(10,10,11,.92);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line-soft);
}
.m-wm{display:flex;align-items:center;gap:9px;}
.m-wm__mark{width:26px;height:26px;color:var(--gold);}
.m-wm__t1{font-family:var(--f-display);font-weight:800;font-size:14px;letter-spacing:.02em;color:var(--text);line-height:1;}
.m-wm__t1 em{color:var(--gold);font-style:normal;}
.m-wm__t2{font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.18em;font-size:8px;color:var(--muted);display:block;margin-top:3px;}
.m-burger{width:44px;height:44px;display:grid;place-items:center;background:none;border:0;color:var(--text);cursor:pointer;margin:-8px -8px -8px 0;}

/* ---------- drawer ---------- */
.m-drawer{position:fixed;inset:0;z-index:130;display:none;}
.m-drawer.open{display:block;}
.m-drawer__scrim{position:absolute;inset:0;background:rgba(4,4,5,.7);backdrop-filter:blur(4px);}
.m-drawer__panel{position:absolute;top:0;right:0;height:100%;width:min(82%,340px);
  background:var(--ink-900);border-left:1px solid var(--line);padding:20px 22px;
  display:flex;flex-direction:column;gap:4px;transform:translateX(100%);transition:transform .28s ease;}
.m-drawer.open .m-drawer__panel{transform:translateX(0);}
.m-drawer__x{align-self:flex-end;width:42px;height:42px;display:grid;place-items:center;background:none;border:1px solid var(--line-strong);border-radius:50%;color:var(--text);cursor:pointer;margin-bottom:14px;}
.m-drawer a{font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.16em;font-size:15px;color:var(--text-dim);
  padding:15px 2px;border-bottom:1px solid var(--line-soft);}
.m-drawer a.cta{margin-top:16px;border:0;}

/* ---------- hero ---------- */
.m-hero{position:relative;min-height:84vh;display:flex;flex-direction:column;justify-content:flex-end;
  padding:26px 18px 34px;overflow:hidden;}
.m-hero__media{position:absolute;inset:0;z-index:0;}
.m-hero__media video,.m-hero__media img{width:100%;height:100%;object-fit:cover;}
.m-hero__media::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(8,8,9,.55) 0%,rgba(8,8,9,.4) 40%,rgba(8,8,9,.92) 100%);}
.m-hero__inner{position:relative;z-index:2;}
.m-hero__play{width:62px;height:62px;border-radius:50%;border:1px solid var(--gold);display:grid;place-items:center;
  color:var(--gold-bright);background:rgba(10,10,11,.4);margin-bottom:20px;cursor:pointer;}
.m-hero__title{font-family:var(--f-display);font-weight:900;text-transform:uppercase;line-height:.94;
  font-size:clamp(40px,13vw,60px);letter-spacing:.005em;}
.m-hero__title .gold{color:var(--gold);}
.m-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}

/* ---------- generic section ---------- */
.m-sec{padding:42px 18px;}
.m-sec--alt{background:var(--ink-900);border-block:1px solid var(--line-soft);}
.m-kicker{font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.24em;font-size:11px;color:var(--gold-deep);display:block;margin-bottom:12px;}
.m-h2{font-family:var(--f-display);font-weight:800;text-transform:uppercase;line-height:1.04;font-size:clamp(26px,7.5vw,34px);}
.m-h2 .gold{color:var(--gold);}
.m-lead{color:var(--text-dim);font-size:15.5px;line-height:1.6;margin-top:12px;}
.m-sec .btn{margin-top:22px;}
.btn-block{display:flex;width:100%;justify-content:center;}

/* ---------- pillars (compact list) ---------- */
.m-pillars{display:flex;flex-direction:column;gap:12px;margin-top:24px;}
.m-pill{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--line-soft);border-radius:var(--r-md);padding:16px 16px;background:var(--panel);}
.m-pill svg{color:var(--gold);flex:none;margin-top:2px;}
.m-pill h3{font-family:var(--f-display);font-weight:700;font-size:17px;text-transform:uppercase;letter-spacing:.01em;}
.m-pill p{font-size:13.5px;color:var(--text-dim);line-height:1.5;margin-top:4px;}

/* ---------- stat strip ---------- */
.m-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line-soft);border:1px solid var(--line-soft);border-radius:var(--r-md);overflow:hidden;}
.m-stat{background:var(--ink-800);padding:22px 14px;text-align:center;}
.m-stat b{display:block;font-family:var(--f-display);font-weight:900;font-size:34px;color:var(--gold-bright);line-height:1;}
.m-stat span{font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.16em;font-size:10px;color:var(--muted);margin-top:8px;display:block;}

/* ---------- carousel (speakers / gallery) ---------- */
.m-caro{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  margin-inline:-18px;padding:4px 18px 8px;scrollbar-width:none;}
.m-caro::-webkit-scrollbar{display:none;}
.m-slide{scroll-snap-align:center;flex:0 0 82%;}
.m-dots{display:flex;gap:7px;justify-content:center;margin-top:18px;}
.m-dot{width:7px;height:7px;border-radius:50%;background:var(--line-strong);border:0;padding:0;cursor:pointer;transition:.3s;}
.m-dot.on{background:var(--gold-bright);width:22px;border-radius:4px;}

/* speaker card */
.m-spk{position:relative;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;aspect-ratio:4/5;display:block;}
.m-spk img{width:100%;height:100%;object-fit:cover;}
.m-spk__grad{position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(6,6,6,.92));}
.m-spk__b{position:absolute;left:0;right:0;bottom:0;padding:18px 16px;z-index:2;}
.m-spk__name{font-family:var(--f-display);font-weight:800;font-size:21px;text-transform:uppercase;line-height:1;}
.m-spk__role{font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:var(--gold-bright);margin-top:7px;}

/* gallery slide */
.m-gslide{scroll-snap-align:center;flex:0 0 82%;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;aspect-ratio:3/4;}
.m-gslide img{width:100%;height:100%;object-fit:cover;}

/* ---------- quote ---------- */
.m-quote{border:1px solid var(--line-soft);border-radius:var(--r-md);padding:22px 20px;background:var(--panel);}
.m-quote .mk{font-family:var(--f-display);color:var(--gold);font-size:40px;line-height:.2;height:18px;display:block;}
.m-quote p{font-size:15px;color:var(--text);line-height:1.55;margin-top:6px;}
.m-quote .by{display:flex;align-items:center;gap:11px;margin-top:16px;}
.m-quote .av{width:38px;height:38px;border-radius:50%;background:var(--panel-3);display:grid;place-items:center;font-family:var(--f-display);font-weight:800;color:var(--gold-bright);border:1px solid var(--line);}
.m-quote .nm{font-weight:700;font-size:14px;}
.m-quote .rl{font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.12em;font-size:10.5px;color:var(--muted);}

/* ---------- ticket ---------- */
.m-ticket{border:1px solid var(--line-strong);border-radius:var(--r-lg);overflow:hidden;background:var(--panel);box-shadow:var(--shadow-card);}
.m-ticket__h{padding:20px 20px 0;}
.m-ticket__price{font-family:var(--f-display);font-weight:900;font-size:40px;color:var(--gold-bright);line-height:1;margin-top:10px;}
.m-ticket__price small{font-family:var(--f-cond);font-weight:400;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep);display:block;margin-top:6px;}
.m-ticket__body{padding:18px 20px 22px;}
.m-incl{list-style:none;display:flex;flex-direction:column;gap:11px;margin-bottom:20px;}
.m-incl li{display:flex;gap:10px;font-size:13.5px;color:var(--text-dim);line-height:1.4;}
.m-incl svg{color:var(--gold);flex:none;margin-top:1px;}
.m-addons{display:flex;flex-direction:column;gap:10px;margin-top:18px;}
.m-addon{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line-soft);border-radius:var(--r-md);padding:13px 15px;background:var(--ink-900);}
.m-addon__n{font-family:var(--f-display);font-weight:700;font-size:15px;}
.m-addon__t{font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.14em;font-size:9px;color:var(--gold-deep);}
.m-addon__p{font-family:var(--f-display);font-weight:800;color:var(--gold-bright);white-space:nowrap;}
a.m-addon{text-decoration:none;color:inherit;}
a.m-addon:active{border-color:var(--gold);}
a.m-addon .m-addon__go{color:var(--gold-deep);flex:none;margin-left:2px;}

/* ---------- faq ---------- */
.m-faq details{border-bottom:1px solid var(--line-soft);}
.m-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:14px;align-items:center;
  padding:17px 2px;font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.04em;font-size:15px;color:var(--text);}
.m-faq summary::-webkit-details-marker{display:none;}
.m-faq summary::after{content:"+";color:var(--gold);font-size:20px;font-family:var(--f-cond);}
.m-faq details[open] summary::after{content:"–";}
.m-faq .a{padding:0 2px 18px;color:var(--text-dim);font-size:14px;line-height:1.6;}

/* ---------- prose (legal/about) ---------- */
.m-prose h2{font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:18px;margin:26px 0 8px;color:var(--text);}
.m-prose p{font-size:14.5px;color:var(--text-dim);line-height:1.7;margin-bottom:12px;}
.m-prose ul{margin:0 0 12px 18px;color:var(--text-dim);font-size:14.5px;line-height:1.7;}
.m-prose a{color:var(--gold-bright);text-decoration:underline;text-underline-offset:2px;}

/* ---------- final CTA ---------- */
.m-cta{padding:50px 18px;text-align:center;background:
  radial-gradient(120% 70% at 50% 0%,rgba(201,162,75,.12),transparent 60%),var(--ink-900);
  border-top:1px solid var(--line);}
.m-cta h2{font-family:var(--f-display);font-weight:900;text-transform:uppercase;font-size:clamp(30px,9vw,40px);line-height:1.02;}
.m-cta p{color:var(--text-dim);margin-top:14px;font-size:15px;}

/* ---------- footer ---------- */
.m-foot{padding:34px 18px 26px;border-top:1px solid var(--line-soft);background:var(--ink-900);}
.m-foot__links{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:20px 0;}
.m-foot__links a{font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--text-dim);padding:5px 0;}
.m-foot__base{font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:var(--muted-2);border-top:1px solid var(--line-soft);padding-top:16px;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;}
.m-foot__base a{color:var(--muted);}
.m-desk{display:block;text-align:center;margin-top:16px;font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--gold-deep);}

/* ---------- fixed bottom CTA ---------- */
.m-cta-bar{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:100%;max-width:480px;z-index:90;
  display:flex;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));
  background:rgba(10,10,11,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border-top:1px solid var(--line);box-shadow:0 -16px 40px -20px #000;}
.m-cta-bar__i{display:flex;flex-direction:column;line-height:1.05;}
.m-cta-bar__i span{font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:var(--muted);}
.m-cta-bar__i b{font-family:var(--f-display);font-weight:800;font-size:18px;color:var(--gold-bright);}
.m-cta-bar .btn{margin-left:auto;flex:none;}

/* ---------- video modal ---------- */
.m-vmodal{position:fixed;inset:0;z-index:160;display:none;place-items:center;}
.m-vmodal.open{display:grid;}
.m-vmodal__scrim{position:absolute;inset:0;background:rgba(4,4,5,.92);}
.m-vmodal__frame{position:relative;z-index:2;height:min(82vh,760px);aspect-ratio:9/16;max-width:94vw;
  border:1px solid var(--line-strong);border-radius:var(--r-md);overflow:hidden;background:#000;}
.m-vmodal__frame video{width:100%;height:100%;object-fit:cover;}
.m-vmodal__x{position:absolute;top:-50px;right:0;width:42px;height:42px;border-radius:50%;border:1px solid var(--line-strong);
  background:rgba(10,10,11,.7);color:var(--text);display:grid;place-items:center;cursor:pointer;z-index:3;}

.center{text-align:center;}
.mt-tight{margin-top:10px;}
