/* ══════════════════════════════════════════════════════════════
   AMA — "Ask a Master Black Belt" · page-specific styles (FRIENDLY)
   Loaded AFTER ../css/alt.css. Reuses its tokens, .btn, .chip, .wrap,
   .sec-head, .item/.inside, .wall/.rev, .quote, .clientwall, .final,
   footer, .sticky, .overlay/.modal. Only AMA-only components live here.
   ══════════════════════════════════════════════════════════════ */

/* ── masthead date ─────────────────────────────────── */
.mast-when{font-family:var(--sans);font-weight:600;font-size:.82rem;color:var(--ink-soft);white-space:nowrap}
.mast-when b{color:var(--ink);font-weight:800}
@media(max-width:760px){.mast-when{display:none}}

/* ── HERO: subhead + Parth card ────────────────────── */
.cta-meta{margin-top:16px;font-family:var(--sans);font-weight:600;font-size:.82rem;color:var(--ink-mute);
  display:flex;gap:.55em;align-items:center;flex-wrap:wrap}
.cta-meta em{color:var(--ink-soft);font-style:normal;font-weight:700}
.cta-meta .dot{color:var(--ink-mute);opacity:.6}

.parth-card{position:relative;z-index:2;width:300px;max-width:100%;background:#fff;border-radius:var(--r-xl);
  box-shadow:var(--shadow);overflow:hidden;transform:rotate(1.4deg)}
.parth-card img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}
.parth-card figcaption{padding:16px 20px 18px}
.parth-card figcaption b{display:block;font-family:var(--display);font-weight:800;font-size:1.15rem;letter-spacing:-.015em;color:var(--ink)}
.parth-card figcaption span{font-family:var(--sans);font-weight:600;font-size:.82rem;color:var(--ink-mute)}
.hero-art .hc-1{top:14px;left:-6px}
.hero-art .hc-2{bottom:28px;right:-10px}
.hero-art .hc-3{top:52%;left:-14px;transform:rotate(-2.5deg);--rot:-2.5deg;animation:floaty 5.5s ease-in-out infinite .4s}
.hero-art .hc-3 .ic{background:#E4F3EA}
@media(max-width:860px){.parth-card{width:260px}.hero-art .hc-1{left:4%}.hero-art .hc-2{right:4%}.hero-art .hc-3{top:auto;bottom:20px;left:2%}}

/* ── BURNING QUESTION band ─────────────────────────── */
.burning{background:var(--cream);text-align:center}
.burning .wrap{padding:64px 40px 70px}
@media(max-width:600px){.burning .wrap{padding:48px 22px 52px}}
.burning .chip{margin-bottom:20px}
.b-q{font-family:var(--display);font-weight:800;font-size:clamp(2rem,5vw,3.3rem);line-height:1.05;letter-spacing:-.03em;
  color:var(--ink);max-width:16ch;margin:0 auto}
.b-sub{font-size:1.12rem;color:var(--ink-soft);line-height:1.6;max-width:56ch;margin:22px auto 0}

/* ── REFRAME ───────────────────────────────────────── */
.reframe{background:var(--bg)}
.r-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:40px;align-items:start}
@media(max-width:820px){.r-grid{grid-template-columns:1fr;gap:28px}}
.r-body p{font-size:1.14rem;color:var(--ink-soft);line-height:1.7}
.r-body p+p{margin-top:20px}
.r-body b{color:var(--ink);font-weight:700}
.pullquote{position:relative;background:linear-gradient(180deg,#fff,var(--sky));border:1px solid var(--line);
  border-radius:var(--r-xl);box-shadow:var(--shadow-sm);padding:34px 30px 30px;transform:rotate(-1.2deg)}
.pullquote .pq-mark{font-family:var(--display);font-size:3rem;line-height:.3;color:var(--blue);display:block;margin-bottom:8px}
.pullquote p{font-family:var(--display);font-weight:800;font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.12;letter-spacing:-.02em;color:var(--ink)}
.pullquote .pq-by{display:block;margin-top:16px;font-family:var(--sans);font-weight:700;font-size:.84rem;color:var(--ink-soft)}

/* ── PHOTO BAND (placeholders) ─────────────────────── */
.sessions{background:var(--bg)}
.trip{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:760px){.trip{grid-template-columns:1fr}}
.photo-ph{position:relative;aspect-ratio:4/3;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm);
  background:linear-gradient(150deg,#DCEFF9,#BFE3F4)}
.photo-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.photo-ph figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:26px 18px 16px;
  font-family:var(--sans);font-weight:700;font-size:.92rem;color:#fff;
  background:linear-gradient(180deg,transparent,rgba(15,30,45,.74))}
.s-note{margin-top:22px;text-align:center;font-family:var(--sans);font-weight:600;font-size:.8rem;color:var(--ink-mute)}

/* ── 7 GATES (teased) ──────────────────────────────── */
.gates{background:linear-gradient(180deg,var(--sky) 0%,#F4FBFF 100%)}
.g-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
@media(max-width:820px){.g-grid{grid-template-columns:1fr;gap:30px}}
.g-copy p{font-size:1.14rem;color:var(--ink-soft);line-height:1.7}
.g-copy p+p{margin-top:18px}
.g-copy b{color:var(--ink);font-weight:700}
.g-viz{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow);padding:28px 30px 26px}
.gv-title{display:block;font-family:var(--display);font-weight:800;font-size:1.3rem;letter-spacing:-.015em;color:var(--ink);margin-bottom:18px}
.gate-list{list-style:none;display:flex;flex-direction:column;gap:11px}
.gate-list li{display:flex;align-items:center;gap:13px}
.gate-n{flex:none;width:32px;height:32px;border-radius:50%;background:var(--sky);color:var(--blue-deep);
  font-family:var(--display);font-weight:800;font-size:.95rem;display:flex;align-items:center;justify-content:center}
.gate-q{font-family:var(--display);font-weight:700;font-size:1rem;letter-spacing:-.01em;color:var(--ink);line-height:1.2}
.gv-foot{display:block;margin-top:18px;font-family:var(--sans);font-weight:700;font-size:.82rem;color:var(--blue-deep)}

/* ── WHO'S ANSWERING ───────────────────────────────── */
.answerer{background:var(--cream)}
.ans-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:40px;align-items:start}
@media(max-width:760px){.ans-grid{grid-template-columns:1fr;gap:26px}}
.ans-photo{margin:0;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow);background:linear-gradient(180deg,#DCEFF9,#BFE3F4)}
.ans-photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:contain;object-position:50% 100%}
@media(max-width:760px){.ans-photo{max-width:320px}}
.ans-name{font-family:var(--display);font-weight:800;font-size:1.6rem;letter-spacing:-.02em;color:var(--ink);line-height:1.1;margin-top:14px}
.ans-role{font-family:var(--sans);font-weight:600;font-size:.9rem;color:var(--ink-mute);margin-top:4px}
.ans-bio{font-size:1.08rem;color:var(--ink-soft);line-height:1.68;margin-top:18px}
.ans-bio b{color:var(--ink);font-weight:700}
.ans-line{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:22px 24px}
.ans-line q{font-family:var(--display);font-weight:800;font-style:italic;font-size:clamp(1.2rem,2.2vw,1.55rem);letter-spacing:-.015em;color:var(--ink);quotes:none;display:block;line-height:1.22}
.ans-line .cap{display:block;margin-top:10px;font-family:var(--sans);font-weight:600;font-size:.82rem;color:var(--ink-mute)}

/* ── WHAT YOU LEAVE WITH: reuse .inside/.item + CTA ── */
.offer .get-cta{margin-top:40px}

/* ── HOW IT WORKS: numbered cards ──────────────────── */
.how{background:var(--bg)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
@media(max-width:820px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.steps{grid-template-columns:1fr}}
.step{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px 30px;box-shadow:var(--shadow-sm);
  transition:transform .25s cubic-bezier(.34,1.4,.5,1),box-shadow .25s}
.step:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.step .num{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;
  background:linear-gradient(180deg,#46C5F3,#1B9DD9);color:#fff;font-family:var(--display);font-weight:800;font-size:1.2rem;margin-bottom:18px;
  box-shadow:0 10px 22px -12px rgba(27,157,217,.9)}
.step h3{font-family:var(--display);font-weight:800;font-size:1.18rem;letter-spacing:-.015em;line-height:1.15;margin-bottom:8px}
.step p{color:var(--ink-soft);font-size:.98rem;line-height:1.55}

/* ── QUESTION BOARD ────────────────────────────────── */
.board{background:var(--mint)}
.b-intro{max-width:62ch;font-size:1.08rem;color:var(--ink-soft);line-height:1.6;margin:-30px 0 32px}
.q-list{display:flex;flex-direction:column;gap:12px}
.q-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);
  display:flex;align-items:center;gap:18px;padding:16px 20px;transition:transform .2s,box-shadow .2s}
.q-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.q-vote{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  width:60px;padding:10px 0;border:1px solid var(--line);background:#fff;color:var(--ink-soft);
  border-radius:var(--r);cursor:pointer;font-family:var(--sans);transition:.16s;user-select:none}
.q-vote:hover{border-color:var(--blue);color:var(--blue);transform:translateY(-1px)}
.q-vote .caret{font-size:.72rem;line-height:1}
.q-vote .n{font-family:var(--display);font-weight:800;font-size:1.2rem;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.q-vote.voted{background:linear-gradient(180deg,#46C5F3,#1B9DD9);border-color:transparent;color:#fff;box-shadow:0 10px 22px -12px rgba(27,157,217,.9)}
.q-vote.voted:hover{color:#fff}
.q-body{min-width:0}
.q-text{font-family:var(--display);font-weight:700;font-size:1.06rem;line-height:1.35;letter-spacing:-.01em;color:var(--ink)}
.q-meta{margin-top:5px;font-family:var(--sans);font-weight:600;font-size:.74rem;color:var(--ink-mute)}
@media(max-width:600px){.q-card{padding:14px 14px;gap:12px}.q-vote{width:52px}.q-text{font-size:1rem}}

.q-add{margin-top:16px;display:flex;gap:10px;align-items:stretch}
.q-add input{flex:1;min-width:0;font-family:var(--sans);font-size:1rem;font-weight:500;color:var(--ink);
  background:#fff;border:2px solid var(--line);padding:14px 18px;outline:none;border-radius:var(--r-pill);transition:border-color .2s,box-shadow .2s}
.q-add input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(27,157,217,.14)}
.q-add .btn{flex:none;white-space:nowrap}
@media(max-width:560px){.q-add{flex-direction:column}}

/* gate prompt — uses .btn so it stays consistent, sits centred under the list */
.q-gate{margin-top:18px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center;
  background:#fff;border:1px dashed var(--blue);border-radius:var(--r-lg);padding:18px 24px}
.q-gate .g-t{font-family:var(--sans);font-weight:700;font-size:.95rem;color:var(--ink-soft)}
.q-gate .g-link{padding:12px 22px;font-size:.88rem}
.q-note{margin-top:16px;text-align:center;font-family:var(--sans);font-weight:600;font-size:.8rem;color:var(--ink-mute)}

/* ── FINAL logistics ───────────────────────────────── */
.logi{margin:32px auto 0;display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:16px;max-width:620px}
@media(max-width:560px){.logi{grid-template-columns:1fr}}
.logi .cell{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm);padding:20px 22px}
.logi .k{display:block;font-family:var(--sans);font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:8px}
.logi .v{font-family:var(--display);font-weight:800;font-size:1.15rem;letter-spacing:-.015em;color:var(--ink)}
.final .note{margin-top:26px}

/* ── modal: optional label + org/phone + error state ── */
.mfield label .opt{color:var(--ink-mute);font-weight:600;text-transform:none;letter-spacing:0}
.mfield input.err{border-color:var(--coral);box-shadow:0 0 0 4px rgba(255,122,89,.16)}
.mconsent{display:flex;gap:10px;align-items:flex-start;margin:-2px 0 16px;cursor:pointer}
.mconsent input{flex:none;width:18px;height:18px;margin-top:2px;accent-color:var(--blue);cursor:pointer}
.mconsent span{font-family:var(--sans);font-weight:500;font-size:.82rem;line-height:1.5;color:var(--ink-mute)}
.merr{margin:-2px 0 14px;font-family:var(--sans);font-weight:600;font-size:.84rem;line-height:1.45;color:var(--coral)}
.modal .msuccess .go{display:inline-flex;margin-top:18px}

/* ── confirmation page bits ────────────────────────── */
.calrow{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin:0 0 20px}
.cal-btn{font-family:var(--sans);font-weight:700;font-size:.92rem;color:var(--ink);background:#fff;
  border:2px solid var(--line);padding:13px 22px;border-radius:var(--r-pill);cursor:pointer;transition:.18s;text-decoration:none;display:inline-flex;align-items:center;gap:.5em}
.cal-btn:hover{border-color:var(--blue);color:var(--blue-deep);transform:translateY(-2px)}
.videobox{aspect-ratio:16/9;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow);
  background:radial-gradient(circle at 50% 40%,rgba(56,214,255,.2),transparent 62%),linear-gradient(160deg,#DCEFF9,#BFE3F4);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;max-width:760px;margin:0 auto}
.videobox .play{width:72px;height:72px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:1.4rem;box-shadow:var(--shadow-sm)}
.videobox .cap{font-family:var(--sans);font-weight:700;font-size:.84rem;color:var(--ink-soft)}
